{"version":3,"file":"js/app.18f7344d.js","mappings":"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AA,GACA,sBACA,EACA,uBACA,IACA,qGACA,yDAIA,CAHA,SACA,iDACA,iCACA,CACA,EACA,sBACA,sCACA,gCACA,6DACA,2CACA,gCACA,kEAEA,gBAEA,EACA,2BACA,IACA,oFACA,iBACA,wCACA,uCAIA,CAHA,SACA,iDACA,iCACA,CACA,EACAuM,qBACA,6BACA,KACA,mCAEA,GADAC,EAAAA,EAAAA,QAAAA,QAAAA,SAAAA,GAAA,qBACA,iBAMA,OAJA,cACAA,EAAAA,KAAAA,QAAAA,aAAAA,QAAAA,SAAAA,GAAA,sBAEA,0BACA,IAEA,EACAC,YACA,gCACA,IACA,4CAEA,EACA,kBACA,uEACA,uCAEA,EACA,mBACA,oBACA,oBAEA,IACA,uGACA,iBAEA,6BACA,wBACA,qBAEA,oBAKA,CAHA,SACA,iDACA,iCACA,CAEA,mBACA,EACA,wBAIA,GAHA,oBACA,qBAEA,sBACA,IACA,yGAGA,8BACA,wBACA,qBAEA,oBAKA,CAHA,SACA,iDACA,iCACA,CAGA,mBACA,EACAC,kBAEA,IADA,SACA,mCACAC,GAAAA,KAAAA,aAAAA,GAAAA,GAAAA,WACA,+BACAA,GAAAA,KAEA,2FACA,EACA,uBACA,8BACA,oBAEA,IACA,qCAEA,8BACA,wBAEA,oBAKA,CAHA,SACA,iDACA,iCACA,CAEA,mBACA,CACA,EACAC,WAAAA,GAcA,GAbA,8CACA,0CACA,6CACA,kCAEA,4CAEA,gCACA,2BACA,6BACA,iBAEA,oBACA,oBAGA,CACA,gCACA,IACA,oDAEA,MAPA,yEACA,gBAOA,EACAC,eACA,kCACA,gCACA,wBACA,2EACA,0BACA,yBACA,yBACA,4BAEA,mBACA,mBACA,kBACA,sBACA,kBACA,EACArL,QAAAA,GACA,+BACA,EACAsL,kBAAAA,GACA,uBACA,wCACA,0EACA,EACAzC,eACA,gFACA,EACA,sBAKA,GAJA,wBACA,oBACA,iBAEA,iBACA,4EACA,CACA,yBACA,2CACA,oDAGA,iCAEA,IACA,8EACA,mBAAA3b,KAAAA,cAAAqe,OAAAA,CAAA3f,GAAAA,EAAAA,QAAA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ACAI,WAAAA,KACAxF,MAAAA,GACAwX,QAAAA,GACAvO,UAAAA,GACAD,aAAAA,GACA8O,YAAAA,GAGA,EACA,sBACA,UACA,EACAtX,gBACA,8CACA,mFACA,4EACA,+EACA,+EACA,EACAC,MAAAA,CACA,cAEA/H,QAAAA,CACA,gBACA,qCACA,8CACA,0EAEA,0BACA,oBACA,qBAEA,IACA,mCACA,kBACAyH,GAAAA,IAAAA,KAAAA,cACA,sDACA,iBACA,4BACA,sBACA,0BACA,sCACA,8BACA,gDACA,qCAIA,CAHA,SACA,iDACA,iCACA,CAEA,qBACA,IACA,8CACA,kFACA,2EACA,8EACA,+EAEA,EACA,iCACA,8BACA,uBACA,aAGA,iCACA,sCACA,EACA+b,uBAAAA,GACA,8BACA,kBACA,6BACA,0BACA,mBAAA3jB,KAAAA,cAAAqe,OAAAA,CAAA3f,GAAAA,KAAAA,aAAA,gBAGA,iCACA,sCACA,EACA,gCACA,8BACA,kBAEA,yBACA,mBAAAsB,KAAAA,mBAAAqe,OAAAA,CAAA3f,GAAAA,KAAAA,aAAA,gBAGA,iCACA,sCACA,EACA,gCACA,8BACA,uBACA,aAGA,iCACA,sCACA,EACAshB,kBACA,kBACAnT,UAAAA,KAAAA,UACA7M,KAAAA,KAAAA,QAAAA,UAAAA,OAAAA,EAAAA,GAAAA,UACAuiB,4BAAAA,EACAE,0BAAAA,EACAb,sBAAAA,EACAS,6BAAAA,EACAF,+BAAAA,EACAW,mBAAAA,EACAF,aAAAA,EACAD,UAAAA,GAGA,yBACA,EACA5B,qBACA,yBACA,EACAL,WACA,4BAAA1gB,KAAAA,WAAAqe,OAAAA,CAAA3f,GAAAA,KAAAA,aACA,iEACA,8CACA,8CACA,2BAEA,sCACA,uCACA,uBAEA,EACA,sBACA,2BACA,2BAEA,UACA,sEACA,mBAAAsB,KAAAA,gBAAA,eACA,wBAIA,CAHA,SACA,iDACA,wCACA,CAEA,0BACA,EACA,oBAIA,GAHA,yBACA,yBAEA,wCACA,8EAEA,IACA,OACA6B,MAAAA,KAAAA,KAAAA,KAAAA,MAEA,yFACA,mBAAA7B,KAAAA,cAAAqe,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AAAsI,KAAAA,WACA,CAAAtI,MAAAA,GAAAsI,KAAAA,YACA,CAAAtI,MAAAA,GAAAsI,KAAAA,cAGA+lB,UAAAA,CACAxC,YAAAA,EACAra,UAAAA,GACAyQ,QAAAA,GACAoE,MAAAA,GACAC,OAAAA,GACAwI,OAAAA,IAEAJ,IAAAA,CACAld,WAAAA,EACAyQ,SAAAA,EACAoE,OAAAA,EACAC,QAAAA,EACAwI,QAAAA,GAEA9wB,QAAAA,CACAK,OAAAA,GACA4jB,SAAAA,EACAoE,OAAAA,EACAC,QAAAA,GAGA,EACA,sBACA,UACA,EACAhoB,QAAAA,CACA,YACA,oBACA,qBAEA,IACA,qFACA,uBAEA,6DAEA,+CAIA,CAHA,SACA,iDACA,iCACA,CAEA,oBACA,EACA,mBACA,uBACA,wBAEA,IACA,uHACA,2BAIA,CAHA,SACA,iDACA,oCACA,CAEA,uBACA,EACA,iBACA,uBACA,sBAEA,IACA,2GACA,yBAIA,CAHA,SACA,iDACA,oCACA,CAEA,qBACA,EACA,kBACA,uBACA,uBAEA,IACA,4GACA,0BAIA,CAHA,SACA,iDACA,oCACA,CAEA,sBACA,EACA,kBACA,0BACA,EACA,4BACA,+EAAAzB,GAAAA,EAAAA,OAAAsB,KAAAA,EAAAA,SAAA,MACA,EACA,0BACA,kFACA,EACA,wBACA,oDACA,EACA,yBACA,sDACA,EACA,yBACA,iFACA,EACA,6BACA,2CACA,kBACA,uCACA,gBACA,mCACA,iBACA,8BACA,GAEAkI,MAAAA,CACA,0BACA,iDACA,kBACA,mCACA,EACA,8BACA,gBACA,mCACA,EACA,4BACA,iBACA,mCACA,EACA8oB,iBACA,mCACA,EACAC,iBACA,mCACA,EACA,kCACA,2BACA,GAEAvhB,SAAAA,CACA4G,oBACA,+BACA,EACA4a,kBACA,6BACA,EACAC,gBACA,2BACA,EACAH,iBACA,4BACA,EACAC,iBACA,4BACA,IC/U2P,MCOvP,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QClB5B3xB,GAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACA,EAAG,KAAK,CAACiB,YAAY,SAASjB,EAAG,KAAK,CAACiB,YAAY,QAAQ,CAACnB,EAAIoB,GAAG,yBAA0BpB,EAAIU,KAAKwF,OAAS,EAAGhG,EAAG,IAAI,CAACF,EAAIoB,GAAG,4GAA4GpB,EAAIO,KAAKL,EAAG,MAAM,CAACiB,YAAY,yBAAyB,CAACjB,EAAG,UAAU,CAACiB,YAAY,OAAOf,MAAM,CAAC,WAAa,GAAG,MAAQJ,EAAIU,KAAK,OAASV,EAAIoJ,MAAME,QAAQ3F,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,yBAAyBC,GAAG,SAASpD,GAAM,MAAO,CAACV,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI6G,GAAG,OAAP7G,CAAeU,EAAKsM,KAAKiB,mBAAmB,KAAK,GAAG,CAACpK,IAAI,cAAcC,GAAG,SAASpD,GAAM,MAAO,CAAGV,EAAI6xB,cAAqF3xB,EAAG,MAAM,CAACA,EAAG,IAAI,CAACE,MAAM,CAAC,KAAO,KAAK0B,GAAG,CAAC,MAAQ,SAASC,GAAgC,OAAxBA,EAAOE,iBAAwBjC,EAAI8xB,SAASpxB,EAAKsM,KAAK,IAAI,CAAChN,EAAIoB,GAAG,YAA1MlB,EAAG,MAAM,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGX,EAAKsM,KAAK1K,OAAOtC,EAAIqB,GAAGrB,EAAI+xB,kBAAkK,GAAG,CAACluB,IAAI,kBAAkBC,GAAG,SAASpD,GAAM,MAAO,CAACV,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI0oB,WAAWhoB,EAAKsM,KAAK8G,UAAU9U,KAAI,EAAGyB,UAAWA,MAAQ,KAAK,GAAG,CAACoD,IAAI,iBAAiBC,GAAG,SAASpD,GAAM,MAAO,CAACV,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI0oB,WAAWhoB,EAAKsM,KAAKsa,WAAW,KAAK,GAAG,CAACzjB,IAAI,cAAcC,GAAG,SAASpD,GAAM,MAAO,CAACV,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI0oB,WAAWhoB,EAAKsM,KAAK2b,QAAQ,KAAK,GAAG,CAAC9kB,IAAI,eAAeC,GAAG,SAASpD,GAAM,MAAO,CAACV,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI0oB,WAAWhoB,EAAKsM,KAAK4b,SAAS,KAAK,GAAG,CAAC/kB,IAAI,eAAeC,GAAG,SAASpD,GAAM,MAAO,CAACR,EAAG,SAAS,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,0BAA0BpF,MAAO,SAAUI,WAAW,WAAWiF,UAAU,CAAC,OAAQ,EAAK,OAAQ,KAAQxG,YAAY,oBAAoBf,MAAM,CAAC,KAAO,UAAU0B,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAO/B,EAAImO,UAAUzN,EAAKsM,KAAK7N,GAAI,oBAAoB,IAAI,CAACe,EAAG,oBAAoB,CAACE,MAAM,CAAC,KAAO,CAAC,MAAO,aAAa,GAAG,GAAG,CAACyD,IAAI,aAAaC,GAAG,SAASpD,GAAM,MAAO,CAACR,EAAG,SAAS,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,0BAA0BpF,MAAO,OAAQI,WAAW,SAASiF,UAAU,CAAC,OAAQ,EAAK,OAAQ,KAAQxG,YAAY,qBAAqBf,MAAM,CAAC,KAAO,UAAU0B,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAO/B,EAAI8xB,SAASpxB,EAAKsM,KAAK,IAAI,CAAC9M,EAAG,oBAAoB,CAACE,MAAM,CAAC,KAAO,CAAC,MAAO,YAAY,GAAG,QAAQ,GAAGF,EAAG,UAAU,CAACE,MAAM,CAAC,KAAOJ,EAAIgyB,OAAS,KAAO,KAAK,MAAQ,uBAAuB,WAAa,IAAI3vB,MAAM,CAACC,MAAOtC,EAAIK,KAAK4xB,KAAKrwB,KAAMY,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAK4xB,KAAM,OAAQxvB,EAAI,EAAEC,WAAW,mBAAmB,CAAG1C,EAAI6xB,cAAoJ7xB,EAAIgyB,OAAQ9xB,EAAG,MAAM,CAACA,EAAG,cAAc,CAACE,MAAM,CAAC,yBAAyBJ,EAAIkyB,oBAAoB,MAAQlyB,EAAIK,KAAK4xB,KAAKjlB,KAAK1K,MAAM,MAAQtC,EAAImyB,cAAc,GAAGjyB,EAAG,MAAMF,EAAIoG,GAAIzG,OAAOD,KAAKM,EAAIK,KAAK4xB,KAAKjlB,KAAK1K,QAAQ,SAASmmB,EAAEniB,GAAG,OAAOpG,EAAG,IAAI,CAAC2D,IAAIyC,GAAG,CAACpG,EAAG,SAAS,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGonB,GAAG,QAAyBvoB,EAAG,OAAb,WAANuoB,EAA0B,CAACvoB,EAAG,MAAOF,EAAIK,KAAK4xB,KAAKjlB,KAAK1K,MAAMmmB,GAAK,EAAGvoB,EAAG,OAAO,CAACF,EAAIoB,GAAG,SAASlB,EAAG,OAAO,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAIoyB,aAAapyB,EAAIK,KAAK4xB,KAAKjlB,KAAK1K,MAAMmmB,SAAoB,CAACzoB,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAIK,KAAK4xB,KAAKjlB,KAAK1K,MAAMmmB,QAAQ,IAAG,GAAlpBvoB,EAAG,IAAI,CAACA,EAAG,SAAS,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAIqyB,eAAeryB,EAAIoB,GAAG,KAAKpB,EAAIqB,GAAGrB,EAAIK,KAAK4xB,KAAKjlB,KAAK1K,OAAOtC,EAAIqB,GAAGrB,EAAI+xB,eAAe,OAAwhB7xB,EAAG,IAAI,CAACA,EAAG,SAAS,CAACF,EAAIoB,GAAG,gBAAgBlB,EAAG,MAAMF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI0oB,WAAW1oB,EAAIK,KAAK4xB,KAAKjlB,KAAK8G,UAAU9U,KAAI,EAAGyB,UAAWA,IAAO,IAAI,OAAOP,EAAG,IAAI,CAACA,EAAG,SAAS,CAACF,EAAIoB,GAAG,eAAelB,EAAG,MAAMF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI0oB,WAAW1oB,EAAIK,KAAK4xB,KAAKjlB,KAAKsa,SAAU,IAAI,OAAOpnB,EAAG,IAAI,CAACA,EAAG,SAAS,CAACF,EAAIoB,GAAG,YAAYlB,EAAG,MAAMF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI0oB,WAAW1oB,EAAIK,KAAK4xB,KAAKjlB,KAAK2b,MAAO,IAAI,OAAOzoB,EAAG,IAAI,CAACA,EAAG,SAAS,CAACF,EAAIoB,GAAG,aAAalB,EAAG,MAAMF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI0oB,WAAW1oB,EAAIK,KAAK4xB,KAAKjlB,KAAK4b,OAAQ,IAAI,OAAO1oB,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAC/E,EAAG,WAAW,CAACE,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAK4xB,KAAKrwB,MAAO,CAAK,IAAI,CAAC5B,EAAIoB,GAAG,SAAS,KAAKlB,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,KAAK,MAAQ,iBAAiB,uBAAuB,GAAG,kBAAkB,GAAG,oBAAoB,IAAIiC,MAAM,CAACC,MAAOtC,EAAIK,KAAKyO,OAAOlN,KAAMY,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAKyO,OAAQ,OAAQrM,EAAI,EAAEC,WAAW,qBAAqB,CAACxC,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAKyO,OAAOnO,UAAUT,EAAG,IAAI,CAACF,EAAIoB,GAAG,qCAAqClB,EAAG,SAAS,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAIK,KAAKyO,OAAOrO,SAAST,EAAIoB,GAAG,uDAAuDlB,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAC/E,EAAG,cAAc,CAACE,MAAM,CAAC,KAAO,SAAS,OAASJ,EAAIK,KAAKyO,OAAO9J,OAAO,KAAO,SAAS,QAAU,UAAUgK,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAI2K,cAAcxI,MAAM,KAAMC,UAAU,KAAKlC,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKyO,OAAOlN,MAAO,CAAK,IAAI,CAAC5B,EAAIoB,GAAG,aAAa,IAAI,IAAI,EAChmJ,EACIZ,GAAkB,GCFlBT,GAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACiB,YAAY,oBAAoB,CAACjB,EAAG,QAAQ,CAACiB,YAAY,sCAAsC,CAACjB,EAAG,QAAQ,CAACA,EAAG,KAAK,CAACiB,YAAY,SAAS,CAACjB,EAAG,KAAK,CAACF,EAAIoB,GAAG,UAAWpB,EAAIkyB,oBAAqBhyB,EAAG,KAAK,CAACF,EAAIoB,GAAG,WAAWpB,EAAIO,KAAOP,EAAIkyB,oBAAgDlyB,EAAIO,KAA/BL,EAAG,KAAK,CAACF,EAAIoB,GAAG,WAAsBpB,EAAIkyB,oBAA8ClyB,EAAIO,KAA7BL,EAAG,KAAK,CAACF,EAAIoB,GAAG,SAAkBlB,EAAG,KAAK,CAACF,EAAIoB,GAAG,eAAelB,EAAG,KAAK,CAACF,EAAIoB,GAAG,UAAWpB,EAAIkyB,oBAAqBhyB,EAAG,KAAK,CAACF,EAAIoB,GAAG,gBAAgBpB,EAAIO,SAASL,EAAG,QAAQF,EAAIoG,GAAIpG,EAAI0L,OAAO,SAAS4mB,EAAEhsB,GAAG,OAAOpG,EAAG,KAAK,CAAC2D,IAAIyC,GAAG,CAACpG,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGixB,EAAEC,SAAUvyB,EAAIkyB,oBAAqBhyB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGixB,EAAEE,WAAWxyB,EAAIO,KAAOP,EAAIkyB,oBAAwDlyB,EAAIO,KAAvCL,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGixB,EAAEG,UAAqBzyB,EAAIkyB,oBAAsDlyB,EAAIO,KAArCL,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGixB,EAAEI,QAAiBxyB,EAAG,KAAK,CAACF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAMC,OAAQP,EAAEQ,SAAS,KAAK5yB,EAAG,MAAM,CAAC6H,YAAY,CAAC,aAAa,MAAM,YAAY,UAAU,CAAc,GAAZuqB,EAAEQ,OAAa5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGixB,EAAES,WAAW,OAAO7yB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGixB,EAAEU,WAAW,OAAO9yB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEW,UAAU,OAAO/yB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEY,UAAU,aAAahzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAEa,SAAS,uBAAuBjzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEc,UAAU,sBAAsBlzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,UAAUpB,EAAIqB,GAAGixB,EAAEe,MAAM,SAASrzB,EAAIO,KAAkB,GAAZ+xB,EAAEQ,OAAa5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAEgB,SAAS,UAAUpzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEiB,UAAU,aAAarzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAEkB,SAAS,OAAOtzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,YAAYpB,EAAIqB,GAAGixB,EAAEmB,QAAQ,OAAOvzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,YAAYpB,EAAIqB,GAAGixB,EAAEoB,QAAQ,OAAOxzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,YAAYpB,EAAIqB,GAAGixB,EAAEqB,QAAQ,SAAS3zB,EAAIO,KAAkB,GAAZ+xB,EAAEQ,OAAa5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAMgB,SAAUtB,EAAEuB,UAAU,OAAO3zB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,YAAYpB,EAAIqB,GAAGixB,EAAEwB,QAAQ,aAAa5zB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,iBAAiBpB,EAAIqB,GAAGixB,EAAEyB,aAAa,SAAS/zB,EAAIO,KAAkB,GAAZ+xB,EAAEQ,OAAa5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAMoB,SAAU1B,EAAE2B,UAAU,OAAO/zB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,YAAYpB,EAAIqB,GAAGixB,EAAE4B,QAAQ,aAAah0B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAE6B,SAAS,YAAYn0B,EAAIO,KAAkB,GAAZ+xB,EAAEQ,OAAa5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,UAAUpB,EAAIqB,GAAGixB,EAAEe,MAAM,OAAOnzB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,YAAYpB,EAAIqB,GAAGixB,EAAE8B,QAAQ,yBAAyBp0B,EAAIO,KAAkB,GAAZ+xB,EAAEQ,OAAa5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAMyB,SAAU/B,EAAEgC,UAAU,OAAOp0B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,UAAUpB,EAAIqB,GAAGixB,EAAEe,MAAM,SAASrzB,EAAIO,KAAkB,GAAZ+xB,EAAEQ,OAAa5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAEiC,SAAS,OAAOr0B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAEkC,SAAS,OAAOt0B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,YAAYpB,EAAIqB,GAAGixB,EAAE8B,QAAQ,yBAAyBp0B,EAAIO,KAAkB,GAAZ+xB,EAAEQ,OAAa5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAM6B,WAAYnC,EAAEoC,YAAY,OAAOx0B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEqC,UAAU,OAAOz0B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAEsC,SAAS,mBAAmB10B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEuC,UAAU,mBAAmB30B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGixB,EAAEwC,WAAW,qBAAqB90B,EAAIO,KAAkB,IAAZ+xB,EAAEQ,OAAc5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEyC,UAAU,OAAO70B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAE0C,SAAS,OAAO90B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAE2C,SAAS,OAAO/0B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,gBAAgBpB,EAAIqB,GAAGixB,EAAE4C,YAAY,OAAOh1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAE6C,SAAS,OAAOj1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,YAAYpB,EAAIqB,GAAGixB,EAAE8C,QAAQ,UAAUl1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAE+C,SAAS,SAASr1B,EAAIO,KAAkB,IAAZ+xB,EAAEQ,OAAc5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAMgB,SAAUtB,EAAEgD,WAAW,OAAOp1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,gBAAgBpB,EAAIqB,GAAGixB,EAAEiD,YAAY,OAAOr1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGixB,EAAEkD,WAAW,eAAet1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEmD,UAAU,eAAev1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEoD,UAAU,OAAOx1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,kBAAkBpB,EAAIqB,GAAGixB,EAAEqD,cAAc,SAAS31B,EAAIO,KAAkB,IAAZ+xB,EAAEQ,OAAc5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEsD,UAAU,OAAO11B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAEuD,SAAS,SAAS71B,EAAIO,KAAkB,IAAZ+xB,EAAEQ,OAAc5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,cAAcpB,EAAIqB,GAAGixB,EAAEwD,UAAU,SAAS91B,EAAIO,KAAkB,IAAZ+xB,EAAEQ,OAAc5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAMgB,SAAUtB,EAAEyD,UAAU,OAAO71B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGixB,EAAE0D,WAAW,OAAO91B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGixB,EAAE2D,WAAW,OAAO/1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAE4D,SAAS,eAAel2B,EAAIO,KAAkB,IAAZ+xB,EAAEQ,OAAc5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAMoB,SAAU1B,EAAE6D,UAAU,OAAOj2B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGixB,EAAE0D,WAAW,OAAO91B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,gBAAgBpB,EAAIqB,GAAGixB,EAAE2D,WAAW,OAAO/1B,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,aAAapB,EAAIqB,GAAGixB,EAAE4D,SAAS,eAAel2B,EAAIO,KAAkB,IAAZ+xB,EAAEQ,OAAc5yB,EAAG,MAAM,CAACiB,YAAY,OAAO,CAACjB,EAAG,MAAM,CAACiB,YAAY,YAAY,CAACnB,EAAIoB,GAAG,eAAepB,EAAIqB,GAAGixB,EAAE8D,WAAW,SAASp2B,EAAIO,SAASL,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI4yB,MAAMyD,UAAW/D,EAAEgE,cAAet2B,EAAIkyB,oBAAqBhyB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGixB,EAAEiE,SAASv2B,EAAIO,MAAM,IAAG,MACh3N,EACIC,GAAkB,GCoPtB,IACAC,KAAAA,aACAwO,MAAAA,CACAijB,oBAAAA,CACA/iB,KAAAA,QACAG,SAAAA,GAEA5D,MAAAA,CACAyD,KAAAA,MACAG,QAAAA,IAAAA,IAEAsjB,MAAAA,CACAzjB,KAAAA,OACAG,QAAAA,KACA,CACA+mB,UAAAA,GACAzC,SAAAA,GACAI,SAAAA,GACAK,SAAAA,GACAI,WAAAA,GACA+B,gBAAAA,GACA3D,OAAAA,GACA4D,UAAAA,GACAC,WAAAA,GACAC,UAAAA,GACAC,YAAAA,OAKAh2B,QAAAA,CACA+xB,gBAAAA,EAAAA,GACA,kDACA,4BACA,EACA,ICzR0P,MCOtP,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QCqFhC,IACAlyB,KAAAA,oBACA+E,WAAAA,CACAqxB,WAAAA,IAEA5nB,MAAAA,CACAvO,KAAAA,CACAyO,KAAAA,MACA/L,UAAAA,GAEAivB,WAAAA,CACAljB,KAAAA,OACA/L,UAAAA,GAEAyuB,cAAAA,CACA1iB,KAAAA,QACAG,SAAAA,GAEAyiB,cAAAA,CACA5iB,KAAAA,OACAG,QAAAA,IAEA0iB,OAAAA,CACA7iB,KAAAA,QACAG,SAAAA,GAEA6iB,UAAAA,CACAhjB,KAAAA,OACAG,QAAAA,KACA,CACA+mB,UAAAA,GACAzC,SAAAA,GACAI,SAAAA,GACAK,SAAAA,GACAI,WAAAA,GACA+B,gBAAAA,GACA3D,OAAAA,GACA4D,UAAAA,GACAC,WAAAA,GACAC,UAAAA,GACAC,YAAAA,OAKAl2B,OACA,OACAL,KAAAA,CACAM,OAAAA,GACAL,SAAAA,EACA4E,WAAAA,EACA4J,OAAAA,CACAlN,MAAAA,EACAzC,QAAAA,EACAsB,KAAAA,GACAE,OAAAA,GACAqE,QAAAA,GAEAitB,KAAAA,CACArwB,MAAAA,EACAoL,KAAAA,CACA8G,UAAAA,GACAwT,SAAAA,GACAqB,MAAAA,GACAC,OAAAA,GACAtmB,MAAAA,CAAAA,KAIA8G,MAAAA,CACAE,OAAAA,CACA,CAAAzF,IAAAA,OAAAqF,MAAAA,GAAAO,MAAAA,OACA,CAAA5F,IAAAA,QAAAqF,MAAAA,KAAAA,WAAAO,MAAAA,OACA,CAAA5F,IAAAA,aACA,CAAAA,IAAAA,WAAAqF,MAAAA,YACA,CAAArF,IAAAA,SACA,CAAAA,IAAAA,UACA,CAAAA,IAAAA,mBAAAqF,MAAAA,SACA,CAAArF,IAAAA,SAAAqF,MAAAA,GAAAO,MAAAA,SAGA2nB,OAAAA,CAAAA,UAAAA,WAAAA,QAAAA,QAAAA,MAAAA,OAAAA,OAAAA,SAAAA,YAAAA,UAAAA,WAAAA,YAEA,EACAxwB,QAAAA,CACA8nB,WAAAA,EAAAA,EAAAA,GACA,sCACA,oBACA,8BAEA,6BACA,CACA,EACAva,UAAAA,EAAAA,GACA,sBACA,wBACA,wBACA,EACA,sBACA,2BACA,2BAEA,UACA,sFACA,yBACA,yCAIA,CAHA,SACA,iDACA,wCACA,CAEA,0BACA,EACA2jB,SAAAA,GACA,uBACA,qBACA,EACAM,aAAAA,GAEA,IADA,SACA,mBACA0E,EAAAA,KAAAA,KAAAA,OAAAA,EAAAA,GAAAA,IAEA,mBACA,GAEA3mB,SAAAA,CACA+hB,sBACA,2CACA,oCAGA,IC1OiQ,MCO7P,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QCgEhC,IACAzxB,KAAAA,UACA+E,WAAAA,CACAuxB,YAAAA,GAAAC,kBAAAA,IAEAt2B,OACA,OACA4M,UAAAA,KAAAA,OAAAA,OAAAA,GACAI,WAAAA,KAAAA,OAAAA,OAAAA,WACArN,KAAAA,CACAM,OAAAA,GACAL,SAAAA,EACA4E,WAAAA,EACAoM,WAAAA,GACAtM,QAAAA,EACA8J,OAAAA,CACAlN,MAAAA,EACAjB,OAAAA,GACAqE,QAAAA,IAGAmE,QAAAA,CACAgnB,KAAAA,IACAC,IAAAA,KAEA6G,aAAAA,CACA9I,YAAAA,EACAra,UAAAA,GACAsd,OAAAA,IAEA9C,aAAAA,CACA,0EACA,6CACA,uDACA,qEACA,qEACA,+CACA,mEACA,oDACA,4DACA,4DACA,mDACA,sDACA,0DACA,2CAEAthB,KAAAA,CACAkqB,SAAAA,EACAC,MAAAA,EACAC,MAAAA,EACAC,SAAAA,EACAC,SAAAA,EACAC,MAAAA,EACAC,OAAAA,EACAC,OAAAA,EACAC,MAAAA,EACAC,MAAAA,EACAC,KAAAA,EACAC,QAAAA,EACAC,MAAAA,EACAC,MAAAA,GAEA1I,KAAAA,GAEA,EACAzpB,cAGA,IAFA,SACA,yBACA,mBACAoH,EAAAA,EAAAA,IAAAA,CAAA5J,SAAAA,EAAAA,GAAAmrB,SAAAA,EAAAA,EAAAA,KAAAA,IAAAA,MAEA,OAAAvhB,KAAAA,EACA,EACA,sBACA,UACA,EACArE,MAAAA,CACA,cAEA/H,QAAAA,CACA,YACA,qCACA,8CACA,oBACA,qBAEA,IACA,+FACA,qBAIA,CAHA,SACA,iDACA,iCACA,CAEA,oBACA,EACA,aAIA,GAHA,wBACA,oBAEA,iBACA,6EAGA,IAIA,IAHA,SACA,yBAEA,mBACA,gDACAoM,EAAAA,EAAAA,IAAAA,OAAAA,KAAAA,KAAAA,EAAAA,MAIAA,EAAAA,OAAAA,KAAAA,aAAAA,OAEA,OACAmhB,WAAAA,KAAAA,aAAAA,WACAra,UAAAA,KAAAA,aAAAA,UACAkkB,mBAAAA,GAEA,kBACA,2FACA,WACA,mCACA,gBAMA,CAHA,SACA,iDACA,qCACA,CAGA,mBACA,EACA,0BACA,UACA,EACA7pB,YACA,wBACA,EACA,sBACA,2BACA,2BAEA,UACA,0FACA,+BACA,UAIA,CAHA,SACA,iDACA,wCACA,CAEA,0BACA,EACAmiB,mBAAAA,GACA,mBACA,GAEAngB,SAAAA,CACAqgB,oBACA,qCACA,sCACA,iCACA,ICxP2R,MCOvR,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QClB5BzwB,GAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACA,EAAG,+BAA+B,CAACE,MAAM,CAAC,KAAOJ,EAAIK,OAAO,CAACH,EAAG,KAAK,CAACiB,YAAY,QAAQ,CAACnB,EAAIoB,GAAG,8CAA8ClB,EAAG,IAAI,CAACF,EAAIoB,GAAG,yFAAyFlB,EAAG,IAAI,CAACE,MAAM,CAAC,KAAO,sCAAsC,OAAS,WAAW,CAACJ,EAAIoB,GAAG,0DAA0DpB,EAAIoB,GAAG,sDAAsDlB,EAAG,SAAS,CAAC4B,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOE,iBAAwBjC,EAAIqR,KAAKlP,MAAM,KAAMC,UAAU,IAAI,CAAClC,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAKiR,cAAcpR,EAAG,gBAAgB,CAAC2E,IAAI,aAAazE,MAAM,CAAC,KAAO,oBAAoBF,EAAG,MAAM,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,UAAU,CAACJ,EAAIoB,GAAG,oDAAoDlB,EAAG,QAAQ,CAACiB,YAAY,2BAA2B,CAACjB,EAAG,QAAQ,CAACiB,YAAY,4BAA4Bf,MAAM,CAAC,GAAK,IAAI,GAAK,IAAI,GAAK,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,KAAO,QAAQ,IAAMJ,EAAImJ,QAAQ8uB,KAAK,IAAMj4B,EAAImJ,QAAQ+uB,MAAM71B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGq1B,MAAM5mB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGq1B,MAAO,SAA0B,kBAAR11B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,sBAAsB,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,IAAI,GAAK,IAAI,GAAK,MAAM,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,OAAS,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,GAAK,QAAQ,KAAO,SAAS,KAAO,MAAM,IAAMJ,EAAImJ,QAAQ8uB,KAAK,IAAMj4B,EAAImJ,QAAQ+uB,KAAK,MAAQl4B,EAAIiD,cAAcjD,EAAI8C,GAAGq1B,QAAQ91B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGq1B,MAAM5mB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGq1B,MAAO,SAA0B,kBAAR11B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,sBAAsB,GAAK1C,EAAI8C,GAAGq1B,MAAM/0B,SAA6DpD,EAAIO,KAAvDL,EAAG,0BAA0B,CAACF,EAAIoB,GAAG,cAAyBpB,EAAI8C,GAAGq1B,MAAM5J,QAAgKvuB,EAAIO,KAA3JL,EAAG,0BAA0B,CAACF,EAAIoB,GAAG,mBAAmBpB,EAAIqB,GAAGrB,EAAI8C,GAAGq1B,MAAMC,QAAQ7J,QAAQ0J,MAAM,QAAQj4B,EAAIqB,GAAGrB,EAAI8C,GAAGq1B,MAAMC,QAAQ7J,QAAQ2J,UAAmB,IAAI,GAAGh4B,EAAG,MAAM,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,uDAAuDlB,EAAG,QAAQ,CAACiB,YAAY,2BAA2B,CAACjB,EAAG,QAAQ,CAACiB,YAAY,4BAA4Bf,MAAM,CAAC,GAAK,IAAI,GAAK,IAAI,GAAK,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,KAAO,QAAQ,IAAMJ,EAAImJ,QAAQkvB,KAAK,IAAMr4B,EAAImJ,QAAQmvB,MAAMj2B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGy1B,OAAOhnB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGy1B,OAAQ,SAA0B,kBAAR91B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,uBAAuB,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,IAAI,GAAK,IAAI,GAAK,MAAM,CAACF,EAAG,gBAAgB,CAACyD,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,SAASC,GAAG,WAAW,MAAO,CAAC5D,EAAG,qBAAqB,CAACF,EAAIoB,GAAG,QAAQ,EAAE4C,OAAM,MAAS,CAAC9D,EAAG,eAAe,CAACE,MAAM,CAAC,GAAK,SAAS,KAAO,SAAS,KAAO,MAAM,IAAMJ,EAAImJ,QAAQkvB,KAAK,IAAMr4B,EAAImJ,QAAQmvB,KAAK,MAAQt4B,EAAIiD,cAAcjD,EAAI8C,GAAGy1B,SAASl2B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGy1B,OAAOhnB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGy1B,OAAQ,SAA0B,kBAAR91B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,uBAAuB,GAAK1C,EAAI8C,GAAGy1B,OAAOn1B,SAA6DpD,EAAIO,KAAvDL,EAAG,0BAA0B,CAACF,EAAIoB,GAAG,cAAyBpB,EAAI8C,GAAGy1B,OAAOhK,QAAkKvuB,EAAIO,KAA7JL,EAAG,0BAA0B,CAACF,EAAIoB,GAAG,mBAAmBpB,EAAIqB,GAAGrB,EAAI8C,GAAGy1B,OAAOH,QAAQ7J,QAAQ8J,MAAM,QAAQr4B,EAAIqB,GAAGrB,EAAI8C,GAAGy1B,OAAOH,QAAQ7J,QAAQ+J,UAAmB,IAAI,GAAGp4B,EAAG,eAAe,CAACE,MAAM,CAAC,UAAYiwB,OAAOrwB,EAAI6F,OAAOiZ,OAAO3f,IAAI,sBAAsB,IAAI2C,GAAG,CAAC,OAAS9B,EAAIswB,sBAAuBtwB,EAAIqvB,KAAKnpB,OAAS,EAAGhG,EAAG,sBAAsB,CAACE,MAAM,CAAC,KAAOJ,EAAIqvB,KAAK,cAAc,SAAS,kBAAkB,IAAIvtB,GAAG,CAAC,QAAU9B,EAAIuwB,cAAcvwB,EAAIO,KAAKL,EAAG,mBAAmB,CAACA,EAAG,OAAO,CAACE,MAAM,CAAC,GAAK,wBAAwB,CAACF,EAAG,cAAc,CAACiB,YAAY,OAAOf,MAAM,CAAC,OAASJ,EAAIK,KAAK2E,OAAO,UAAYhF,EAAIwwB,oBAAsBxwB,EAAI8C,GAAGwpB,cAAc,GAAGpsB,EAAG,YAAY,CAACE,MAAM,CAAC,SAAWJ,EAAIwwB,kBAAkB,OAAS,wBAAwB,CAACxwB,EAAIoB,GAAG,qCAAqClB,EAAG,cAAc,CAACiB,YAAY,2BAA4BnB,EAAIqvB,KAAKnpB,OAAS,EAAGhG,EAAG,cAAc,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,oBAAoBC,UAAU,CAAC,OAAQ,KAAQxG,YAAY,UAAUf,MAAM,CAAC,OAASJ,EAAIK,KAAKyO,OAAO9J,OAAO,KAAO,SAAS,QAAU,SAAS,KAAO,iBAAiB,MAAQ,kDAAkDgK,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAImO,UAAUhM,MAAM,KAAMC,UAAU,KAAKpC,EAAIO,MAAM,GAAGL,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,KAAK,MAAQ,iBAAiB,uBAAuB,GAAG,kBAAkB,GAAG,oBAAoB,IAAIiC,MAAM,CAACC,MAAOtC,EAAIK,KAAKyO,OAAOlN,KAAMY,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAKyO,OAAQ,OAAQrM,EAAI,EAAEC,WAAW,qBAAqB,CAACxC,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAKyO,OAAOnO,UAAUT,EAAG,IAAI,CAACF,EAAIoB,GAAG,6HAA6HlB,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAC/E,EAAG,cAAc,CAACE,MAAM,CAAC,KAAO,SAAS,OAASJ,EAAIK,KAAKyO,OAAO9J,OAAO,KAAO,SAAS,QAAU,UAAUgK,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAI2K,cAAcxI,MAAM,KAAMC,UAAU,KAAKlC,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKyO,OAAOlN,MAAO,CAAK,IAAI,CAAC5B,EAAIoB,GAAG,aAAa,IAAI,IAAI,IAAI,IAAI,EACrpK,EACIZ,GAAkB,GC2FtB,IACAC,KAAAA,yBACA+E,WAAAA,CACAuxB,YAAAA,GAAAC,kBAAAA,IAEAt2B,OACA,OACA4M,UAAAA,KAAAA,OAAAA,OAAAA,GACAI,WAAAA,KAAAA,OAAAA,OAAAA,WACArN,KAAAA,CACAM,OAAAA,GACAL,SAAAA,EACA4E,WAAAA,EACAoM,WAAAA,GACAtM,QAAAA,EACA8J,OAAAA,CACAlN,MAAAA,EACAjB,OAAAA,GACAqE,QAAAA,IAGAmE,QAAAA,CACA8uB,MAAAA,IACAC,KAAAA,IACAG,MAAAA,GACAC,KAAAA,IAEArB,aAAAA,CACA9I,YAAAA,EACAra,UAAAA,GACAsd,OAAAA,IAEA+G,MAAAA,EACAI,OAAAA,EACAlJ,KAAAA,GAEA,EACAzpB,YAAAA,CACAuyB,MAAAA,CAAA/0B,SAAAA,EAAAA,GAAAmrB,SAAAA,EAAAA,EAAAA,KAAAA,IAAAA,MACAgK,OAAAA,CAAAn1B,SAAAA,EAAAA,GAAAmrB,SAAAA,EAAAA,EAAAA,KAAAA,GAAAA,MAEA,sBACA,UACA,EACA5lB,MAAAA,CACA,cAEA/H,QAAAA,CACA,YACA,qCACA,8CACA,oBACA,qBAEA,IACA,8GACA,qBAIA,CAHA,SACA,iDACA,iCACA,CAEA,oBACA,EACA,aAIA,GAHA,wBACA,oBAEA,iBACA,6EAEA,IACA,OACAutB,WAAAA,KAAAA,aAAAA,WACAra,UAAAA,KAAAA,aAAAA,UACAkkB,mBAAAA,CAAAA,GAGA,gEACA,mEACAt3B,EAAAA,mBAAAA,OAAAA,KAAAA,aAAAA,OAEA,YACA,kHACA,uBACA,WACA,mCACA,gBAIA,CAHA,SACA,iDACA,qCACA,CAGA,mBACA,EACA,0BACA,UACA,EACAyN,YACA,wBACA,EACA,sBACA,2BACA,2BAEA,UACA,yGACA,+BACA,UAIA,CAHA,SACA,iDACA,wCACA,CAEA,0BACA,EACAmiB,mBAAAA,GACA,mBACA,GAEAngB,SAAAA,CACAqgB,oBACA,qCACA,sCACA,iCACA,IC3N0S,MCOtS,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QClB5BzwB,GAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACA,EAAG,+BAA+B,CAACE,MAAM,CAAC,KAAOJ,EAAIK,OAAO,CAACH,EAAG,KAAK,CAACiB,YAAY,QAAQ,CAACnB,EAAIoB,GAAG,wBAAwBlB,EAAG,IAAI,CAACF,EAAIoB,GAAG,cAAclB,EAAG,IAAI,CAACE,MAAM,CAAC,KAAO,sCAAsC,OAAS,WAAW,CAACJ,EAAIoB,GAAG,qDAAqDpB,EAAIoB,GAAG,wDAA0DpB,EAAIK,KAAKm4B,gBAA6Zx4B,EAAIO,KAAhZL,EAAG,MAAM,CAACiB,YAAY,QAAQ,CAACjB,EAAG,IAAI,CAACiB,YAAY,QAAQ,CAACjB,EAAG,SAAS,CAACF,EAAIoB,GAAG,mBAAmBpB,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAIy4B,WAAWC,SAASj4B,MAAM,MAAMT,EAAIqB,GAAGrB,EAAIy4B,WAAWlU,SAAS,MAAMvkB,EAAIqB,GAAGrB,EAAIy4B,WAAW7S,MAAM,MAAM5lB,EAAIqB,GAAGrB,EAAIy4B,WAAW3S,OAAO,OAAO5lB,EAAG,WAAW,CAAC4B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKm4B,iBAAmBx4B,EAAIK,KAAKm4B,eAAe,IAAI,CAACx4B,EAAIoB,GAAG,yBAAyB,GAAYlB,EAAG,aAAa,CAACiB,YAAY,OAAOkB,MAAM,CAACC,MAAOtC,EAAIK,KAAKm4B,gBAAiBh2B,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAM,kBAAmBoC,EAAI,EAAEC,WAAW,yBAAyB,CAACxC,EAAG,IAAI,CAACA,EAAG,SAAS,CAACF,EAAIoB,GAAG,sHAAsHlB,EAAG,sBAAsB,CAACE,MAAM,CAAC,UAAYiwB,OAAOrwB,EAAI6F,OAAOiZ,OAAO3f,KAAK2C,GAAG,CAAC,OAAS9B,EAAI24B,mBAAmB,CAAE34B,EAAI44B,gBAAiB14B,EAAG,IAAI,CAACA,EAAG,cAAc,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,OAASJ,EAAIK,KAAKw4B,YAAY,KAAO,YAAY7pB,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAI84B,OAAO32B,MAAM,KAAMC,UAAU,KAAMpC,EAAIK,KAAK04B,SAAU74B,EAAG,WAAW,CAACE,MAAM,CAAC,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKm4B,iBAAmBx4B,EAAIK,KAAKm4B,eAAe,IAAI,CAACx4B,EAAIoB,GAAG,eAAepB,EAAIO,MAAM,GAAGP,EAAIO,QAAQ,GAAGL,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAK24B,iBAAiB94B,EAAG,SAAS,CAAC4B,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOE,iBAAwBjC,EAAIqR,KAAKlP,MAAM,KAAMC,UAAU,IAAI,CAAEpC,EAAIK,KAAK04B,SAAU74B,EAAG,MAAM,CAACA,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAKiR,cAAcpR,EAAG,gBAAgB,CAAC2E,IAAI,aAAazE,MAAM,CAAC,KAAO,oBAAoBF,EAAG,MAAM,CAACiB,YAAY,yBAAyB,CAACjB,EAAG,QAAQ,CAACiB,YAAY,iDAAiD,CAACjB,EAAG,QAAQ,CAACA,EAAG,KAAK,CAACiB,YAAY,SAAS,CAACjB,EAAG,KAAK,CAACF,EAAIoB,GAAG,oBAAoBlB,EAAG,KAAK,CAACF,EAAIoB,GAAG,WAAWlB,EAAG,KAAK,CAACF,EAAIoB,GAAG,iBAAiBlB,EAAG,QAAQ,CAACA,EAAG,KAAK,CAACiB,YAAY,YAAY,CAACjB,EAAG,KAAK,CAACE,MAAM,CAAC,QAAU,MAAM,CAACJ,EAAIoB,GAAG,4BAA4BlB,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,aAAa,CAACJ,EAAIoB,GAAG,0BAA0BlB,EAAG,KAAK,CAACA,EAAG,gBAAgB,CAACE,MAAM,CAAC,GAAK,WAAW,QAAUJ,EAAI+C,KAAKszB,UAAU,MAAQr2B,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKspB,WAAW3yB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,qBAAqB,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKspB,SAAS/kB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKspB,SAAU,SAA0B,kBAAR7zB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAIi5B,uBAAwBj5B,EAAI+C,KAAKiK,KAAKspB,SAAW,EAAGp2B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,aAAa,CAACJ,EAAIoB,GAAG,yCAAyClB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,WAAW,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKimB,WAAW5wB,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKimB,SAAS1hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKimB,SAAU,SAA0B,kBAARxwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAASuG,eAAejzB,EAAIO,KAAMP,EAAI+C,KAAKiK,KAAKspB,SAAW,EAAGp2B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,aAAa,CAACJ,EAAIoB,GAAG,4CAA4ClB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,WAAW,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKkmB,WAAW7wB,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKkmB,SAAS3hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKkmB,SAAU,SAA0B,kBAARzwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkCxC,EAAG,OAAO,CAACF,EAAIoB,GAAG,YAAY,GAAGlB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAASwG,eAAelzB,EAAIO,KAAMP,EAAI+C,KAAKiK,KAAKspB,SAAW,EAAGp2B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,YAAY,CAACJ,EAAIoB,GAAG,gEAAgElB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,UAAU,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKksB,UAAU72B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKksB,QAAQ3nB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKksB,QAAS,SAA0B,kBAARz2B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAASwM,cAAcl5B,EAAIO,KAAKL,EAAG,KAAK,CAACiB,YAAY,YAAY,CAACjB,EAAG,KAAK,CAACE,MAAM,CAAC,QAAU,MAAM,CAACJ,EAAIoB,GAAG,0BAA0BlB,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,4CAA4ClB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,SAAS,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKmsB,SAAS92B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKmsB,OAAO5nB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKmsB,OAAQ,SAA0B,kBAAR12B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAASyM,aAAaj5B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,OAAO,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,2BAA2BC,UAAU,CAAC,OAAQ,EAAK,QAAS,KAAQxG,YAAY,OAAOf,MAAM,CAAC,MAAQ,wIAAwI,CAACF,EAAG,oBAAoB,CAACiB,YAAY,YAAYf,MAAM,CAAC,KAAO,kBAAkB,GAAGF,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,QAAQ,CAACJ,EAAIoB,GAAG,sEAAsElB,EAAG,KAAK,CAACA,EAAG,gBAAgB,CAACE,MAAM,CAAC,GAAK,wBAAwB,QAAUJ,EAAI+C,KAAKq2B,cAAc,MAAQp5B,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKqsB,wBAAwBh3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKqsB,sBAAsB9nB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKqsB,sBAAuB,SAA0B,kBAAR52B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,+CAAwF,IAAxC1C,EAAI+C,KAAKiK,KAAKqsB,sBAA6Bn5B,EAAG,MAAM,CAACiB,YAAY,QAAQ,CAACjB,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,MAAM,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKssB,MAAMj3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKssB,IAAI/nB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKssB,IAAK,SAA0B,kBAAR72B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,8BAA8B,GAAG1C,EAAIO,KAA8C,IAAxCP,EAAI+C,KAAKiK,KAAKqsB,sBAA6Bn5B,EAAG,MAAM,CAACiB,YAAY,kCAAkC,CAACjB,EAAG,eAAe,CAAC6H,YAAY,CAAC,MAAQ,SAAS3H,MAAM,CAAC,KAAO,QAAQ,KAAO,GAAG,IAAM,IAAIiC,MAAM,CAACC,MAAOtC,EAAIu5B,iBAAkB/2B,SAAS,SAAUC,GAAMzC,EAAIu5B,iBAAiB92B,CAAG,EAAEC,WAAW,sBAAsBxC,EAAG,OAAO,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAIu5B,kBAAkB,QAAQ,GAAGv5B,EAAIO,MAAM,GAAGL,EAAG,KAAK,CAACA,EAAG,OAAO,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,2BAA2BC,UAAU,CAAC,OAAQ,EAAK,QAAS,KAAQxG,YAAY,OAAOf,MAAM,CAAC,MAAQ,2GAA2G,CAACF,EAAG,oBAAoB,CAACiB,YAAY,YAAYf,MAAM,CAAC,KAAO,kBAAkB,GAAGJ,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAI6G,GAAG,SAAP7G,CAAiBA,EAAIw5B,mBAAmB,IAAI,SAASt5B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,qDAAqDlB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,SAAS,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKysB,SAASp3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKysB,OAAOloB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKysB,OAAQ,SAA0B,kBAARh3B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAAS+M,aAAav5B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,YAAY,CAACJ,EAAIoB,GAAG,4CAA4ClB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,UAAU,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAK0sB,UAAUr3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAK0sB,QAAQnoB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAK0sB,QAAS,SAA0B,kBAARj3B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiCxC,EAAG,OAAO,CAACF,EAAIoB,GAAG,YAAY,GAAGlB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAASgN,cAAcx5B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,YAAY,CAACJ,EAAIoB,GAAG,oDAAoDlB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,UAAU,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAK2sB,UAAUt3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAK2sB,QAAQpoB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAK2sB,QAAS,SAA0B,kBAARl3B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiCxC,EAAG,OAAO,CAACF,EAAIoB,GAAG,QAAQ,GAAGlB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAASiN,cAAcz5B,EAAG,KAAK,CAACiB,YAAY,YAAY,CAACjB,EAAG,KAAK,CAACE,MAAM,CAAC,QAAU,MAAM,CAACJ,EAAIoB,GAAG,wBAAwBlB,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,UAAU,CAACJ,EAAIoB,GAAG,wBAAwBlB,EAAG,KAAK,CAACA,EAAG,gBAAgB,CAACE,MAAM,CAAC,GAAK,QAAQ,QAAUJ,EAAI+C,KAAK62B,UAAU,MAAQ55B,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAK6sB,QAAQl2B,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,uBAAuB,EAAE4C,OAAM,IAAO,MAAK,EAAM,WAAW3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAK6sB,MAAMtoB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAK6sB,MAAO,SAA0B,kBAARp3B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI85B,uBAAwB95B,EAAI+C,KAAKiK,KAAK6sB,MAAQ,EAAG35B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,+BAA+BlB,EAAG,KAAK,CAACA,EAAG,gBAAgB,CAACE,MAAM,CAAC,GAAK,SAAS,QAAUJ,EAAI+C,KAAKg3B,WAAW,MAAQ/5B,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKgtB,SAAS33B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKgtB,OAAOzoB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKgtB,OAAQ,SAA0B,kBAARv3B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAASsN,aAAah6B,EAAIO,KAAKL,EAAG,KAAK,CAACiB,YAAY,YAAY,CAACjB,EAAG,KAAK,CAACE,MAAM,CAAC,QAAU,MAAM,CAACJ,EAAIoB,GAAG,6BAA6BlB,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,UAAU,CAACJ,EAAIoB,GAAG,yBAAyBlB,EAAG,KAAK,CAACA,EAAG,gBAAgB,CAACE,MAAM,CAAC,GAAK,QAAQ,QAAUJ,EAAI+C,KAAK0zB,UAAU,MAAQz2B,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKitB,QAAQ53B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKitB,MAAM1oB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKitB,MAAO,SAA0B,kBAARx3B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAASuN,YAAoC,GAAvBj6B,EAAI+C,KAAKiK,KAAKitB,OAAqC,GAAvBj6B,EAAI+C,KAAKiK,KAAKitB,MAAY/5B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACE,MAAM,CAAC,QAAU,MAAM,CAACF,EAAG,sBAAsB,CAACE,MAAM,CAAC,UAAYiwB,OAAOrwB,EAAI6F,OAAOiZ,OAAO3f,IAAI,gBAAgB,GAAG,UAAYa,EAAI+C,KAAKiK,KAAKktB,OAAOp4B,GAAG,CAAC,OAAS9B,EAAIm6B,aAAa,GAAGj6B,EAAG,QAAQF,EAAIO,KAA6B,GAAvBP,EAAI+C,KAAKiK,KAAKitB,OAAcj6B,EAAI+C,KAAKiK,KAAKitB,MAAQ,EAAG/5B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,YAAY,CAACJ,EAAIoB,GAAG,0DAA0DlB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,UAAU,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKotB,UAAU/3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKotB,QAAQ7oB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKotB,QAAS,SAA0B,kBAAR33B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiCxC,EAAG,OAAO,CAACF,EAAIoB,GAAG,KAAKlB,EAAG,MAAM,CAACF,EAAIoB,GAAG,OAAOpB,EAAIoB,GAAG,SAAS,GAAGlB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAAS0N,cAAcp6B,EAAIO,KAA6B,GAAvBP,EAAI+C,KAAKiK,KAAKitB,OAAcj6B,EAAI+C,KAAKiK,KAAKitB,MAAQ,EAAG/5B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,uDAAuDlB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,SAAS,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKqtB,SAASh4B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKqtB,OAAO9oB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKqtB,OAAQ,SAA0B,kBAAR53B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgCxC,EAAG,OAAO,CAACF,EAAIoB,GAAG,WAAWlB,EAAG,MAAM,CAACF,EAAIoB,GAAG,OAAOpB,EAAIoB,GAAG,KAAKlB,EAAG,MAAM,CAACF,EAAIoB,GAAG,UAAU,GAAGlB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAAS2N,aAAar6B,EAAIO,KAA6B,GAAvBP,EAAI+C,KAAKiK,KAAKitB,OAAcj6B,EAAI+C,KAAKiK,KAAKitB,MAAQ,EAAG/5B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,oEAAoElB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,SAAS,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKstB,SAASj4B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKstB,OAAO/oB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKstB,OAAQ,SAA0B,kBAAR73B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,GAAGxC,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAAS4N,aAAat6B,EAAIO,KAAKL,EAAG,KAAK,CAACiB,YAAY,YAAY,CAACjB,EAAG,KAAK,CAACE,MAAM,CAAC,QAAU,MAAM,CAACJ,EAAIoB,GAAG,6BAA6BlB,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,8CAA8ClB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,SAAS,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKutB,SAASl4B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKutB,OAAOhpB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKutB,OAAQ,SAA0B,kBAAR93B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgCxC,EAAG,OAAO,CAACF,EAAIoB,GAAG,SAAS,GAAGlB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAAS6N,aAAar6B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,oDAAoDlB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,SAAS,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKwtB,SAASn4B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKwtB,OAAOjpB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKwtB,OAAQ,SAA0B,kBAAR/3B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgCxC,EAAG,OAAO,CAACF,EAAIoB,GAAG,SAAS,GAAGlB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAAS8N,aAAat6B,EAAG,KAAK,CAACA,EAAG,KAAK,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,IAAM,WAAW,CAACJ,EAAIoB,GAAG,mCAAmClB,EAAG,KAAK,CAACA,EAAG,eAAe,CAACiB,YAAY,YAAYf,MAAM,CAAC,GAAK,SAAS,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKytB,SAASp4B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKytB,OAAOlpB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKytB,OAAQ,SAA0B,kBAARh4B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgCxC,EAAG,OAAO,CAACF,EAAIoB,GAAG,SAAS,GAAGlB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI+C,KAAK2pB,SAAS+N,mBAAmBv6B,EAAG,KAAK,CAACiB,YAAY,aAAa,CAACnB,EAAIoB,GAAG,wBAAwBlB,EAAG,eAAe,CAACE,MAAM,CAAC,UAAYiwB,OAAOrwB,EAAI6F,OAAOiZ,OAAO3f,IAAI,oBAAoBa,EAAIwxB,kBAAkB1vB,GAAG,CAAC,OAAS9B,EAAIswB,uBAAuB,GAAGtwB,EAAIO,KAAMP,EAAIqvB,KAAKnpB,OAAS,EAAGhG,EAAG,sBAAsB,CAACE,MAAM,CAAC,KAAOJ,EAAIqvB,KAAK,cAAc,SAAS,kBAAkB,IAAIvtB,GAAG,CAAC,QAAU9B,EAAIuwB,cAAcvwB,EAAIO,KAAKL,EAAG,mBAAmB,CAACA,EAAG,OAAO,CAACE,MAAM,CAAC,GAAK,wBAAwB,CAACF,EAAG,cAAc,CAACiB,YAAY,OAAOf,MAAM,CAAC,OAASJ,EAAIK,KAAK2E,OAAO,UAAYhF,EAAIwwB,oBAAsBxwB,EAAIK,KAAK04B,aAAa,GAAG74B,EAAG,YAAY,CAACE,MAAM,CAAC,SAAWJ,EAAIwwB,kBAAkB,OAAS,wBAAwB,CAACxwB,EAAIoB,GAAG,gEAAgElB,EAAG,cAAc,CAACiB,YAAY,2BAA4BnB,EAAIqvB,KAAKnpB,OAAS,EAAGhG,EAAG,cAAc,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,oBAAoBC,UAAU,CAAC,OAAQ,KAAQxG,YAAY,UAAUf,MAAM,CAAC,OAASJ,EAAIK,KAAKyO,OAAO9J,OAAO,KAAO,SAAS,QAAU,SAAS,KAAO,iBAAiB,MAAQ,kDAAkDgK,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAImO,UAAUhM,MAAM,KAAMC,UAAU,KAAKpC,EAAIO,MAAM,GAAGL,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,KAAK,MAAQ,iBAAiB,uBAAuB,GAAG,kBAAkB,GAAG,oBAAoB,IAAIiC,MAAM,CAACC,MAAOtC,EAAIK,KAAKyO,OAAOlN,KAAMY,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAKyO,OAAQ,OAAQrM,EAAI,EAAEC,WAAW,qBAAqB,CAACxC,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAKyO,OAAOnO,UAAUT,EAAG,IAAI,CAACF,EAAIoB,GAAG,2HAA2HlB,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAC/E,EAAG,cAAc,CAACE,MAAM,CAAC,KAAO,SAAS,OAASJ,EAAIK,KAAKyO,OAAO9J,OAAO,KAAO,SAAS,QAAU,UAAUgK,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAI2K,cAAcxI,MAAM,KAAMC,UAAU,KAAKlC,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKyO,OAAOlN,MAAO,CAAK,IAAI,CAAC5B,EAAIoB,GAAG,aAAa,IAAI,IAAI,IAAI,IAAI,EACzvhB,EACIZ,GAAkB,GCFlBT,GAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACA,EAAG,+BAA+B,CAACE,MAAM,CAAC,KAAOJ,EAAIK,OAAO,CAACH,EAAG,QAAQ,CAACiB,YAAY,QAAQ,CAACjB,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAKJ,EAAI8wB,aAAe,GAAK,IAAI,CAAC5wB,EAAG,gBAAgB,CAACiB,YAAY,OAAOwC,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAACE,MAAM,CAAC,SAAW,IAAI2D,SAAS,CAAC,MAAQ,OAAO,CAAC/D,EAAIoB,GAAG,6DAA6D,EAAE4C,OAAM,KAAQ3B,MAAM,CAACC,MAAOtC,EAAI2wB,UAAU+H,SAAUl2B,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI2wB,UAAW,WAAYluB,EAAI,EAAEC,WAAW,uBAAuB1C,EAAIoG,GAAIpG,EAAI2U,WAAWC,aAAa,SAASE,EAAExO,GAAG,OAAOpG,EAAG,SAAS,CAAC2D,IAAIyC,EAAEvC,SAAS,CAAC,MAAQ,CAAE5E,GAAI2V,EAAEmc,OAAQxwB,KAAMqU,EAAEoc,YAAa,CAAClxB,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGyT,EAAEoc,UAAU,MAAM,IAAG,GAAKlxB,EAAI8wB,aAAkhE9wB,EAAIO,KAAxgEL,EAAG,MAAM,CAAEF,EAAIM,QAAQK,OAAOuF,OAAS,EAAGhG,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIM,QAAQK,UAAUT,EAAG,MAAM,CAACA,EAAG,eAAe,CAACE,MAAM,CAAC,QAAUJ,EAAIM,QAAQikB,YAAavkB,EAAIM,QAAQikB,SAAWvkB,EAAImJ,QAAQob,QAAQre,OAAS,EAAGhG,EAAG,gBAAgB,CAACiB,YAAY,OAAOwC,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAACE,MAAM,CAAC,SAAW,IAAI2D,SAAS,CAAC,MAAQ,OAAO,CAAC/D,EAAIoB,GAAG,2BAA2B,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI2wB,UAAUpM,QAAS/hB,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI2wB,UAAW,UAAWluB,EAAI,EAAEC,WAAW,sBAAsB1C,EAAIoG,GAAIpG,EAAImJ,QAAQob,SAAS,SAASjlB,EAAEgH,GAAG,OAAOpG,EAAG,SAAS,CAAC2D,IAAIyC,EAAEvC,SAAS,CAAC,MAAQzE,EAAEmB,OAAO,CAACT,EAAIoB,GAAGpB,EAAIqB,GAAG/B,EAAEmB,MAAM,MAAMT,EAAIqB,GAAG/B,EAAE8K,eAAe,IAAG,GAAGpK,EAAIO,KAAKL,EAAG,eAAe,CAACE,MAAM,CAAC,QAAUJ,EAAIM,QAAQqoB,UAAW3oB,EAAIM,QAAQqoB,OAAS3oB,EAAImJ,QAAQwf,MAAMziB,OAAS,GAAKlG,EAAImJ,QAAQob,QAAQre,OAAS,EAAGhG,EAAG,gBAAgB,CAACiB,YAAY,OAAOwC,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAACE,MAAM,CAAC,SAAW,IAAI2D,SAAS,CAAC,MAAQ,OAAO,CAAC/D,EAAIoB,GAAG,uBAAuB,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI2wB,UAAU/K,KAAMpjB,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI2wB,UAAW,OAAQluB,EAAI,EAAEC,WAAW,mBAAmB1C,EAAIoG,GAAIpG,EAAImJ,QAAQwf,OAAO,SAASrpB,EAAEgH,GAAG,OAAOpG,EAAG,SAAS,CAAC2D,IAAIyC,EAAEvC,SAAS,CAAC,MAAQzE,IAAI,CAACU,EAAIoB,GAAGpB,EAAIqB,GAAG/B,KAAK,IAAG,GAAGU,EAAIO,KAAKL,EAAG,eAAe,CAACE,MAAM,CAAC,QAAUJ,EAAIM,QAAQsoB,WAAY5oB,EAAIM,QAAQsoB,QAAU5oB,EAAImJ,QAAQyf,OAAO1iB,OAAS,GAAKlG,EAAImJ,QAAQwf,MAAMziB,OAAS,GAAKlG,EAAImJ,QAAQob,QAAQre,OAAS,EAAGhG,EAAG,gBAAgB,CAACiB,YAAY,OAAOwC,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAACE,MAAM,CAAC,SAAW,IAAI2D,SAAS,CAAC,MAAQ,OAAO,CAAC/D,EAAIoB,GAAG,wBAAwB,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI2wB,UAAU7K,MAAOtjB,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI2wB,UAAW,QAASluB,EAAI,EAAEC,WAAW,oBAAoB1C,EAAIoG,GAAIpG,EAAImJ,QAAQyf,QAAQ,SAAStpB,EAAEgH,GAAG,OAAOpG,EAAG,SAAS,CAAC2D,IAAIyC,EAAEvC,SAAS,CAAC,MAAQzE,IAAI,CAACU,EAAIoB,GAAGpB,EAAIqB,GAAG/B,KAAK,IAAG,GAAGU,EAAIO,KAAKP,EAAI8V,GAAG,YAAY,IAAI,IAAa,GAAG5V,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAKJ,EAAI8wB,aAAe,GAAK,IAAI,CAAC5wB,EAAG,cAAc,CAACE,MAAM,CAAC,cAAcJ,EAAI2U,WAAW,OAAS,QAAQ,qBAAqB,GAAG,qBAAgD,OAA3B3U,EAAI2wB,UAAU+H,SAAoB,GAAK,CAAC14B,EAAI2wB,UAAU+H,WAAW52B,GAAG,CAAC,iBAAiB9B,EAAIid,aAAa,IAAI,IAAI,IAAI,EACzkG,EACIzc,GAAkB,GCyDtB,IACAC,KAAAA,cACA+E,WAAAA,CACAgW,WAAAA,IAEAvM,MAAAA,CACA3B,UAAAA,CACA6B,KAAAA,OACA/L,UAAAA,GAEA0tB,aAAAA,CACA3hB,KAAAA,QACAG,SAAAA,GAEAorB,UAAAA,CACAvrB,KAAAA,OACA/L,UAAAA,EACAkM,QAAAA,OAGA5O,OACA,OACAL,KAAAA,CACAM,OAAAA,GACAL,SAAAA,EACA4E,WAAAA,GAEAyP,WAAAA,CAAAA,EACAxL,QAAAA,CACAob,QAAAA,GACAoE,MAAAA,GACAC,OAAAA,IAEA+H,UAAAA,CACA+H,SAAAA,KACAnU,QAAAA,KACAqB,KAAAA,KACAE,MAAAA,MAEAxlB,QAAAA,CACAK,OAAAA,GACA4jB,SAAAA,EACAoE,OAAAA,EACAC,QAAAA,GAGA,EACA,sBACA,UACA,EACAhoB,QAAAA,CACA,YACA,oBACA,qBAEA,IACA,qFAGA,GAFA,uBAEA,2CACA,qBACA,yEACA,sCAAAzB,GAAAA,EAAAA,GAAAA,OAAAsB,KAAAA,EAAAA,GAAAA,UACA,CAIA,CAHA,SACA,iDACA,iCACA,CAEA,oBACA,EACA,mBACA,uBACA,uBACA,wBAEA,IACA,wHACA,2BAIA,CAHA,SACA,iDACA,oCACA,CAEA,uBACA,CACA,EACA,iBACA,uBACA,sBAEA,OACAqT,UAAAA,CAAAA,KAAAA,UAAAA,UACAyQ,QAAAA,CAAAA,KAAAA,UAAAA,UAGA,IACA,8FACA,yBAIA,CAHA,SACA,iDACA,oCACA,CAEA,qBACA,EACA,kBACA,uBACA,uBAEA,OACAzQ,UAAAA,CAAAA,KAAAA,UAAAA,UACAyQ,QAAAA,CAAAA,KAAAA,UAAAA,SACAoE,MAAAA,CAAAA,KAAAA,UAAAA,OAGA,IACA,+FACA,0BAIA,CAHA,SACA,iDACA,oCACA,CAEA,sBACA,EACA,kBACA,WACA,6BAEA,4BACA,GAEAhgB,MAAAA,CACA,+BACA,kBACA,mCACA,EACA,8BACA,gBACA,mCACA,EACA,2BACA,iBACA,mCACA,EACAgyB,gBACA,mCACA,GASAxqB,SAAAA,CACAyqB,mBACA,8BACA,EACAjJ,kBACA,6BACA,EACAkJ,eACA,0BACA,EACAF,gBACA,2BACA,ICpOiQ,MCO7P,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QCuShC,IACAl6B,KAAAA,iBACA+E,WAAAA,CACAs1B,kBAAAA,GAAA/D,YAAAA,GAAAC,kBAAAA,IAEAt2B,OACA,OACA4M,UAAAA,KAAAA,OAAAA,OAAAA,GACAI,WAAAA,KAAAA,OAAAA,OAAAA,WACArN,KAAAA,CACAM,OAAAA,GACAL,SAAAA,EACA04B,cAAAA,GACAH,aAAAA,EACA3zB,WAAAA,EACAoM,WAAAA,GACAtM,QAAAA,EACA+zB,UAAAA,EACAP,iBAAAA,EACA1pB,OAAAA,CACAlN,MAAAA,EACAjB,OAAAA,GACAqE,QAAAA,IAGAjC,KAAAA,CACAq2B,cAAAA,GACA3C,UAAAA,GACAsD,WAAAA,GACA1D,UAAAA,GACAuD,UAAAA,GACAlN,SAAAA,CAAAA,EACA1f,KAAAA,CAAAA,GAEAusB,iBAAAA,EACAd,WAAAA,CACAC,SAAAA,KACAnU,QAAAA,KACAqB,KAAAA,KACAE,MAAAA,MAEAmR,aAAAA,CACA9I,YAAAA,EACAra,UAAAA,GACAyQ,QAAAA,GACAoE,MAAAA,GACAC,OAAAA,IAEAyG,KAAAA,GAEA,EACAzpB,YAAAA,CACA7C,KAAAA,CACAiK,KAAAA,CACA+tB,KAAAA,CAAA33B,SAAAA,EAAAA,IACAkzB,SAAAA,CAAAlzB,SAAAA,EAAAA,IACA6vB,SAAAA,CAAA7vB,UAAAA,EAAAA,EAAAA,KAAAA,WAAA,qCACA8vB,SAAAA,CAAA9vB,UAAAA,EAAAA,EAAAA,KAAAA,WAAA,qCACA81B,QAAAA,CAAA91B,UAAAA,EAAAA,EAAAA,KAAAA,WAAA,qCACA+1B,OAAAA,CAAA/1B,SAAAA,EAAAA,IACAk2B,IAAAA,CAAAl2B,SAAAA,EAAAA,IACAq2B,OAAAA,CAAAr2B,SAAAA,EAAAA,IACAs2B,QAAAA,CAAAt2B,SAAAA,EAAAA,IACAu2B,QAAAA,CAAAv2B,SAAAA,EAAAA,IACA42B,OAAAA,CAAA52B,SAAAA,EAAAA,IACAy2B,MAAAA,CAAAz2B,SAAAA,EAAAA,IACA62B,MAAAA,CAAA72B,SAAAA,EAAAA,IACA82B,MAAAA,CAAA92B,SAAAA,EAAAA,IACAg3B,QAAAA,CAAAh3B,SAAAA,EAAAA,IACAi3B,OAAAA,CAAAj3B,SAAAA,EAAAA,IACAk3B,OAAAA,CAAAl3B,SAAAA,EAAAA,IACAm3B,OAAAA,CAAAn3B,SAAAA,EAAAA,IACAo3B,OAAAA,CAAAp3B,SAAAA,EAAAA,IACAq3B,OAAAA,CAAAr3B,SAAAA,EAAAA,IACA43B,KAAAA,CAAA53B,SAAAA,EAAAA,IACAmzB,KAAAA,CAAAnzB,SAAAA,EAAAA,IACA63B,OAAAA,CAAA73B,SAAAA,EAAAA,IACA83B,SAAAA,CAAA93B,SAAAA,EAAAA,IACA+3B,QAAAA,CAAAA,EACA9B,sBAAAA,CAAAj2B,SAAAA,EAAAA,OAIA,sBACA,UACA,EACAuF,MAAAA,CACA,cAEA/H,QAAAA,CACA,YACA,qCACA,8CACA,oBACA,qBAEA,IACA,gGACA,iBACA,qBAIA,CAHA,SACA,iDACA,iCACA,CAEA,oBACA,EACA,eAKA,GAJA,2BACA,yBACA,sBAEA,qBAGA,IACA,4MACA,iBACA,iBACA,sBACA,4BAIA,CAHA,SACA,iDACA,wCACA,MAXA,oEAcA,wBACA,EACA,aAIA,GAHA,wBACA,oBAEA,iBACA,wEACA,uBAEA,IAGA,IAFA,SACA,8BACA,mBACA,4GACA,aACA,yCACAoM,EAAAA,EAAAA,IAAAA,OAAAA,KAAAA,KAAAA,KAAAA,EAAAA,KACA,2CACAA,EAAAA,aAAAA,OAAAA,KAAAA,mBAEAA,EAAAA,EAAAA,IAAAA,OAAAA,KAAAA,KAAAA,KAAAA,EAAAA,MAKA,OACAmhB,WAAAA,KAAAA,aAAAA,WACAra,UAAAA,KAAAA,aAAAA,UACAwT,SAAAA,KAAAA,aAAAA,QACAqB,MAAAA,KAAAA,aAAAA,MACAC,OAAAA,KAAAA,aAAAA,OACAoP,mBAAAA,GAEA,YACA,oGACA,uBACA,WACA,mCACA,gBAIA,CAHA,SACA,iDACA,qCACA,CAGA,mBACA,EACA7pB,YACA,wBACA,EACA,sBACA,2BACA,2BAEA,UACA,2FACA,+BACA,UAIA,CAHA,SACA,iDACA,wCACA,CAEA,0BACA,EACA,0BACA,UACA,EACAwqB,iBAAAA,GACA,iBACA,EACArI,mBAAAA,GACA,mBACA,EACA6J,SAAAA,GACA,oBACA,mCACA,EACAiB,WAAAA,EAAAA,EAAAA,EAAAA,QACA,sBACA,kDACA,kBACA,QAEA,CACA,GAEAjrB,SAAAA,CACAyoB,kBACA,wCACA,gCACA,6BACA,4BACA,EACApI,oBACA,qCACA,sCACA,oCACA,kCACA,iCACA,EACAyI,mBACA,uEACA,EACAa,mBACA,oEACA,EACAN,qBACA,iCACA,mEACA,uBACA,gEAGA,sBACA,EACAhI,mBACA,OACA1d,UAAAA,CAAAA,KAAAA,WAAAA,UACAyQ,QAAAA,CAAAA,KAAAA,WAAAA,SACAoE,MAAAA,CAAAA,KAAAA,WAAAA,MACAC,OAAAA,CAAAA,KAAAA,WAAAA,OAEA,ICpjBkS,MCO9R,IAAY,OACd,GACA,GACA,IACA,EACA,KACA,KACA,MAIF,GAAe,GAAiB,QClB5B7oB,GAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAG,OAAOA,EAAG,MAAM,CAACA,EAAG,+BAA+B,CAACE,MAAM,CAAC,KAAOJ,EAAIK,OAAO,CAACH,EAAG,KAAK,CAACiB,YAAY,QAAQ,CAACnB,EAAIoB,GAAG,2BAA2BlB,EAAG,IAAI,CAACF,EAAIoB,GAAG,cAAclB,EAAG,IAAI,CAACE,MAAM,CAAC,KAAO,sCAAsC,OAAS,WAAW,CAACJ,EAAIoB,GAAG,qDAAqDpB,EAAIoB,GAAG,wDAA0DpB,EAAIK,KAAKm4B,gBAAySx4B,EAAIO,KAA5RL,EAAG,MAAM,CAACiB,YAAY,QAAQ,CAACjB,EAAG,IAAI,CAACiB,YAAY,QAAQ,CAACjB,EAAG,SAAS,CAACF,EAAIoB,GAAG,mBAAmBpB,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGrB,EAAIq7B,gBAAgB,OAAOn7B,EAAG,WAAW,CAAC4B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKm4B,iBAAmBx4B,EAAIK,KAAKm4B,eAAe,IAAI,CAACx4B,EAAIoB,GAAG,yBAAyB,GAAYlB,EAAG,aAAa,CAACiB,YAAY,OAAOkB,MAAM,CAACC,MAAOtC,EAAIK,KAAKm4B,gBAAiBh2B,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAM,kBAAmBoC,EAAI,EAAEC,WAAW,yBAAyB,CAACxC,EAAG,IAAI,CAACA,EAAG,SAAS,CAACF,EAAIoB,GAAG,sHAAsHlB,EAAG,sBAAsB,CAACE,MAAM,CAAC,UAAYiwB,OAAOrwB,EAAI6F,OAAOiZ,OAAO3f,KAAK2C,GAAG,CAAC,OAAS9B,EAAI24B,mBAAmB,CAAE34B,EAAI44B,gBAAiB14B,EAAG,IAAI,CAACA,EAAG,cAAc,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,OAASJ,EAAIK,KAAKw4B,YAAY,KAAO,YAAY7pB,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAI84B,OAAO32B,MAAM,KAAMC,UAAU,KAAMpC,EAAIK,KAAK04B,SAAU74B,EAAG,WAAW,CAACE,MAAM,CAAC,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKm4B,iBAAmBx4B,EAAIK,KAAKm4B,eAAe,IAAI,CAACx4B,EAAIoB,GAAG,eAAepB,EAAIO,MAAM,GAAGP,EAAIO,QAAQ,GAAGL,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAK24B,iBAAiB94B,EAAG,SAAS,CAAC4B,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOE,iBAAwBjC,EAAIqR,KAAKlP,MAAM,KAAMC,UAAU,IAAI,CAAEpC,EAAIK,KAAK04B,SAAU74B,EAAG,MAAM,CAACA,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAKiR,cAAcpR,EAAG,gBAAgB,CAAC2E,IAAI,aAAazE,MAAM,CAAC,KAAO,oBAAoBF,EAAG,KAAK,CAACiB,YAAY,QAAQ,CAACnB,EAAIoB,GAAG,gBAAgBlB,EAAG,IAAI,CAACF,EAAIoB,GAAG,6FAA6FlB,EAAG,IAAI,CAACE,MAAM,CAAC,KAAO,gDAAgD,OAAS,WAAW,CAACJ,EAAIoB,GAAG,kDAAkDpB,EAAIoB,GAAG,mFAAmFlB,EAAG,eAAe,CAACA,EAAG,qBAAqB,CAACE,MAAM,CAAC,QAAU,GAAG,iBAAiB,kBAAkB,QAAUJ,EAAImJ,QAAQqtB,iBAAiBn0B,MAAM,CAACC,MAAOtC,EAAImJ,QAAQ+oB,oBAAqB1vB,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAImJ,QAAS,sBAAuB1G,EAAI,EAAEC,WAAW,kCAAkC,GAAGxC,EAAG,KAAK,CAACiB,YAAY,QAAQ,CAACnB,EAAIoB,GAAG,gBAAgBlB,EAAG,UAAU,CAACE,MAAM,CAAC,QAAU,OAAO,KAAOJ,EAAI+C,KAAKiK,KAAK9G,OAAS,IAAI,CAAClG,EAAIoB,GAAG,8CAA+CpB,EAAI+C,KAAKiK,KAAK9G,OAAS,EAAGhG,EAAG,MAAM,CAACiB,YAAY,yBAAyB,CAACjB,EAAG,QAAQ,CAACiB,YAAY,gEAAgE,CAACjB,EAAG,QAAQ,CAACA,EAAG,KAAK,CAACiB,YAAY,SAAS,CAACjB,EAAG,KAAK,CAACiB,YAAY,eAAe,CAACnB,EAAIoB,GAAG,UAAUlB,EAAG,KAAK,CAACF,EAAIoB,GAAG,UAAWpB,EAAImJ,QAAQ+oB,oBAAqBhyB,EAAG,KAAK,CAACF,EAAIoB,GAAG,WAAWpB,EAAIO,KAAMP,EAAImJ,QAAQ+oB,oBAAqBhyB,EAAG,KAAK,CAACF,EAAIoB,GAAG,gBAAgBpB,EAAIO,KAAOP,EAAImJ,QAAQ+oB,oBAAgDlyB,EAAIO,KAA/BL,EAAG,KAAK,CAACF,EAAIoB,GAAG,WAAsBpB,EAAImJ,QAAQ+oB,oBAA8ClyB,EAAIO,KAA7BL,EAAG,KAAK,CAACF,EAAIoB,GAAG,SAAkBlB,EAAG,KAAK,CAACF,EAAIoB,GAAG,eAAelB,EAAG,KAAK,CAACF,EAAIoB,GAAG,UAAUlB,EAAG,KAAK,CAACiB,YAAY,eAAe,CAACnB,EAAIoB,GAAG,gBAAgBlB,EAAG,QAAQF,EAAIoG,GAAIpG,EAAIs7B,cAAc,SAAShJ,EAAEhsB,GAAG,OAAOpG,EAAG,KAAK,CAAC2D,IAAIyC,GAAG,CAACpG,EAAG,KAAK,CAACiB,YAAY,eAAe,CAACjB,EAAG,SAAS,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,0BAA0BpF,MAAO,wBAAyBI,WAAW,0BAA0BiF,UAAU,CAAC,OAAQ,EAAK,OAAQ,KAAQxG,YAAY,qBAAqBf,MAAM,CAAC,KAAO,UAAU0B,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAO/B,EAAIu7B,OAAOjJ,EAAE,IAAI,CAACpyB,EAAG,oBAAoB,CAACE,MAAM,CAAC,KAAO,CAAC,MAAO,YAAY,KAAKF,EAAG,KAAK,CAAEF,EAAImJ,QAAQqyB,UAAWt7B,EAAG,OAAO,CAACA,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGisB,OAAOlwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGisB,KAAKhhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGisB,KAAM,SAA0B,kBAAR9vB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,wCAAwC,GAAG1C,EAAIO,KAAOP,EAAImJ,QAAQqyB,UAAuDx7B,EAAIO,KAAhDL,EAAG,OAAO,CAACF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGixB,EAAEC,MAAM,SAAmBvyB,EAAImJ,QAAQ+oB,oBAAqBhyB,EAAG,KAAK,CAAEF,EAAImJ,QAAQqyB,UAAWt7B,EAAG,OAAO,CAACA,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGksB,SAASnwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGksB,OAAOjhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGksB,OAAQ,SAA0B,kBAAR/vB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,0CAA0C,GAAG1C,EAAIO,KAAOP,EAAImJ,QAAQqyB,UAAyDx7B,EAAIO,KAAlDL,EAAG,OAAO,CAACF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGixB,EAAEE,QAAQ,SAAkBxyB,EAAIO,KAAMP,EAAImJ,QAAQ+oB,oBAAqBhyB,EAAG,KAAK,CAAEF,EAAImJ,QAAQqyB,UAAWt7B,EAAG,OAAO,CAACA,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGiwB,OAAOl0B,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGiwB,KAAKhlB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGiwB,KAAM,SAA0B,kBAAR9zB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,wCAAwC,GAAG1C,EAAIO,KAAOP,EAAImJ,QAAQqyB,UAAuDx7B,EAAIO,KAAhDL,EAAG,OAAO,CAACF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGixB,EAAEiE,MAAM,SAAkBv2B,EAAIO,KAAOP,EAAImJ,QAAQ+oB,oBAAkhBlyB,EAAIO,KAAjgBL,EAAG,KAAK,CAAEF,EAAImJ,QAAQqyB,UAAWt7B,EAAG,OAAO,CAACA,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGmsB,OAAO,IAAM,IAAI,IAAM,MAAMpwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGmsB,MAAMlhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGmsB,MAAO,SAA0B,kBAARhwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,yCAAyC,GAAG1C,EAAIO,KAAOP,EAAImJ,QAAQqyB,UAAwDx7B,EAAIO,KAAjDL,EAAG,OAAO,CAACF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGixB,EAAEG,OAAO,SAA6BzyB,EAAImJ,QAAQ+oB,oBAAwgBlyB,EAAIO,KAAvfL,EAAG,KAAK,CAAEF,EAAImJ,QAAQqyB,UAAWt7B,EAAG,OAAO,CAACA,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGosB,KAAK,IAAM,IAAI,IAAM,MAAMrwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGosB,IAAInhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAGC,KAAKiK,KAAKqhB,MAAM/nB,GAAGosB,IAAK,SAA0B,kBAARjwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,uCAAuC,GAAG1C,EAAIO,KAAOP,EAAImJ,QAAQqyB,UAAsDx7B,EAAIO,KAA/CL,EAAG,OAAO,CAACF,EAAIoB,GAAG,IAAIpB,EAAIqB,GAAGixB,EAAEI,KAAK,SAA2BxyB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI+C,KAAK8vB,OAAQP,EAAEQ,YAAY5yB,EAAG,KAAK,CAACF,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAI2yB,gBAAgB3yB,EAAI+C,KAAKszB,UAAW/D,EAAEgE,cAAcp2B,EAAG,KAAK,CAACiB,YAAY,eAAe,CAACjB,EAAG,SAAS,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,0BAA0BpF,MAAO,SAAUI,WAAW,WAAWiF,UAAU,CAAC,OAAQ,EAAK,OAAQ,KAAQxG,YAAY,oBAAoBf,MAAM,CAAC,KAAO,UAAU0B,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAO/B,EAAIy7B,YAAYnJ,EAAE,IAAI,CAACpyB,EAAG,oBAAoB,CAACE,MAAM,CAAC,KAAO,CAAC,MAAO,aAAa,MAAM,IAAG,OAAOJ,EAAIO,KAAKL,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,KAAK,MAAQ,iBAAiB,WAAa,GAAG,uBAAuB,GAAG,kBAAkB,GAAG,oBAAoB,IAAIiC,MAAM,CAACC,MAAOtC,EAAIK,KAAKq7B,GAAGzJ,KAAKrwB,KAAMY,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAKq7B,GAAGzJ,KAAM,OAAQxvB,EAAI,EAAEC,WAAW,sBAAsB,CAACxC,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,qBAAqB,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASpJ,OAAOlwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASpJ,KAAKhhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASpJ,KAAM,SAA0B,kBAAR9vB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,8BAA8B,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,KAAK,CAAEJ,EAAImJ,QAAQ+oB,oBAAqBhyB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,KAAK,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,qBAAqB,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASnJ,SAASnwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASnJ,OAAOjhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASnJ,OAAQ,SAA0B,kBAAR/vB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,KAAK,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,yBAAyB,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASpF,OAAOl0B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASpF,KAAKhlB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASpF,KAAM,SAA0B,kBAAR9zB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,8BAA8B,IAAI,IAAI,GAAGxC,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,KAAK,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,UAAU,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAImJ,QAAQyyB,WAAW,MAAQ57B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASlJ,QAAQpwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASlJ,MAAMlhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASlJ,MAAO,SAA0B,kBAARhwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,+BAA+B,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,KAAK,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,QAAQ,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,IAAM,IAAI,IAAM,KAAK,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASjJ,MAAMrwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASjJ,IAAInhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASjJ,IAAK,SAA0B,kBAARjwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,6BAA6B,IAAI,IAAI,IAAI,IAAI,GAAGxC,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,cAAc,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK8vB,OAAO,MAAQ7yB,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS7I,SAASzwB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS7I,OAAOvhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS7I,OAAQ,SAA0B,kBAARrwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,GAA4B,IAAxB1C,EAAI27B,SAAS7I,OAAc5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,SAAS,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAKszB,UAAU,MAAQr2B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASrF,WAAW3yB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,uBAAuB,CAACE,MAAM,CAAC,MAAQ,IAAI,CAACJ,EAAIoB,GAAG,uBAAuB,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASrF,SAAS/kB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASrF,SAAU,SAA0B,kBAAR7zB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,4CAA4C,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS5I,YAAY1wB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS5I,UAAUxhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS5I,UAAW,SAA0B,kBAARtwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,kEAAkE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS3I,YAAY3wB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS3I,UAAUzhB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS3I,UAAW,SAA0B,kBAARvwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,sCAAsC,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS1I,WAAW5wB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS1I,SAAS1hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS1I,SAAU,SAA0B,kBAARxwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,iDAAiD,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASzI,WAAW7wB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASzI,SAAS3hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASzI,SAAU,SAA0B,kBAARzwB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,oDAAoD,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASxI,UAAU9wB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASxI,QAAQ5hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASxI,QAAS,SAA0B,kBAAR1wB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,2DAA2D,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASvI,WAAW/wB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASvI,SAAS7hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASvI,SAAU,SAA0B,kBAAR3wB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,4DAA4D,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAStI,OAAOhxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAStI,KAAK9hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAStI,KAAM,SAA0B,kBAAR5wB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,8BAA8B,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,IAAxBP,EAAI27B,SAAS7I,OAAc5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,2DAA2D,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASrI,UAAUjxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASrI,QAAQ/hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASrI,QAAS,SAA0B,kBAAR7wB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,0DAA0D,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASpI,WAAWlxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASpI,SAAShiB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASpI,SAAU,SAA0B,kBAAR9wB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,yCAAyC,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,IAAM,IAAI,IAAM,IAAI,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASnI,UAAUnxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASnI,QAAQjiB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASnI,QAAS,SAA0B,kBAAR/wB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,uCAAuC,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,IAAM,IAAI,IAAM,IAAI,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASlI,SAASpxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASlI,OAAOliB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASlI,OAAQ,SAA0B,kBAARhxB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,mCAAmC,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK0zB,UAAU,MAAQz2B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASjI,SAASrxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASjI,OAAOniB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASjI,OAAQ,SAA0B,kBAARjxB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,IAAI,CAACF,EAAIoB,GAAG,wCAAwClB,EAAG,sBAAsB,CAACE,MAAM,CAAC,UAAYiwB,OAAOrwB,EAAI6F,OAAOiZ,OAAO3f,IAAI,gBAAgB,GAAG,UAAYa,EAAI67B,cAAc77B,EAAI27B,SAAShI,SAAS7xB,GAAG,CAAC,OAAS9B,EAAIm6B,aAAa,IAAI,GAAGn6B,EAAIO,KAA8B,IAAxBP,EAAI27B,SAAS7I,OAAc5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,eAAe,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK6wB,SAAS,MAAQ5zB,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS9H,UAAUlwB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,6BAA6B,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS9H,QAAQtiB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS9H,QAAS,SAA0B,kBAARpxB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,wDAAwD,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS7H,SAASzxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS7H,OAAOviB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS7H,OAAQ,SAA0B,kBAARrxB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,oEAAoE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS5H,cAAc1xB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS5H,YAAYxiB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS5H,YAAa,SAA0B,kBAARtxB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,qCAAqC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,IAAxBP,EAAI27B,SAAS7I,OAAc5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,cAAc,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAKixB,SAAS,MAAQh0B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS1H,UAAUtwB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,4BAA4B,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS1H,QAAQ1iB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS1H,QAAS,SAA0B,kBAARxxB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,uDAAuD,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASzH,SAAS7xB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASzH,OAAO3iB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASzH,OAAQ,SAA0B,kBAARzxB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,+DAA+D,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASxH,UAAU9xB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASxH,QAAQ5iB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASxH,QAAS,SAA0B,kBAAR1xB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,IAAxBP,EAAI27B,SAAS7I,OAAc5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,4DAA4D,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAStI,OAAOhxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAStI,KAAK9hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAStI,KAAM,SAA0B,kBAAR5wB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,8BAA8B,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,qDAAqD,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASvH,SAAS/xB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASvH,OAAO7iB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASvH,OAAQ,SAA0B,kBAAR3xB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,IAAxBP,EAAI27B,SAAS7I,OAAc5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,2BAA2B,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAKsxB,SAAS,MAAQr0B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASG,aAAan4B,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,0BAA0B,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASG,WAAWvqB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASG,WAAY,SAA0B,kBAARr5B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,oCAAoC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,4DAA4D,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAStI,OAAOhxB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAStI,KAAK9hB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAStI,KAAM,SAA0B,kBAAR5wB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,8BAA8B,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,IAAxBP,EAAI27B,SAAS7I,OAAc5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,2CAA2C,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK2zB,WAAW,MAAQ12B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASpH,UAAUlyB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASpH,QAAQhjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASpH,QAAS,SAA0B,kBAAR9xB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,gCAAgC,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASnH,UAAUnyB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASnH,QAAQjjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASnH,QAAS,SAA0B,kBAAR/xB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,qDAAqD,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASvH,SAAS/xB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASvH,OAAO7iB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASvH,OAAQ,SAA0B,kBAAR3xB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,IAAxBP,EAAI27B,SAAS7I,OAAc5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,WAAW,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK0xB,WAAW,MAAQz0B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASjH,YAAY/wB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,yBAAyB,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASjH,UAAUnjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASjH,UAAW,SAA0B,kBAARjyB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,wEAAwE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAShH,WAAWtyB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAShH,SAASpjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAShH,SAAU,SAA0B,kBAARlyB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,gEAAgE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS/G,UAAUvyB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS/G,QAAQrjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS/G,QAAS,SAA0B,kBAARnyB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,iEAAiE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS9G,WAAWxyB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS9G,SAAStjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS9G,SAAU,SAA0B,kBAARpyB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,kEAAkE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS7G,YAAYzyB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS7G,UAAUvjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS7G,UAAW,SAA0B,kBAARryB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,KAAxBP,EAAI27B,SAAS7I,OAAe5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,sCAAsC,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK4zB,UAAU,MAAQ32B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS5G,WAAWpxB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,6BAA6B,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS5G,SAASxjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS5G,SAAU,SAA0B,kBAARtyB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,yCAAyC,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK0zB,UAAU,MAAQz2B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS3G,UAAU3yB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS3G,QAAQzjB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS3G,QAAS,SAA0B,kBAARvyB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,IAAI,CAACF,EAAIoB,GAAG,8CAA8ClB,EAAG,sBAAsB,CAACE,MAAM,CAAC,UAAYiwB,OAAOrwB,EAAI6F,OAAOiZ,OAAO3f,IAAI,gBAAgB,GAAG,UAAYa,EAAI67B,cAAc77B,EAAI27B,SAAS1G,UAAUnzB,GAAG,CAAC,OAAS9B,EAAI+7B,eAAe,GAAG77B,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,gEAAgE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASzG,aAAa7yB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASzG,WAAW3jB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASzG,WAAY,SAA0B,kBAARzyB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,oCAAoC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,mCAAmC,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASxG,UAAU9yB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASxG,QAAQ5jB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASxG,QAAS,SAA0B,kBAAR1yB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,2FAA2F,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASvG,SAAS/yB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASvG,OAAO7jB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASvG,OAAQ,SAA0B,kBAAR3yB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,gCAAgC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,wCAAwC,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,IAAM,IAAI,IAAM,IAAI,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAStG,UAAUhzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAStG,QAAQ9jB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAStG,QAAS,SAA0B,kBAAR5yB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,KAAxBP,EAAI27B,SAAS7I,OAAe5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,yBAAyB,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK6wB,SAAS,MAAQ5zB,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASrG,WAAW3xB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,6BAA6B,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASrG,SAAS/jB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASrG,SAAU,SAA0B,kBAAR7yB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,wFAAwF,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,IAAM,IAAI,IAAM,IAAI,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASpG,aAAalzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASpG,WAAWhkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASpG,WAAY,SAA0B,kBAAR9yB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,oCAAoC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,oFAAoF,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASnG,YAAYnzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASnG,UAAUjkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASnG,UAAW,SAA0B,kBAAR/yB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,0FAA0F,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASlG,WAAWpzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASlG,SAASlkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASlG,SAAU,SAA0B,kBAARhzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,qCAAqC,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASjG,WAAWrzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASjG,SAASnkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASjG,SAAU,SAA0B,kBAARjzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,qEAAqE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,IAAM,IAAI,IAAM,IAAI,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAShG,eAAetzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAShG,aAAapkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAShG,aAAc,SAA0B,kBAARlzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,sCAAsC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,KAAxBP,EAAI27B,SAAS7I,OAAe5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,uDAAuD,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS/F,WAAWvzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS/F,SAASrkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS/F,SAAU,SAA0B,kBAARnzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,GAAK,MAAM,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,4DAA4D,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,IAAM,IAAI,IAAM,IAAI,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS9F,UAAUxzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS9F,QAAQtkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS9F,QAAS,SAA0B,kBAARpzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,KAAxBP,EAAI27B,SAAS7I,OAAe5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,0CAA0C,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK6zB,YAAY,MAAQ52B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS7F,WAAWzzB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS7F,SAASvkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS7F,SAAU,SAA0B,kBAARrzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,kCAAkC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,KAAxBP,EAAI27B,SAAS7I,OAAe5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,wBAAwB,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAK6wB,SAAS,MAAQ5zB,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS5F,UAAUpyB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,6BAA6B,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS5F,QAAQxkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS5F,QAAS,SAA0B,kBAARtzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,8GAA8G,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS3F,YAAY3zB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS3F,UAAUzkB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS3F,UAAW,SAA0B,kBAARvzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,4CAA4C,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAAS1F,YAAY5zB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAAS1F,UAAU1kB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAAS1F,UAAW,SAA0B,kBAARxzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,uFAAuF,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASzF,UAAU7zB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASzF,QAAQ3kB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASzF,QAAS,SAA0B,kBAARzzB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,KAAxBP,EAAI27B,SAAS7I,OAAe5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,uBAAuB,CAACF,EAAG,gBAAgB,CAACE,MAAM,CAAC,QAAUJ,EAAI+C,KAAKixB,SAAS,MAAQh0B,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASxF,UAAUxyB,YAAY3D,EAAI4D,GAAG,CAAC,CAACC,IAAI,QAAQC,GAAG,WAAW,MAAO,CAAC5D,EAAG,SAAS,CAAC6D,SAAS,CAAC,MAAQ,IAAI,CAAC/D,EAAIoB,GAAG,4BAA4B,EAAE4C,OAAM,IAAO,MAAK,EAAM,YAAY3B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASxF,QAAQ5kB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASxF,QAAS,SAA0B,kBAAR1zB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,qEAAqE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASK,YAAY35B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASK,UAAUzqB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASK,UAAW,SAA0B,kBAARv5B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,oDAAoD,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASM,aAAa55B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASM,WAAW1qB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASM,WAAY,SAA0B,kBAARx5B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,oCAAoC,IAAI,GAAGxC,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,uEAAuE,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASO,UAAU75B,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASO,QAAQ3qB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASO,QAAS,SAA0B,kBAARz5B,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,iCAAiC,IAAI,IAAI,GAAG1C,EAAIO,KAA8B,KAAxBP,EAAI27B,SAAS7I,OAAe5yB,EAAG,QAAQ,CAACA,EAAG,QAAQ,CAACE,MAAM,CAAC,KAAO,OAAO,CAACF,EAAG,eAAe,CAACE,MAAM,CAAC,MAAQ,2JAA2J,CAACF,EAAG,eAAe,CAACiB,YAAY,SAASf,MAAM,CAAC,KAAO,SAAS,KAAO,MAAM,MAAQJ,EAAIiD,cAAcjD,EAAI8C,GAAG64B,SAASvF,YAAY/zB,MAAM,CAACC,MAAOtC,EAAI8C,GAAG64B,SAASvF,UAAU7kB,OAAQ/O,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAI8C,GAAG64B,SAASvF,UAAW,SAA0B,kBAAR3zB,EAAkBA,EAAI+O,OAAQ/O,EAAK,EAAEC,WAAW,mCAAmC,IAAI,IAAI,GAAG1C,EAAIO,KAAKL,EAAG,UAAU,CAACiB,YAAY,OAAOf,MAAM,CAAC,QAAU,UAAU,KAAOJ,EAAI8C,GAAG64B,SAASQ,YAAY,CAACn8B,EAAIoB,GAAG,oEAAoElB,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAC/E,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,YAAY,SAAWJ,EAAI8C,GAAG64B,SAASQ,WAAWr6B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKq7B,GAAGzJ,KAAKrwB,MAAO,CAAK,IAAI,CAAC5B,EAAIoB,GAAG,SAAS,IAAI,GAAGlB,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,KAAK,MAAQ,iBAAiB,uBAAuB,GAAG,kBAAkB,GAAG,oBAAoB,IAAIiC,MAAM,CAACC,MAAOtC,EAAIK,KAAKq7B,GAAG5sB,OAAOlN,KAAMY,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAKq7B,GAAG5sB,OAAQ,OAAQrM,EAAI,EAAEC,WAAW,wBAAwB,CAACxC,EAAG,IAAI,CAACF,EAAIoB,GAAG,wEAAwElB,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAC/E,EAAG,cAAc,CAACE,MAAM,CAAC,KAAO,SAAS,QAAS,EAAM,KAAO,SAAS,QAAU,UAAU4O,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAIo8B,gBAAgBj6B,MAAM,KAAMC,UAAU,KAAKlC,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKq7B,GAAG5sB,OAAOlN,MAAO,CAAK,IAAI,CAAC5B,EAAIoB,GAAG,aAAa,KAAOpB,EAAImJ,QAAQqyB,UAAkwBx7B,EAAIO,KAA3vBL,EAAG,MAAM,CAACA,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,WAAW0B,GAAG,CAAC,MAAQ9B,EAAIq8B,QAAQ,CAACr8B,EAAIoB,GAAG,sBAAuBpB,EAAI+C,KAAKiK,KAAK9G,OAAS,EAAGhG,EAAG,WAAW,CAACiB,YAAY,cAAcf,MAAM,CAAC,KAAO,SAAS,QAAU,SAAS0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAImJ,QAAQqyB,WAAY,CAAI,IAAI,CAACx7B,EAAIoB,GAAG,qBAAqBpB,EAAIO,KAAMP,EAAI+C,KAAKiK,KAAK9G,OAAS,EAAGhG,EAAG,WAAW,CAACiB,YAAY,cAAcf,MAAM,CAAC,KAAO,SAAS,QAAU,SAAS0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKi8B,cAAe,CAAI,IAAI,CAACt8B,EAAIoB,GAAG,6BAA6BpB,EAAIO,KAAKL,EAAG,WAAW,CAACiB,YAAY,cAAcf,MAAM,CAAC,KAAO,SAAS,QAAU,SAAS0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKk8B,aAAa36B,MAAO,CAAI,IAAI,CAAC5B,EAAIoB,GAAG,+BAA+B,GAAapB,EAAI+C,KAAKiK,KAAK9G,OAAS,EAAGhG,EAAG,MAAM,CAAEF,EAAImJ,QAAQqyB,WAAax7B,EAAImJ,QAAQ+oB,oBAAqBhyB,EAAG,IAAI,CAACF,EAAIoB,GAAG,2KAA2KpB,EAAIO,KAAMP,EAAImJ,QAAQqyB,YAAcx7B,EAAImJ,QAAQ+oB,oBAAqBhyB,EAAG,IAAI,CAACF,EAAIoB,GAAG,uJAAuJpB,EAAIO,KAAMP,EAAImJ,QAAQqyB,UAAWt7B,EAAG,MAAM,CAACA,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,WAAW0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAImJ,QAAQqyB,WAAY,CAAK,IAAI,CAACx7B,EAAIoB,GAAG,8BAA8B,GAAGpB,EAAIO,KAAKL,EAAG,UAAU,CAACiB,YAAY,OAAOf,MAAM,CAAC,QAAU,UAAU,KAAOJ,EAAImJ,QAAQ+oB,qBAAuBlyB,EAAIw8B,sBAAsB,CAACx8B,EAAIoB,GAAG,oHAAoHlB,EAAG,UAAU,CAACiB,YAAY,OAAOf,MAAM,CAAC,QAAU,UAAU,MAAQJ,EAAImJ,QAAQ+oB,qBAAuBlyB,EAAIy8B,iBAAiB,CAACz8B,EAAIoB,GAAG,8GAA8G,GAAGpB,EAAIO,KAAKL,EAAG,KAAK,CAACiB,YAAY,aAAa,CAACnB,EAAIoB,GAAG,wBAAwBlB,EAAG,eAAe,CAACE,MAAM,CAAC,UAAYiwB,OAAOrwB,EAAI6F,OAAOiZ,OAAO3f,IAAI,oBAAoBa,EAAIwxB,kBAAkB1vB,GAAG,CAAC,OAAS9B,EAAIswB,uBAAuB,GAAGtwB,EAAIO,KAAMP,EAAIqvB,KAAKnpB,OAAS,EAAGhG,EAAG,sBAAsB,CAACE,MAAM,CAAC,KAAOJ,EAAIqvB,KAAK,cAAc,SAAS,kBAAkB,GAAG,UAAU,GAAG,UAAYrvB,EAAI08B,aAAa56B,GAAG,CAAC,QAAU9B,EAAIuwB,cAAcvwB,EAAIO,KAAKL,EAAG,mBAAmB,CAACA,EAAG,OAAO,CAACE,MAAM,CAAC,GAAK,wBAAwB,CAACF,EAAG,cAAc,CAACiB,YAAY,OAAOf,MAAM,CAAC,OAASJ,EAAIK,KAAK2E,OAAO,UAAYhF,EAAIwwB,oBAAsBxwB,EAAIK,KAAK04B,aAAa,GAAG74B,EAAG,YAAY,CAACE,MAAM,CAAC,SAAWJ,EAAIwwB,kBAAkB,OAAS,wBAAwB,CAACxwB,EAAIoB,GAAG,gEAAgElB,EAAG,cAAc,CAACiB,YAAY,2BAA4BnB,EAAIqvB,KAAKnpB,OAAS,EAAGhG,EAAG,cAAc,CAACuH,WAAW,CAAC,CAAChH,KAAK,YAAYiH,QAAQ,oBAAoBC,UAAU,CAAC,OAAQ,KAAQxG,YAAY,UAAUf,MAAM,CAAC,OAASJ,EAAIK,KAAKyO,OAAO9J,OAAO,KAAO,SAAS,QAAU,SAAS,KAAO,iBAAiB,MAAQ,kDAAkDgK,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAImO,UAAUhM,MAAM,KAAMC,UAAU,KAAKpC,EAAIO,MAAM,GAAGL,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,KAAK,MAAQ,iBAAiB,uBAAuB,GAAG,kBAAkB,GAAG,oBAAoB,IAAIiC,MAAM,CAACC,MAAOtC,EAAIK,KAAKyO,OAAOlN,KAAMY,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAKyO,OAAQ,OAAQrM,EAAI,EAAEC,WAAW,qBAAqB,CAACxC,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAKyO,OAAOnO,UAAUT,EAAG,IAAI,CAACF,EAAIoB,GAAG,yHAAyHlB,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAC/E,EAAG,cAAc,CAACE,MAAM,CAAC,KAAO,SAAS,OAASJ,EAAIK,KAAKyO,OAAO9J,OAAO,KAAO,SAAS,QAAU,UAAUgK,SAAS,CAAC,MAAQ,SAASjN,GAAQ,OAAO/B,EAAI2K,cAAcxI,MAAM,KAAMC,UAAU,KAAKlC,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKyO,OAAOlN,MAAO,CAAK,IAAI,CAAC5B,EAAIoB,GAAG,aAAa,IAAI,GAAGlB,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,KAAK,MAAS,qCAAoCJ,EAAIq7B,iBAAiB,WAAa,IAAIh5B,MAAM,CAACC,MAAOtC,EAAIK,KAAKi8B,aAAc95B,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAM,eAAgBoC,EAAI,EAAEC,WAAW,sBAAsB,CAACxC,EAAG,cAAc,CAACE,MAAM,CAAC,yBAAyBJ,EAAImJ,QAAQ+oB,oBAAoB,MAAQlyB,EAAI+C,KAAK2pB,SAAS,MAAQ1sB,EAAI08B,eAAex8B,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAC/E,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKi8B,cAAe,CAAK,IAAI,CAACt8B,EAAIoB,GAAG,SAAS,IAAI,GAAGlB,EAAG,UAAU,CAACE,MAAM,CAAC,KAAO,KAAK,MAAQ,mCAAmC,uBAAuB,GAAG,kBAAkB,GAAG,oBAAoB,IAAIiC,MAAM,CAACC,MAAOtC,EAAIK,KAAKk8B,aAAa36B,KAAMY,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAKk8B,aAAc,OAAQ95B,EAAI,EAAEC,WAAW,2BAA2B,CAACxC,EAAG,aAAa,CAACE,MAAM,CAAC,OAASJ,EAAIK,KAAKk8B,aAAa57B,UAAUT,EAAG,SAAS,CAACiB,YAAY,gBAAgBf,MAAM,CAAC,gBAAgB,QAAQiC,MAAM,CAACC,MAAOtC,EAAIK,KAAKk8B,aAAa5yB,SAAUnH,SAAS,SAAUC,GAAMzC,EAAIgC,KAAKhC,EAAIK,KAAKk8B,aAAc,WAAY95B,EAAI,EAAEC,WAAW,+BAA+B,CAACxC,EAAG,QAAQ,CAACE,MAAM,CAAC,MAAQ,WAAW,CAACF,EAAG,IAAI,CAACF,EAAIoB,GAAG,8KAA8KlB,EAAG,IAAI,CAACF,EAAIoB,GAAG,+LAA+LlB,EAAG,IAAI,CAACE,MAAM,CAAC,KAAO,sCAAsC,OAAS,WAAW,CAACJ,EAAIoB,GAAG,qDAAqDpB,EAAIoB,GAAG,oDAAoDlB,EAAG,QAAQ,CAACE,MAAM,CAAC,MAAQ,WAAW,CAACF,EAAG,UAAU,CAACE,MAAM,CAAC,QAAU,OAAO,MAAQJ,EAAIK,KAAKk8B,aAAaI,WAAW,CAAC38B,EAAIoB,GAAG,4LAA4LlB,EAAG,IAAI,CAACF,EAAIoB,GAAG,6BAA6BlB,EAAG,eAAe,CAAC2E,IAAI,UAAUzE,MAAM,CAAC,GAAK,UAAU,QAAUJ,EAAIynB,iBAAiB3lB,GAAG,CAAC,oBAAoB9B,EAAI0nB,aAAa,kBAAkB1nB,EAAI2nB,eAAeznB,EAAG,UAAU,CAACiB,YAAY,OAAOf,MAAM,CAAC,QAAU,UAAU,KAAOJ,EAAIK,KAAKk8B,aAAaI,WAAW,CAAC38B,EAAIoB,GAAG,sGAAsG,IAAI,GAAIpB,EAAIK,KAAKk8B,aAAaK,SAAU18B,EAAG,OAAOF,EAAIO,KAAKL,EAAG,MAAM,CAACE,MAAM,CAAC,KAAO,gBAAgB6E,KAAK,gBAAgB,CAAqC,IAAnCjF,EAAIK,KAAKk8B,aAAa5yB,UAAmB3J,EAAIK,KAAKk8B,aAAaI,SAA2X38B,EAAIO,KAArXL,EAAG,OAAO,CAACA,EAAG,IAAI,CAACiB,YAAY,kBAAkBf,MAAM,CAAC,KAAQ,8BAA6BJ,EAAI0N,cAAc1N,EAAI68B,8BAA8B78B,EAAIyM,sBAAsB,CAACzM,EAAIoB,GAAG,mBAAmBlB,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKk8B,aAAa5yB,SAAW,CAAC,IAAI,CAAC3J,EAAIoB,GAAG,aAAa,GAAYlB,EAAG,WAAW,CAACiB,YAAY,OAAOf,MAAM,CAAC,KAAO,SAAS,QAAU,aAAa0B,GAAG,CAAC,MAAQ,SAASC,GAAQ/B,EAAIK,KAAKk8B,aAAa36B,MAAO,CAAK,IAAI,CAAC5B,EAAIoB,GAAGpB,EAAIqB,GAAGrB,EAAIK,KAAKk8B,aAAaI,SAAW,QAAU,cAAc,IAAI,IAAI,IAAI,IAAI,EACh17C,EACIn8B,GAAkB,GCqqBtB,IACAC,KAAAA,oBACA+E,WAAAA,CACAs1B,kBAAAA,GAAA/D,YAAAA,GAAAC,kBAAAA,GAAAH,WAAAA,GAAA9O,YAAAA,MAEArnB,OACA,OACA4M,UAAAA,KAAAA,OAAAA,OAAAA,GACAI,WAAAA,KAAAA,OAAAA,OAAAA,WACArN,KAAAA,CACAM,OAAAA,GACAL,SAAAA,EACA04B,cAAAA,GACAH,aAAAA,EACA3zB,WAAAA,EACAoM,WAAAA,GACAtM,QAAAA,EACA+zB,UAAAA,EACAP,iBAAAA,EACA1pB,OAAAA,CACAlN,MAAAA,EACAjB,OAAAA,GACAqE,QAAAA,GAEAu3B,aAAAA,CACA36B,MAAAA,EACAjB,OAAAA,GACAqE,QAAAA,EACA23B,UAAAA,EACAhzB,SAAAA,GAEA+xB,GAAAA,CACA5sB,OAAAA,CACAlN,MAAAA,EACAoL,KAAAA,CAAAA,GAEAilB,KAAAA,CACArwB,MAAAA,IAGA06B,cAAAA,GAEA7U,gBAAAA,CACApf,IAAAA,sCACA2f,QAAAA,KAAAA,qBACAC,cAAAA,OACA6U,QAAAA,KAEAnB,SAAAA,CAAAA,EACA54B,KAAAA,CACA2pB,SAAAA,GACA1f,KAAAA,GACAqpB,UAAAA,GACAzC,SAAAA,GACAI,SAAAA,GACAK,SAAAA,GACAI,WAAAA,GACA+B,gBAAAA,GACA3D,OAAAA,GACA4D,UAAAA,GACAC,WAAAA,GACAC,UAAAA,GACAC,YAAAA,IAEAztB,QAAAA,CACA+oB,qBAAAA,EACAsE,gBAAAA,CACA,CAAA5rB,KAAAA,yBAAAtI,OAAAA,GACA,CAAAsI,KAAAA,mBAAAtI,OAAAA,IAEAk5B,WAAAA,EACAI,WAAAA,CACA,CAAAt5B,MAAAA,EAAAsI,KAAAA,WACA,CAAAtI,MAAAA,EAAAsI,KAAAA,YACA,CAAAtI,MAAAA,EAAAsI,KAAAA,SACA,CAAAtI,MAAAA,EAAAsI,KAAAA,SACA,CAAAtI,MAAAA,EAAAsI,KAAAA,OACA,CAAAtI,MAAAA,EAAAsI,KAAAA,QACA,CAAAtI,MAAAA,EAAAsI,KAAAA,QACA,CAAAtI,MAAAA,EAAAsI,KAAAA,UACA,CAAAtI,MAAAA,EAAAsI,KAAAA,aACA,CAAAtI,MAAAA,GAAAsI,KAAAA,WACA,CAAAtI,MAAAA,GAAAsI,KAAAA,YACA,CAAAtI,MAAAA,GAAAsI,KAAAA,cAGA6tB,WAAAA,CACAC,SAAAA,KACAnU,QAAAA,KACAqB,KAAAA,KACAE,MAAAA,MAEAmR,aAAAA,CACA9I,YAAAA,EACAra,UAAAA,GACAyQ,QAAAA,GACAoE,MAAAA,GACAC,OAAAA,IAEAyG,KAAAA,GACA0N,mBAAAA,GAEA,EACAn3B,YAAAA,CACA7C,KAAAA,CACAiK,KAAAA,CACA5J,SAAAA,EAAAA,GACAirB,MAAAA,CACAkE,KAAAA,CAAAnvB,SAAAA,EAAAA,IACAqvB,MAAAA,CAAArvB,SAAAA,EAAAA,GAAAmrB,SAAAA,EAAAA,EAAAA,IAAAA,EAAAA,KACAmE,IAAAA,CAAAtvB,SAAAA,EAAAA,GAAAmrB,SAAAA,EAAAA,EAAAA,IAAAA,EAAAA,KACAgI,KAAAA,CAAAnzB,SAAAA,EAAAA,IACAovB,OAAAA,CAAApvB,SAAAA,EAAAA,OAIAu4B,SAAAA,CACApJ,KAAAA,CAAAnvB,SAAAA,EAAAA,IACAqvB,MAAAA,CAAArvB,SAAAA,EAAAA,GAAAmrB,SAAAA,EAAAA,EAAAA,IAAAA,EAAAA,KACAmE,IAAAA,CAAAtvB,SAAAA,EAAAA,GAAAmrB,SAAAA,EAAAA,EAAAA,IAAAA,EAAAA,KACAgI,KAAAA,CAAAnzB,SAAAA,EAAAA,IACA0vB,OAAAA,CAAA1vB,SAAAA,EAAAA,IACA4vB,UAAAA,CAAA5vB,SAAAA,EAAAA,IACAkzB,SAAAA,CAAAlzB,SAAAA,EAAAA,IACA2vB,UAAAA,CAAA3vB,SAAAA,EAAAA,IACA6vB,SAAAA,CAAA7vB,SAAAA,EAAAA,IACA8vB,SAAAA,CAAA9vB,SAAAA,EAAAA,IACA+vB,QAAAA,CAAA/vB,SAAAA,EAAAA,IACAgwB,SAAAA,CAAAhwB,SAAAA,EAAAA,IACAiwB,KAAAA,CAAAjwB,SAAAA,EAAAA,IACAkwB,QAAAA,CAAAlwB,SAAAA,EAAAA,IACAywB,QAAAA,CAAAzwB,SAAAA,EAAAA,IACA0wB,OAAAA,CAAA1wB,SAAAA,EAAAA,IACA2wB,YAAAA,CAAA3wB,SAAAA,EAAAA,IACA6wB,QAAAA,CAAA7wB,SAAAA,EAAAA,IACA8wB,OAAAA,CAAA9wB,SAAAA,EAAAA,IACA04B,WAAAA,CAAA14B,SAAAA,EAAAA,IACAoxB,QAAAA,CAAApxB,SAAAA,EAAAA,IACAgxB,OAAAA,CAAAhxB,SAAAA,EAAAA,IACAuxB,SAAAA,CAAAvxB,SAAAA,EAAAA,IACAsxB,UAAAA,CAAAtxB,SAAAA,EAAAA,IACAwxB,QAAAA,CAAAxxB,SAAAA,EAAAA,IACAyxB,SAAAA,CAAAzxB,SAAAA,EAAAA,IACA0xB,UAAAA,CAAA1xB,SAAAA,EAAAA,IACA2xB,SAAAA,CAAA3xB,SAAAA,EAAAA,IACA8xB,WAAAA,CAAA9xB,SAAAA,EAAAA,IACAkyB,SAAAA,CAAAlyB,SAAAA,EAAAA,IACAmyB,WAAAA,CAAAnyB,SAAAA,EAAAA,IACAoyB,UAAAA,CAAApyB,SAAAA,EAAAA,IACAqyB,SAAAA,CAAAryB,SAAAA,EAAAA,IACAsyB,SAAAA,CAAAtyB,SAAAA,EAAAA,IACAuyB,aAAAA,CAAAvyB,SAAAA,EAAAA,IACAwyB,SAAAA,CAAAxyB,SAAAA,EAAAA,IACAyyB,QAAAA,CAAAzyB,SAAAA,EAAAA,IACA0yB,SAAAA,CAAA1yB,SAAAA,EAAAA,IACA4yB,UAAAA,CAAA5yB,SAAAA,EAAAA,IACA2yB,QAAAA,CAAA3yB,SAAAA,EAAAA,IACA6yB,UAAAA,CAAA7yB,SAAAA,EAAAA,IACA8yB,QAAAA,CAAA9yB,SAAAA,EAAAA,IACA+wB,QAAAA,CAAA/wB,SAAAA,EAAAA,IACAmxB,QAAAA,CAAAnxB,SAAAA,EAAAA,IACAmwB,SAAAA,CAAAnwB,SAAAA,EAAAA,IACAowB,QAAAA,CAAApwB,SAAAA,EAAAA,IACAqwB,OAAAA,CAAArwB,SAAAA,EAAAA,IACA+xB,QAAAA,CAAA/xB,SAAAA,EAAAA,IACAgyB,OAAAA,CAAAhyB,SAAAA,EAAAA,IACAiyB,QAAAA,CAAAjyB,SAAAA,EAAAA,IACA+yB,QAAAA,CAAA/yB,SAAAA,EAAAA,IACA44B,UAAAA,CAAA54B,SAAAA,EAAAA,IACA64B,WAAAA,CAAA74B,SAAAA,EAAAA,IACA84B,QAAAA,CAAA94B,SAAAA,EAAAA,IACAgzB,UAAAA,CAAAhzB,SAAAA,EAAAA,IACAovB,OAAAA,CAAApvB,SAAAA,EAAAA,IACAswB,OAAAA,CAAAtwB,SAAAA,EAAAA,IACAuwB,OAAAA,CAAAvwB,SAAAA,EAAAA,IACA4xB,QAAAA,CAAA5xB,SAAAA,EAAAA,IACA6xB,QAAAA,CAAA7xB,SAAAA,EAAAA,MAGA,sBACA,UACA,EACAuF,MAAAA,CACA,cAEA/H,QAAAA,CACA,YACA,qCACA,8CACA,oBACA,qBAEA,IACA,uGACA,iBACA,sBACA,WACA8rB,SAAAA,KAAAA,KAAAA,SACA1f,KAAAA,KAAAA,KAAAA,KACAqpB,UAAAA,EAAAA,KAAAA,UACAzC,SAAAA,EAAAA,KAAAA,SACAI,SAAAA,EAAAA,KAAAA,SACAK,SAAAA,EAAAA,KAAAA,SACAI,WAAAA,EAAAA,KAAAA,WACA+B,gBAAAA,EAAAA,KAAAA,gBACA3D,OAAAA,EAAAA,KAAAA,OACA4D,UAAAA,EAAAA,KAAAA,UACAC,WAAAA,EAAAA,KAAAA,WACAC,UAAAA,EAAAA,KAAAA,UACAC,YAAAA,EAAAA,KAAAA,aAGA,qFACA,0CAIA,CAHA,SACA,iDACA,iCACA,CAEA,oBACA,EACA,eAKA,GAJA,2BACA,yBACA,sBAEA,qBAGA,IACA,+MACA,iBACA,mCACA,2BAEA,0BACA,4DAGA,sBACA,4BAIA,CAHA,SACA,iDACA,wCACA,MAjBA,oEAoBA,wBACA,EACA,aAOA,GANA,wBACA,oBAKA,2DACA,+IACA,0DACA,uIACA,CACA,4CACA,wBACA,kCACA5pB,EAAAA,IAAAA,EACAA,EAAAA,MAAAA,GAEAA,EAAAA,KAAAA,EAEAA,EAAAA,OAAAA,EAAAA,CACA,CAEA,OACAmhB,WAAAA,KAAAA,aAAAA,WACAra,UAAAA,KAAAA,aAAAA,UACAwT,SAAAA,KAAAA,aAAAA,QACAqB,MAAAA,KAAAA,aAAAA,MACAC,OAAAA,KAAAA,aAAAA,OACAoP,mBAAAA,KAAAA,KAAAA,MAEA,YAEA,IACA,oGACA,uBACA,WACA,mCACA,gBAIA,CAHA,SACA,iDACA,qCACA,CACA,CAEA,mBACA,EACA7pB,YACA,wBACA,EACA,sBACA,2BACA,2BAEA,UACA,2FACA,+BACA,UAIA,CAHA,SACA,iDACA,wCACA,CAEA,0BACA,EACA,0BACA,UACA,EACAwqB,iBAAAA,GACA,iBACA,EACArI,mBAAAA,GACA,mBACA,EACAqC,gBAAAA,EAAAA,GACA,kDACA,4BACA,EACA,EACA0J,QACA,OACA9J,KAAAA,KAAAA,KAAAA,KAAAA,OAAAA,EAAAA,KAAAA,KAAAA,KAAAA,KAAAA,KAAAA,KAAAA,OAAAA,GAAAA,KAAAA,EACAE,MAAAA,KAAAA,QAAAA,oBAAAA,EAAAA,EACAC,IAAAA,KAAAA,QAAAA,oBAAAA,EAAAA,EACA6D,KAAAA,KAAAA,QAAAA,oBAAAA,IAAAA,EACA/D,OAAAA,KAAAA,KAAAA,KAAAA,OAAAA,EACAM,OAAAA,EACAE,UAAAA,EACAsD,SAAAA,EACAvD,UAAAA,EACAE,SAAAA,EACAC,SAAAA,EACAC,QAAAA,EACAC,SAAAA,EACAC,KAAAA,EACAC,QAAAA,EACAO,QAAAA,EACAC,OAAAA,EACAC,YAAAA,EACAE,QAAAA,EACAC,OAAAA,EACA4H,WAAAA,EACAtH,QAAAA,EACAJ,OAAAA,EACAO,SAAAA,EACAD,UAAAA,EACAE,QAAAA,EACAC,SAAAA,EACAC,UAAAA,EACAC,SAAAA,EACAG,WAAAA,EACAI,SAAAA,EACAC,WAAAA,EACAC,UAAAA,EACAC,SAAAA,EACAC,SAAAA,EACAC,aAAAA,EACAC,SAAAA,EACAC,QAAAA,EACAC,SAAAA,EACAE,UAAAA,EACAD,QAAAA,EACAE,UAAAA,EACAC,QAAAA,EACA/B,QAAAA,EACAI,QAAAA,EACAhB,SAAAA,EACAC,QAAAA,EACAC,OAAAA,EACA0B,QAAAA,EACAC,OAAAA,EACAC,QAAAA,EACAc,QAAAA,EACA6F,UAAAA,EACAC,WAAAA,EACAC,QAAAA,EACA9F,UAAAA,EACA1C,OAAAA,EACAC,OAAAA,EACAqB,QAAAA,EACAC,QAAAA,GAEA,uBACA,0BACA,eACA,EACAsG,OAAAA,GACA,0BACA,eACA,EACAE,YAAAA,GACA,4BACA,0BACA,EACAW,kBACA,+BACA,iEACA,4BACA,2BACA,EACAI,oBACA,8DACA,iBACA,EACAC,eACA,0EACA,iBACA,EACAtC,SAAAA,GACA,oBACA,0DACA,EACA4B,WAAAA,GACA,oBACA,2DACA,EACAiB,iBAAAA,GACA,yEACA,kBACA,eAEA,CACA,EACAnB,cAAAA,GACA,4EACA,kBACA,YAEA,IACA,EACAnU,aAAAA,EAAAA,GACA,YACA,iBACA,0BACA,4DAEA,iBACA,mCACA,gCACA,EACAC,YAAAA,EAAAA,EAAAA,GACA,YACA,YACA,iCACA,qCACA,GAEAxX,SAAAA,CACAyoB,kBACA,wCACA,gCACA,6BACA,4BACA,EACApI,oBACA,qCACA,sCACA,oCACA,kCACA,iCACA,EACAgB,mBACA,OACA1d,UAAAA,CAAAA,KAAAA,WAAAA,UACAyQ,QAAAA,CAAAA,KAAAA,WAAAA,SACAoE,MAAAA,CAAAA,KAAAA,WAAAA,MACAC,OAAAA,CAAAA,KAAAA,WAAAA,OAEA,EACA0S,eACA,6CAKA,OAJA,mCACA2B,EAAAA,CAAAA,OAAAA,OAAAA,SAAAA,QAAAA,QAGA,8BACA,EACA5B,iBACA,uCACA,qHACA,EACA,EACAwB,gBACA,uCACA,+GACA,EACA,EACAH,cACA,OACArG,UAAAA,KAAAA,KAAAA,UACAzC,SAAAA,KAAAA,KAAAA,SACAI,SAAAA,KAAAA,KAAAA,SACAK,SAAAA,KAAAA,KAAAA,SACAI,WAAAA,KAAAA,KAAAA,WACA+B,gBAAAA,KAAAA,KAAAA,gBACA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BACAD,EAAAA,QAAAA,EAEA,EACArB,UAAAA,EAAAA,EAAAA,KAAAA,WAAA,4BAEA4G,QAAAA,CACApF,gBAAAA,EAAAA,EAAAA,IAAAA,OACAxB,UAAAA,EAAAA,EAAAA,KAAAA,WAAA,6BAGAsH,cAAAA,CACApI,MAAAA,CAAAc,UAAAA,EAAAA,EAAAA,KAAAA,WAAA,8BAGA,sBACA,UACA,EACAuF,MAAAA,CACA,cAEA/H,QAAAA,CACA,YACA,oBACA,qBACA,kCAEA,IACA,iFACA,iBACA,4BACA,gCACA,8CACA,wBACA,8BACA,oCACA,gCAEA,kDACA,oFAEA,uBAEA,sFACA,uEAIA,CAHA,SACA,iDACA,iCACA,CAEA,oBACA,EACA,oBAKA,GAJA,4BACA,4BAEA,iBACA,iBACA,iFAEA,UACA,iFACA,0CACA,gBAIA,CAHA,SACA,iDACA,yCACA,CAGA,2BACA,EACA,qBAKA,GAJA,6BACA,6BAEA,iBACA,iBACA,kFAEA,IACA,OACA0B,MAAAA,KAAAA,SAAAA,WAEA,+EACA,2CACA,gBAIA,CAHA,SACA,iDACA,0CACA,CAGA,4BACA,EACA,iBACA,4BACA,4BAEA,IACA,OACAA,MAAAA,SAEA,8EACA,oCAIA,CAHA,SACA,iDACA,yCACA,CAEA,2BACA,EACA,uBACA,4BACA,4BAEA,UACA,oFACA,WACA,wCAIA,CAHA,SACA,iDACA,yCACA,CAEA,2BACA,EACA,0BAKA,GAJA,kCACA,kCAEA,oBACA,iBACA,uFAEA,UACA,gFACA,gDAIA,CAHA,SACA,iDACA,+CACA,CAGA,iCACA,EACA,oBACA,4BACA,4BAEA,UACA,sFACA,UAIA,CAHA,SACA,iDACA,yCACA,CAEA,2BACA,EACAytC,YAAAA,GACA,kEACA,EACA,uBACA,8BACA,8BAEA,UACA,uFACA,WACA,sCAIA,CAHA,SACA,iDACA,2CACA,CAEA,6BACA,EACA,wBACA,8BACA,8BAEA,UACA,4FACA,WACA,sCAIA,CAHA,SACA,iDACA,2CACA,CAEA,6BACA,GAEA5/B,SAAAA,CACAq/B,YACA,uFACA,EACAnB,sBACA,OA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","sources":["webpack://hawqs/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://hawqs/./src/App.vue","webpack://hawqs/src/App.vue","webpack://hawqs/./src/App.vue?51dd","webpack://hawqs/./src/App.vue?0e40","webpack://hawqs/./src/views/Home.vue","webpack://hawqs/./src/components/FooterData.vue","webpack://hawqs/src/components/FooterData.vue","webpack://hawqs/./src/components/FooterData.vue?60dd","webpack://hawqs/./src/components/FooterData.vue?13b6","webpack://hawqs/src/views/Home.vue","webpack://hawqs/./src/views/Home.vue?65f5","webpack://hawqs/./src/views/Home.vue?8611","webpack://hawqs/./src/views/Help.vue","webpack://hawqs/./src/components/DashboardHeader.vue","webpack://hawqs/src/components/DashboardHeader.vue","webpack://hawqs/./src/components/DashboardHeader.vue?caa6","webpack://hawqs/./src/components/DashboardHeader.vue?c757","webpack://hawqs/src/views/Help.vue","webpack://hawqs/./src/views/Help.vue?dafa","webpack://hawqs/./src/views/Help.vue?a990","webpack://hawqs/./src/views/HelpLanduse.vue","webpack://hawqs/src/views/HelpLanduse.vue","webpack://hawqs/./src/views/HelpLanduse.vue?4843","webpack://hawqs/./src/views/HelpLanduse.vue?b0de","webpack://hawqs/./src/views/account/AccountProfile.vue","webpack://hawqs/src/views/account/AccountProfile.vue","webpack://hawqs/./src/views/account/AccountProfile.vue?2ca0","webpack://hawqs/./src/views/account/AccountProfile.vue?6056","webpack://hawqs/./src/views/account/AccountConfirm.vue","webpack://hawqs/src/views/account/AccountConfirm.vue","webpack://hawqs/./src/views/account/AccountConfirm.vue?16f3","webpack://hawqs/./src/views/account/AccountConfirm.vue?4a24","webpack://hawqs/./src/views/account/AccountReset.vue","webpack://hawqs/src/views/account/AccountReset.vue","webpack://hawqs/./src/views/account/AccountReset.vue?b577","webpack://hawqs/./src/views/account/AccountReset.vue?2676","webpack://hawqs/./src/views/account/AccountChangeEmail.vue","webpack://hawqs/src/views/account/AccountChangeEmail.vue","webpack://hawqs/./src/views/account/AccountChangeEmail.vue?0863","webpack://hawqs/./src/views/account/AccountChangeEmail.vue?59d6","webpack://hawqs/./src/views/account/feedback/FeedbackList.vue","webpack://hawqs/./src/components/helpers/GridView.vue","webpack://hawqs/src/components/helpers/GridView.vue","webpack://hawqs/./src/components/helpers/GridView.vue?ef08","webpack://hawqs/./src/components/helpers/GridView.vue?2bb7","webpack://hawqs/src/views/account/feedback/FeedbackList.vue","webpack://hawqs/./src/views/account/feedback/FeedbackList.vue?ee03","webpack://hawqs/./src/views/account/feedback/FeedbackList.vue?7150","webpack://hawqs/./src/views/account/feedback/FeedbackView.vue","webpack://hawqs/src/views/account/feedback/FeedbackView.vue","webpack://hawqs/./src/views/account/feedback/FeedbackView.vue?b264","webpack://hawqs/./src/views/account/feedback/FeedbackView.vue?9ca8","webpack://hawqs/./src/views/account/feedback/FeedbackCreate.vue","webpack://hawqs/src/views/account/feedback/FeedbackCreate.vue","webpack://hawqs/./src/views/account/feedback/FeedbackCreate.vue?e727","webpack://hawqs/./src/views/account/feedback/FeedbackCreate.vue?9a3e","webpack://hawqs/./src/views/projects/HruTable.vue","webpack://hawqs/src/views/projects/HruTable.vue","webpack://hawqs/./src/views/projects/HruTable.vue?9db7","webpack://hawqs/./src/views/projects/HruTable.vue?1f4a","webpack://hawqs/./src/views/projects/ProjectList.vue","webpack://hawqs/./src/components/ProjectMap.vue","webpack://hawqs/./src/components/helpers/Vue2LeafletPolylineDecorator.vue","webpack://hawqs/src/components/helpers/Vue2LeafletPolylineDecorator.vue","webpack://hawqs/./src/components/helpers/Vue2LeafletPolylineDecorator.vue?01e7","webpack://hawqs/./src/components/helpers/Vue2LeafletPolylineDecorator.vue?bc79","webpack://hawqs/src/components/ProjectMap.vue","webpack://hawqs/./src/components/ProjectMap.vue?abd6","webpack://hawqs/./src/components/ProjectMap.vue?e8ed","webpack://hawqs/src/views/projects/ProjectList.vue","webpack://hawqs/./src/views/projects/ProjectList.vue?48bd","webpack://hawqs/./src/views/projects/ProjectList.vue?628b","webpack://hawqs/./src/views/projects/ProjectCreate.vue","webpack://hawqs/src/views/projects/ProjectCreate.vue","webpack://hawqs/./src/views/projects/ProjectCreate.vue?1576","webpack://hawqs/./src/views/projects/ProjectCreate.vue?ab81","webpack://hawqs/./src/views/projects/ProjectView.vue","webpack://hawqs/./src/views/projects/scenarios/ScenarioForm.vue","webpack://hawqs/src/views/projects/scenarios/ScenarioForm.vue","webpack://hawqs/./src/views/projects/scenarios/ScenarioForm.vue?6b81","webpack://hawqs/./src/views/projects/scenarios/ScenarioForm.vue?9ee2","webpack://hawqs/src/views/projects/ProjectView.vue","webpack://hawqs/./src/views/projects/ProjectView.vue?e444","webpack://hawqs/./src/views/projects/ProjectView.vue?2e47","webpack://hawqs/./src/views/projects/ProjectHrus.vue","webpack://hawqs/src/views/projects/ProjectHrus.vue","webpack://hawqs/./src/views/projects/ProjectHrus.vue?ef36","webpack://hawqs/./src/views/projects/ProjectHrus.vue?5fe5","webpack://hawqs/./src/views/projects/ProjectDocuments.vue","webpack://hawqs/src/views/projects/ProjectDocuments.vue","webpack://hawqs/./src/views/projects/ProjectDocuments.vue?0111","webpack://hawqs/./src/views/projects/ProjectDocuments.vue?7ca4","webpack://hawqs/./src/views/projects/ProjectMetadata.vue","webpack://hawqs/src/views/projects/ProjectMetadata.vue","webpack://hawqs/./src/views/projects/ProjectMetadata.vue?3f06","webpack://hawqs/./src/views/projects/ProjectMetadata.vue?d637","webpack://hawqs/./src/views/projects/ProjectDownloads.vue","webpack://hawqs/src/views/projects/ProjectDownloads.vue","webpack://hawqs/./src/views/projects/ProjectDownloads.vue?1c76","webpack://hawqs/./src/views/projects/ProjectDownloads.vue?4c5f","webpack://hawqs/./src/views/projects/scenarios/ScenarioList.vue","webpack://hawqs/src/views/projects/scenarios/ScenarioList.vue","webpack://hawqs/./src/views/projects/scenarios/ScenarioList.vue?bb97","webpack://hawqs/./src/views/projects/scenarios/ScenarioList.vue?0370","webpack://hawqs/./src/views/projects/scenarios/ScenarioView.vue","webpack://hawqs/src/views/projects/scenarios/ScenarioView.vue","webpack://hawqs/./src/views/projects/scenarios/ScenarioView.vue?d8ae","webpack://hawqs/./src/views/projects/scenarios/ScenarioView.vue?c64c","webpack://hawqs/./src/views/projects/scenarios/ScenarioCreate.vue","webpack://hawqs/src/views/projects/scenarios/ScenarioCreate.vue","webpack://hawqs/./src/views/projects/scenarios/ScenarioCreate.vue?39b8","webpack://hawqs/./src/views/projects/scenarios/ScenarioCreate.vue?5053","webpack://hawqs/./src/views/projects/errors/ErrorReportList.vue","webpack://hawqs/src/views/projects/errors/ErrorReportList.vue","webpack://hawqs/./src/views/projects/errors/ErrorReportList.vue?c0f3","webpack://hawqs/./src/views/projects/errors/ErrorReportList.vue?9b25","webpack://hawqs/./src/views/projects/errors/ErrorReportView.vue","webpack://hawqs/src/views/projects/errors/ErrorReportView.vue","webpack://hawqs/./src/views/projects/errors/ErrorReportView.vue?ade5","webpack://hawqs/./src/views/projects/errors/ErrorReportView.vue?afa4","webpack://hawqs/./src/views/projects/errors/ErrorReportCreate.vue","webpack://hawqs/src/views/projects/errors/ErrorReportCreate.vue","webpack://hawqs/./src/views/projects/errors/ErrorReportCreate.vue?6c2b","webpack://hawqs/./src/views/projects/errors/ErrorReportCreate.vue?2797","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditBsn.vue","webpack://hawqs/src/views/projects/scenarios/edit/general/EditBsn.vue","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditBsn.vue?a3d3","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditBsn.vue?5770","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditFerts.vue","webpack://hawqs/src/views/projects/scenarios/edit/general/EditFerts.vue","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditFerts.vue?c698","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditFerts.vue?a25e","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditFert.vue","webpack://hawqs/src/views/projects/scenarios/edit/general/EditFert.vue","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditFert.vue?17d2","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditFert.vue?9d83","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditUrbans.vue","webpack://hawqs/src/views/projects/scenarios/edit/general/EditUrbans.vue","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditUrbans.vue?14b4","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditUrbans.vue?df11","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditUrban.vue","webpack://hawqs/src/views/projects/scenarios/edit/general/EditUrban.vue","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditUrban.vue?24c5","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditUrban.vue?5f1c","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditNutrientEfficiency.vue","webpack://hawqs/src/views/projects/scenarios/edit/general/EditNutrientEfficiency.vue","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditNutrientEfficiency.vue?4cb0","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditNutrientEfficiency.vue?f10e","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditLup.vue","webpack://hawqs/src/views/projects/scenarios/edit/general/EditLup.vue","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditLup.vue?ab58","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditLup.vue?2747","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditCalibration.vue","webpack://hawqs/src/views/projects/scenarios/edit/general/EditCalibration.vue","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditCalibration.vue?6e62","webpack://hawqs/./src/views/projects/scenarios/edit/general/EditCalibration.vue?a918","webpack://hawqs/./src/views/projects/scenarios/edit/weather/EditWgn.vue","webpack://hawqs/./src/components/HruSelector.vue","webpack://hawqs/src/components/HruSelector.vue","webpack://hawqs/./src/components/HruSelector.vue?e1b9","webpack://hawqs/./src/components/HruSelector.vue?9916","webpack://hawqs/./src/components/ScenarioModViewer.vue","webpack://hawqs/./src/components/Mgt2Viewer.vue","webpack://hawqs/src/components/Mgt2Viewer.vue","webpack://hawqs/./src/components/Mgt2Viewer.vue?dcc9","webpack://hawqs/./src/components/Mgt2Viewer.vue?a696","webpack://hawqs/src/components/ScenarioModViewer.vue","webpack://hawqs/./src/components/ScenarioModViewer.vue?f29b","webpack://hawqs/./src/components/ScenarioModViewer.vue?8bd0","webpack://hawqs/src/views/projects/scenarios/edit/weather/EditWgn.vue","webpack://hawqs/./src/views/projects/scenarios/edit/weather/EditWgn.vue?8dc9","webpack://hawqs/./src/views/projects/scenarios/edit/weather/EditWgn.vue?6919","webpack://hawqs/./src/views/projects/scenarios/edit/weather/EditClimateSensitivity.vue","webpack://hawqs/src/views/projects/scenarios/edit/weather/EditClimateSensitivity.vue","webpack://hawqs/./src/views/projects/scenarios/edit/weather/EditClimateSensitivity.vue?8436","webpack://hawqs/./src/views/projects/scenarios/edit/weather/EditClimateSensitivity.vue?b892","webpack://hawqs/./src/views/projects/scenarios/edit/mgt/EditMgtGeneral.vue","webpack://hawqs/./src/components/SingleHruSelector.vue","webpack://hawqs/src/components/SingleHruSelector.vue","webpack://hawqs/./src/components/SingleHruSelector.vue?c85f","webpack://hawqs/./src/components/SingleHruSelector.vue?7b38","webpack://hawqs/src/views/projects/scenarios/edit/mgt/EditMgtGeneral.vue","webpack://hawqs/./src/views/projects/scenarios/edit/mgt/EditMgtGeneral.vue?2c69","webpack://hawqs/./src/views/projects/scenarios/edit/mgt/EditMgtGeneral.vue?6b92","webpack://hawqs/./src/views/projects/scenarios/edit/mgt/EditMgtOperations.vue","webpack://hawqs/src/views/projects/scenarios/edit/mgt/EditMgtOperations.vue","webpack://hawqs/./src/views/projects/scenarios/edit/mgt/EditMgtOperations.vue?494e","webpack://hawqs/./src/views/projects/scenarios/edit/mgt/EditMgtOperations.vue?cb1b","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditCurveNumber.vue","webpack://hawqs/src/views/projects/scenarios/edit/subbasin/EditCurveNumber.vue","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditCurveNumber.vue?916b","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditCurveNumber.vue?15b1","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditSedimentRouting.vue","webpack://hawqs/src/views/projects/scenarios/edit/subbasin/EditSedimentRouting.vue","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditSedimentRouting.vue?859d","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditSedimentRouting.vue?f54c","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditPointSource.vue","webpack://hawqs/src/views/projects/scenarios/edit/subbasin/EditPointSource.vue","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditPointSource.vue?cf06","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditPointSource.vue?8cfb","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditPotholes.vue","webpack://hawqs/src/views/projects/scenarios/edit/subbasin/EditPotholes.vue","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditPotholes.vue?e69a","webpack://hawqs/./src/views/projects/scenarios/edit/subbasin/EditPotholes.vue?193c","webpack://hawqs/./src/views/projects/scenarios/edit/print/EditHruVars.vue","webpack://hawqs/src/views/projects/scenarios/edit/print/EditHruVars.vue","webpack://hawqs/./src/views/projects/scenarios/edit/print/EditHruVars.vue?e59c","webpack://hawqs/./src/views/projects/scenarios/edit/print/EditHruVars.vue?1b7b","webpack://hawqs/./src/views/projects/scenarios/edit/print/EditHruPrint.vue","webpack://hawqs/src/views/projects/scenarios/edit/print/EditHruPrint.vue","webpack://hawqs/./src/views/projects/scenarios/edit/print/EditHruPrint.vue?201c","webpack://hawqs/./src/views/projects/scenarios/edit/print/EditHruPrint.vue?0ba2","webpack://hawqs/./src/views/projects/scenarios/output/OutputMaps.vue","webpack://hawqs/src/views/projects/scenarios/output/OutputMaps.vue","webpack://hawqs/./src/views/projects/scenarios/output/OutputMaps.vue?be5d","webpack://hawqs/./src/views/projects/scenarios/output/OutputMaps.vue?33a9","webpack://hawqs/./src/views/projects/scenarios/output/OutputCharts.vue","webpack://hawqs/src/views/projects/scenarios/output/OutputCharts.vue","webpack://hawqs/./src/views/projects/scenarios/output/OutputCharts.vue?f3dc","webpack://hawqs/./src/views/projects/scenarios/output/OutputCharts.vue?4385","webpack://hawqs/./src/views/projects/scenarios/output/OutputCheck.vue","webpack://hawqs/src/views/projects/scenarios/output/OutputCheck.vue","webpack://hawqs/./src/views/projects/scenarios/output/OutputCheck.vue?3e79","webpack://hawqs/./src/views/projects/scenarios/output/OutputCheck.vue?26c1","webpack://hawqs/./src/views/projects/scenarios/output/OutputCeQual.vue","webpack://hawqs/src/views/projects/scenarios/output/OutputCeQual.vue","webpack://hawqs/./src/views/projects/scenarios/output/OutputCeQual.vue?5097","webpack://hawqs/./src/views/projects/scenarios/output/OutputCeQual.vue?fab6","webpack://hawqs/./src/views/projects/scenarios/output/OutputFfa.vue","webpack://hawqs/src/views/projects/scenarios/output/OutputFfa.vue","webpack://hawqs/./src/views/projects/scenarios/output/OutputFfa.vue?de4a","webpack://hawqs/./src/views/projects/scenarios/output/OutputFfa.vue?48a5","webpack://hawqs/./src/views/projects/scenarios/output/OutputBaseflowSeparation.vue","webpack://hawqs/src/views/projects/scenarios/output/OutputBaseflowSeparation.vue","webpack://hawqs/./src/views/projects/scenarios/output/OutputBaseflowSeparation.vue?e396","webpack://hawqs/./src/views/projects/scenarios/output/OutputBaseflowSeparation.vue?956a","webpack://hawqs/./src/views/groups/GroupList.vue","webpack://hawqs/src/views/groups/GroupList.vue","webpack://hawqs/./src/views/groups/GroupList.vue?6a2b","webpack://hawqs/./src/views/groups/GroupList.vue?8b6e","webpack://hawqs/./src/views/groups/GroupInvites.vue","webpack://hawqs/src/views/groups/GroupInvites.vue","webpack://hawqs/./src/views/groups/GroupInvites.vue?d46e","webpack://hawqs/./src/views/groups/GroupInvites.vue?193c","webpack://hawqs/./src/views/groups/GroupView.vue","webpack://hawqs/src/views/groups/GroupView.vue","webpack://hawqs/./src/views/groups/GroupView.vue?4904","webpack://hawqs/./src/views/groups/GroupView.vue?51bf","webpack://hawqs/./src/views/groups/GroupCreate.vue","webpack://hawqs/src/views/groups/GroupCreate.vue","webpack://hawqs/./src/views/groups/GroupCreate.vue?b3cd","webpack://hawqs/./src/views/groups/GroupCreate.vue?67a5","webpack://hawqs/./src/views/datasets/DatasetList.vue","webpack://hawqs/src/views/datasets/DatasetList.vue","webpack://hawqs/./src/views/datasets/DatasetList.vue?f205","webpack://hawqs/./src/views/datasets/DatasetList.vue?bd63","webpack://hawqs/./src/views/datasets/DatasetView.vue","webpack://hawqs/src/views/datasets/DatasetView.vue","webpack://hawqs/./src/views/datasets/DatasetView.vue?39a3","webpack://hawqs/./src/views/datasets/DatasetView.vue?bbca","webpack://hawqs/./src/views/datasets/DatasetCreate.vue","webpack://hawqs/src/views/datasets/DatasetCreate.vue","webpack://hawqs/./src/views/datasets/DatasetCreate.vue?f8a5","webpack://hawqs/./src/views/datasets/DatasetCreate.vue?6cc0","webpack://hawqs/./src/views/admin/AdminDashboard.vue","webpack://hawqs/src/views/admin/AdminDashboard.vue","webpack://hawqs/./src/views/admin/AdminDashboard.vue?86ae","webpack://hawqs/./src/views/admin/AdminDashboard.vue?a6b4","webpack://hawqs/./src/views/admin/AdminDatabase.vue","webpack://hawqs/src/views/admin/AdminDatabase.vue","webpack://hawqs/./src/views/admin/AdminDatabase.vue?8b72","webpack://hawqs/./src/views/admin/AdminDatabase.vue?290b","webpack://hawqs/./src/views/admin/AdminReports.vue","webpack://hawqs/src/views/admin/AdminReports.vue","webpack://hawqs/./src/views/admin/AdminReports.vue?ef37","webpack://hawqs/./src/views/admin/AdminReports.vue?2356","webpack://hawqs/./src/views/admin/users/AdminUsers.vue","webpack://hawqs/src/views/admin/users/AdminUsers.vue","webpack://hawqs/./src/views/admin/users/AdminUsers.vue?d85c","webpack://hawqs/./src/views/admin/users/AdminUsers.vue?dc8a","webpack://hawqs/./src/views/admin/users/AdminUser.vue","webpack://hawqs/src/views/admin/users/AdminUser.vue","webpack://hawqs/./src/views/admin/users/AdminUser.vue?3d65","webpack://hawqs/./src/views/admin/users/AdminUser.vue?924c","webpack://hawqs/./src/views/admin/users/AdminUserCreate.vue","webpack://hawqs/src/views/admin/users/AdminUserCreate.vue","webpack://hawqs/./src/views/admin/users/AdminUserCreate.vue?a131","webpack://hawqs/./src/views/admin/users/AdminUserCreate.vue?0044","webpack://hawqs/./src/views/admin/users/groups/AdminGroups.vue","webpack://hawqs/src/views/admin/users/groups/AdminGroups.vue","webpack://hawqs/./src/views/admin/users/groups/AdminGroups.vue?b510","webpack://hawqs/./src/views/admin/users/groups/AdminGroups.vue?93d0","webpack://hawqs/./src/views/admin/users/groups/AdminGroupView.vue","webpack://hawqs/src/views/admin/users/groups/AdminGroupView.vue","webpack://hawqs/./src/views/admin/users/groups/AdminGroupView.vue?1d8b","webpack://hawqs/./src/views/admin/users/groups/AdminGroupView.vue?4fa4","webpack://hawqs/./src/views/admin/users/tiers/AdminTiers.vue","webpack://hawqs/src/views/admin/users/tiers/AdminTiers.vue","webpack://hawqs/./src/views/admin/users/tiers/AdminTiers.vue?905e","webpack://hawqs/./src/views/admin/users/tiers/AdminTiers.vue?e6f8","webpack://hawqs/./src/views/admin/users/tiers/AdminTierView.vue","webpack://hawqs/./src/views/admin/users/tiers/AdminTierForm.vue","webpack://hawqs/src/views/admin/users/tiers/AdminTierForm.vue","webpack://hawqs/./src/views/admin/users/tiers/AdminTierForm.vue?0dff","webpack://hawqs/./src/views/admin/users/tiers/AdminTierForm.vue?d1a8","webpack://hawqs/src/views/admin/users/tiers/AdminTierView.vue","webpack://hawqs/./src/views/admin/users/tiers/AdminTierView.vue?15f9","webpack://hawqs/./src/views/admin/users/tiers/AdminTierView.vue?5359","webpack://hawqs/./src/views/admin/users/tiers/AdminTierCreate.vue","webpack://hawqs/src/views/admin/users/tiers/AdminTierCreate.vue","webpack://hawqs/./src/views/admin/users/tiers/AdminTierCreate.vue?1961","webpack://hawqs/./src/views/admin/users/tiers/AdminTierCreate.vue?9589","webpack://hawqs/./src/views/admin/users/AdminUserCategories.vue","webpack://hawqs/src/views/admin/users/AdminUserCategories.vue","webpack://hawqs/./src/views/admin/users/AdminUserCategories.vue?13f9","webpack://hawqs/./src/views/admin/users/AdminUserCategories.vue?623b","webpack://hawqs/./src/views/admin/users/emails/AdminEmailUsers.vue","webpack://hawqs/src/views/admin/users/emails/AdminEmailUsers.vue","webpack://hawqs/./src/views/admin/users/emails/AdminEmailUsers.vue?55cc","webpack://hawqs/./src/views/admin/users/emails/AdminEmailUsers.vue?c7be","webpack://hawqs/./src/views/admin/errors/AdminErrors.vue","webpack://hawqs/src/views/admin/errors/AdminErrors.vue","webpack://hawqs/./src/views/admin/errors/AdminErrors.vue?d2cb","webpack://hawqs/./src/views/admin/errors/AdminErrors.vue?4249","webpack://hawqs/./src/views/admin/errors/AdminErrorView.vue","webpack://hawqs/src/views/admin/errors/AdminErrorView.vue","webpack://hawqs/./src/views/admin/errors/AdminErrorView.vue?2342","webpack://hawqs/./src/views/admin/errors/AdminErrorView.vue?603d","webpack://hawqs/./src/views/admin/projects/AdminProjects.vue","webpack://hawqs/src/views/admin/projects/AdminProjects.vue","webpack://hawqs/./src/views/admin/projects/AdminProjects.vue?764c","webpack://hawqs/./src/views/admin/projects/AdminProjects.vue?336a","webpack://hawqs/./src/views/admin/projects/AdminScenarios.vue","webpack://hawqs/src/views/admin/projects/AdminScenarios.vue","webpack://hawqs/./src/views/admin/projects/AdminScenarios.vue?2995","webpack://hawqs/./src/views/admin/projects/AdminScenarios.vue?1b21","webpack://hawqs/./src/views/admin/datasets/AdminDatasets.vue","webpack://hawqs/src/views/admin/datasets/AdminDatasets.vue","webpack://hawqs/./src/views/admin/datasets/AdminDatasets.vue?dc47","webpack://hawqs/./src/views/admin/datasets/AdminDatasets.vue?6fe2","webpack://hawqs/./src/views/admin/datasets/AdminDatasetView.vue","webpack://hawqs/src/views/admin/datasets/AdminDatasetView.vue","webpack://hawqs/./src/views/admin/datasets/AdminDatasetView.vue?c8c9","webpack://hawqs/./src/views/admin/datasets/AdminDatasetView.vue?93fe","webpack://hawqs/./src/views/admin/AdminWebsiteText.vue","webpack://hawqs/src/views/admin/AdminWebsiteText.vue","webpack://hawqs/./src/views/admin/AdminWebsiteText.vue?faac","webpack://hawqs/./src/views/admin/AdminWebsiteText.vue?4c9d","webpack://hawqs/./src/views/admin/AdminWebsiteTextPage.vue","webpack://hawqs/src/views/admin/AdminWebsiteTextPage.vue","webpack://hawqs/./src/views/admin/AdminWebsiteTextPage.vue?d809","webpack://hawqs/./src/views/admin/AdminWebsiteTextPage.vue?01a1","webpack://hawqs/./src/views/admin/AdminWebsiteSettings.vue","webpack://hawqs/src/views/admin/AdminWebsiteSettings.vue","webpack://hawqs/./src/views/admin/AdminWebsiteSettings.vue?492f","webpack://hawqs/./src/views/admin/AdminWebsiteSettings.vue?e62e","webpack://hawqs/./src/views/admin/AdminJobs.vue","webpack://hawqs/src/views/admin/AdminJobs.vue","webpack://hawqs/./src/views/admin/AdminJobs.vue?e146","webpack://hawqs/./src/views/admin/AdminJobs.vue?043a","webpack://hawqs/./src/views/admin/AdminImportHuc2.vue","webpack://hawqs/src/views/admin/AdminImportHuc2.vue","webpack://hawqs/./src/views/admin/AdminImportHuc2.vue?3ab1","webpack://hawqs/./src/views/admin/AdminImportHuc2.vue?7e4a","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherList.vue","webpack://hawqs/src/views/admin/datasets/weather/AdminWeatherList.vue","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherList.vue?ecd3","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherList.vue?faa9","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherView.vue","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherForm.vue","webpack://hawqs/src/views/admin/datasets/weather/AdminWeatherForm.vue","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherForm.vue?acbb","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherForm.vue?09ea","webpack://hawqs/src/views/admin/datasets/weather/AdminWeatherView.vue","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherView.vue?dc25","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherView.vue?d8d0","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherCreate.vue","webpack://hawqs/src/views/admin/datasets/weather/AdminWeatherCreate.vue","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherCreate.vue?8643","webpack://hawqs/./src/views/admin/datasets/weather/AdminWeatherCreate.vue?ba13","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionList.vue","webpack://hawqs/src/views/admin/datasets/swatversions/AdminSwatVersionList.vue","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionList.vue?cdd2","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionList.vue?06a9","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionView.vue","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionForm.vue","webpack://hawqs/src/views/admin/datasets/swatversions/AdminSwatVersionForm.vue","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionForm.vue?3e95","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionForm.vue?b5c8","webpack://hawqs/src/views/admin/datasets/swatversions/AdminSwatVersionView.vue","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionView.vue?e1b8","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionView.vue?336b","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionCreate.vue","webpack://hawqs/src/views/admin/datasets/swatversions/AdminSwatVersionCreate.vue","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionCreate.vue?891d","webpack://hawqs/./src/views/admin/datasets/swatversions/AdminSwatVersionCreate.vue?221a","webpack://hawqs/./src/views/v1/Version1CheckUser.vue","webpack://hawqs/src/views/v1/Version1CheckUser.vue","webpack://hawqs/./src/views/v1/Version1CheckUser.vue?e046","webpack://hawqs/./src/views/v1/Version1CheckUser.vue?d7bc","webpack://hawqs/./src/views/v1/Version1VerifyUser.vue","webpack://hawqs/src/views/v1/Version1VerifyUser.vue","webpack://hawqs/./src/views/v1/Version1VerifyUser.vue?118f","webpack://hawqs/./src/views/v1/Version1VerifyUser.vue?d368","webpack://hawqs/./src/views/api/ApiDashboard.vue","webpack://hawqs/src/views/api/ApiDashboard.vue","webpack://hawqs/./src/views/api/ApiDashboard.vue?9af5","webpack://hawqs/./src/views/api/ApiDashboard.vue?01dc","webpack://hawqs/./src/views/api/batch/ApiBatchList.vue","webpack://hawqs/src/views/api/batch/ApiBatchList.vue","webpack://hawqs/./src/views/api/batch/ApiBatchList.vue?7c4d","webpack://hawqs/./src/views/api/batch/ApiBatchList.vue?5518","webpack://hawqs/./src/views/api/batch/ApiBatchCreate.vue","webpack://hawqs/src/views/api/batch/ApiBatchCreate.vue","webpack://hawqs/./src/views/api/batch/ApiBatchCreate.vue?45d5","webpack://hawqs/./src/views/api/batch/ApiBatchCreate.vue?1f79","webpack://hawqs/./src/views/api/batch/ApiBatchView.vue","webpack://hawqs/src/views/api/batch/ApiBatchView.vue","webpack://hawqs/./src/views/api/batch/ApiBatchView.vue?ed78","webpack://hawqs/./src/views/api/batch/ApiBatchView.vue?9a97","webpack://hawqs/./src/views/api/regional/ApiRegionalCreate.vue","webpack://hawqs/src/views/api/regional/ApiRegionalCreate.vue","webpack://hawqs/./src/views/api/regional/ApiRegionalCreate.vue?ba8f","webpack://hawqs/./src/views/api/regional/ApiRegionalCreate.vue?ad2e","webpack://hawqs/./src/router.js","webpack://hawqs/./src/store.js","webpack://hawqs/./src/plugins/bootstrap-vue.js","webpack://hawqs/./src/plugins/font-awesome.js","webpack://hawqs/./src/plugins/highcharts.js","webpack://hawqs/./src/components/helpers/PageLoading.vue","webpack://hawqs/src/components/helpers/PageLoading.vue","webpack://hawqs/./src/components/helpers/PageLoading.vue?6fd9","webpack://hawqs/./src/components/helpers/PageLoading.vue?712c","webpack://hawqs/./src/components/helpers/PageRunning.vue","webpack://hawqs/src/components/helpers/PageRunning.vue","webpack://hawqs/./src/components/helpers/PageRunning.vue?a640","webpack://hawqs/./src/components/helpers/PageRunning.vue?f0bc","webpack://hawqs/./src/components/helpers/ErrorList.vue","webpack://hawqs/src/components/helpers/ErrorList.vue","webpack://hawqs/./src/components/helpers/ErrorList.vue?f182","webpack://hawqs/./src/components/helpers/ErrorList.vue?f0fe","webpack://hawqs/./src/components/helpers/SaveButton.vue","webpack://hawqs/src/components/helpers/SaveButton.vue","webpack://hawqs/./src/components/helpers/SaveButton.vue?c1a7","webpack://hawqs/./src/components/helpers/SaveButton.vue?ec9d","webpack://hawqs/./src/components/helpers/BackButton.vue","webpack://hawqs/src/components/helpers/BackButton.vue","webpack://hawqs/./src/components/helpers/BackButton.vue?6f57","webpack://hawqs/./src/components/helpers/BackButton.vue?c1cc","webpack://hawqs/./src/components/helpers/SuccessAlert.vue","webpack://hawqs/src/components/helpers/SuccessAlert.vue","webpack://hawqs/./src/components/helpers/SuccessAlert.vue?5c72","webpack://hawqs/./src/components/helpers/SuccessAlert.vue?80c0","webpack://hawqs/./src/components/helpers/FixedActionBar.vue","webpack://hawqs/src/components/helpers/FixedActionBar.vue","webpack://hawqs/./src/components/helpers/FixedActionBar.vue?5d34","webpack://hawqs/./src/components/helpers/FixedActionBar.vue?5bb0","webpack://hawqs/./src/components/helpers/CheckIcon.vue","webpack://hawqs/src/components/helpers/CheckIcon.vue","webpack://hawqs/./src/components/helpers/CheckIcon.vue?71d6","webpack://hawqs/./src/components/helpers/CheckIcon.vue?390c","webpack://hawqs/./src/components/helpers/PageAuthorizationContainer.vue","webpack://hawqs/src/components/helpers/PageAuthorizationContainer.vue","webpack://hawqs/./src/components/helpers/PageAuthorizationContainer.vue?7239","webpack://hawqs/./src/components/helpers/PageAuthorizationContainer.vue?1d6d","webpack://hawqs/./src/components/LoginForm.vue","webpack://hawqs/src/components/LoginForm.vue","webpack://hawqs/./src/components/LoginForm.vue?b1d4","webpack://hawqs/./src/components/LoginForm.vue?a91a","webpack://hawqs/./src/plugins/custom-components.js","webpack://hawqs/./src/plugins/filters.js","webpack://hawqs/./src/plugins/global-mixin.js","webpack://hawqs/./src/plugins/scrollto.js","webpack://hawqs/./src/plugins/status-hub.js","webpack://hawqs/./src/main.js","webpack://hawqs/webpack/bootstrap","webpack://hawqs/webpack/runtime/chunk loaded","webpack://hawqs/webpack/runtime/compat get default export","webpack://hawqs/webpack/runtime/define property getters","webpack://hawqs/webpack/runtime/global","webpack://hawqs/webpack/runtime/hasOwnProperty shorthand","webpack://hawqs/webpack/runtime/make namespace object","webpack://hawqs/webpack/runtime/node module decorator","webpack://hawqs/webpack/runtime/jsonp chunk loading","webpack://hawqs/webpack/startup"],"sourcesContent":["var map = {\n\t\"./af\": 2786,\n\t\"./af.js\": 2786,\n\t\"./ar\": 867,\n\t\"./ar-dz\": 4130,\n\t\"./ar-dz.js\": 4130,\n\t\"./ar-kw\": 6135,\n\t\"./ar-kw.js\": 6135,\n\t\"./ar-ly\": 6440,\n\t\"./ar-ly.js\": 6440,\n\t\"./ar-ma\": 7702,\n\t\"./ar-ma.js\": 7702,\n\t\"./ar-sa\": 6040,\n\t\"./ar-sa.js\": 6040,\n\t\"./ar-tn\": 7100,\n\t\"./ar-tn.js\": 7100,\n\t\"./ar.js\": 867,\n\t\"./az\": 1083,\n\t\"./az.js\": 1083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 8338,\n\t\"./bg.js\": 8338,\n\t\"./bm\": 7438,\n\t\"./bm.js\": 7438,\n\t\"./bn\": 8905,\n\t\"./bn-bd\": 6225,\n\t\"./bn-bd.js\": 6225,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 1560,\n\t\"./bo.js\": 1560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 622,\n\t\"./bs.js\": 622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 877,\n\t\"./cv.js\": 877,\n\t\"./cy\": 7373,\n\t\"./cy.js\": 7373,\n\t\"./da\": 4780,\n\t\"./da.js\": 4780,\n\t\"./de\": 9740,\n\t\"./de-at\": 217,\n\t\"./de-at.js\": 217,\n\t\"./de-ch\": 894,\n\t\"./de-ch.js\": 894,\n\t\"./de.js\": 9740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 837,\n\t\"./el.js\": 837,\n\t\"./en-au\": 8348,\n\t\"./en-au.js\": 8348,\n\t\"./en-ca\": 7925,\n\t\"./en-ca.js\": 7925,\n\t\"./en-gb\": 2243,\n\t\"./en-gb.js\": 2243,\n\t\"./en-ie\": 6436,\n\t\"./en-ie.js\": 6436,\n\t\"./en-il\": 941,\n\t\"./en-il.js\": 941,\n\t\"./en-in\": 4175,\n\t\"./en-in.js\": 4175,\n\t\"./en-nz\": 6319,\n\t\"./en-nz.js\": 6319,\n\t\"./en-sg\": 1662,\n\t\"./en-sg.js\": 1662,\n\t\"./eo\": 2915,\n\t\"./eo.js\": 2915,\n\t\"./es\": 5655,\n\t\"./es-do\": 5251,\n\t\"./es-do.js\": 5251,\n\t\"./es-mx\": 6112,\n\t\"./es-mx.js\": 6112,\n\t\"./es-us\": 1146,\n\t\"./es-us.js\": 1146,\n\t\"./es.js\": 5655,\n\t\"./et\": 5603,\n\t\"./et.js\": 5603,\n\t\"./eu\": 7763,\n\t\"./eu.js\": 7763,\n\t\"./fa\": 6959,\n\t\"./fa.js\": 6959,\n\t\"./fi\": 1897,\n\t\"./fi.js\": 1897,\n\t\"./fil\": 2549,\n\t\"./fil.js\": 2549,\n\t\"./fo\": 4694,\n\t\"./fo.js\": 4694,\n\t\"./fr\": 4470,\n\t\"./fr-ca\": 3049,\n\t\"./fr-ca.js\": 3049,\n\t\"./fr-ch\": 2330,\n\t\"./fr-ch.js\": 2330,\n\t\"./fr.js\": 4470,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 9295,\n\t\"./ga.js\": 9295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 8794,\n\t\"./gl.js\": 8794,\n\t\"./gom-deva\": 4980,\n\t\"./gom-deva.js\": 4980,\n\t\"./gom-latn\": 3168,\n\t\"./gom-latn.js\": 3168,\n\t\"./gu\": 5349,\n\t\"./gu.js\": 5349,\n\t\"./he\": 4206,\n\t\"./he.js\": 4206,\n\t\"./hi\": 94,\n\t\"./hi.js\": 94,\n\t\"./hr\": 316,\n\t\"./hr.js\": 316,\n\t\"./hu\": 2138,\n\t\"./hu.js\": 2138,\n\t\"./hy-am\": 1423,\n\t\"./hy-am.js\": 1423,\n\t\"./id\": 9218,\n\t\"./id.js\": 9218,\n\t\"./is\": 135,\n\t\"./is.js\": 135,\n\t\"./it\": 626,\n\t\"./it-ch\": 150,\n\t\"./it-ch.js\": 150,\n\t\"./it.js\": 626,\n\t\"./ja\": 9183,\n\t\"./ja.js\": 9183,\n\t\"./jv\": 4286,\n\t\"./jv.js\": 4286,\n\t\"./ka\": 2105,\n\t\"./ka.js\": 2105,\n\t\"./kk\": 7772,\n\t\"./kk.js\": 7772,\n\t\"./km\": 8758,\n\t\"./km.js\": 8758,\n\t\"./kn\": 9282,\n\t\"./kn.js\": 9282,\n\t\"./ko\": 3730,\n\t\"./ko.js\": 3730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 3291,\n\t\"./ky.js\": 3291,\n\t\"./lb\": 6841,\n\t\"./lb.js\": 6841,\n\t\"./lo\": 5466,\n\t\"./lo.js\": 5466,\n\t\"./lt\": 7010,\n\t\"./lt.js\": 7010,\n\t\"./lv\": 7595,\n\t\"./lv.js\": 7595,\n\t\"./me\": 9861,\n\t\"./me.js\": 9861,\n\t\"./mi\": 5493,\n\t\"./mi.js\": 5493,\n\t\"./mk\": 5966,\n\t\"./mk.js\": 5966,\n\t\"./ml\": 7341,\n\t\"./ml.js\": 7341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 370,\n\t\"./mr.js\": 370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 1237,\n\t\"./ms-my.js\": 1237,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 2126,\n\t\"./mt.js\": 2126,\n\t\"./my\": 6165,\n\t\"./my.js\": 6165,\n\t\"./nb\": 4924,\n\t\"./nb.js\": 4924,\n\t\"./ne\": 6744,\n\t\"./ne.js\": 6744,\n\t\"./nl\": 3901,\n\t\"./nl-be\": 9814,\n\t\"./nl-be.js\": 9814,\n\t\"./nl.js\": 3901,\n\t\"./nn\": 3877,\n\t\"./nn.js\": 3877,\n\t\"./oc-lnc\": 2135,\n\t\"./oc-lnc.js\": 2135,\n\t\"./pa-in\": 5858,\n\t\"./pa-in.js\": 5858,\n\t\"./pl\": 4495,\n\t\"./pl.js\": 4495,\n\t\"./pt\": 9520,\n\t\"./pt-br\": 7971,\n\t\"./pt-br.js\": 7971,\n\t\"./pt.js\": 9520,\n\t\"./ro\": 6459,\n\t\"./ro.js\": 6459,\n\t\"./ru\": 1793,\n\t\"./ru.js\": 1793,\n\t\"./sd\": 950,\n\t\"./sd.js\": 950,\n\t\"./se\": 490,\n\t\"./se.js\": 490,\n\t\"./si\": 124,\n\t\"./si.js\": 124,\n\t\"./sk\": 4249,\n\t\"./sk.js\": 4249,\n\t\"./sl\": 4985,\n\t\"./sl.js\": 4985,\n\t\"./sq\": 1104,\n\t\"./sq.js\": 1104,\n\t\"./sr\": 9131,\n\t\"./sr-cyrl\": 9915,\n\t\"./sr-cyrl.js\": 9915,\n\t\"./sr.js\": 9131,\n\t\"./ss\": 5893,\n\t\"./ss.js\": 5893,\n\t\"./sv\": 8760,\n\t\"./sv.js\": 8760,\n\t\"./sw\": 1172,\n\t\"./sw.js\": 1172,\n\t\"./ta\": 7333,\n\t\"./ta.js\": 7333,\n\t\"./te\": 3110,\n\t\"./te.js\": 3110,\n\t\"./tet\": 2095,\n\t\"./tet.js\": 2095,\n\t\"./tg\": 7321,\n\t\"./tg.js\": 7321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tk\": 9005,\n\t\"./tk.js\": 9005,\n\t\"./tl-ph\": 5768,\n\t\"./tl-ph.js\": 5768,\n\t\"./tlh\": 9444,\n\t\"./tlh.js\": 9444,\n\t\"./tr\": 2397,\n\t\"./tr.js\": 2397,\n\t\"./tzl\": 8254,\n\t\"./tzl.js\": 8254,\n\t\"./tzm\": 1106,\n\t\"./tzm-latn\": 699,\n\t\"./tzm-latn.js\": 699,\n\t\"./tzm.js\": 1106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 7691,\n\t\"./uk.js\": 7691,\n\t\"./ur\": 3795,\n\t\"./ur.js\": 3795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 588,\n\t\"./uz-latn.js\": 588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 5666,\n\t\"./vi.js\": 5666,\n\t\"./x-pseudo\": 4378,\n\t\"./x-pseudo.js\": 4378,\n\t\"./yo\": 5805,\n\t\"./yo.js\": 5805,\n\t\"./zh-cn\": 3839,\n\t\"./zh-cn.js\": 3839,\n\t\"./zh-hk\": 5726,\n\t\"./zh-hk.js\": 5726,\n\t\"./zh-mo\": 9807,\n\t\"./zh-mo.js\": 9807,\n\t\"./zh-tw\": 4152,\n\t\"./zh-tw.js\": 4152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 6700;","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app\"}},[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',[_c('router-view')],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div id=\"app\">\r\n\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t<div v-if=\"!page.loading\">\r\n\t\t\t<router-view />\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<style lang=\"scss\">\r\n\t@import 'app.scss';\r\n</style>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'app',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\tloading: true,\r\n\t\t\t\t\terrors: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.getWebsiteText();\n\t\t\tawait this.checkAuth();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync checkAuth() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('auth/check', this.getTokenHeader());\r\n\t\t\t\t\tthis.$store.commit('login', {\n\t\t\t\t\t\ttoken: localStorage.getItem('auth_token'),\n\t\t\t\t\t\tuser: response.data\n\t\t\t\t\t});\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\n\t\t\tasync getWebsiteText() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('datasets/websitetext');\r\n\t\t\t\t\tthis.$store.commit('setupSite', {\n\t\t\t\t\t\tsiteText: response.data.siteText,\n\t\t\t\t\t\tsiteSettings: response.data.siteSettings\n\t\t\t\t\t});\n\n\t\t\t\t\tif (!this.isNullOrEmpty(response.data.siteText.siteName)) {\n\t\t\t\t\t\tdocument.title = `${response.data.siteText.siteName} | ${response.data.siteText.siteLongName}`;\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t//this.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=91494e08&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=91494e08&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"bg-gradient-two-blues\"},[_c('b-navbar',{attrs:{\"toggleable\":\"lg\",\"type\":\"dark\"}},[_c('b-container',[_c('div',{staticClass:\"navbar-brand d-flex py-3\"},[_c('div',{staticClass:\"acronym mr-3\"},[_vm._v(_vm._s(_vm.siteText.siteName))]),_c('div',{staticClass:\"d-none d-md-block\"},[_c('div',{staticClass:\"name\"},[_vm._v(_vm._s(_vm.siteText.siteLongName))]),_c('div',{staticClass:\"description\"},[_vm._v(_vm._s(_vm.siteText.siteNameDescription))])])]),_c('b-navbar-nav',{staticClass:\"ml-auto\"},[(_vm.isAuthorized(_vm.roleNames.registered))?_c('b-nav-item',{attrs:{\"to\":\"/projects\"}},[_vm._v(\"My Projects\")]):_c('b-nav-item',{attrs:{\"id\":\"login-popover\"}},[_vm._v(\"Log in\")]),_c('b-nav-item',{attrs:{\"to\":\"/help\"}},[_c('span',{staticClass:\"d-none d-md-block\"},[_vm._v(\"Documentation & Support\")]),_c('span',{staticClass:\"d-md-none\"},[_vm._v(\"Support\")])])],1)],1)],1),(!_vm.isAuthorized(_vm.roleNames.registered))?_c('b-popover',{attrs:{\"show\":_vm.show.login,\"target\":\"login-popover\",\"placement\":\"bottom\",\"title\":\"Log in\"},on:{\"update:show\":function($event){return _vm.$set(_vm.show, \"login\", $event)}}},[_c('login-form',{attrs:{\"explicit-redirect\":\"/projects\"}}),_c('p',[_vm._v(\" Don't have an account? \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.showRegister.apply(null, arguments)}}},[_vm._v(\"Register now.\")])])],1):_vm._e(),_c('b-modal',{attrs:{\"size\":\"lg\",\"title\":\"Register for an account\"},model:{value:(_vm.show.register),callback:function ($$v) {_vm.$set(_vm.show, \"register\", $$v)},expression:\"show.register\"}},[(!_vm.registration.submitted)?_c('p',[_vm._v(\" Accounts are subject to administrator approval. Complete the form below to get started. \")]):_vm._e(),_c('error-list',{attrs:{\"errors\":_vm.registration.errors}}),(_vm.registration.submitted)?_c('div',[_c('p',[_vm._v(\" Your account has been created. Please check your email to confirm your account. \")]),_c('p',[_vm._v(\" Once confirmed, a \"+_vm._s(_vm.siteText.siteName)+\" administrator will be notified to approve or deny access. \")]),_c('p',[_vm._v(\" If you do not receive the email after a few minutes, log into \"+_vm._s(_vm.siteText.siteName)+\" using the user name and password you just created. You will be presented with the option to re-send the confirmation email. \")])]):_vm._e(),(!_vm.registration.submitted)?_c('b-form',{staticClass:\"my-4\",on:{\"submit\":function($event){$event.preventDefault();return _vm.register.apply(null, arguments)}}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"First name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.firstName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.registration.form.firstName)},model:{value:(_vm.registration.form.firstName),callback:function ($$v) {_vm.$set(_vm.registration.form, \"firstName\", $$v)},expression:\"registration.form.firstName\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Last name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.lastName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.registration.form.lastName)},model:{value:(_vm.registration.form.lastName),callback:function ($$v) {_vm.$set(_vm.registration.form, \"lastName\", $$v)},expression:\"registration.form.lastName\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Email address\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.getValidState(_vm.$v.registration.form.email)},model:{value:(_vm.registration.form.email),callback:function ($$v) {_vm.$set(_vm.registration.form, \"email\", $$v)},expression:\"registration.form.email\"}}),(!_vm.$v.registration.form.email.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.registration.form.email.email)?_c('b-form-invalid-feedback',[_vm._v(\"Please enter a valid email address\")]):_vm._e()],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Confirm your email\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.getValidState(_vm.$v.registration.form.compareEmail)},model:{value:(_vm.registration.form.compareEmail),callback:function ($$v) {_vm.$set(_vm.registration.form, \"compareEmail\", $$v)},expression:\"registration.form.compareEmail\"}}),(!_vm.$v.registration.form.compareEmail.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.registration.form.compareEmail.email)?_c('b-form-invalid-feedback',[_vm._v(\"Please enter a valid email address\")]):_vm._e(),(!_vm.$v.registration.form.compareEmail.sameAsEmail)?_c('b-form-invalid-feedback',[_vm._v(\"Email addresses must match\")]):_vm._e()],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Company or organization\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.affiliation)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.registration.form.affiliation)},model:{value:(_vm.registration.form.affiliation),callback:function ($$v) {_vm.$set(_vm.registration.form, \"affiliation\", $$v)},expression:\"registration.form.affiliation\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Category\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.organizationCategory)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.organizationCategories,\"state\":_vm.getValidState(_vm.$v.registration.form.organizationCategory)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a category --\")])]},proxy:true}],null,false,404444676),model:{value:(_vm.registration.form.organizationCategory),callback:function ($$v) {_vm.$set(_vm.registration.form, \"organizationCategory\", $$v)},expression:\"registration.form.organizationCategory\"}})],1),_c('b-form-group',{attrs:{\"label\":`What is your reason for trying ${_vm.siteText.siteName}?`,\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.reasonForUse)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.registration.form.reasonForUse)},model:{value:(_vm.registration.form.reasonForUse),callback:function ($$v) {_vm.$set(_vm.registration.form, \"reasonForUse\", $$v)},expression:\"registration.form.reasonForUse\"}})],1),_c('b-form-group',{attrs:{\"label\":\"In what country are you located?\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.country)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.countries,\"state\":_vm.getValidState(_vm.$v.registration.form.country)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a country --\")])]},proxy:true}],null,false,584122172),model:{value:(_vm.registration.form.country),callback:function ($$v) {_vm.$set(_vm.registration.form, \"country\", $$v)},expression:\"registration.form.country\"}})],1),(_vm.registration.form.country === 'United States')?_c('b-form-group',{attrs:{\"label\":\"Select your state or territory\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.state)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.states,\"state\":_vm.getValidState(_vm.$v.registration.form.state)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a state or territory --\")])]},proxy:true}],null,false,2159271862),model:{value:(_vm.registration.form.state),callback:function ($$v) {_vm.$set(_vm.registration.form, \"state\", $$v)},expression:\"registration.form.state\"}})],1):_vm._e(),_c('hr',{staticClass:\"my-3\"}),_c('b-form-group',{attrs:{\"label\":\"Enter a user name\",\"description\":\"Letters, numbers, period, and underscore only. No spaces.\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.userName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.registration.form.userName)},model:{value:(_vm.registration.form.userName),callback:function ($$v) {_vm.$set(_vm.registration.form, \"userName\", $$v)},expression:\"registration.form.userName\"}})],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Password\",\"description\":_vm.globals.passwordRequirements}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.registration.form.password)},model:{value:(_vm.registration.form.password),callback:function ($$v) {_vm.$set(_vm.registration.form, \"password\", $$v)},expression:\"registration.form.password\"}}),(!_vm.$v.registration.form.password.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.registration.form.password.strongPassword)?_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.globals.passwordRequirements))]):_vm._e()],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Confirm your password\"}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.registration.form.comparePassword)},model:{value:(_vm.registration.form.comparePassword),callback:function ($$v) {_vm.$set(_vm.registration.form, \"comparePassword\", $$v)},expression:\"registration.form.comparePassword\"}}),(!_vm.$v.registration.form.comparePassword.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.registration.form.comparePassword.sameAsPassword)?_c('b-form-invalid-feedback',[_vm._v(\"Passwords must match\")]):_vm._e()],1)],1)],1),_c('vue-recaptcha',{ref:\"recaptcha\",attrs:{\"sitekey\":\"6LfjtrQUAAAAAE4QWk_7aVBpuqZ4LvdCzLETUL6J\",\"loadRecaptchaScript\":true},on:{\"verify\":_vm.submitCaptcha,\"expired\":_vm.onCaptchaExpired}}),_c('error-list',{attrs:{\"errors\":_vm.registration.errors}}),_c('div',{staticClass:\"mt-3\"},[_c('save-button',{attrs:{\"saving\":_vm.registration.saving,\"text\":\"Create account\"}})],1)],1):_vm._e(),_c('div',{staticClass:\"w-100\",attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('p',[_vm._v(\" Already have an account? \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.showLogin.apply(null, arguments)}}},[_vm._v(\"Log in now.\")])])])],1),_c('b-container',[_c('b-row',{staticClass:\"pb-5 pt-4\"},[_c('b-col',[_c('div',{staticClass:\"text-trans lead mb-0\",domProps:{\"innerHTML\":_vm._s(_vm.siteText.homePageIntro)}})])],1)],1)],1),_c('div',{staticClass:\"py-5\"},[_c('b-container',[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.siteText.homePageText)}})])],1),_c('div',{staticClass:\"py-5 bg-gradient-light-blue\"},[_c('b-container',[_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('h1',[_vm._v(\" How does \"+_vm._s(_vm.siteText.siteName)+\" work? \")]),(!_vm.isAuthorized(_vm.roleNames.registered))?_c('p',{staticClass:\"text-muted\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.showLogin.apply(null, arguments)}}},[_vm._v(\"Log in\")]),_vm._v(\" or \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.showRegister.apply(null, arguments)}}},[_vm._v(\"register\")]),_vm._v(\" for an account to get started. \")]):_c('p',{staticClass:\"text-muted\"},[_c('router-link',{attrs:{\"to\":\"/projects\"}},[_vm._v(\"Visit your projects dashboard\")]),_vm._v(\" to get started. \")],1)])],1),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.siteText.homePageWorkLists)}})],1)],1),_c('footer-data')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"bg-dark pt-4 pb-5 text-trans text-center\"},[_c('b-container',[_c('b-row',[_c('b-col',[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.siteText.footer)}})])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div class=\"bg-dark pt-4 pb-5 text-trans text-center\">\r\n\t\t<b-container>\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col>\r\n\t\t\t\t\t<div v-html=\"siteText.footer\"></div>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\t\t</b-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'FooterData',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpublicPath: process.env.BASE_URL,\r\n\t\t\t\temail: 'eco.web@tamu.edu'\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FooterData.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FooterData.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FooterData.vue?vue&type=template&id=759ed3ff&\"\nimport script from \"./FooterData.vue?vue&type=script&lang=js&\"\nexport * from \"./FooterData.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<div class=\"bg-gradient-two-blues\">\r\n\t\t\t<b-navbar toggleable=\"lg\" type=\"dark\">\r\n\t\t\t\t<b-container>\r\n\t\t\t\t\t<div class=\"navbar-brand d-flex py-3\">\r\n\t\t\t\t\t\t<div class=\"acronym mr-3\">{{siteText.siteName}}</div>\r\n\t\t\t\t\t\t<div class=\"d-none d-md-block\">\r\n\t\t\t\t\t\t\t<div class=\"name\">{{siteText.siteLongName}}</div>\r\n\t\t\t\t\t\t\t<div class=\"description\">{{siteText.siteNameDescription}}</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<b-navbar-nav class=\"ml-auto\">\r\n\t\t\t\t\t\t<b-nav-item to=\"/projects\" v-if=\"isAuthorized(roleNames.registered)\">My Projects</b-nav-item>\r\n\t\t\t\t\t\t<b-nav-item id=\"login-popover\" v-else>Log in</b-nav-item>\r\n\t\t\t\t\t\t<b-nav-item to=\"/help\">\r\n\t\t\t\t\t\t\t<span class=\"d-none d-md-block\">Documentation &amp; Support</span>\r\n\t\t\t\t\t\t\t<span class=\"d-md-none\">Support</span>\r\n\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t</b-navbar-nav>\r\n\t\t\t\t</b-container>\r\n\t\t\t</b-navbar>\r\n\r\n\t\t\t<b-popover v-if=\"!isAuthorized(roleNames.registered)\" :show.sync=\"show.login\" target=\"login-popover\" placement=\"bottom\" title=\"Log in\">\r\n\t\t\t\t<login-form explicit-redirect=\"/projects\"></login-form>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tDon't have an account? <a @click.prevent=\"showRegister\" href=\"#\">Register now.</a>\r\n\t\t\t\t</p>\r\n\t\t\t</b-popover>\r\n\r\n\t\t\t<b-modal v-model=\"show.register\" size=\"lg\" title=\"Register for an account\">\r\n\t\t\t\t<p v-if=\"!registration.submitted\">\r\n\t\t\t\t\tAccounts are subject to administrator approval. Complete the form below to get started.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<error-list :errors=\"registration.errors\"></error-list>\r\n\r\n\t\t\t\t<div v-if=\"registration.submitted\">\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tYour account has been created. Please check your email to confirm your account.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tOnce confirmed, a {{siteText.siteName}} administrator will be notified to approve or deny access.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tIf you do not receive the email after a few minutes, log into {{siteText.siteName}} using the user name and password you just created.\r\n\t\t\t\t\t\tYou will be presented with the option to re-send the confirmation email.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<b-form @submit.prevent=\"register\" class=\"my-4\" v-if=\"!registration.submitted\">\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"First name\" :invalid-feedback=\"requiredFeedback($v.registration.form.firstName)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.firstName\" type=\"text\" autofocus :state=\"getValidState($v.registration.form.firstName)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Last name\" :invalid-feedback=\"requiredFeedback($v.registration.form.lastName)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.lastName\" type=\"text\" :state=\"getValidState($v.registration.form.lastName)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Email address\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.email\" type=\"email\" :state=\"getValidState($v.registration.form.email)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.email.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.email.email\">Please enter a valid email address</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Confirm your email\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.compareEmail\" type=\"email\" :state=\"getValidState($v.registration.form.compareEmail)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.compareEmail.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.compareEmail.email\">Please enter a valid email address</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.compareEmail.sameAsEmail\">Email addresses must match</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Company or organization\" :invalid-feedback=\"requiredFeedback($v.registration.form.affiliation)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"registration.form.affiliation\" type=\"text\" :state=\"getValidState($v.registration.form.affiliation)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Category\" :invalid-feedback=\"requiredFeedback($v.registration.form.organizationCategory)\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"registration.form.organizationCategory\" :options=\"location.organizationCategories\" :state=\"getValidState($v.registration.form.organizationCategory)\">\r\n\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a category --</option>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group :label=\"`What is your reason for trying ${siteText.siteName}?`\" :invalid-feedback=\"requiredFeedback($v.registration.form.reasonForUse)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"registration.form.reasonForUse\" type=\"text\" :state=\"getValidState($v.registration.form.reasonForUse)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"In what country are you located?\" :invalid-feedback=\"requiredFeedback($v.registration.form.country)\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"registration.form.country\" :options=\"location.countries\" :state=\"getValidState($v.registration.form.country)\">\r\n\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a country --</option>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group v-if=\"registration.form.country === 'United States'\" label=\"Select your state or territory\" :invalid-feedback=\"requiredFeedback($v.registration.form.state)\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"registration.form.state\" :options=\"location.states\" :state=\"getValidState($v.registration.form.state)\">\r\n\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a state or territory --</option>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<hr class=\"my-3\" />\r\n\r\n\t\t\t\t\t<b-form-group label=\"Enter a user name\" description=\"Letters, numbers, period, and underscore only. No spaces.\" :invalid-feedback=\"requiredFeedback($v.registration.form.userName)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"registration.form.userName\" type=\"text\" :state=\"getValidState($v.registration.form.userName)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Password\" :description=\"globals.passwordRequirements\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.password\" type=\"password\" :state=\"getValidState($v.registration.form.password)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.password.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.password.strongPassword\">{{globals.passwordRequirements}}</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Confirm your password\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.comparePassword\" type=\"password\" :state=\"getValidState($v.registration.form.comparePassword)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.comparePassword.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.comparePassword.sameAsPassword\">Passwords must match</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t\t<vue-recaptcha sitekey=\"6LfjtrQUAAAAAE4QWk_7aVBpuqZ4LvdCzLETUL6J\"\r\n\t\t\t\t\t\t\t\t   ref=\"recaptcha\"\r\n\t\t\t\t\t\t\t\t   @verify=\"submitCaptcha\"\r\n\t\t\t\t\t\t\t\t   @expired=\"onCaptchaExpired\"\r\n\t\t\t\t\t\t\t\t   :loadRecaptchaScript=\"true\">\r\n\t\t\t\t\t</vue-recaptcha>\r\n\r\n\t\t\t\t\t<error-list :errors=\"registration.errors\"></error-list>\r\n\t\t\t\t\t<div class=\"mt-3\">\r\n\t\t\t\t\t\t<save-button :saving=\"registration.saving\" text=\"Create account\" />\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-form>\r\n\t\t\t\t<div slot=\"modal-footer\" class=\"w-100\">\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAlready have an account? <a @click.prevent=\"showLogin\" href=\"#\">Log in now.</a>\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t\t<b-container>\r\n\t\t\t\t<b-row class=\"pb-5 pt-4\">\r\n\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t<div class=\"text-trans lead mb-0\" v-html=\"siteText.homePageIntro\"></div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\t\t\t</b-container>\r\n\t\t</div>\r\n\t\t<div class=\"py-5\">\r\n\t\t\t<b-container>\r\n\t\t\t\t<div v-html=\"siteText.homePageText\"></div>\r\n\t\t\t</b-container>\r\n\t\t</div>\r\n\t\t<div class=\"py-5 bg-gradient-light-blue\">\r\n\t\t\t<b-container>\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col class=\"text-center\">\r\n\t\t\t\t\t\t<h1>\r\n\t\t\t\t\t\t\tHow does {{siteText.siteName}} work?\r\n\t\t\t\t\t\t</h1>\r\n\t\t\t\t\t\t<p class=\"text-muted\" v-if=\"!isAuthorized(roleNames.registered)\">\r\n\t\t\t\t\t\t\t<a @click.prevent=\"showLogin\" href=\"#\">Log in</a> or <a @click.prevent=\"showRegister\" href=\"#\">register</a> for an account to get started.\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t<p class=\"text-muted\" v-else>\r\n\t\t\t\t\t\t\t<router-link to=\"/projects\">Visit your projects dashboard</router-link> to get started.\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\t\t\t\t<div v-html=\"siteText.homePageWorkLists\"></div>\r\n\t\t\t\t\r\n\t\t\t</b-container>\r\n\t\t</div>\r\n\t\t<footer-data></footer-data>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, requiredIf, email, sameAs } from 'vuelidate/lib/validators';\r\n\timport VueRecaptcha from 'vue-recaptcha';\r\n\timport FooterData from '@/components/FooterData';\n\n\t//const userNameValid = helpers.regex(/([A-Za-z0-9._]+)/);\r\n\r\n\texport default {\r\n\t\tname: 'Home',\r\n\t\tcomponents: {\r\n\t\t\tVueRecaptcha, FooterData\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpublicPath: process.env.BASE_URL,\r\n\t\t\t\temail: 'eco.web@tamu.edu',\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false\r\n\t\t\t\t},\r\n\t\t\t\tshow: {\r\n\t\t\t\t\tlogin: false,\r\n\t\t\t\t\tregister: false\r\n\t\t\t\t},\r\n\t\t\t\tregistration: {\r\n\t\t\t\t\tform: {\r\n\t\t\t\t\t\tfirstName: '',\r\n\t\t\t\t\t\tlastName: '',\r\n\t\t\t\t\t\temail: '',\r\n\t\t\t\t\t\tcompareEmail: '',\r\n\t\t\t\t\t\tuserName: '',\r\n\t\t\t\t\t\tpassword: '',\r\n\t\t\t\t\t\tcomparePassword: '',\r\n\t\t\t\t\t\tcountry: 'United States',\r\n\t\t\t\t\t\tstate: null,\r\n\t\t\t\t\t\taffiliation: '',\r\n\t\t\t\t\t\torganizationCategory: null,\r\n\t\t\t\t\t\treasonForUse: ''\r\n\t\t\t\t\t},\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tsubmitted: false,\r\n\t\t\t\t\trecaptchaToken: ''\r\n\t\t\t\t},\n\t\t\t\tlocation: {\n\t\t\t\t\tcountries: [],\n\t\t\t\t\tstates: [],\n\t\t\t\t\torganizationCategories: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tregistration: {\r\n\t\t\t\tform: {\r\n\t\t\t\t\tfirstName: { required },\r\n\t\t\t\t\tlastName: { required },\r\n\t\t\t\t\temail: { required, email },\r\n\t\t\t\t\tcompareEmail: { required, email, sameAsEmail: sameAs('email') },\r\n\t\t\t\t\tuserName: { required },\r\n\t\t\t\t\tpassword: {\r\n\t\t\t\t\t\trequired,\r\n\t\t\t\t\t\tstrongPassword(password) {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t/[a-z]/.test(password) && // checks for a-z\r\n\t\t\t\t\t\t\t\t/[0-9]/.test(password) && // checks for 0-9\r\n\t\t\t\t\t\t\t\t/\\W|_/.test(password) && // checks for special char\r\n\t\t\t\t\t\t\t\tpassword.length >= 10\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcomparePassword: { required, sameAsPassword: sameAs('password') },\r\n\t\t\t\t\tcountry: { required },\r\n\t\t\t\t\tstate: { required: requiredIf(function () { return this.registration.form.country == 'United States'; }) },\r\n\t\t\t\t\torganizationCategory: { required },\r\n\t\t\t\t\taffiliation: { required },\r\n\t\t\t\t\treasonForUse: { required }\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('account/locationdata', this.getTokenHeader());\n\t\t\t\t\tthis.location = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync register() {\r\n\t\t\t\tthis.registration.errors = [];\r\n\t\t\t\tthis.registration.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.registration.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tfirstName: this.registration.form.firstName,\r\n\t\t\t\t\t\tlastName: this.registration.form.lastName,\r\n\t\t\t\t\t\temail: this.registration.form.email,\r\n\t\t\t\t\t\tuserName: this.registration.form.userName,\r\n\t\t\t\t\t\tpassword: this.registration.form.password,\r\n\t\t\t\t\t\tcountry: this.registration.form.country,\r\n\t\t\t\t\t\tstate: this.registration.form.state,\r\n\t\t\t\t\t\torganizationCategory: this.registration.form.organizationCategory,\r\n\t\t\t\t\t\taffiliation: this.registration.form.affiliation,\r\n\t\t\t\t\t\treasonForUse: this.registration.form.reasonForUse,\r\n\t\t\t\t\t\trecaptchaToken: this.registration.recaptchaToken\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tawait this.$http.post('account/register', data);\r\n\t\t\t\t\t\tthis.registration.submitted = true;\r\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tthis.registration.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.registration.saving = false;\r\n\t\t\t},\r\n\t\t\tsubmitCaptcha(recaptchaToken) {\r\n\t\t\t\tthis.registration.recaptchaToken = recaptchaToken;\r\n\t\t\t},\r\n\t\t\tonCaptchaExpired() {\r\n\t\t\t\tthis.$refs.recaptcha.reset();\r\n\t\t\t},\r\n\t\t\tshowRegister() {\r\n\t\t\t\tthis.show.register = true;\r\n\t\t\t\tthis.show.login = false;\r\n\t\t\t},\r\n\t\t\tshowLogin() {\r\n\t\t\t\tthis.show.register = false;\r\n\t\t\t\tthis.show.login = true;\r\n\t\t\t\tthis.$scrollTo('#login-popover');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=787409b3&\"\nimport script from \"./Home.vue?vue&type=script&lang=js&\"\nexport * from \"./Home.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('div',{attrs:{\"id\":\"main-panel\"}},[(_vm.$route.path == '/help')?_c('div',{staticClass:\"container py-5\"},[(_vm.siteSettings.useCustomHelpPage)?_c('div',[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.pageText)}})]):_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Documentation & Support\")]),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.pageText)}}),(_vm.tiers.length > 0)?_c('div',[_c('h3',{staticClass:\"mt-4\"},[_vm._v(_vm._s(_vm.siteText.siteName)+\" User Tiers\")]),_c('p',[_vm._v(\" All users are placed in \"),_c('b',[_vm._v(\"Tier I\")]),_vm._v(\" upon registration. To access a higher tier, \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"visit your account profile\")]),_vm._v(\" and click the Tier Limitations tab. \")],1),_c('table',{staticClass:\"table table-striped table-responsive\"},[_vm._m(0),_c('tbody',_vm._l((_vm.tiers),function(tier,i){return _c('tr',{key:i},[_c('td',[_vm._v(_vm._s(tier.name))]),_c('td',[_vm._v(_vm._s(tier.subbasinLimit === 0 ? 'unlimited' : _vm.numberWithCommas(tier.subbasinLimit)))]),_c('td',[_vm._v(_vm._s(tier.hruLimit === 0 ? 'unlimited' : _vm.numberWithCommas(tier.hruLimit)))]),_c('td',[_vm._v(_vm._s(tier.taskLimit))]),_c('td',[_vm._v(_vm._s(tier.concurrencyLimit === 0 ? 'unlimited' : _vm.numberWithCommas(tier.concurrencyLimit)))]),_c('td',[_vm._v(_vm._s(tier.queuePriority))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(tier.datasetUploadLimit,0)))]),_c('td',[_vm._v(_vm._s(tier.datasets.join(', ')))])])}),0)])]):_vm._e(),_c('h3',{staticClass:\"mt-4\"},[_vm._v(_vm._s(_vm.siteText.siteName)+\" Run Time Guide\")]),_c('p',[_vm._v(\" The table below gives an estimate of the time it takes to run a scenario in \"+_vm._s(_vm.siteText.siteName)+\". The times below are subject to fluctuation based on number of concurrent users and projects running on \"+_vm._s(_vm.siteText.siteName)+\" at any given time. \")]),_vm._m(1)])]):_vm._e(),_c('router-view')],1)]),_c('footer-data')],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Tier\")]),_c('th',[_vm._v(\"Max. Subbasins\")]),_c('th',[_vm._v(\"Max. HRUs\")]),_c('th',[_vm._v(\"Run Frequency\")]),_c('th',[_vm._v(\"Run Concurrently\")]),_c('th',[_vm._v(\"Queue Priority\")]),_c('th',[_vm._v(\"Max. Project Uploads\")]),_c('th',[_vm._v(\"Dataset Access\")])])])\n},function (){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"table-responsive\"},[_c('table',{staticClass:\"table table-striped table-bordered\"},[_c('thead',[_c('tr',[_c('th',{attrs:{\"rowspan\":\"2\"}},[_vm._v(\"Number of HRUs\")]),_c('th',{staticClass:\"text-center\",attrs:{\"colspan\":\"4\"}},[_vm._v(\"Modeled Time Frame\")])]),_c('tr',[_c('th',[_vm._v(\"5 Years\")]),_c('th',[_vm._v(\"10 Years\")]),_c('th',[_vm._v(\"20 Years\")]),_c('th',[_vm._v(\"30 Years\")])])]),_c('tbody',[_c('tr',[_c('td',[_vm._v(\"2,500\")]),_c('td',[_vm._v(\"8m\")]),_c('td',[_vm._v(\"9m\")]),_c('td',[_vm._v(\"11m\")]),_c('td',[_vm._v(\"13m\")])]),_c('tr',[_c('td',[_vm._v(\"5,000\")]),_c('td',[_vm._v(\"15m\")]),_c('td',[_vm._v(\"20m\")]),_c('td',[_vm._v(\"29m\")]),_c('td',[_vm._v(\"39m\")])]),_c('tr',[_c('td',[_vm._v(\"25,000\")]),_c('td',[_vm._v(\"1h 29m\")]),_c('td',[_vm._v(\"2h 9m\")]),_c('td',[_vm._v(\"3h 7m\")]),_c('td',[_vm._v(\"4h 29m\")])]),_c('tr',[_c('td',[_vm._v(\"50,000\")]),_c('td',[_vm._v(\"4h 11m\")]),_c('td',[_vm._v(\"6h 9m\")]),_c('td',[_vm._v(\"9h 29m\")]),_c('td',[_vm._v(\"13h 38m\")])]),_c('tr',[_c('td',[_vm._v(\"75,000\")]),_c('td',[_vm._v(\"7h 29m\")]),_c('td',[_vm._v(\"10h 47m\")]),_c('td',[_vm._v(\"19h 42m\")]),_c('td',[_vm._v(\"1d 3h 55m\")])]),_c('tr',[_c('td',[_vm._v(\"100,000\")]),_c('td',[_vm._v(\"10h 51m\")]),_c('td',[_vm._v(\"19h 7m\")]),_c('td',[_vm._v(\"1d 8h 11m\")]),_c('td',[_vm._v(\"1d 20h 26m\")])]),_c('tr',[_c('td',[_vm._v(\"125,000\")]),_c('td',[_vm._v(\"17h 27m\")]),_c('td',[_vm._v(\"1d 3h 44m\")]),_c('td',[_vm._v(\"2d 16m\")]),_c('td',[_vm._v(\"2d 19h 38m\")])]),_c('tr',[_c('td',[_vm._v(\"150,000\")]),_c('td',[_vm._v(\"1d 6h 4m\")]),_c('td',[_vm._v(\"1d 17h 9m\")]),_c('td',[_vm._v(\"3d 2h 26m\")]),_c('td',[_vm._v(\"4d 13h 30m\")])])])])])\n}]\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-navbar',{attrs:{\"toggleable\":\"lg\",\"type\":\"dark\",\"variant\":\"primary\",\"fixed\":\"top\",\"id\":\"dash-nav\"}},[_c('div',{staticClass:\"navbar-brand d-flex\"},[_c('div',{staticClass:\"acronym mr-3\"},[_c('router-link',{attrs:{\"to\":\"/\"}},[_vm._v(_vm._s(_vm.siteText.siteName))])],1),_c('div',{staticClass:\"d-none d-md-block\"},[_c('div',{staticClass:\"name\"},[_vm._v(_vm._s(_vm.siteText.siteLongName))]),_c('div',{staticClass:\"description\"},[_vm._v(_vm._s(_vm.siteText.siteNameDescription))])])]),_c('b-navbar-toggle',{attrs:{\"target\":\"nav_collapse\"}}),_c('b-collapse',{attrs:{\"is-nav\":\"\",\"id\":\"nav_collapse\"}},[_c('b-navbar-nav',{staticClass:\"ml-auto\"},[(_vm.hasFeatureAccess())?_c('b-nav-item-dropdown',{staticClass:\"mr-2\",attrs:{\"text\":\"Advanced\",\"right\":\"\"}},[(_vm.hasFeatureAccess(_vm.featureNames.batchProjects) && _vm.isAuthorized(_vm.roleNames.apiUser))?_c('b-dropdown-item',{attrs:{\"to\":\"/api/batch\"}},[_vm._v(\"Batch project runs\")]):_vm._e(),(_vm.hasFeatureAccess(_vm.featureNames.regionalProjects))?_c('b-dropdown-item',{attrs:{\"to\":\"/api/regional\"}},[_vm._v(\"Regional project runs\")]):_vm._e()],1):_vm._e(),(_vm.isAuthorized(_vm.roleNames.registered))?_c('b-nav-item-dropdown',{staticClass:\"mr-2\",attrs:{\"text\":\"Projects\",\"right\":\"\"}},[_vm._l((_vm.recentProjects),function(p,i){return _c('b-dropdown-item',{key:i,attrs:{\"to\":`/projects/${p.id}`}},[_vm._v(_vm._s(p.name))])}),(_vm.recentProjects.length > 0)?_c('b-dropdown-divider'):_vm._e(),_c('b-dropdown-item',{attrs:{\"to\":\"/projects\"}},[_vm._v(\"All projects\")]),_c('b-dropdown-item',{attrs:{\"to\":\"/projects/create\"}},[_vm._v(\"Create a new project\")]),(_vm.hasAccessToUploads)?_c('b-dropdown-divider'):_vm._e(),(_vm.hasAccessToUploads)?_c('b-dropdown-item',{attrs:{\"to\":\"/datasets\"}},[_vm._v(\"Upload a project\")]):_vm._e()],2):_vm._e(),(_vm.isAuthorized(_vm.roleNames.registered))?_c('b-nav-item',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"to\":\"/projects\",\"title\":\"Project dashboard\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'home'],\"fixed-width\":\"\",\"size\":\"lg\"}})],1):_vm._e(),(_vm.isAuthorized(_vm.roleNames.admin) || _vm.isAuthorized(_vm.roleNames.partialAdmin))?_c('b-nav-item',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"to\":\"/admin\",\"title\":`${_vm.siteText.siteName} administration`}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'lock'],\"fixed-width\":\"\",\"size\":\"lg\"}})],1):_vm._e(),(_vm.isAuthorized(_vm.roleNames.registered))?_c('b-nav-item-dropdown',{staticClass:\"mr-2\",attrs:{\"right\":\"\",\"no-caret\":\"\"}},[_c('template',{slot:\"button-content\"},[_c('font-awesome-layers',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"full-width\":\"\",\"title\":\"Notifications\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'bell'],\"fixed-width\":\"\",\"size\":\"lg\"}}),(_vm.notifications.length > 0)?_c('font-awesome-layers-text',{staticClass:\"text-white badge badge-danger\",attrs:{\"transform\":\"up-8 right-16 shrink-3\",\"value\":_vm.notifications.length}}):_vm._e()],1)],1),(_vm.page.loading)?_c('b-dropdown-text',{staticClass:\"dropdown-max-width\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\",\"size\":\"2x\"}})],1):(_vm.notifications.length === 0)?_c('b-dropdown-text',{staticClass:\"dropdown-max-width\"},[_vm._v(\"You have no notifications at this time.\")]):_c('div',{staticClass:\"dropdown-max-width\"},[_c('div',{staticStyle:{\"max-height\":\"500px\",\"overflow\":\"auto\"}},_vm._l((_vm.notifications),function(n,i){return _c('div',{key:i,staticClass:\"py-2\"},[_c('b-dropdown-form',[_c('div',{staticClass:\"d-flex justify-content-between align-items-start\"},[_c('div',{staticClass:\"px-2\"},[_c('b-form-checkbox',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":\"Clear this notification\"},on:{\"change\":function($event){return _vm.clearNotification(n.id)}}})],1),_c('div',{staticClass:\"pr-3\"},[_c('h6',{staticClass:\"mb-1\"},[_vm._v(_vm._s(n.title))]),_c('div',[_vm._v(_vm._s(n.details))]),_c('div',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.clearAndGo(n.id, n.url)}}},[_vm._v(_vm._s(n.urlText))])]),_c('div',{staticClass:\"text-muted\"},[_c('small',[_vm._v(_vm._s(_vm._f(\"dateFromNow\")(n.notificationDate)))])])])])]),_c('b-dropdown-divider')],1)}),0),_c('b-dropdown-item-button',{on:{\"click\":_vm.clearNotifications}},[_vm._v(\"Clear all notifications\")])],1)],2):_vm._e(),(_vm.isAuthorized(_vm.roleNames.registered))?_c('b-nav-item-dropdown',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"right\":\"\",\"no-caret\":\"\",\"title\":\"Account and group settings\"}},[_c('template',{slot:\"button-content\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'user-circle'],\"fixed-width\":\"\",\"size\":\"lg\"}})],1),_c('b-dropdown-text',{staticStyle:{\"width\":\"300px\"}},[_vm._v(\"Welcome, \"),_c('strong',[_vm._v(_vm._s(this.user.userName))]),_vm._v(\"!\")]),_c('b-dropdown-divider'),_c('b-dropdown-item',{attrs:{\"to\":\"/account\"}},[_vm._v(\"My account\")]),(_vm.isAuthorized(_vm.roleNames.registered))?_c('b-dropdown-item',{attrs:{\"to\":\"/groups\"}},[_vm._v(\"My groups\")]):_vm._e(),(_vm.isAuthorized(_vm.roleNames.registered))?_c('b-dropdown-item',{attrs:{\"to\":\"/feedback\"}},[_vm._v(\"Feedback and error reports\")]):_vm._e(),_c('b-dropdown-item-button',{on:{\"click\":_vm.logout}},[_vm._v(\"Log out\")])],2):_vm._e(),_c('b-nav-item',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"to\":\"/help\",\"target\":\"_blank\",\"title\":\"Help\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'question-circle'],\"fixed-width\":\"\",\"size\":\"lg\"}})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<b-navbar toggleable=\"lg\" type=\"dark\" variant=\"primary\" fixed=\"top\" id=\"dash-nav\">\r\n\t\t<div class=\"navbar-brand d-flex\">\r\n\t\t\t<div class=\"acronym mr-3\"><router-link to=\"/\">{{siteText.siteName}}</router-link></div>\r\n\t\t\t<div class=\"d-none d-md-block\">\r\n\t\t\t\t<div class=\"name\">{{siteText.siteLongName}}</div>\r\n\t\t\t\t<div class=\"description\">{{siteText.siteNameDescription}}</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<b-navbar-toggle target=\"nav_collapse\" />\r\n\t\t<b-collapse is-nav id=\"nav_collapse\">\r\n\t\t\t<b-navbar-nav class=\"ml-auto\">\r\n\t\t\t\t<b-nav-item-dropdown text=\"Advanced\" right class=\"mr-2\" v-if=\"hasFeatureAccess()\">\r\n\t\t\t\t\t<b-dropdown-item to=\"/api/batch\" v-if=\"hasFeatureAccess(featureNames.batchProjects) && isAuthorized(roleNames.apiUser)\">Batch project runs</b-dropdown-item>\r\n\t\t\t\t\t<b-dropdown-item to=\"/api/regional\" v-if=\"hasFeatureAccess(featureNames.regionalProjects)\">Regional project runs</b-dropdown-item>\r\n\t\t\t\t</b-nav-item-dropdown>\r\n\t\t\t\t<b-nav-item-dropdown text=\"Projects\" right class=\"mr-2\" v-if=\"isAuthorized(roleNames.registered)\">\r\n\t\t\t\t\t<b-dropdown-item v-for=\"(p, i) in recentProjects\" :key=\"i\" :to=\"`/projects/${p.id}`\">{{p.name}}</b-dropdown-item>\r\n\t\t\t\t\t<b-dropdown-divider v-if=\"recentProjects.length > 0\"></b-dropdown-divider>\r\n\t\t\t\t\t<b-dropdown-item to=\"/projects\">All projects</b-dropdown-item>\r\n\t\t\t\t\t<b-dropdown-item to=\"/projects/create\">Create a new project</b-dropdown-item>\r\n\t\t\t\t\t<b-dropdown-divider v-if=\"hasAccessToUploads\"></b-dropdown-divider>\r\n\t\t\t\t\t<b-dropdown-item v-if=\"hasAccessToUploads\" to=\"/datasets\">Upload a project</b-dropdown-item>\r\n\t\t\t\t</b-nav-item-dropdown>\r\n\t\t\t\t<b-nav-item to=\"/projects\" v-if=\"isAuthorized(roleNames.registered)\" v-b-tooltip.hover title=\"Project dashboard\">\r\n\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'home']\" fixed-width size=\"lg\" />\r\n\t\t\t\t</b-nav-item>\r\n\t\t\t\t<b-nav-item to=\"/admin\" v-if=\"isAuthorized(roleNames.admin) || isAuthorized(roleNames.partialAdmin)\" v-b-tooltip.hover :title=\"`${siteText.siteName} administration`\">\r\n\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'lock']\" fixed-width size=\"lg\" />\r\n\t\t\t\t</b-nav-item>\r\n\t\t\t\t<b-nav-item-dropdown right no-caret class=\"mr-2\" v-if=\"isAuthorized(roleNames.registered)\">\r\n\t\t\t\t\t<template slot=\"button-content\">\r\n\t\t\t\t\t\t<font-awesome-layers full-width v-b-tooltip.hover title=\"Notifications\">\r\n\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'bell']\" fixed-width size=\"lg\" />\r\n\t\t\t\t\t\t\t<font-awesome-layers-text v-if=\"notifications.length > 0\" class=\"text-white badge badge-danger\" transform=\"up-8 right-16 shrink-3\" :value=\"notifications.length\" />\r\n\t\t\t\t\t\t</font-awesome-layers>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t\t<b-dropdown-text class=\"dropdown-max-width\" v-if=\"page.loading\"><font-awesome-icon :icon=\"['fas', 'spinner']\" spin size=\"2x\" /></b-dropdown-text>\r\n\t\t\t\t\t<b-dropdown-text class=\"dropdown-max-width\" v-else-if=\"notifications.length === 0\">You have no notifications at this time.</b-dropdown-text>\r\n\t\t\t\t\t<div v-else class=\"dropdown-max-width\">\r\n\t\t\t\t\t\t<div style=\"max-height:500px; overflow: auto\">\r\n\t\t\t\t\t\t\t<div v-for=\"(n, i) in notifications\" :key=\"i\" class=\"py-2\">\r\n\t\t\t\t\t\t\t\t<b-dropdown-form>\r\n\t\t\t\t\t\t\t\t\t<div class=\"d-flex justify-content-between align-items-start\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"px-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-checkbox v-b-tooltip.hover title=\"Clear this notification\" @change=\"clearNotification(n.id)\"></b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"pr-3\">\r\n\t\t\t\t\t\t\t\t\t\t\t<h6 class=\"mb-1\">{{n.title}}</h6>\r\n\t\t\t\t\t\t\t\t\t\t\t<div>{{n.details}}</div>\r\n\t\t\t\t\t\t\t\t\t\t\t<div><a href=\"#\" @click.prevent=\"clearAndGo(n.id, n.url)\">{{n.urlText}}</a></div>\r\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"text-muted\"><small>{{n.notificationDate | dateFromNow}}</small></div>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-dropdown-form>\r\n\t\t\t\t\t\t\t\t<b-dropdown-divider></b-dropdown-divider>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<b-dropdown-item-button @click=\"clearNotifications\">Clear all notifications</b-dropdown-item-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-nav-item-dropdown>\r\n\t\t\t\t<b-nav-item-dropdown right no-caret v-if=\"isAuthorized(roleNames.registered)\" v-b-tooltip.hover title=\"Account and group settings\">\r\n\t\t\t\t\t<template slot=\"button-content\">\r\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'user-circle']\" fixed-width size=\"lg\" />\r\n\t\t\t\t\t</template>\r\n\t\t\t\t\t<b-dropdown-text style=\"width:300px\">Welcome, <strong>{{this.user.userName}}</strong>!</b-dropdown-text>\r\n\t\t\t\t\t<b-dropdown-divider></b-dropdown-divider>\r\n\t\t\t\t\t<b-dropdown-item to=\"/account\">My account</b-dropdown-item>\r\n\t\t\t\t\t<b-dropdown-item to=\"/groups\" v-if=\"isAuthorized(roleNames.registered)\">My groups</b-dropdown-item>\r\n\t\t\t\t\t<b-dropdown-item to=\"/feedback\" v-if=\"isAuthorized(roleNames.registered)\">Feedback and error reports</b-dropdown-item>\r\n\t\t\t\t\t<b-dropdown-item-button @click=\"logout\">Log out</b-dropdown-item-button>\r\n\t\t\t\t</b-nav-item-dropdown>\r\n\t\t\t\t<b-nav-item to=\"/help\" target=\"_blank\" v-b-tooltip.hover title=\"Help\"><font-awesome-icon :icon=\"['fas', 'question-circle']\" fixed-width size=\"lg\" /></b-nav-item>\r\n\t\t\t</b-navbar-nav>\r\n\t\t</b-collapse>\r\n\t</b-navbar>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'DashboardHeader',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\trecentProjects: [],\r\n\t\t\t\tnotifications: [],\r\n\t\t\t\thasAccessToUploads: false\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t\tthis.$statusHub.userOpened(this.user.userName);\r\n\t\t\tthis.$statusHub.$on('user-notification-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.$statusHub.userClosed(this.user.userName);\r\n\t\t\tthis.$statusHub.$off('user-notification-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('projects/dashboard', this.getTokenHeader());\r\n\t\t\t\t\tthis.recentProjects = response.data.projects;\r\n\t\t\t\t\tthis.notifications = response.data.notifications;\r\n\t\t\t\t\tthis.hasAccessToUploads = response.data.hasAccessToUploads;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t\tthis.recentProjects = [];\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync clearNotifications() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete('account/notifications', this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync clearNotification(id) {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`account/notification/${id}`, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync clearAndGo(id, url) {\r\n\t\t\t\tawait this.clearNotification(id);\r\n\t\t\t\tthis.$router.push(url);\r\n\t\t\t},\r\n\t\t\tasync getNotification(id) {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`account/notification/${id}`, this.getTokenHeader());\r\n\t\t\t\t\tif (response.data !== null) this.notifications.unshift(response.data);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync onStatusChanged(data) {\r\n\t\t\t\tif (this.user.userName != data.userName) return;\r\n\t\t\t\tif (data.notificationID) {\r\n\t\t\t\t\tawait this.getNotification(data.notificationID);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DashboardHeader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DashboardHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DashboardHeader.vue?vue&type=template&id=eabcbb7a&\"\nimport script from \"./DashboardHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./DashboardHeader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\t\t\t\n\t\t\t<div id=\"main-panel\">\n\t\t\t\t<div v-if=\"$route.path == '/help'\" class=\"container py-5\">\n\t\t\t\t\t<div v-if=\"siteSettings.useCustomHelpPage\">\n\t\t\t\t\t\t<div v-html=\"pageText\"></div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div v-else>\n\t\t\t\t\t\t<h2 class=\"mb-3\">Documentation &amp; Support</h2>\n\n\t\t\t\t\t\t<div v-html=\"pageText\"></div>\n\n\t\t\t\t\t\t<div v-if=\"tiers.length > 0\">\n\t\t\t\t\t\t\t<h3 class=\"mt-4\">{{siteText.siteName}} User Tiers</h3>\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\tAll users are placed in <b>Tier I</b> upon registration.\n\t\t\t\t\t\t\t\tTo access a higher tier, <router-link to=\"/account\">visit your account profile</router-link>\n\t\t\t\t\t\t\t\tand click the Tier Limitations tab.\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<table class=\"table table-striped table-responsive\">\n\t\t\t\t\t\t\t\t<thead>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<th>Tier</th>\n\t\t\t\t\t\t\t\t\t\t<th>Max. Subbasins</th>\n\t\t\t\t\t\t\t\t\t\t<th>Max. HRUs</th>\n\t\t\t\t\t\t\t\t\t\t<th>Run Frequency</th>\n\t\t\t\t\t\t\t\t\t\t<th>Run Concurrently</th>\n\t\t\t\t\t\t\t\t\t\t<th>Queue Priority</th>\n\t\t\t\t\t\t\t\t\t\t<th>Max. Project Uploads</th>\n\t\t\t\t\t\t\t\t\t\t<th>Dataset Access</th>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t</thead>\n\t\t\t\t\t\t\t\t<tbody>\n\t\t\t\t\t\t\t\t\t<tr v-for=\"(tier, i) in tiers\" :key=\"i\">\n\t\t\t\t\t\t\t\t\t\t<td>{{tier.name}}</td>\n\t\t\t\t\t\t\t\t\t\t<td>{{tier.subbasinLimit === 0 ? 'unlimited' : numberWithCommas(tier.subbasinLimit)}}</td>\n\t\t\t\t\t\t\t\t\t\t<td>{{tier.hruLimit === 0 ? 'unlimited' : numberWithCommas(tier.hruLimit)}}</td>\n\t\t\t\t\t\t\t\t\t\t<td>{{tier.taskLimit}}</td>\n\t\t\t\t\t\t\t\t\t\t<td>{{tier.concurrencyLimit === 0 ? 'unlimited' : numberWithCommas(tier.concurrencyLimit)}}</td>\n\t\t\t\t\t\t\t\t\t\t<td>{{tier.queuePriority}}</td>\n\t\t\t\t\t\t\t\t\t\t<td>{{tier.datasetUploadLimit | number(0)}}</td>\n\t\t\t\t\t\t\t\t\t\t<td>{{tier.datasets.join(', ')}}</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t</tbody>\n\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<h3 class=\"mt-4\">{{siteText.siteName}} Run Time Guide</h3>\n\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\tThe table below gives an estimate of the time it takes to run a scenario in {{siteText.siteName}}.\n\t\t\t\t\t\t\tThe times below are subject to fluctuation based on number of concurrent users and projects running on {{siteText.siteName}} at any given time.\n\t\t\t\t\t\t</p>\n\n\t\t\t\t\t\t<div class=\"table-responsive\">\n\t\t\t\t\t\t\t<table class=\"table table-striped table-bordered\">\n\t\t\t\t\t\t\t\t<thead>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<th rowspan=\"2\">Number of HRUs</th>\n\t\t\t\t\t\t\t\t\t\t<th colspan=\"4\" class=\"text-center\">Modeled Time Frame</th>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<th>5 Years</th>\n\t\t\t\t\t\t\t\t\t\t<th>10 Years</th>\n\t\t\t\t\t\t\t\t\t\t<th>20 Years</th>\n\t\t\t\t\t\t\t\t\t\t<th>30 Years</th>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t</thead>\n\t\t\t\t\t\t\t\t<tbody>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td>2,500</td>\n\t\t\t\t\t\t\t\t\t\t<td>8m</td>\n\t\t\t\t\t\t\t\t\t\t<td>9m</td>\n\t\t\t\t\t\t\t\t\t\t<td>11m</td>\n\t\t\t\t\t\t\t\t\t\t<td>13m</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td>5,000</td>\n\t\t\t\t\t\t\t\t\t\t<td>15m</td>\n\t\t\t\t\t\t\t\t\t\t<td>20m</td>\n\t\t\t\t\t\t\t\t\t\t<td>29m</td>\n\t\t\t\t\t\t\t\t\t\t<td>39m</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td>25,000</td>\n\t\t\t\t\t\t\t\t\t\t<td>1h 29m</td>\n\t\t\t\t\t\t\t\t\t\t<td>2h 9m</td>\n\t\t\t\t\t\t\t\t\t\t<td>3h 7m</td>\n\t\t\t\t\t\t\t\t\t\t<td>4h 29m</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td>50,000</td>\n\t\t\t\t\t\t\t\t\t\t<td>4h 11m</td>\n\t\t\t\t\t\t\t\t\t\t<td>6h 9m</td>\n\t\t\t\t\t\t\t\t\t\t<td>9h 29m</td>\n\t\t\t\t\t\t\t\t\t\t<td>13h 38m</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td>75,000</td>\n\t\t\t\t\t\t\t\t\t\t<td>7h 29m</td>\n\t\t\t\t\t\t\t\t\t\t<td>10h 47m</td>\n\t\t\t\t\t\t\t\t\t\t<td>19h 42m</td>\n\t\t\t\t\t\t\t\t\t\t<td>1d 3h 55m</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td>100,000</td>\n\t\t\t\t\t\t\t\t\t\t<td>10h 51m</td>\n\t\t\t\t\t\t\t\t\t\t<td>19h 7m</td>\n\t\t\t\t\t\t\t\t\t\t<td>1d 8h 11m</td>\n\t\t\t\t\t\t\t\t\t\t<td>1d 20h 26m</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td>125,000</td>\n\t\t\t\t\t\t\t\t\t\t<td>17h 27m</td>\n\t\t\t\t\t\t\t\t\t\t<td>1d 3h 44m</td>\n\t\t\t\t\t\t\t\t\t\t<td>2d 16m</td>\n\t\t\t\t\t\t\t\t\t\t<td>2d 19h 38m</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t\t<tr>\n\t\t\t\t\t\t\t\t\t\t<td>150,000</td>\n\t\t\t\t\t\t\t\t\t\t<td>1d 6h 4m</td>\n\t\t\t\t\t\t\t\t\t\t<td>1d 17h 9m</td>\n\t\t\t\t\t\t\t\t\t\t<td>3d 2h 26m</td>\n\t\t\t\t\t\t\t\t\t\t<td>4d 13h 30m</td>\n\t\t\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t\t\t</tbody>\n\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<router-view></router-view>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<footer-data></footer-data>\r\n\t</div>\n</template>\n\n<script>\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\timport FooterData from '@/components/FooterData';\r\n\r\n\texport default {\r\n\t\tname: 'Help',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader, FooterData\r\n\t\t},\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tpage: {\n\t\t\t\t\terrors: [],\n\t\t\t\t\tloading: false\r\n\t\t\t\t},\n\t\t\t\tpageText: null,\n\t\t\t\ttiers: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\n\t\tmethods: {\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\n\t\t\t\t\tconst response = await this.$http.get(`datasets/websitetextpage/Help`);\n\t\t\t\t\tthis.pageText = response.data.text;\n\t\t\t\t\tif (this.isNullOrEmpty(this.pageText)) this.pageText = this.siteText.helpPageText;\n\r\n\t\t\t\t\tconst response2 = await this.$http.get(`account/alltiers`);\n\t\t\t\t\tthis.log(response2.data);\n\t\t\t\t\tthis.tiers = response2.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Help.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Help.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Help.vue?vue&type=template&id=0d7bd776&\"\nimport script from \"./Help.vue?vue&type=script&lang=js&\"\nexport * from \"./Help.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"container pt-0 pb-5\"},[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',[_c('b-breadcrumb',{staticClass:\"no-curves bg-white px-0\",attrs:{\"items\":_vm.generalBreadCrumbs}}),_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Land Use Codes and Definitions\")]),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.cropCodes.length < 1}},[_vm._v(\" Data unavailable. \")]),(_vm.datasets.length > 0)?_c('div',[_c('b-form',{staticClass:\"mb-3\",attrs:{\"inline\":\"\"}},[_c('label',{staticClass:\"mr-sm-2\",attrs:{\"for\":\"selectedDataset\"}},[_vm._v(_vm._s(_vm.siteText.siteName)+\" Dataset:\")]),_c('b-form-select',{staticClass:\"mr-4\",attrs:{\"id\":\"selectedDataset\"},on:{\"change\":_vm.getCrops},model:{value:(_vm.selectedDataset),callback:function ($$v) {_vm.selectedDataset=$$v},expression:\"selectedDataset\"}},_vm._l((_vm.datasets),function(o,i){return _c('b-form-select-option-group',{key:i,attrs:{\"label\":_vm.isNullOrEmpty(o.label) ? 'System datasets' : o.label,\"options\":o.options}})}),1),_c('b-input-group',[_c('b-form-input',{attrs:{\"placeholder\":\"Search land use table...\"},model:{value:(_vm.table.filter),callback:function ($$v) {_vm.$set(_vm.table, \"filter\", $$v)},expression:\"table.filter\"}}),_c('b-input-group-append',{staticClass:\"pointer mr-2\"},[_c('b-input-group-text',{on:{\"click\":function($event){_vm.table.filter = null}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1)],1)],1)],1),_c('b-table',{attrs:{\"striped\":\"\",\"items\":_vm.cropCodes,\"fields\":_vm.table.fields,\"filter\":_vm.table.filter,\"show-empty\":\"\",\"busy\":_vm.page.loadingCrops},scopedSlots:_vm._u([{key:\"empty\",fn:function(){return [_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":\"\"}},[_vm._v(\" Data unavailable. \")])]},proxy:true},{key:\"emptyfiltered\",fn:function(){return [_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":\"\"}},[_vm._v(\" No land use found matching '\"+_vm._s(_vm.table.filter)+\"' \")])]},proxy:true},{key:\"table-busy\",fn:function(){return [_c('div',{staticClass:\"text-center my-2\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\",\"size\":\"2x\"}})],1)]},proxy:true}],null,false,3433453265)})],1):_vm._e()],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div class=\"container pt-0 pb-5\">\n\t\t<page-loading :loading=\"page.loading\"></page-loading>\n\t\t<div v-if=\"!page.loading\">\n\t\t\t<b-breadcrumb :items=\"generalBreadCrumbs\" class=\"no-curves bg-white px-0\"></b-breadcrumb>\n\t\t\t<h2 class=\"mb-3\">Land Use Codes and Definitions</h2>\n\n\t\t\t<b-alert variant=\"info\" :show=\"cropCodes.length < 1\">\n\t\t\t\tData unavailable.\n\t\t\t</b-alert>\n\t\t\t<div v-if=\"datasets.length > 0\">\n\t\t\t\t<b-form inline class=\"mb-3\">\n\t\t\t\t\t<label class=\"mr-sm-2\" for=\"selectedDataset\">{{siteText.siteName}} Dataset:</label>\n\t\t\t\t\t<b-form-select v-model=\"selectedDataset\" id=\"selectedDataset\" @change=\"getCrops\" class=\"mr-4\">\n\t\t\t\t\t\t<b-form-select-option-group v-for=\"(o, i) in datasets\" :key=\"i\" :label=\"isNullOrEmpty(o.label) ? 'System datasets' : o.label\" :options=\"o.options\"></b-form-select-option-group>\n\t\t\t\t\t</b-form-select>\n\n\t\t\t\t\t<b-input-group>\n\t\t\t\t\t\t<b-form-input v-model=\"table.filter\" placeholder=\"Search land use table...\"></b-form-input>\n\n\t\t\t\t\t\t<b-input-group-append class=\"pointer mr-2\">\n\t\t\t\t\t\t\t<b-input-group-text @click=\"table.filter = null\">\n\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\n\t\t\t\t\t\t\t</b-input-group-text>\n\t\t\t\t\t\t</b-input-group-append>\n\t\t\t\t\t</b-input-group>\n\t\t\t\t</b-form>\n\n\t\t\t\t<b-table striped :items=\"cropCodes\" :fields=\"table.fields\" :filter=\"table.filter\" show-empty :busy=\"page.loadingCrops\">\n\t\t\t\t\t<template #empty>\n\t\t\t\t\t\t<b-alert variant=\"info\" show>\n\t\t\t\t\t\t\tData unavailable.\n\t\t\t\t\t\t</b-alert>\n\t\t\t\t\t</template>\n\t\t\t\t\t<template #emptyfiltered>\n\t\t\t\t\t\t<b-alert variant=\"info\" show>\n\t\t\t\t\t\t\tNo land use found matching '{{table.filter}}'\n\t\t\t\t\t\t</b-alert>\n\t\t\t\t\t</template>\n\t\t\t\t\t<template #table-busy>\n\t\t\t\t\t\t<div class=\"text-center my-2\">\n\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'spinner']\" spin size=\"2x\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</template>\n\t\t\t\t</b-table>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n\n<script>\n\texport default {\n\t\tname: 'HelpLanduse',\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tpage: {\n\t\t\t\t\terrors: [],\n\t\t\t\t\tloading: false,\n\t\t\t\t\tloadingCrops: false\n\t\t\t\t},\n\t\t\t\tcropCodes: [],\n\t\t\t\tdatasets: [],\n\t\t\t\tselectedDataset: null,\n\t\t\t\ttable: {\n\t\t\t\t\tfilter: null,\n\t\t\t\t\tfields: [\n\t\t\t\t\t\t{ key: 'code', label: 'Code', sortable: true, class: 'min font-weight-bold' },\r\n\t\t\t\t\t\t{ key: 'name', label: 'Description', sortable: true }\n\t\t\t\t\t]\r\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tasync created() {\n\t\t\tawait this.get();\n\t\t},\n\t\tmethods: {\n\t\t\tasync get() {\n\t\t\t\tthis.page.errors = [];\n\t\t\t\tthis.page.loading = true;\n\n\t\t\t\ttry {\n\t\t\t\t\tconst response = await this.$http.get(`datasets/publiclist`);\n\t\t\t\t\tthis.datasets = response.data;\n\t\t\t\t\tthis.log(this.datasets);\n\n\t\t\t\t\tif (this.datasets.length > 0) {\n\t\t\t\t\t\tthis.selectedDataset = this.datasets[0].options[0].value;\r\n\t\t\t\t\t}\n\n\t\t\t\t\tawait this.getCrops();\n\t\t\t\t} catch (error) {\n\t\t\t\t\tthis.page.errors = this.logError(error);\n\t\t\t\t}\n\n\t\t\t\tthis.page.loading = false;\n\t\t\t},\n\t\t\tasync getCrops() {\n\t\t\t\tthis.page.errors = [];\n\t\t\t\tthis.page.loadingCrops = true;\n\n\t\t\t\ttry {\n\t\t\t\t\tlet url = 'datasets/cropcodes';\n\t\t\t\t\tif (this.selectedDataset !== null) url += `?id=${this.selectedDataset}`;\n\t\t\t\t\tconst response = await this.$http.get(url);\n\t\t\t\t\tthis.cropCodes = response.data;\n\t\t\t\t\tthis.log(this.cropCodes.length);\n\t\t\t\t} catch (error) {\n\t\t\t\t\tthis.page.errors = this.logError(error);\n\t\t\t\t}\n\n\t\t\t\tthis.page.loadingCrops = false;\n\t\t\t}\n\t\t}\n\t}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./HelpLanduse.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./HelpLanduse.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HelpLanduse.vue?vue&type=template&id=3f91fcda&\"\nimport script from \"./HelpLanduse.vue?vue&type=script&lang=js&\"\nexport * from \"./HelpLanduse.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('div',{attrs:{\"id\":\"main-panel\"}},[(_vm.$route.name == 'AccountProfile')?_c('div',{staticClass:\"container py-5\"},[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Account information for \"+_vm._s(_vm.profile.userName))]),_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-4\"},model:{value:(_vm.tabIndex),callback:function ($$v) {_vm.tabIndex=$$v},expression:\"tabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Profile\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.profile.errors}}),_c('success-alert',{ref:\"profileSavedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.saveProfile.apply(null, arguments)}}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"First name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.firstName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.profile.firstName)},model:{value:(_vm.profile.firstName),callback:function ($$v) {_vm.$set(_vm.profile, \"firstName\", $$v)},expression:\"profile.firstName\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Last name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.lastName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.profile.lastName)},model:{value:(_vm.profile.lastName),callback:function ($$v) {_vm.$set(_vm.profile, \"lastName\", $$v)},expression:\"profile.lastName\"}})],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Company or organization\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.affiliation)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.profile.affiliation)},model:{value:(_vm.profile.affiliation),callback:function ($$v) {_vm.$set(_vm.profile, \"affiliation\", $$v)},expression:\"profile.affiliation\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Category\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.organizationCategory)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.organizationCategories,\"state\":_vm.getValidState(_vm.$v.profile.organizationCategory)},model:{value:(_vm.profile.organizationCategory),callback:function ($$v) {_vm.$set(_vm.profile, \"organizationCategory\", $$v)},expression:\"profile.organizationCategory\"}})],1),_c('b-form-group',{attrs:{\"label\":`What is your reason for trying ${_vm.siteText.siteName}?`,\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.reasonForUse)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.profile.reasonForUse)},model:{value:(_vm.profile.reasonForUse),callback:function ($$v) {_vm.$set(_vm.profile, \"reasonForUse\", $$v)},expression:\"profile.reasonForUse\"}})],1),_c('b-form-group',{attrs:{\"label\":\"In what country are you located?\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.country)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.countries,\"state\":_vm.getValidState(_vm.$v.profile.country)},model:{value:(_vm.profile.country),callback:function ($$v) {_vm.$set(_vm.profile, \"country\", $$v)},expression:\"profile.country\"}})],1),(_vm.profile.country === 'United States')?_c('b-form-group',{attrs:{\"label\":\"Select your state or territory\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.state)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.states,\"state\":_vm.getValidState(_vm.$v.profile.state)},model:{value:(_vm.profile.state),callback:function ($$v) {_vm.$set(_vm.profile, \"state\", $$v)},expression:\"profile.state\"}})],1):_vm._e(),_c('hr',{staticClass:\"my-3\"}),_c('b-form-group',{attrs:{\"label\":\"Units preference\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.units)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.units,\"state\":_vm.getValidState(_vm.$v.profile.units)},model:{value:(_vm.profile.units),callback:function ($$v) {_vm.$set(_vm.profile, \"units\", $$v)},expression:\"profile.units\"}})],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.profile.saving}})],1)],1)],1),_c('b-tab',{attrs:{\"title\":\"Change email\"}},[_c('p',[_vm._v(\" The current email address on your account is \"),_c('strong',[_vm._v(_vm._s(_vm.profile.email))]),_vm._v(\". \")]),_c('p',[_vm._v(\" To change it, enter a valid and working email address below. We will send a confirmation email to the new address. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.email.errors}}),_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":_vm.page.email.submitted}},[_vm._v(\" A verification email has been sent to \"),_c('strong',[_vm._v(_vm._s(_vm.email.address))]),_vm._v(\". Please check your email and follow the instructions to confirm the change. \")]),(!_vm.page.email.submitted)?_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.saveEmail.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"New email address\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.getValidState(_vm.$v.email.address)},model:{value:(_vm.email.address),callback:function ($$v) {_vm.$set(_vm.email, \"address\", $$v)},expression:\"email.address\"}}),(!_vm.$v.email.address.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.email.address.email)?_c('b-form-invalid-feedback',[_vm._v(\"Please enter a valid email address\")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Confirm new email\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.getValidState(_vm.$v.email.confirm)},model:{value:(_vm.email.confirm),callback:function ($$v) {_vm.$set(_vm.email, \"confirm\", $$v)},expression:\"email.confirm\"}}),(!_vm.$v.email.confirm.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.email.confirm.email)?_c('b-form-invalid-feedback',[_vm._v(\"Please enter a valid email address\")]):_vm._e(),(!_vm.$v.email.confirm.sameAsEmail)?_c('b-form-invalid-feedback',[_vm._v(\"Email addresses must match\")]):_vm._e()],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.email.saving}})],1)],1):_vm._e()],1),_c('b-tab',{attrs:{\"title\":\"Change password\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.password.errors}}),_c('success-alert',{ref:\"passwordSavedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.savePassword.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"Current password\"}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.password.old)},model:{value:(_vm.password.old),callback:function ($$v) {_vm.$set(_vm.password, \"old\", $$v)},expression:\"password.old\"}}),(!_vm.$v.password.old.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"New password\",\"description\":_vm.globals.passwordRequirements}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.password.new)},model:{value:(_vm.password.new),callback:function ($$v) {_vm.$set(_vm.password, \"new\", $$v)},expression:\"password.new\"}}),(!_vm.$v.password.new.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.password.new.strongPassword)?_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.globals.passwordRequirements))]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Confirm new password\"}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.password.confirm)},model:{value:(_vm.password.confirm),callback:function ($$v) {_vm.$set(_vm.password, \"confirm\", $$v)},expression:\"password.confirm\"}}),(!_vm.$v.password.confirm.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.password.confirm.sameAsPassword)?_c('b-form-invalid-feedback',[_vm._v(\"Passwords must match\")]):_vm._e()],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.password.saving}})],1)],1)],1),_c('b-tab',{attrs:{\"title\":\"Tier Limitations\"}},[_c('p',[_vm._v(\" Your account is a member of \"),_c('strong',[_vm._v(_vm._s(_vm.tier.name)+\" - \"+_vm._s(_vm.tier.description))]),_vm._v(\". \"),(!_vm.isNullOrEmpty(_vm.tier.expirationDate))?_c('span',[_vm._v(\" Access to this tier expires on \"),_c('span',{staticClass:\"text-danger\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.tier.expirationDate,'M/D/YYYY')))]),_vm._v(\". \")]):_vm._e()]),_c('p',[_vm._v(\" This tier is subject to the following project and scenario run limitations: \")]),_c('table',{staticClass:\"table table-striped border-bottom table-responsive\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Max. Subbasins\")]),_c('th',[_vm._v(\"Max. HRUs\")]),_c('th',[_vm._v(\"Run Frequency\")]),_c('th',[_vm._v(\"Run Concurrently\")]),_c('th',[_vm._v(\"Queue Priority\")]),_c('th',[_vm._v(\"Max. Project Uploads\")]),_c('th',[_vm._v(\"Dataset Access\")])])]),_c('tbody',[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.tier.subbasinLimit === 0 ? 'unlimited' : _vm.numberWithCommas(_vm.tier.subbasinLimit)))]),_c('td',[_vm._v(_vm._s(_vm.tier.hruLimit === 0 ? 'unlimited' : _vm.numberWithCommas(_vm.tier.hruLimit)))]),_c('td',[_vm._v(_vm._s(_vm.tier.taskLimit))]),_c('td',[_vm._v(_vm._s(_vm.tier.concurrencyLimit === 0 ? 'unlimited' : _vm.numberWithCommas(_vm.tier.concurrencyLimit)))]),_c('td',[_vm._v(_vm._s(_vm.tier.queuePriority))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.tier.datasetUploadLimit,0)))]),_c('td',[_vm._v(_vm._s(_vm.tier.datasets.join(', ')))])])])]),_c('p',{staticClass:\"mt-4\"},[_c('strong',[_vm._v(\"You may request access to another tier by filling out the form below.\")]),_vm._v(\" Please describe your projects and how access to a less restrictive tier will benefit your work. An administrator will follow up with you via email as soon as possible. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.tier.errors}}),_c('success-alert',{ref:\"tierRequestAlert\",attrs:{\"text\":\"Your request has been sent.\"}}),(!_vm.page.tier.sent)?_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.requestTier.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"Reasons for request:\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"5\",\"state\":_vm.getValidState(_vm.$v.tierRequest.value)},model:{value:(_vm.tierRequest.value),callback:function ($$v) {_vm.$set(_vm.tierRequest, \"value\", $$v)},expression:\"tierRequest.value\"}}),(!_vm.$v.tierRequest.value.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Please estimate how long you need access to the tier:\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.tierRequest.time)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.tierRequest.time)},model:{value:(_vm.tierRequest.time),callback:function ($$v) {_vm.$set(_vm.tierRequest, \"time\", $$v)},expression:\"tierRequest.time\"}})],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.tier.saving,\"text\":\"Send Request\"}})],1)],1):_vm._e()],1),_c('b-tab',{attrs:{\"title\":\"Delete account\",\"title-link-class\":\"text-danger\"}},[_c('p',[_vm._v(\" Are you sure you want to delete your account? This action is \"),_c('strong',[_vm._v(\"permanent and cannot be undone\")]),_vm._v(\". All projects and files will be removed. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.deleteAccount.errors}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.confirmDelete.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"Type DELETE to confirm\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.deleteAccount.value)},model:{value:(_vm.deleteAccount.value),callback:function ($$v) {_vm.$set(_vm.deleteAccount, \"value\", $$v)},expression:\"deleteAccount.value\"}}),(!_vm.$v.deleteAccount.value.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(_vm.deleteAccount.value !== 'DELETE')?_c('b-form-invalid-feedback',[_vm._v(\"You must type DELETE\")]):_vm._e()],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.deleteAccount.saving,\"variant\":\"danger\",\"text\":\"Delete Account\",\"disabled\":_vm.deleteAccount.value !== 'DELETE'}})],1)],1)],1)],1),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1):_vm._e(),_c('router-view')],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<div v-if=\"$route.name == 'AccountProfile'\" class=\"container py-5\">\r\n\t\t\t\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t\t\t\t<h2 class=\"mb-4\">Account information for {{profile.userName}}</h2>\r\n\r\n\t\t\t\t\t\t<b-tabs v-model=\"tabIndex\" content-class=\"mt-4\" class=\"page-nav-tabs\">\r\n\t\t\t\t\t\t\t<b-tab title=\"Profile\">\r\n\t\t\t\t\t\t\t\t<error-list :errors=\"page.profile.errors\"></error-list>\r\n\t\t\t\t\t\t\t\t<success-alert ref=\"profileSavedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t\t\t\t<b-form @submit.prevent=\"saveProfile\">\r\n\t\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"First name\" :invalid-feedback=\"requiredFeedback($v.profile.firstName)\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.firstName\" type=\"text\" autofocus :state=\"getValidState($v.profile.firstName)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"Last name\" :invalid-feedback=\"requiredFeedback($v.profile.lastName)\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.lastName\" type=\"text\" :state=\"getValidState($v.profile.lastName)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Company or organization\" :invalid-feedback=\"requiredFeedback($v.profile.affiliation)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.affiliation\" type=\"text\" :state=\"getValidState($v.profile.affiliation)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Category\" :invalid-feedback=\"requiredFeedback($v.profile.organizationCategory)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.organizationCategory\" :options=\"location.organizationCategories\" :state=\"getValidState($v.profile.organizationCategory)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group :label=\"`What is your reason for trying ${siteText.siteName}?`\" :invalid-feedback=\"requiredFeedback($v.profile.reasonForUse)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.reasonForUse\" type=\"text\" :state=\"getValidState($v.profile.reasonForUse)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"In what country are you located?\" :invalid-feedback=\"requiredFeedback($v.profile.country)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.country\" :options=\"location.countries\" :state=\"getValidState($v.profile.country)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group v-if=\"profile.country === 'United States'\" label=\"Select your state or territory\" :invalid-feedback=\"requiredFeedback($v.profile.state)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.state\" :options=\"location.states\" :state=\"getValidState($v.profile.state)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<hr class=\"my-3\" />\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Units preference\" :invalid-feedback=\"requiredFeedback($v.profile.units)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.units\" :options=\"options.units\" :state=\"getValidState($v.profile.units)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t\t<save-button :saving=\"page.profile.saving\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t\t\t\t<b-tab title=\"Change email\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tThe current email address on your account is\r\n\t\t\t\t\t\t\t\t\t<strong>{{profile.email}}</strong>.\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tTo change it, enter a valid and working email address below.\r\n\t\t\t\t\t\t\t\t\tWe will send a confirmation email to the new address.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<error-list :errors=\"page.email.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"warning\" :show=\"page.email.submitted\">\r\n\t\t\t\t\t\t\t\t\tA verification email has been sent to <strong>{{email.address}}</strong>.\r\n\t\t\t\t\t\t\t\t\tPlease check your email and follow the instructions to confirm the change.\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t\t<b-form v-if=\"!page.email.submitted\" @submit.prevent=\"saveEmail\">\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"New email address\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"email.address\" type=\"email\" :state=\"getValidState($v.email.address)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.email.address.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.email.address.email\">Please enter a valid email address</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Confirm new email\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"email.confirm\" type=\"email\" :state=\"getValidState($v.email.confirm)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.email.confirm.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.email.confirm.email\">Please enter a valid email address</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.email.confirm.sameAsEmail\">Email addresses must match</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t\t<save-button :saving=\"page.email.saving\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t\t\t\t<b-tab title=\"Change password\">\r\n\t\t\t\t\t\t\t\t<error-list :errors=\"page.password.errors\"></error-list>\r\n\t\t\t\t\t\t\t\t<success-alert ref=\"passwordSavedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t\t\t\t<b-form @submit.prevent=\"savePassword\">\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Current password\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"password.old\" type=\"password\" :state=\"getValidState($v.password.old)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.old.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"New password\" :description=\"globals.passwordRequirements\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"password.new\" type=\"password\" :state=\"getValidState($v.password.new)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.new.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.new.strongPassword\">{{globals.passwordRequirements}}</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Confirm new password\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"password.confirm\" type=\"password\" :state=\"getValidState($v.password.confirm)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.confirm.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.confirm.sameAsPassword\">Passwords must match</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t\t<save-button :saving=\"page.password.saving\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t\t\t\t<b-tab title=\"Tier Limitations\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tYour account is a member of\r\n\t\t\t\t\t\t\t\t\t<strong>{{tier.name}} - {{tier.description}}</strong>.\r\n\t\t\t\t\t\t\t\t\t<span v-if=\"!isNullOrEmpty(tier.expirationDate)\">\r\n\t\t\t\t\t\t\t\t\t\tAccess to this tier expires on\r\n\t\t\t\t\t\t\t\t\t\t<span class=\"text-danger\">{{tier.expirationDate | date('M/D/YYYY')}}</span>.\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tThis tier is subject to the following project and scenario run limitations:\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<table class=\"table table-striped border-bottom table-responsive\">\r\n\t\t\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Max. Subbasins</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Max. HRUs</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Run Frequency</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Run Concurrently</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Queue Priority</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Max. Project Uploads</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Dataset Access</th>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{tier.subbasinLimit === 0 ? 'unlimited' : numberWithCommas(tier.subbasinLimit)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{tier.hruLimit === 0 ? 'unlimited' : numberWithCommas(tier.hruLimit)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{tier.taskLimit}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{tier.concurrencyLimit === 0 ? 'unlimited' : numberWithCommas(tier.concurrencyLimit)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{tier.queuePriority}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{tier.datasetUploadLimit | number(0)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{tier.datasets.join(', ')}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t\t\t<p class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t<strong>You may request access to another tier by filling out the form below.</strong>\r\n\t\t\t\t\t\t\t\t\tPlease describe your projects and how access to a less restrictive tier will benefit your work.\r\n\t\t\t\t\t\t\t\t\tAn administrator will follow up with you via email as soon as possible.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<error-list :errors=\"page.tier.errors\"></error-list>\r\n\t\t\t\t\t\t\t\t<success-alert ref=\"tierRequestAlert\" text=\"Your request has been sent.\" />\r\n\r\n\t\t\t\t\t\t\t\t<b-form @submit.prevent=\"requestTier\" v-if=\"!page.tier.sent\">\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Reasons for request:\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-textarea v-model=\"tierRequest.value\" rows=\"5\" :state=\"getValidState($v.tierRequest.value)\"></b-form-textarea>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.tierRequest.value.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Please estimate how long you need access to the tier:\" :invalid-feedback=\"requiredFeedback($v.tierRequest.time)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"tierRequest.time\" type=\"text\" :state=\"getValidState($v.tierRequest.time)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t\t<save-button :saving=\"page.tier.saving\" text=\"Send Request\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t\t\t\t<b-tab title=\"Delete account\" title-link-class=\"text-danger\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tAre you sure you want to delete your account?\r\n\t\t\t\t\t\t\t\t\tThis action is <strong>permanent and cannot be undone</strong>.\r\n\t\t\t\t\t\t\t\t\tAll projects and files will be removed.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<error-list :errors=\"page.deleteAccount.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t\t\t<b-form @submit.prevent=\"confirmDelete\">\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Type DELETE to confirm\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"deleteAccount.value\" type=\"text\" :state=\"getValidState($v.deleteAccount.value)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.deleteAccount.value.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"deleteAccount.value !== 'DELETE'\">You must type DELETE</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t\t<save-button :saving=\"page.deleteAccount.saving\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Delete Account\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t :disabled=\"deleteAccount.value !== 'DELETE'\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t</b-tabs>\r\n\r\n\t\t\t\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t</page-authorization-container>\r\n\t\t\t\t</div>\r\n\t\t\t\t<router-view></router-view>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, requiredIf, email, sameAs } from 'vuelidate/lib/validators';\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\r\n\texport default {\r\n\t\tname: 'AccountProfile',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tprofile: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\temail: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tsubmitted: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tpassword: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tdeleteAccount: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\ttier: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tsent: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\ttabIndex: 0,\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tunits: [\r\n\t\t\t\t\t\t{ value: 0, text: 'Metric' },\r\n\t\t\t\t\t\t{ value: 1, text: 'Imperial' }\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\tprofile: {},\r\n\t\t\t\temail: {\r\n\t\t\t\t\taddress: '',\r\n\t\t\t\t\tconfirm: ''\r\n\t\t\t\t},\r\n\t\t\t\tpassword: {\r\n\t\t\t\t\told: '',\r\n\t\t\t\t\tnew: '',\r\n\t\t\t\t\tconfirm: ''\r\n\t\t\t\t},\r\n\t\t\t\tdeleteAccount: {\r\n\t\t\t\t\tvalue: ''\r\n\t\t\t\t},\r\n\t\t\t\ttierRequest: {\r\n\t\t\t\t\tvalue: '',\n\t\t\t\t\ttime: ''\r\n\t\t\t\t},\r\n\t\t\t\ttier: {\r\n\t\t\t\t\tname: '',\r\n\t\t\t\t\tdescription: '',\r\n\t\t\t\t\tqueuePriority: '',\r\n\t\t\t\t\tsubbasinLimit: 0,\r\n\t\t\t\t\thruLimit: 0,\r\n\t\t\t\t\ttaskLimit: '',\r\n\t\t\t\t\tconcurrencyLimit: 0\r\n\t\t\t\t},\n\t\t\t\tlocation: {\n\t\t\t\t\tcountries: [],\n\t\t\t\t\tstates: [],\n\t\t\t\t\torganizationCategories: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tprofile: {\r\n\t\t\t\tfirstName: { required: requiredIf(function(){ return this.tabIndex == 0; }) },\r\n\t\t\t\tlastName: { required: requiredIf(function(){ return this.tabIndex == 0; }) },\r\n\t\t\t\tcountry: { required: requiredIf(function () { return this.tabIndex == 0; }) },\r\n\t\t\t\tstate: { required: requiredIf(function () { return this.tabIndex == 0 && this.profile.country == 'United States'; }) },\r\n\t\t\t\torganizationCategory: { required: requiredIf(function () { return this.tabIndex == 0; }) },\r\n\t\t\t\taffiliation: { required: requiredIf(function(){ return this.tabIndex == 0; }) },\r\n\t\t\t\treasonForUse: { required: requiredIf(function(){ return this.tabIndex == 0; }) },\r\n\t\t\t\tunits: { required: requiredIf(function(){ return this.tabIndex == 0; }) }\r\n\t\t\t},\r\n\t\t\temail: {\r\n\t\t\t\taddress: {\r\n\t\t\t\t\temail,\r\n\t\t\t\t\trequired: requiredIf(function(){ return this.tabIndex == 1; })\r\n\t\t\t\t},\r\n\t\t\t\tconfirm: {\r\n\t\t\t\t\temail,\r\n\t\t\t\t\tsameAsEmail: sameAs('address'),\r\n\t\t\t\t\trequired: requiredIf(function(){ return this.tabIndex == 1; })\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tpassword: {\r\n\t\t\t\told: { required: requiredIf(function(){ return this.tabIndex == 2; }) },\r\n\t\t\t\tnew: {\r\n\t\t\t\t\tstrongPassword(password) {\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\tthis.tabIndex != 2 || (\r\n\t\t\t\t\t\t\t/[a-z]/.test(password) && // checks for a-z\r\n\t\t\t\t\t\t\t/[0-9]/.test(password) && // checks for 0-9\r\n\t\t\t\t\t\t\t/\\W|_/.test(password) && // checks for special char\r\n\t\t\t\t\t\t\tpassword.length >= 10)\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t},\r\n\t\t\t\t\trequired: requiredIf(function(){ return this.tabIndex == 2; })\r\n\t\t\t\t},\r\n\t\t\t\tconfirm: {\r\n\t\t\t\t\tsameAsPassword: sameAs('new'),\r\n\t\t\t\t\trequired: requiredIf(function(){ return this.tabIndex == 2; })\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\ttierRequest: {\r\n\t\t\t\tvalue: { required: requiredIf(function () { return this.tabIndex == 3; }) },\n\t\t\t\ttime: { required: requiredIf(function () { return this.tabIndex == 3; }) }\r\n\t\t\t},\r\n\t\t\tdeleteAccount: {\r\n\t\t\t\tvalue: { required: requiredIf(function(){ return this.tabIndex == 4; }) }\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tif (this.$route.name == 'AccountProfile') {\r\n\t\t\t\t\tthis.page.errors = [];\r\n\t\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get('account/profile', this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.profile = response.data.profile;\r\n\t\t\t\t\t\tthis.tier = response.data.tier;\n\t\t\t\t\t\tthis.location = response.data.location;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.page.loading = false;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync saveProfile() {\r\n\t\t\t\tthis.page.profile.errors = [];\r\n\t\t\t\tthis.page.profile.saving = true;\r\n\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.profile.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tawait this.$http.post('account/profile', this.profile, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$refs.profileSavedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.profile.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.profile.saving = false;\r\n\t\t\t},\r\n\t\t\tasync saveEmail() {\r\n\t\t\t\tthis.page.email.errors = [];\r\n\t\t\t\tthis.page.email.saving = true;\r\n\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.email.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post('account/changeemail', { value: this.email.address }, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t\tthis.page.email.submitted = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.email.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.email.saving = false;\r\n\t\t\t},\r\n\t\t\tasync savePassword() {\r\n\t\t\t\tthis.page.password.errors = [];\r\n\t\t\t\tthis.page.password.saving = true;\r\n\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.password.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\toldPassword: this.password.old,\r\n\t\t\t\t\t\t\tnewPassword: this.password.new\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.post('account/changepassword', data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$refs.passwordSavedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.password.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.password.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.deleteAccount.errors = [];\r\n\t\t\t\tthis.page.deleteAccount.saving = true;\r\n\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.deleteAccount.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.delete('account/delete', this.getTokenHeader());\r\n\t\t\t\t\t\tthis.logout();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.deleteAccount.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.deleteAccount.saving = false;\r\n\t\t\t},\r\n\t\t\tasync requestTier() {\r\n\t\t\t\tthis.page.tier.errors = [];\r\n\t\t\t\tthis.page.tier.saving = true;\r\n\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.tier.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post('account/tierrequest', this.tierRequest, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.page.tier.sent = true;\r\n\t\t\t\t\t\tthis.$refs.tierRequestAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.tier.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.tier.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccountProfile.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccountProfile.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountProfile.vue?vue&type=template&id=e96d2698&\"\nimport script from \"./AccountProfile.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountProfile.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',{staticClass:\"max-w-400 mx-auto py-4\"},[_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),(_vm.account.confirmed)?_c('div',[_c('div',[_vm._v(\" Thank you for confirming your email address! An administrator will review your account and you will receive an email when it is approved. \")])]):_vm._e()],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t<div v-if=\"!page.loading\" class=\"max-w-400 mx-auto py-4\">\r\n\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t<div v-if=\"account.confirmed\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\tThank you for confirming your email address!\r\n\t\t\t\t\tAn administrator will review your account and you will receive an email when it is approved.\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'AccountConfirm',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: true\r\n\t\t\t\t},\r\n\t\t\t\taccount: {\r\n\t\t\t\t\tconfirmed: false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.confirmAccount();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tconfirmAccount: async function () {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('account/confirm?userId=' + encodeURIComponent(this.$route.params.userId) + '&code=' + encodeURIComponent(this.$route.params.code));\r\n\t\t\t\t\tthis.account.confirmed = true;\r\n\t\t\t\t\tthis.logout(false);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccountConfirm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccountConfirm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountConfirm.vue?vue&type=template&id=0801eb62&\"\nimport script from \"./AccountConfirm.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountConfirm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',{staticClass:\"max-w-400 mx-auto py-4\"},[_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),(_vm.account.reset)?_c('div',[_c('div',[_vm._v(\" Your account has been reset! Please log in below. \")]),_c('login-form')],1):_c('div',[_c('b-form',{staticClass:\"my-4\",on:{\"submit\":function($event){$event.preventDefault();return _vm.resetPassword.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"User name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.userName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.userName)},model:{value:(_vm.form.userName),callback:function ($$v) {_vm.$set(_vm.form, \"userName\", $$v)},expression:\"form.userName\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Enter a new password\",\"description\":_vm.globals.passwordRequirements}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.form.password)},model:{value:(_vm.form.password),callback:function ($$v) {_vm.$set(_vm.form, \"password\", $$v)},expression:\"form.password\"}}),(!_vm.$v.form.password.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.form.password.strongPassword)?_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.globals.passwordRequirements))]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Confirm your new password\"}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.form.comparePassword)},model:{value:(_vm.form.comparePassword),callback:function ($$v) {_vm.$set(_vm.form, \"comparePassword\", $$v)},expression:\"form.comparePassword\"}}),(!_vm.$v.form.comparePassword.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.form.comparePassword.sameAsPassword)?_c('b-form-invalid-feedback',[_vm._v(\"Passwords must match\")]):_vm._e()],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.saving,\"text\":\"Reset password\",\"size\":\"lg\"}})],1)],1)],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t<div v-if=\"!page.loading\" class=\"max-w-400 mx-auto py-4\">\r\n\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t<div v-if=\"account.reset\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\tYour account has been reset! Please log in below.\r\n\t\t\t\t</div>\r\n\t\t\t\t<login-form></login-form>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-form @submit.prevent=\"resetPassword\" class=\"my-4\">\r\n\t\t\t\t\t<b-form-group label=\"User name\" :invalid-feedback=\"requiredFeedback($v.form.userName)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.userName\" type=\"text\" :state=\"getValidState($v.form.userName)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Enter a new password\" :description=\"globals.passwordRequirements\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.password\" type=\"password\" :state=\"getValidState($v.form.password)\"></b-form-input>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.password.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.password.strongPassword\">{{globals.passwordRequirements}}</b-form-invalid-feedback>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Confirm your new password\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.comparePassword\" type=\"password\" :state=\"getValidState($v.form.comparePassword)\"></b-form-input>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.comparePassword.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.comparePassword.sameAsPassword\">Passwords must match</b-form-invalid-feedback>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" text=\"Reset password\" size=\"lg\" />\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-form>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, sameAs } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'AccountReset',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tcode: '',\n\t\t\t\t\tuserName: '',\n\t\t\t\t\tpassword: '',\n\t\t\t\t\tcomparePassword: ''\r\n\t\t\t\t},\n\t\t\t\taccount: {\n\t\t\t\t\treset: false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\n\t\tvalidations: {\n\t\t\tform: {\n\t\t\t\tuserName: { required },\n\t\t\t\tpassword: {\r\n\t\t\t\t\trequired,\r\n\t\t\t\t\tstrongPassword(password) {\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t/[a-z]/.test(password) && // checks for a-z\r\n\t\t\t\t\t\t\t/[0-9]/.test(password) && // checks for 0-9\r\n\t\t\t\t\t\t\t/\\W|_/.test(password) && // checks for special char\r\n\t\t\t\t\t\t\tpassword.length >= 10\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tcomparePassword: { required, sameAsPassword: sameAs('password') }\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tresetPassword: async function () {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\n\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\n\t\t\t\t\tvar data = {\n\t\t\t\t\t\tcode: this.$route.params.code,\n\t\t\t\t\t\tuserName: this.form.userName,\n\t\t\t\t\t\tpassword: this.form.password\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post('account/resetpassword', data);\r\n\t\t\t\t\t\tthis.account.reset = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t\t}\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccountReset.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccountReset.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountReset.vue?vue&type=template&id=585e0773&\"\nimport script from \"./AccountReset.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountReset.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',{staticClass:\"max-w-400 mx-auto py-4\"},[_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),(_vm.account.confirmed)?_c('div',[_c('div',[_vm._v(\" Thank you for confirming your email address! \")]),(!_vm.isAuthenticated)?_c('login-form',{attrs:{\"show-header\":\"\"}}):_c('router-link',{staticClass:\"btn btn-primary mt-3\",attrs:{\"to\":\"/projects\"}},[_vm._v(\"Go to projects\")])],1):_vm._e()],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t<div v-if=\"!page.loading\" class=\"max-w-400 mx-auto py-4\">\r\n\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t<div v-if=\"account.confirmed\">\r\n\t\t\t\t<div>\r\n\t\t\t\t\tThank you for confirming your email address!\r\n\t\t\t\t</div>\r\n\t\t\t\t<login-form show-header v-if=\"!isAuthenticated\"></login-form>\n\t\t\t\t<router-link v-else to=\"/projects\" class=\"btn btn-primary mt-3\">Go to projects</router-link>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'AccountChangeEmail',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: true\r\n\t\t\t\t},\r\n\t\t\t\taccount: {\r\n\t\t\t\t\tconfirmed: false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.confirmAccount();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tconfirmAccount: async function () {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(\n\t\t\t\t\t\t'account/confirmEmailChange?userId=' + encodeURIComponent(this.$route.params.userId)\n\t\t\t\t\t\t+ '&code=' + encodeURIComponent(this.$route.params.code)\n\t\t\t\t\t\t+ '&newEmail=' + encodeURIComponent(this.$route.params.email)\n\t\t\t\t\t);\r\n\t\t\t\t\tthis.account.confirmed = true;\r\n\t\t\t\t\tthis.logout(false);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccountChangeEmail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccountChangeEmail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AccountChangeEmail.vue?vue&type=template&id=78eae278&\"\nimport script from \"./AccountChangeEmail.vue?vue&type=script&lang=js&\"\nexport * from \"./AccountChangeEmail.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('div',{attrs:{\"id\":\"main-panel\"}},[(_vm.$route.name == 'FeedbackList')?_c('div',{staticClass:\"container py-5\"},[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',[_vm._v(\"Feedback and error reports\")]),_c('p',[_vm._v(\" If you have any trouble using the system or want to provide us with any other feedback, please create a new ticket using the button below. Any error reports related to your projects and scenarios are shown below. \")]),_c('grid-view',{attrs:{\"api-url\":\"errorreports\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"default-per-page\":_vm.table.itemsPerPage,\"collection-description\":\" feedback and error reports\",\"item-name\":\"feedback / error report\",\"create-route\":\"create\",\"show-create\":\"\"}}),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1):_c('div',{staticClass:\"container\"},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white\",attrs:{\"items\":_vm.breadCrumbs}}),_c('div',{staticClass:\"container-fluid pb-4\"},[_c('router-view')],1)],1)])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[(_vm.hideIfEmpty && _vm.items.length < 1)?_c('div'):_c('div',[(_vm.showHeading)?_c('h2',{staticClass:\"mb-3\"},[_vm._v(_vm._s(_vm.heading))]):_vm._e(),(_vm.isNullOrEmpty(_vm.table.filter) && _vm.items.length < 1 && !_vm.useFilter)?_c('div',{staticClass:\"mx-auto text-center\"},[(!_vm.isNullOrEmpty(_vm.customEmptyMessage))?_c('p',{staticClass:\"lead\"},[_vm._v(\" \"+_vm._s(_vm.customEmptyMessage)+\" \")]):_c('p',{staticClass:\"lead\"},[_vm._v(\" You don't have any \"+_vm._s(_vm.collectionDescription)+\" yet. \")]),(_vm.showCreate)?_c('div',{staticClass:\"border-dash my-4 max-w-400 mx-auto\"},[_c('router-link',{staticClass:\"no-hover d-block p-4\",attrs:{\"to\":_vm.createRoute,\"append\":_vm.createRouteAppend}},[_c('font-awesome-icon',{staticClass:\"text-border\",attrs:{\"icon\":['fas', 'plus'],\"size\":\"3x\"}}),_c('div',{staticClass:\"lead text-muted\"},[_vm._v(\"Create a new \"+_vm._s(_vm.itemName))])],1)],1):_vm._e(),(_vm.showHelp)?_c('p',{staticClass:\"mt-5\"},[_vm._v(\" Visit the \"),_c('router-link',{attrs:{\"to\":\"/help\",\"target\":\"_blank\"}},[_vm._v(\"help section\")]),_vm._v(\" for an in-depth user guide, documentation, and data sources. \")],1):_vm._e()]):_c('div',{staticClass:\"mx-auto\"},[(!_vm.isNullOrEmpty(_vm.hasItemsIntro))?_c('p',[_vm._v(_vm._s(_vm.hasItemsIntro))]):_vm._e(),(_vm.useFilter || _vm.allowExport)?_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{attrs:{\"md\":\"6\",\"lg\":\"4\"}},[(_vm.useFilter)?_c('b-form-input',{attrs:{\"placeholder\":\"Search...\",\"autofocus\":\"\"},on:{\"input\":_vm.filterChg},model:{value:(_vm.table.filter),callback:function ($$v) {_vm.$set(_vm.table, \"filter\", $$v)},expression:\"table.filter\"}}):_vm._e()],1),(_vm.allowExport)?_c('b-col',{staticClass:\"text-right\",attrs:{\"md\":\"6\",\"lg\":\"8\"}},[_c('a',{staticClass:\"btn btn-info\",attrs:{\"href\":`/api/${_vm.exportUrl}?access_token=${_vm.localStorageToken}`}},[_vm._v(_vm._s(_vm.exportTitle))])]):_vm._e()],1):_vm._e(),_c('div',[_c('b-table',{staticClass:\"nowrap-headers mb-3 border-bottom\",attrs:{\"striped\":\"\",\"responsive\":\"\",\"small\":_vm.small,\"show-empty\":\"\",\"items\":_vm.items,\"busy\":_vm.table.loading,\"fields\":_vm.table.fields,\"selectable\":_vm.selectable,\"select-mode\":\"single\",\"no-local-sorting\":true,\"sort-by\":_vm.table.sort,\"sort-desc\":_vm.table.reverse},on:{\"row-selected\":_vm.onRowSelected,\"update:sortBy\":function($event){return _vm.$set(_vm.table, \"sort\", $event)},\"update:sort-by\":function($event){return _vm.$set(_vm.table, \"sort\", $event)},\"update:sortDesc\":function($event){return _vm.$set(_vm.table, \"reverse\", $event)},\"update:sort-desc\":function($event){return _vm.$set(_vm.table, \"reverse\", $event)},\"sort-changed\":_vm.sortChg},scopedSlots:_vm._u([{key:\"table-busy\",fn:function(){return [_c('div',{staticClass:\"text-center my-4\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\",\"size\":\"2x\"}})],1)]},proxy:true},{key:\"cell(edit)\",fn:function(data){return [_c('router-link',{attrs:{\"to\":_vm.getEditRoute(data.item),\"append\":_vm.editRouteAppend,\"title\":\"Edit/View\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)]}},{key:\"cell(name)\",fn:function(data){return [(_vm.linkName)?_c('router-link',{attrs:{\"to\":_vm.getEditRoute(data.item),\"append\":_vm.editRouteAppend}},[_vm._v(_vm._s(data.item.name))]):_c('span',[_vm._v(_vm._s(data.item.name))])]}},{key:\"cell(userName)\",fn:function(data){return [(_vm.linkUserName && !_vm.isNullOrEmpty(data.item.userID))?_c('router-link',{attrs:{\"to\":`/admin/users/${data.item.userID}`}},[_vm._v(_vm._s(data.item.userName))]):_c('span',[_vm._v(_vm._s(data.item.userName))])]}},{key:\"cell(project)\",fn:function(data){return [(!_vm.isNullOrEmpty(data.item.project))?_c('router-link',{attrs:{\"to\":`/projects/${data.item.projectID}`}},[_vm._v(_vm._s(data.item.project))]):_c('span')]}},{key:\"cell(group)\",fn:function(data){return [(!_vm.isNullOrEmpty(data.item.groupID))?_c('router-link',{attrs:{\"to\":`/groups/${data.item.groupID}`}},[_vm._v(_vm._s(data.item.group))]):_c('span',[_vm._v(_vm._s(data.item.group))])]}},{key:\"cell(scenario)\",fn:function(data){return [(!_vm.isNullOrEmpty(data.item.project) && !_vm.isNullOrEmpty(data.item.scenario))?_c('router-link',{attrs:{\"to\":`/projects/${data.item.projectID}/scenarios/${data.item.scenarioID}`}},[_vm._v(_vm._s(data.item.scenario))]):_c('span')]}},{key:\"cell(roles)\",fn:function(data){return _vm._l((data.item.roles),function(r,i){return _c('span',{key:i},[(r === _vm.roleNames.pending)?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(\"Pending\")]):_vm._e(),(r === _vm.roleNames.admin || r === _vm.roleNames.partialAdmin)?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(\"Admin\")]):_vm._e()],1)})}},{key:\"cell(isLockedOut)\",fn:function(data){return [(data.item.isLockedOut)?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(\"Locked\")]):_c('span')]}},{key:\"cell(hasRun)\",fn:function(data){return [(data.item.isRunning)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\"}}):(data.item.hasRun)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'check']}}):_c('span')]}},{key:\"cell(lastModifiedDate)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"date\")(data.item.lastModifiedDate))+\" \")]}},{key:\"cell(delete)\",fn:function(data){return [(_vm.isNullOrEmpty(_vm.deleteIfField) || data.item[_vm.deleteIfField])?_c('div',[_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",on:{\"click\":function($event){return _vm.askDelete(data.item.id, data.item.name)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1)]):_c('div')]}},{key:\"cell(reportStatus)\",fn:function(data){return [(data.item.reportStatus === 'Submitted')?_c('b-badge',{attrs:{\"variant\":\"danger\"}},[_vm._v(\"Submitted\")]):_vm._e(),(data.item.reportStatus === 'Working')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(\"Working\")]):_vm._e(),(data.item.reportStatus === 'Resolved')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(\"Resolved\")]):_c('span')]}},{key:\"empty\",fn:function(){return [(!_vm.isNullOrEmpty(_vm.table.filter))?_c('p',{staticClass:\"lead text-center my-2\"},[_vm._v(\"No records found matching \\\"\"+_vm._s(_vm.table.filter)+\"\\\".\")]):_c('p',{staticClass:\"lead text-center my-2\"},[_vm._v(\"You don't have any \"+_vm._s(_vm.collectionDescription)+\" yet.\")])]},proxy:true}])}),(!_vm.ignoreSortAndPage)?_c('div',[(_vm.pagingFixed)?_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[(_vm.table.total > _vm.table.itemsPerPage)?_c('b-pagination',{staticClass:\"mb-0\",attrs:{\"size\":\"md\",\"total-rows\":_vm.table.total,\"per-page\":_vm.table.itemsPerPage},on:{\"change\":_vm.pageChg},model:{value:(_vm.table.currentPage),callback:function ($$v) {_vm.$set(_vm.table, \"currentPage\", $$v)},expression:\"table.currentPage\"}}):_vm._e(),_c('div',{staticClass:\"ml-auto\"},[_vm._v(\" Showing \"+_vm._s(_vm.showingFirst)+\" - \"+_vm._s(_vm.showingLast)+\" of \"+_vm._s(_vm.table.total)+\" \")])],1):_c('div',{staticClass:\"d-flex align-items-center\"},[(_vm.table.total > _vm.table.itemsPerPage)?_c('b-pagination',{staticClass:\"mb-0\",attrs:{\"size\":\"md\",\"total-rows\":_vm.table.total,\"per-page\":_vm.table.itemsPerPage},on:{\"change\":_vm.pageChg},model:{value:(_vm.table.currentPage),callback:function ($$v) {_vm.$set(_vm.table, \"currentPage\", $$v)},expression:\"table.currentPage\"}}):_vm._e(),_c('div',{staticClass:\"ml-auto\"},[_vm._v(\" Showing \"+_vm._s(_vm.showingFirst)+\" - \"+_vm._s(_vm.showingLast)+\" of \"+_vm._s(_vm.table.total)+\" \"),(_vm.showRefresh)?_c('a',{attrs:{\"href\":\"#\",\"title\":\"Refresh table\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get.apply(null, arguments)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'redo']}})],1):_vm._e()])],1)],1):_vm._e(),(_vm.showCreate)?_c('div',{staticClass:\"mt-3\"},[_c('router-link',{staticClass:\"btn btn-success\",attrs:{\"to\":_vm.createRoute,\"append\":_vm.createRouteAppend}},[_vm._v(\" Create a new \"+_vm._s(_vm.itemName)+\" \")])],1):_vm._e()],1)],1)]),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete \"),_c('strong',[_vm._v(_vm._s(_vm.page.delete.name))]),_vm._v(\"? This action is permanent and cannot be undone. \"+_vm._s(_vm.extraDeleteMessage)+\" \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<div v-if=\"hideIfEmpty && items.length < 1\"></div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<h2 v-if=\"showHeading\" class=\"mb-3\">{{heading}}</h2>\r\n\t\t\t\t<div v-if=\"isNullOrEmpty(table.filter) && items.length < 1 && !useFilter\" class=\"mx-auto text-center\">\r\n\t\t\t\t\t<p v-if=\"!isNullOrEmpty(customEmptyMessage)\" class=\"lead\">\r\n\t\t\t\t\t\t{{customEmptyMessage}}\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<p v-else class=\"lead\">\r\n\t\t\t\t\t\tYou don't have any {{collectionDescription}} yet.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div class=\"border-dash my-4 max-w-400 mx-auto\" v-if=\"showCreate\">\r\n\t\t\t\t\t\t<router-link :to=\"createRoute\" :append=\"createRouteAppend\" class=\"no-hover d-block p-4\">\r\n\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'plus']\" size=\"3x\" class=\"text-border\" />\r\n\t\t\t\t\t\t\t<div class=\"lead text-muted\">Create a new {{itemName}}</div>\r\n\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<p class=\"mt-5\" v-if=\"showHelp\">\r\n\t\t\t\t\t\tVisit the <router-link to=\"/help\" target=\"_blank\">help section</router-link> for an in-depth user guide, documentation, and data sources.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-else class=\"mx-auto\">\r\n\t\t\t\t\t<p v-if=\"!isNullOrEmpty(hasItemsIntro)\">{{hasItemsIntro}}</p>\r\n\t\t\t\t\t<b-row v-if=\"useFilter || allowExport\" class=\"mb-3\">\r\n\t\t\t\t\t\t<b-col md=\"6\" lg=\"4\">\r\n\t\t\t\t\t\t\t<b-form-input v-if=\"useFilter\" v-model=\"table.filter\" placeholder=\"Search...\" @input=\"filterChg\" autofocus></b-form-input>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md=\"6\" lg=\"8\" class=\"text-right\" v-if=\"allowExport\">\r\n\t\t\t\t\t\t\t<a :href=\"`/api/${exportUrl}?access_token=${localStorageToken}`\" class=\"btn btn-info\">{{exportTitle}}</a>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t\t<div>\t\t\t\t\t\t\r\n\t\t\t\t\t\t<b-table striped responsive class=\"nowrap-headers mb-3 border-bottom\" :small=\"small\" show-empty\r\n\t\t\t\t\t\t\t\t :items=\"items\" :busy=\"table.loading\"\r\n\t\t\t\t\t\t\t\t :fields=\"table.fields\"\r\n\t\t\t\t\t\t\t\t :selectable=\"selectable\" @row-selected=\"onRowSelected\" select-mode=\"single\"\r\n\t\t\t\t\t\t\t\t :no-local-sorting=\"true\"\r\n\t\t\t\t\t\t\t\t :sort-by.sync=\"table.sort\"\r\n\t\t\t\t\t\t\t\t :sort-desc.sync=\"table.reverse\"\r\n\t\t\t\t\t\t\t\t @sort-changed=\"sortChg\">\r\n\t\t\t\t\t\t\t<template v-slot:table-busy>\r\n\t\t\t\t\t\t\t\t<div class=\"text-center my-4\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'spinner']\" spin size=\"2x\" />\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(edit)=\"data\">\r\n\t\t\t\t\t\t\t\t<router-link :to=\"getEditRoute(data.item)\" :append=\"editRouteAppend\" title=\"Edit/View\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'edit']\" />\r\n\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(name)=\"data\">\r\n\t\t\t\t\t\t\t\t<router-link v-if=\"linkName\" :to=\"getEditRoute(data.item)\" :append=\"editRouteAppend\">{{data.item.name}}</router-link>\r\n\t\t\t\t\t\t\t\t<span v-else>{{data.item.name}}</span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(userName)=\"data\">\r\n\t\t\t\t\t\t\t\t<router-link v-if=\"linkUserName && !isNullOrEmpty(data.item.userID)\" :to=\"`/admin/users/${data.item.userID}`\">{{data.item.userName}}</router-link>\r\n\t\t\t\t\t\t\t\t<span v-else>{{data.item.userName}}</span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(project)=\"data\">\r\n\t\t\t\t\t\t\t\t<router-link v-if=\"!isNullOrEmpty(data.item.project)\" :to=\"`/projects/${data.item.projectID}`\">{{data.item.project}}</router-link>\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(group)=\"data\">\r\n\t\t\t\t\t\t\t\t<router-link v-if=\"!isNullOrEmpty(data.item.groupID)\" :to=\"`/groups/${data.item.groupID}`\">{{data.item.group}}</router-link>\r\n\t\t\t\t\t\t\t\t<span v-else>{{data.item.group}}</span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(scenario)=\"data\">\r\n\t\t\t\t\t\t\t\t<router-link v-if=\"!isNullOrEmpty(data.item.project) && !isNullOrEmpty(data.item.scenario)\" :to=\"`/projects/${data.item.projectID}/scenarios/${data.item.scenarioID}`\">{{data.item.scenario}}</router-link>\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(roles)=\"data\">\r\n\t\t\t\t\t\t\t\t<span v-for=\"(r, i) in data.item.roles\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<b-badge v-if=\"r === roleNames.pending\" variant=\"warning\">Pending</b-badge>\r\n\t\t\t\t\t\t\t\t\t<b-badge v-if=\"r === roleNames.admin || r === roleNames.partialAdmin\" variant=\"success\">Admin</b-badge>\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(isLockedOut)=\"data\">\r\n\t\t\t\t\t\t\t\t<b-badge v-if=\"data.item.isLockedOut\" variant=\"warning\">Locked</b-badge>\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(hasRun)=\"data\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon v-if=\"data.item.isRunning\" :icon=\"['fas', 'spinner']\" spin />\r\n\t\t\t\t\t\t\t\t<font-awesome-icon v-else-if=\"data.item.hasRun\" :icon=\"['fas', 'check']\" />\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(lastModifiedDate)=\"data\">\r\n\t\t\t\t\t\t\t\t{{data.item.lastModifiedDate | date}}\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(delete)=\"data\">\r\n\t\t\t\t\t\t\t\t<div v-if=\"isNullOrEmpty(deleteIfField) || data.item[deleteIfField]\">\r\n\t\t\t\t\t\t\t\t\t<button class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDelete(data.item.id, data.item.name)\">\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div v-else></div>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(reportStatus)=\"data\">\r\n\t\t\t\t\t\t\t\t<b-badge v-if=\"data.item.reportStatus === 'Submitted'\" variant=\"danger\">Submitted</b-badge>\r\n\t\t\t\t\t\t\t\t<b-badge v-if=\"data.item.reportStatus === 'Working'\" variant=\"warning\">Working</b-badge>\r\n\t\t\t\t\t\t\t\t<b-badge v-if=\"data.item.reportStatus === 'Resolved'\" variant=\"success\">Resolved</b-badge>\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:empty>\r\n\t\t\t\t\t\t\t\t<p class=\"lead text-center my-2\" v-if=\"!isNullOrEmpty(table.filter)\">No records found matching \"{{table.filter}}\".</p>\r\n\t\t\t\t\t\t\t\t<p class=\"lead text-center my-2\" v-else>You don't have any {{collectionDescription}} yet.</p>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-table>\r\n\r\n\t\t\t\t\t\t<div v-if=\"!ignoreSortAndPage\">\r\n\t\t\t\t\t\t\t<fixed-action-bar v-if=\"pagingFixed\" :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t\t\t\t<b-pagination class=\"mb-0\" v-if=\"table.total > table.itemsPerPage\" size=\"md\" :total-rows=\"table.total\" v-model=\"table.currentPage\" :per-page=\"table.itemsPerPage\" @change=\"pageChg\" />\r\n\t\t\t\t\t\t\t\t<div class=\"ml-auto\">\r\n\t\t\t\t\t\t\t\t\tShowing {{showingFirst}} - {{showingLast}}\r\n\t\t\t\t\t\t\t\t\tof {{table.total}}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t\t\t<div v-else class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t\t\t<b-pagination class=\"mb-0\" v-if=\"table.total > table.itemsPerPage\" size=\"md\" :total-rows=\"table.total\" v-model=\"table.currentPage\" :per-page=\"table.itemsPerPage\" @change=\"pageChg\" />\r\n\t\t\t\t\t\t\t\t<div class=\"ml-auto\">\r\n\t\t\t\t\t\t\t\t\tShowing {{showingFirst}} - {{showingLast}}\r\n\t\t\t\t\t\t\t\t\tof {{table.total}}\n\t\t\t\t\t\t\t\t\t<a v-if=\"showRefresh\" href=\"#\" @click.prevent=\"get\" title=\"Refresh table\"><font-awesome-icon :icon=\"['fas', 'redo']\" /></a>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<div class=\"mt-3\" v-if=\"showCreate\">\r\n\t\t\t\t\t\t\t<router-link :to=\"createRoute\" :append=\"createRouteAppend\" class=\"btn btn-success\">\r\n\t\t\t\t\t\t\t\tCreate a new {{itemName}}\r\n\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete <strong>{{page.delete.name}}</strong>?\r\n\t\t\t\t\tThis action is permanent and cannot be undone. {{extraDeleteMessage}}\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport moment from 'moment';\r\n\timport _ from 'underscore';\r\n\r\n\texport default {\r\n\t\tname: 'GridView',\r\n\t\tprops: {\r\n\t\t\tapiUrl: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\trequired: true\r\n\t\t\t},\r\n\t\t\tdeleteApiUrl: {\r\n\t\t\t\ttype: String\r\n\t\t\t},\r\n\t\t\tfields: {\r\n\t\t\t\ttype: Array\r\n\t\t\t},\r\n\t\t\trouterLinkFields: {\r\n\t\t\t\ttype: Array,\r\n\t\t\t\tdefault: () => [{ key: 'none', route: 'none' }] // Was griping when empty, even with v-if on length\r\n\t\t\t},\r\n\t\t\tuseDynamicFields: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tdefaultSort: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: 'id'\r\n\t\t\t},\r\n\t\t\tdefaultReverse: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tcollectionName: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: 'items'\r\n\t\t\t},\r\n\t\t\tcollectionDescription: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: 'items'\r\n\t\t\t},\r\n\t\t\tcustomEmptyMessage: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\thasItemsIntro: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\titemName: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: 'item'\r\n\t\t\t},\r\n\t\t\tshowCreate: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tcreateRoute: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\tcreateRouteAppend: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: true\r\n\t\t\t},\r\n\t\t\tshowHelp: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\textraDeleteMessage: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\teditRoute: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\teditRouteAppend: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: true\r\n\t\t\t},\r\n\t\t\tuseEditRoutePieces: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\teditRoutePieces: {\r\n\t\t\t\ttype: Array,\r\n\t\t\t\tdefault: () => [{ type: 'text', value: 'none' }] // Was griping when empty, even with v-if on length\r\n\t\t\t},\r\n\t\t\tdefaultPerPage: {\r\n\t\t\t\ttype: Number,\r\n\t\t\t\tdefault: 20\r\n\t\t\t},\r\n\t\t\tsmall: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tpagingFixed: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tuseFilter: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tallowExport: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\texportUrl: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\texportTitle: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: 'Download CSV'\r\n\t\t\t},\r\n\t\t\tfilterFlag: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\tlinkName: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tlinkUserName: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tignoreSortAndPage: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tshowHeading: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\theading: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\thideIfEmpty: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tselectable: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tdeleteIfField: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\tshowRefresh: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata () {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: true,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\tid: undefined,\r\n\t\t\t\t\t\tname: '',\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\texport: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tloading: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tfields: [],\r\n\t\t\t\t\tsort: this.defaultSort,\r\n\t\t\t\t\tspecialSort: undefined,\r\n\t\t\t\t\treverse: this.defaultReverse,\r\n\t\t\t\t\tcurrentPage: 1,\r\n\t\t\t\t\titemsPerPage: this.defaultPerPage,\r\n\t\t\t\t\ttotal: 0,\r\n\t\t\t\t\tfilter: null\r\n\t\t\t\t},\r\n\t\t\t\titems: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tshowingFirst() {\r\n\t\t\t\treturn (this.table.currentPage-1) * this.table.itemsPerPage + 1\r\n\t\t\t},\r\n\t\t\tshowingLast() {\r\n\t\t\t\tvar max = (this.table.currentPage-1) * this.table.itemsPerPage + this.table.itemsPerPage\r\n\t\t\t\treturn max > this.table.total ? this.table.total : max;\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get',\r\n\t\t\tasync filterFlag() {\r\n\t\t\t\tif (!this.isNullOrEmpty(this.filterFlag)) {\r\n\t\t\t\t\tthis.table.currentPage = 1;\r\n\t\t\t\t\tthis.table.filter = null;\r\n\t\t\t\t}\r\n\t\t\t\tawait this.get();\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tgetDb() {\r\n\t\t\t\tif (this.ignoreSortAndPage) return this.$http.get(this.apiUrl, this.getTokenHeader());\r\n\t\t\t\tvar sort = this.table.reverse ? this.table.sort + '_desc' : this.table.sort;\r\n\t\t\t\tvar filter = this.useFilter && this.table.filter !== null ? `&filter=${encodeURIComponent(this.table.filter)}` : '';\r\n\t\t\t\tvar flag = !this.isNullOrEmpty(this.filterFlag) ? `&flag=${encodeURIComponent(this.filterFlag)}` : '';\r\n\t\t\t\treturn this.$http.get(`${this.apiUrl}?sort=${sort}&page=${this.table.currentPage}&perPage=${this.table.itemsPerPage}${filter}${flag}`, this.getTokenHeader());\r\n\t\t\t},\r\n\t\t\tasync filterChg() {\r\n\t\t\t\tthis.table.currentPage = 1;\r\n\t\t\t\t_.debounce(await this.get(), 500)\r\n\t\t\t\t//await this.get();\r\n\t\t\t},\r\n\t\t\tasync pageChg(page) {\r\n\t\t\t\tthis.table.currentPage = page;\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\tasync sortChg(ctx) {\r\n\t\t\t\tthis.table.sort = ctx.sortBy;\r\n\t\t\t\tthis.table.reverse = ctx.sortDesc;\r\n\t\t\t\tthis.table.specialSort = undefined;\r\n\r\n\t\t\t\tvar prop = this.routerLinkFields.find(o => o.key == ctx.sortBy);\r\n\t\t\t\tif (prop != null) {\r\n\t\t\t\t\tthis.table.specialSort = ctx.sortBy + '_id';\r\n\t\t\t\t}\r\n\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.table.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.getDb();\r\n\t\t\t\t\tthis.log(response.data);\r\n\r\n\t\t\t\t\tif (response.data[this.collectionName].length == 0 && this.table.currentPage > 1) {\r\n\t\t\t\t\t\tthis.table.currentPage--;\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.items = response.data[this.collectionName];\r\n\t\t\t\t\tthis.table.total = response.data.total;\r\n\r\n\t\t\t\t\t//Set table fields\r\n\t\t\t\t\tif (this.items.length > 0) {\r\n\t\t\t\t\t\tif (this.useDynamicFields) {\r\n\t\t\t\t\t\t\tvar keys = Object.keys(this.items[0]);\r\n\r\n\t\t\t\t\t\t\tfor (var i = 0; i < keys.length; i++) {\r\n\t\t\t\t\t\t\t\tif ((keys[i] != 'id' || !this.dynamicFieldsHideId) && !this.hideFields.includes(keys[i])) {\r\n\t\t\t\t\t\t\t\t\tvar meta = this.getMeta(keys[i], this.items[0][keys[i]]);\r\n\t\t\t\t\t\t\t\t\tthis.table.fields.push({ key: keys[i], label: meta.label, sortable: true, 'class': meta.css, formatter: meta.formatter });\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.table.fields = this.fields;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.table.loading = false;\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\t/*async exportTable() {\r\n\t\t\t\tthis.page.export.errors = [];\r\n\t\t\t\tthis.page.export.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(this.exportUrl, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.export.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.export.loading = false;\r\n\t\t\t},*/\r\n\t\t\tgetMeta(field, item) {\r\n\t\t\t\tvar label = field[0].toUpperCase() + field.substring(1);\r\n\t\t\t\tvar css = 'text-right';\r\n\t\t\t\tvar formatter = (value) => { return isNaN(value) || Number.isInteger(Number(value)) ? value : Number(value).toFixed(3) }\r\n\r\n\t\t\t\tvar textFields = [\r\n\t\t\t\t\t'name',\r\n\t\t\t\t\t'description'\r\n\t\t\t\t];\r\n\r\n\t\t\t\tif (textFields.includes(field) || isNaN(item)) {\r\n\t\t\t\t\tcss = 'text-left';\r\n\t\t\t\t\tformatter = undefined;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn {\r\n\t\t\t\t\tlabel: label,\r\n\t\t\t\t\tcss: css,\r\n\t\t\t\t\tformatter: formatter\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\taskDelete(id, name) {\r\n\t\t\t\tthis.page.delete.id = id;\r\n\t\t\t\tthis.page.delete.name = name;\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`${this.deleteApiUrl}/${this.page.delete.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tthis.table.currentPage = 1;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tgetEditRoute(item) {\r\n\t\t\t\tif (!this.useEditRoutePieces)\r\n\t\t\t\t\treturn this.editRoute + item.id;\r\n\r\n\t\t\t\tvar r = '';\r\n\t\t\t\tfor (var i = 0; i < this.editRoutePieces.length; i++) {\r\n\t\t\t\t\tif (this.editRoutePieces[i].type == 'text') {\r\n\t\t\t\t\t\tr += '/' + this.editRoutePieces[i].value;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tr += '/' + item[this.editRoutePieces[i].value];\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn r;\r\n\t\t\t},\r\n\t\t\tonRowSelected(items) {\r\n\t\t\t\tthis.$emit('selectionChanged', items);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GridView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GridView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GridView.vue?vue&type=template&id=9a7c37c6&\"\nimport script from \"./GridView.vue?vue&type=script&lang=js&\"\nexport * from \"./GridView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<div v-if=\"$route.name == 'FeedbackList'\" class=\"container py-5\">\r\n\t\t\t\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t\t\t\t<h2>Feedback and error reports</h2>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tIf you have any trouble using the system or want to provide us with any other feedback,\n\t\t\t\t\t\t\tplease create a new ticket using the button below. Any error reports related to your projects and scenarios are\n\t\t\t\t\t\t\tshown below.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<grid-view api-url=\"errorreports\"\r\n\t\t\t\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\" :default-per-page=\"table.itemsPerPage\"\r\n\t\t\t\t\t\t\t\t   collection-description=\" feedback and error reports\"\r\n\t\t\t\t\t\t\t\t   item-name=\"feedback / error report\"\n\t\t\t\t\t\t\t\t   create-route=\"create\" show-create></grid-view>\r\n\r\n\t\t\t\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t</page-authorization-container>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-else class=\"container\">\r\n\t\t\t\t\t<b-breadcrumb :items=\"breadCrumbs\" class=\"no-curves bg-white\"></b-breadcrumb>\r\n\t\t\t\t\t<div class=\"container-fluid pb-4\">\r\n\t\t\t\t\t\t<router-view></router-view>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'FeedbackList',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader, GridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tinvites: [],\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '', class: 'min' },\r\n\t\t\t\t\t\t{ key: 'reportStatus', label: 'Status', sortable: true },\r\n\t\t\t\t\t\t{ key: 'title', sortable: true },\r\n\t\t\t\t\t\t{ key: 'project', sortable: true },\r\n\t\t\t\t\t\t{ key: 'scenario', sortable: true },\r\n\t\t\t\t\t\t{ key: 'dateSubmitted', sortable: true, formatter: (value) => { return moment(value).format('llll') } }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'dateSubmitted',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tbreadCrumbs() {\r\n\t\t\t\tvar crumbs = [];\r\n\t\t\t\tfor (var i = 0; i < this.$route.matched.length; i++) {\r\n\t\t\t\t\tvar item = this.$route.matched[i];\r\n\t\t\t\t\tvar name = item.meta.title ? item.meta.title : item.name;\r\n\r\n\t\t\t\t\tcrumbs.push({\r\n\t\t\t\t\t\ttext: name,\r\n\t\t\t\t\t\tto: { name: item.name }\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\treturn crumbs;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FeedbackList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FeedbackList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FeedbackList.vue?vue&type=template&id=d3a161a8&\"\nimport script from \"./FeedbackList.vue?vue&type=script&lang=js&\"\nexport * from \"./FeedbackList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Feedback / error report details\")]),_c('table',{staticClass:\"table table-striped\"},[_c('tbody',[_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Subject / title\")]),_c('td',[_vm._v(_vm._s(_vm.data.title))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Report status\")]),_c('td',[(_vm.data.status === 'Submitted')?_c('b-badge',{attrs:{\"variant\":\"danger\"}},[_vm._v(\"Submitted\")]):_vm._e(),(_vm.data.status === 'Working')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(\"Working\")]):_vm._e(),(_vm.data.status === 'Resolved')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(\"Resolved\")]):_vm._e()],1)]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Date submitted\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.data.dateSubmitted)))])]),(!_vm.isNullOrEmpty(_vm.data.resolvedDate))?_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Resolution\")]),_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.data.resolvedDate))+\" \"),(!_vm.isNullOrEmpty(_vm.data.resolvedBy))?_c('span',[_vm._v(\"by \"+_vm._s(_vm.data.resolvedBy))]):_vm._e()])]):_vm._e(),(!_vm.isNullOrEmpty(_vm.data.developerComments))?_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Developer comments\")]),_c('td',[_c('b-form-textarea',{attrs:{\"readonly\":\"\",\"rows\":\"7\"},model:{value:(_vm.data.developerComments),callback:function ($$v) {_vm.$set(_vm.data, \"developerComments\", $$v)},expression:\"data.developerComments\"}})],1)]):_vm._e(),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"User comments\")]),_c('td',[_c('b-form-textarea',{attrs:{\"readonly\":\"\",\"rows\":\"7\"},model:{value:(_vm.data.userComments),callback:function ($$v) {_vm.$set(_vm.data, \"userComments\", $$v)},expression:\"data.userComments\"}})],1)]),(!_vm.isNullOrEmpty(_vm.data.exception))?_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Error message received\")]),_c('td',[_c('b-form-textarea',{attrs:{\"readonly\":\"\",\"rows\":\"10\"},model:{value:(_vm.data.exception),callback:function ($$v) {_vm.$set(_vm.data, \"exception\", $$v)},expression:\"data.exception\"}})],1)]):_vm._e()])]),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Feedback / error report details</h2>\r\n\r\n\t\t\t<table class=\"table table-striped\">\r\n\t\t\t\t<tbody>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">Subject / title</th>\r\n\t\t\t\t\t\t<td>{{data.title}}</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">Report status</th>\r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<b-badge v-if=\"data.status === 'Submitted'\" variant=\"danger\">Submitted</b-badge>\r\n\t\t\t\t\t\t\t<b-badge v-if=\"data.status === 'Working'\" variant=\"warning\">Working</b-badge>\r\n\t\t\t\t\t\t\t<b-badge v-if=\"data.status === 'Resolved'\" variant=\"success\">Resolved</b-badge>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">Date submitted</th>\r\n\t\t\t\t\t\t<td>{{data.dateSubmitted | date}}</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr v-if=\"!isNullOrEmpty(data.resolvedDate)\">\r\n\t\t\t\t\t\t<th class=\"min\">Resolution</th>\r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t{{data.resolvedDate | date}}\r\n\t\t\t\t\t\t\t<span v-if=\"!isNullOrEmpty(data.resolvedBy)\">by {{data.resolvedBy}}</span>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr v-if=\"!isNullOrEmpty(data.developerComments)\">\r\n\t\t\t\t\t\t<th class=\"min\">Developer comments</th>\r\n\t\t\t\t\t\t<td><b-form-textarea readonly v-model=\"data.developerComments\" rows=\"7\"></b-form-textarea></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">User comments</th>\r\n\t\t\t\t\t\t<td><b-form-textarea readonly v-model=\"data.userComments\" rows=\"7\"></b-form-textarea></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr v-if=\"!isNullOrEmpty(data.exception)\">\r\n\t\t\t\t\t\t<th class=\"min\">Error message received</th>\r\n\t\t\t\t\t\t<td><b-form-textarea readonly v-model=\"data.exception\" rows=\"10\"></b-form-textarea></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</tbody>\r\n\t\t\t</table>\r\n\r\n\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'ErrorReportView',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\treportID: this.$route.params.reportID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.reportID = this.$route.params.reportID;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`errorreports/view/${this.reportID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FeedbackView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FeedbackView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FeedbackView.vue?vue&type=template&id=13ae7c16&\"\nimport script from \"./FeedbackView.vue?vue&type=script&lang=js&\"\nexport * from \"./FeedbackView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Submit feedback\")]),_c('p',[_vm._v(\" Complete the form below to contact system administrators. If you encountered an error or have feedback for a specific project or scenario, please use the error report / feedback link from the left side menu on the project's page. \")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('b-form-group',{attrs:{\"label\":\"Subject\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.title)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.title)},model:{value:(_vm.$v.form.title.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.title, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.title.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Comments\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.userComments)}},[_c('b-form-textarea',{attrs:{\"rows\":\"10\",\"state\":_vm.getValidState(_vm.$v.form.userComments)},model:{value:(_vm.$v.form.userComments.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.userComments, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.userComments.$model\"}})],1),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Submit feedback</h2>\n\n\t\t\t<p>\n\t\t\t\tComplete the form below to contact system administrators. If you encountered an error or have feedback\n\t\t\t\tfor a specific project or scenario, please use the error report / feedback link from the left side menu on the project's page.\n\t\t\t</p>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t\t<b-form-group label=\"Subject\" :invalid-feedback=\"requiredFeedback($v.form.title)\">\r\n\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.title.$model\" type=\"text\" autofocus :state=\"getValidState($v.form.title)\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Comments\" :invalid-feedback=\"requiredFeedback($v.form.userComments)\">\r\n\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.form.userComments.$model\" rows=\"10\" :state=\"getValidState($v.form.userComments)\"></b-form-textarea>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'FeedbackCreate',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tprojectID: null,\r\n\t\t\t\t\tscenarioID: null,\r\n\t\t\t\t\ttitle: '',\r\n\t\t\t\t\tuserComments: ''\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\ttitle: { required },\r\n\t\t\t\tuserComments: { required }\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`errorreports`, this.form, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.$router.push({ name: 'FeedbackList' }).catch(err => { this.log(err) });\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FeedbackCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FeedbackCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FeedbackCreate.vue?vue&type=template&id=76ab7c0b&\"\nimport script from \"./FeedbackCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./FeedbackCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"container-fluid py-3\"},[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('div',{staticClass:\"d-flex align-items-center mb-3\"},[_c('h1',{staticClass:\"h4 mb-0\"},[_vm._v(_vm._s(_vm.project.name)+\" HRUs\")]),(_vm.project.numHrus < _vm.project.numOriginalHrus)?_c('div',{staticClass:\"ml-auto\"},[_c('a',{staticClass:\"btn btn-primary btn-sm\",attrs:{\"href\":_vm.project.hrusTrimmedCsv}},[_vm._v(\"Download \"),_c('font-awesome-icon',{attrs:{\"icon\":\"file-csv\"}})],1)]):_c('div',{staticClass:\"ml-auto\"},[_c('a',{staticClass:\"btn btn-primary btn-sm\",attrs:{\"href\":_vm.project.hrusOriginalCsv}},[_vm._v(\"Download \"),_c('font-awesome-icon',{attrs:{\"icon\":\"file-csv\"}})],1)])]),_c('p',[_vm._v(\" Please note this HRU table is generated per project, and does not reflect scenario modifications such as CN2 adjustments or calibration data. \")]),_c('grid-view',{attrs:{\"api-url\":_vm.apiUrl,\"small\":\"\",\"paging-fixed\":\"\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"default-per-page\":_vm.table.itemsPerPage,\"collection-description\":\"HRUs\",\"item-name\":\"HRU\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div class=\"container-fluid py-3\">\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<div class=\"d-flex align-items-center mb-3\">\r\n\t\t\t\t<h1 class=\"h4 mb-0\">{{project.name}} HRUs</h1>\r\n\t\t\t\t<div class=\"ml-auto\" v-if=\"project.numHrus < project.numOriginalHrus\">\r\n\t\t\t\t\t<a :href=\"project.hrusTrimmedCsv\" class=\"btn btn-primary btn-sm\">Download <font-awesome-icon icon=\"file-csv\" /></a>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"ml-auto\" v-else>\r\n\t\t\t\t\t<a :href=\"project.hrusOriginalCsv\" class=\"btn btn-primary btn-sm\">Download <font-awesome-icon icon=\"file-csv\" /></a>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\n\n\t\t\t<p>\n\t\t\tPlease note this HRU table is generated per project, and does not reflect scenario modifications such as CN2 adjustments or calibration data.\n\t\t\t</p>\t\t\t\r\n\r\n\t\t\t<grid-view :api-url=\"apiUrl\" small paging-fixed\r\n\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t   :default-per-page=\"table.itemsPerPage\"\r\n\t\t\t\t\t   collection-description=\"HRUs\" item-name=\"HRU\"></grid-view>\r\n\t\t</page-authorization-container>\t\t\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\r\n\texport default {\r\n\t\tname: 'HruTable',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tapiUrl: `hruselection/hrus/${this.$route.params.id}`,\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t//{ key: 'sortOrder', sortable: true },\r\n\t\t\t\t\t\t{ key: 'subbasin', sortable: true },\r\n\t\t\t\t\t\t{ key: 'landuse', sortable: true },\r\n\t\t\t\t\t\t{ key: 'soil', sortable: true },\r\n\t\t\t\t\t\t{ key: 'slopeClass', sortable: true },\r\n\t\t\t\t\t\t{ key: 'slope', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(5)) } },\r\n\t\t\t\t\t\t{ key: 'slopeLength', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t{ key: 'area', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t{ key: 'fraction', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(5)) } },\r\n\t\t\t\t\t\t{ key: 'cn2', label: 'CN2', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t{ key: 'ov_n', label: 'OVN', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'sortOrder',\r\n\t\t\t\t\treverse: false,\r\n\t\t\t\t\titemsPerPage: 100\r\n\t\t\t\t},\r\n\t\t\t\tproject: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.apiUrl = `hruselection/hrus/${this.projectID}`;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`projects/basic-info/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.project = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./HruTable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./HruTable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HruTable.vue?vue&type=template&id=270e59ba&\"\nimport script from \"./HruTable.vue?vue&type=script&lang=js&\"\nexport * from \"./HruTable.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('b-alert',{staticClass:\"mb-0\",attrs:{\"show\":_vm.siteSettings.enableAlertNotification,\"variant\":\"warning\"}},[_vm._v(\" \"+_vm._s(_vm.siteSettings.alertNotification)+\" \")]),_c('div',{attrs:{\"id\":\"main-panel\"}},[(_vm.$route.path == '/projects')?_c('div',{staticClass:\"container py-5\"},[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',[(_vm.page.showLogin)?_c('login-form',{attrs:{\"show-header\":\"\",\"no-redirect\":\"\"},on:{\"success\":_vm.loginSuccess}}):(!_vm.isAuthorized(_vm.roleNames.registered))?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" Your account is pending approval. You will receive a notification by email when it is approved. \")])],1):_c('div',[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.isImporting}},[_vm._v(\" We're importing your projects from version 1. You will receive a notification and email when the process is complete. \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.refresh.apply(null, arguments)}}},[_vm._v(\"Refresh projects list now.\")])]),_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-4\"},scopedSlots:_vm._u([{key:\"tabs-end\",fn:function(){return [_c('b-nav-item',{attrs:{\"to\":\"create\",\"append\":\"\"}},[_c('font-awesome-icon',{staticClass:\"text-info\",attrs:{\"icon\":['fas', 'plus-square'],\"fixed-width\":\"\"}}),_vm._v(\" New Project\")],1)]},proxy:true}],null,false,934265801)},[(_vm.recent.length > 0)?_c('b-tab',{attrs:{\"title\":\"Recent Activity\"}},[_c('b-card-group',{attrs:{\"deck\":\"\"}},_vm._l((_vm.recent),function(r,i){return _c('b-card',{key:i,staticClass:\"border\",attrs:{\"no-body\":\"\"}},[_c('project-map',{attrs:{\"project-map\":r.map,\"height\":\"250px\",\"ref-name\":`leafmap${i}`,\"is-regional\":r.isRegional}}),_c('b-card-body',[_c('b-card-title',{staticClass:\"text-center\"},[_vm._v(_vm._s(r.name))]),_c('b-card-text',[_c('div',{staticClass:\"text-center\"},[_vm._v(\" \"+_vm._s(_vm._f(\"number\")(r.numSubbasins,0))+\" subbasins / \"+_vm._s(_vm._f(\"number\")(r.numHrus,0))+\" HRUs / \"+_vm._s(_vm._f(\"number\")(r.totalArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])])]),_c('b-list-group',{staticClass:\"border-bottom\",attrs:{\"flush\":\"\"}},[(r.scenarios.length > 0)?_c('b-list-group-item',{staticClass:\"bg-light py-0 text-center\"},[_c('small',{staticClass:\"text-uppercase text-muted\"},[_vm._v(\"Recent scenarios\")])]):_vm._e(),_vm._l((r.scenarios),function(s,j){return _c('b-list-group-item',{key:j,staticClass:\"d-flex justify-content-between align-items-center py-2\"},[_c('router-link',{attrs:{\"to\":`${r.id}/scenarios/${s.id}`,\"append\":\"\"}},[_vm._v(_vm._s(s.name))]),(s.hasRun)?_c('div',[_c('small',{staticClass:\"text-muted\"},[_vm._v(\"Last ran \"+_vm._s(_vm._f(\"dateFromNow\")(s.lastRunDate)))])]):(s.isRunning)?_c('font-awesome-icon',{staticClass:\"icon ml-2\",attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\",\"title\":\"Running\"}}):_c('div',[_c('small',{staticClass:\"text-muted\"},[_vm._v(\"Modified \"+_vm._s(_vm._f(\"dateFromNow\")(s.lastModifiedDate)))])])],1)})],2)],1),_c('router-link',{staticClass:\"btn btn-primary btn-card-flush py-3\",attrs:{\"to\":`projects/${r.id}`}},[_c('small',{staticClass:\"text-uppercase\"},[_vm._v(\"Go to project\")])])],1)}),1)],1):_vm._e(),_c('b-tab',{attrs:{\"title\":\"Projects\"}},[_c('grid-view',{ref:\"projectsGrid\",attrs:{\"api-url\":\"projects\",\"delete-api-url\":\"projects\",\"show-refresh\":\"\",\"use-filter\":\"\",\"fields\":_vm.projects.table.fields,\"link-name\":\"\",\"default-sort\":_vm.projects.table.sort,\"default-reverse\":_vm.projects.table.reverse,\"default-per-page\":_vm.projects.table.itemsPerPage,\"collection-description\":\"projects\",\"item-name\":\"project\",\"create-route\":\"create\",\"show-create\":\"\",\"show-help\":\"\",\"extra-delete-message\":\"All files and scenarios related to this project will be removed.\"}}),(_vm.hasAccessToUploads)?_c('div',[_c('hr',{staticClass:\"my-4\"}),_c('h4',{staticClass:\"mb-3\"},[_vm._v(\"Looking to upload projects edited offline?\")]),_c('p',[_vm._v(\" If you checked the box to write SWAT Editor tables on any of your scenario runs and modified the project offline, you may upload those changes back into the system as a new project dataset. After uploading your project, you may create new projects in the system based off it, as well as share the project dataset with your groups or request it be made public to all users. \")]),_c('p',[_c('router-link',{staticClass:\"btn btn-success\",attrs:{\"to\":\"/datasets\"}},[_vm._v(\"Go to project uploads\")])],1)]):_vm._e()],1),_c('b-tab',{attrs:{\"title\":\"Group Projects\"}},[(_vm.groupInvites > 0)?_c('div',{staticClass:\"mb-4\"},[_c('router-link',{staticClass:\"btn btn-primary\",attrs:{\"to\":\"/groups/invites\"}},[_c('b-badge',{attrs:{\"variant\":\"light\"}},[_vm._v(_vm._s(_vm.groupInvites))]),_vm._v(\" Pending group invitations \")],1)],1):_vm._e(),_c('grid-view',{attrs:{\"api-url\":\"groups/projects\",\"fields\":_vm.groups.table.fields,\"default-sort\":_vm.groups.table.sort,\"default-reverse\":_vm.groups.table.reverse,\"default-per-page\":_vm.groups.table.itemsPerPage,\"collection-description\":\"groups\",\"item-name\":\"group\",\"has-items-intro\":\"Projects shared by other members in your groups are listed below. You may view, edit, and run* these projects. (*Note: tier limits still apply.)\",\"custom-empty-message\":_vm.hasGroups ? 'No members of your groups have shared any projects yet.' : 'You are not a member of any groups.'}}),_c('div',[_c('router-link',{staticClass:\"btn btn-success\",attrs:{\"to\":\"/groups\"}},[_vm._v(\"Go to your groups / create a new group\")])],1)],1)],1)],1)],1):_vm._e()],1):_vm._e(),_c('router-view')],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:'map-container ' + (_vm.page.customWidth? '' : (_vm.page.customHeight ? 'w-100' : 'full-map')),style:((_vm.page.customHeight ? `height: ${_vm.height};` : '') + (_vm.page.customWidth ? `width: ${_vm.width};` : ''))},[_c('l-map',{ref:_vm.refName,staticStyle:{\"height\":\"100%\",\"width\":\"100%\"},attrs:{\"zoom\":_vm.defaultMapZoom,\"center\":_vm.defaultMapBounds,\"bounds\":_vm.map.bounds},on:{\"mousemove\":_vm.mapMove}},[(_vm.showLayerControl)?_c('l-control-layers',{attrs:{\"position\":\"topright\"}}):_vm._e(),_vm._l((_vm.defaultMapTileProviders),function(tileProvider){return _c('l-tile-layer',{key:tileProvider.name,attrs:{\"name\":tileProvider.name,\"visible\":tileProvider.visible,\"url\":tileProvider.url,\"attribution\":tileProvider.attribution,\"layer-type\":\"base\"}})}),_c('l-layer-group',{attrs:{\"layer-type\":\"overlay\",\"name\":\"Subbasins\"}},[(_vm.map.subbasins.geojson !== undefined)?_c('l-geo-json',{attrs:{\"geojson\":_vm.map.subbasins.geojson,\"options\":_vm.mapSubbasinsOptions,\"options-style\":_vm.mapSubbasinsStyle}}):_vm._e()],1),(_vm.map.streams.geojson !== undefined)?_c('l-layer-group',{attrs:{\"layer-type\":\"overlay\",\"name\":\"Streams\"}},[_c('l-geo-json',{attrs:{\"geojson\":_vm.map.streams.geojson,\"options\":_vm.map.streams.options}})],1):_vm._e(),_vm._l((_vm.allowedExtraLayers),function(extraLayer,i){return _c('l-layer-group',{key:i,ref:`extraLayer${i}`,refInFor:true,attrs:{\"layer-type\":\"overlay\",\"name\":extraLayer.name,\"visible\":!['Ponds', 'Reservoirs', 'Point Source Discharge'].includes(extraLayer.name)}},[_c('l-geo-json',{attrs:{\"geojson\":extraLayer.geojson,\"options\":_vm.mapExtraLayersOptions(i)}})],1)}),(!_vm.page.customHeight)?_c('l-control',{attrs:{\"position\":\"bottomleft\"}},[(_vm.map.currentCoords !== undefined)?_c('div',[_vm._v(\"Cursor position: \"+_vm._s(_vm._f(\"number\")(_vm.map.currentCoords.lat,3))+\", \"+_vm._s(_vm._f(\"number\")(_vm.map.currentCoords.lng,3)))]):_vm._e()]):_vm._e(),(_vm.projectMap.connections.length > 1)?_c('l-layer-group',{ref:\"routeLayer\",attrs:{\"visible\":!_vm.page.loading,\"layer-type\":\"overlay\",\"name\":\"Route\"}},[_vm._l((_vm.polylines),function(c,i){return _c('l-polyline',{key:i,attrs:{\"lat-lngs\":c.lineCoordinates,\"color\":\"green\"}})}),_c('v-polyline-decorator',{attrs:{\"paths\":_vm.routeCoordinates,\"patterns\":_vm.map.patterns}})],2):_vm._e(),(_vm.showLayerControl)?_c('l-control',{attrs:{\"position\":\"bottomright\"}},[_c('b-button',{staticStyle:{\"font-size\":\"0.8rem\"},attrs:{\"variant\":\"dark\",\"size\":\"sm\"},on:{\"click\":_vm.toggleColors}},[_vm._v(\"Toggle Contrast\")])],1):_vm._e()],2),(_vm.page.loading)?_c('div',{staticClass:\"map-loading-overlay\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\",\"size\":\"3x\"}})],1):_vm._e(),_c('b-modal',{attrs:{\"title\":`USGS Site ` + (_vm.usgsSite.item !== null ? `${_vm.usgsSite.item.number}, ${_vm.usgsSite.item.name}` : ''),\"scrollable\":\"\",\"size\":\"xl\"},model:{value:(_vm.usgsSite.show),callback:function ($$v) {_vm.$set(_vm.usgsSite, \"show\", $$v)},expression:\"usgsSite.show\"}},[_c('p',{staticClass:\"font-italic\"},[_vm._v(\" Daily streamflow data is retrieved from \"),_c('a',{attrs:{\"href\":\"https://waterservices.usgs.gov/\",\"target\":\"_blank\"}},[_vm._v(\"waterservices.usgs.gov\")]),_vm._v(\". \")]),_c('error-list',{attrs:{\"errors\":_vm.usgsSite.errors}}),_c('page-loading',{attrs:{\"loading\":_vm.usgsSite.loading}}),(!_vm.usgsSite.loading && _vm.usgsSite.errors.length < 1)?_c('div',[_c('b-form',{attrs:{\"inline\":\"\"},on:{\"submit\":function($event){$event.preventDefault();return _vm.queryWaterServices.apply(null, arguments)}}},[_c('label',{staticClass:\"mr-sm-2\",attrs:{\"for\":\"usgsStartDate\"}},[_vm._v(\"Start date\")]),_c('b-form-input',{staticClass:\"mb-2 mr-sm-3 mb-sm-0\",attrs:{\"id\":\"usgsStartDate\",\"type\":\"date\"},model:{value:(_vm.usgsSite.options.startDT),callback:function ($$v) {_vm.$set(_vm.usgsSite.options, \"startDT\", $$v)},expression:\"usgsSite.options.startDT\"}}),_c('div',{staticClass:\"d-lg-none\"}),_c('label',{staticClass:\"mr-sm-2\",attrs:{\"for\":\"usgsEndDate\"}},[_vm._v(\"End date\")]),_c('b-form-input',{staticClass:\"mb-2 mr-sm-3 mb-sm-0\",attrs:{\"id\":\"usgsEndDate\",\"type\":\"date\",\"max\":_vm.todaysDate},model:{value:(_vm.usgsSite.options.endDT),callback:function ($$v) {_vm.$set(_vm.usgsSite.options, \"endDT\", $$v)},expression:\"usgsSite.options.endDT\"}}),_c('b-form-select',{staticClass:\"mb-2 mr-sm-3 mb-sm-0\",attrs:{\"options\":_vm.usgsSite.options.unitOptions},model:{value:(_vm.usgsSite.options.units),callback:function ($$v) {_vm.$set(_vm.usgsSite.options, \"units\", $$v)},expression:\"usgsSite.options.units\"}}),_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.usgsSite.saving,\"text\":\"Update Chart\"}})],1),_c('hr',{staticClass:\"my-3\"}),_c('div',[_c('highcharts',{attrs:{\"options\":_vm.usgsSite.display.chartOptions,\"updateArgs\":_vm.usgsSite.display.updateArgs}})],1)],1):_vm._e(),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":function($event){_vm.usgsSite.show = false}}},[_vm._v(\"Close\")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticStyle:{\"display\":\"none\"}},[(_vm.ready)?_vm._t(\"default\"):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div style=\"display: none;\">\r\n\t\t<slot v-if=\"ready\"></slot>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport L from 'leaflet'\r\n\timport 'leaflet-polylinedecorator'\r\n\r\n\timport { findRealParent, propsBinder } from 'vue2-leaflet'\r\n\r\n\tconst props = {\r\n\t\tpaths: {\r\n\t\t\ttype: Array,\r\n\t\t\tdefault: () => []\r\n\t\t},\r\n\t\tpatterns: {\r\n\t\t\ttype: Array,\r\n\t\t\tdefault: () => []\r\n\t\t},\r\n\t\tvisible: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tcustom: true,\r\n\t\t\tdefault: true\r\n\t\t}\r\n\t};\r\n\r\n\texport default {\r\n\t\tname: 'Vue2LeafletPolylineDecorator',\r\n\t\tprops,\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tready: false,\r\n\t\t\t}\r\n\t\t},\r\n\t\tmounted() {\r\n\t\t\tconst polyline = L.polyline(this.paths);\r\n\t\t\tconst options = { patterns: this.patterns };\r\n\t\t\tthis.mapObject = L.polylineDecorator(polyline, options);\r\n\t\t\tL.DomEvent.on(this.mapObject, this.$listeners);\r\n\t\t\tpropsBinder(this, this.mapObject, props);\r\n\t\t\tthis.ready = true;\r\n\t\t\tthis.parentContainer = findRealParent(this.$parent);\r\n\t\t\tthis.parentContainer.addLayer(this, !this.visible);\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.parentContainer.removeLayer(this);\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tsetVisible(newVal, oldVal) {\r\n\t\t\t\tif (newVal == oldVal) return;\r\n\t\t\t\tif (newVal) {\r\n\t\t\t\t\tthis.parentContainer.addLayer(this);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.parentContainer.removeLayer(this);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\taddLatLng(value) {\r\n\t\t\t\tthis.mapObject.addLatLng(value);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Vue2LeafletPolylineDecorator.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Vue2LeafletPolylineDecorator.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Vue2LeafletPolylineDecorator.vue?vue&type=template&id=64147b50&\"\nimport script from \"./Vue2LeafletPolylineDecorator.vue?vue&type=script&lang=js&\"\nexport * from \"./Vue2LeafletPolylineDecorator.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div :class=\"'map-container ' + (page.customWidth? '' : (page.customHeight ? 'w-100' : 'full-map'))\" :style=\"(page.customHeight ? `height: ${height};` : '') + (page.customWidth ? `width: ${width};` : '')\">\r\n\t\t<l-map :ref=\"refName\" style=\"height: 100%; width:100%\" :zoom=\"defaultMapZoom\" :center=\"defaultMapBounds\" :bounds=\"map.bounds\" @mousemove=\"mapMove\">\r\n\t\t\t<l-control-layers v-if=\"showLayerControl\" position=\"topright\"></l-control-layers>\r\n\t\t\t<l-tile-layer v-for=\"tileProvider in defaultMapTileProviders\"\r\n\t\t\t\t\t\t  :key=\"tileProvider.name\"\r\n\t\t\t\t\t\t  :name=\"tileProvider.name\"\r\n\t\t\t\t\t\t  :visible=\"tileProvider.visible\"\r\n\t\t\t\t\t\t  :url=\"tileProvider.url\"\r\n\t\t\t\t\t\t  :attribution=\"tileProvider.attribution\"\r\n\t\t\t\t\t\t  layer-type=\"base\" />\r\n\t\t\t<l-layer-group layer-type=\"overlay\" name=\"Subbasins\">\r\n\t\t\t\t<l-geo-json v-if=\"map.subbasins.geojson !== undefined\" :geojson=\"map.subbasins.geojson\" :options=\"mapSubbasinsOptions\" :options-style=\"mapSubbasinsStyle\"></l-geo-json>\r\n\t\t\t</l-layer-group>\r\n\t\t\t<l-layer-group v-if=\"map.streams.geojson !== undefined\" layer-type=\"overlay\" name=\"Streams\">\r\n\t\t\t\t<l-geo-json :geojson=\"map.streams.geojson\" :options=\"map.streams.options\"></l-geo-json>\r\n\t\t\t</l-layer-group>\r\n\t\t\t<l-layer-group layer-type=\"overlay\" v-for=\"(extraLayer, i) in allowedExtraLayers\" :key=\"i\" :name=\"extraLayer.name\" :ref=\"`extraLayer${i}`\" :visible=\"!['Ponds', 'Reservoirs', 'Point Source Discharge'].includes(extraLayer.name)\">\r\n\t\t\t\t<l-geo-json :geojson=\"extraLayer.geojson\" :options=\"mapExtraLayersOptions(i)\"></l-geo-json>\r\n\t\t\t</l-layer-group>\r\n\t\t\t<l-control position=\"bottomleft\" v-if=\"!page.customHeight\">\r\n\t\t\t\t<div v-if=\"map.currentCoords !== undefined\">Cursor position: {{map.currentCoords.lat | number(3)}}, {{map.currentCoords.lng | number(3)}}</div>\r\n\t\t\t</l-control>\r\n\t\t\t<l-layer-group ref=\"routeLayer\" :visible=\"!page.loading\" v-if=\"projectMap.connections.length > 1\" layer-type=\"overlay\" name=\"Route\">\r\n\t\t\t\t<l-polyline v-for=\"(c, i) in polylines\" :key=\"i\" :lat-lngs=\"c.lineCoordinates\" color=\"green\"></l-polyline>\r\n\t\t\t\t<v-polyline-decorator :paths=\"routeCoordinates\" :patterns=\"map.patterns\"></v-polyline-decorator>\r\n\t\t\t</l-layer-group>\r\n\t\t\t<l-control v-if=\"showLayerControl\" position=\"bottomright\">\r\n\t\t\t\t<b-button variant=\"dark\" size=\"sm\" @click=\"toggleColors\" style=\"font-size:0.8rem\">Toggle Contrast</b-button>\r\n\t\t\t</l-control>\r\n\t\t</l-map>\r\n\t\t<div v-if=\"page.loading\" class=\"map-loading-overlay\">\r\n\t\t\t<font-awesome-icon :icon=\"['fas', 'spinner']\" spin size=\"3x\" />\r\n\t\t</div>\r\n\r\n\t\t<b-modal v-model=\"usgsSite.show\" :title=\"`USGS Site ` + (usgsSite.item !== null ? `${usgsSite.item.number}, ${usgsSite.item.name}` : '')\" scrollable size=\"xl\">\r\n\t\t\t<p class=\"font-italic\">\r\n\t\t\t\tDaily streamflow data is retrieved from <a href=\"https://waterservices.usgs.gov/\" target=\"_blank\">waterservices.usgs.gov</a>.\r\n\t\t\t</p>\r\n\r\n\t\t\t<error-list :errors=\"usgsSite.errors\"></error-list>\r\n\t\t\t<page-loading :loading=\"usgsSite.loading\"></page-loading>\r\n\r\n\t\t\t<div v-if=\"!usgsSite.loading && usgsSite.errors.length < 1\">\r\n\t\t\t\t<b-form inline @submit.prevent=\"queryWaterServices\">\r\n\t\t\t\t\t<label class=\"mr-sm-2\" for=\"usgsStartDate\">Start date</label>\r\n\t\t\t\t\t<b-form-input id=\"usgsStartDate\" class=\"mb-2 mr-sm-3 mb-sm-0\" v-model=\"usgsSite.options.startDT\" type=\"date\"></b-form-input>\r\n\r\n\t\t\t\t\t<div class=\"d-lg-none\"></div>\r\n\t\t\t\t\t<label class=\"mr-sm-2\" for=\"usgsEndDate\">End date</label>\r\n\t\t\t\t\t<b-form-input id=\"usgsEndDate\" class=\"mb-2 mr-sm-3 mb-sm-0\" v-model=\"usgsSite.options.endDT\" type=\"date\" :max=\"todaysDate\"></b-form-input>\r\n\r\n\t\t\t\t\t<b-form-select class=\"mb-2 mr-sm-3 mb-sm-0\" v-model=\"usgsSite.options.units\" :options=\"usgsSite.options.unitOptions\"></b-form-select>\r\n\r\n\t\t\t\t\t<save-button :saving=\"usgsSite.saving\" text=\"Update Chart\" class=\"mr-2\" />\r\n\t\t\t\t</b-form>\r\n\r\n\t\t\t\t<hr class=\"my-3\" />\r\n\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<highcharts :options=\"usgsSite.display.chartOptions\" :updateArgs=\"usgsSite.display.updateArgs\"></highcharts>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t<b-button type=\"button\" variant=\"primary\" @click=\"usgsSite.show = false\" class=\"ml-1\">Close</b-button>\r\n\t\t\t</div>\r\n\t\t</b-modal>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport L from 'leaflet';\r\n\timport { LMap, LTileLayer, LGeoJson, LControl, LPolyline, LControlLayers, LLayerGroup } from 'vue2-leaflet';\r\n\timport Vue2LeafletPolylineDecorator from '@/components/helpers/Vue2LeafletPolylineDecorator';\r\n\timport _ from 'underscore';\r\n\timport moment from 'moment';\r\n\timport 'leaflet/dist/leaflet.css';\r\n\tvar bbox = require('geojson-bbox');\r\n\r\n\tvar __globalStartingSubs = [];\r\n\tvar __globalColors = {};\r\n\r\n\texport default {\r\n\t\tname: 'ProjectMap',\r\n\t\tcomponents: {\r\n\t\t\tLMap, LTileLayer, LGeoJson, LControl, LPolyline, LControlLayers, LLayerGroup, 'v-polyline-decorator': Vue2LeafletPolylineDecorator\r\n\t\t},\r\n\t\tprops: {\r\n\t\t\tprojectMap: {\r\n\t\t\t\ttype: Object,\r\n\t\t\t\trequired: true\r\n\t\t\t},\r\n\t\t\tshowLayerControl: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\theight: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: '100%'\r\n\t\t\t},\r\n\t\t\twidth: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: '100%'\r\n\t\t\t},\r\n\t\t\thighlightSelected: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tselectMultiple: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tselectedSubbasins: {\r\n\t\t\t\ttype: Array,\r\n\t\t\t\tdefault: () => []\r\n\t\t\t},\r\n\t\t\trefName: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: 'leafmap'\r\n\t\t\t},\r\n\t\t\tshowExtraLayers: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tloadOnlyOnView: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\tisRegional: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tcustomHeight: this.height != '100%',\r\n\t\t\t\t\tcustomWidth: this.width != '100%'\r\n\t\t\t\t},\r\n\t\t\t\tmap: {\r\n\t\t\t\t\tbounds: undefined,\r\n\t\t\t\t\tsubbasins: {\r\n\t\t\t\t\t\tgeojson: undefined\r\n\t\t\t\t\t},\r\n\t\t\t\t\tstreams: {\r\n\t\t\t\t\t\tgeojson: undefined,\r\n\t\t\t\t\t\toptions: {\r\n\t\t\t\t\t\t\tstyle: {\r\n\t\t\t\t\t\t\t\tweight: 1,\r\n\t\t\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\t\t\tcolor: '#006da0',\r\n\t\t\t\t\t\t\t\tdashArray: '0'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcurrentCoords: undefined,\r\n\t\t\t\t\troute: [],\r\n\t\t\t\t\tpatterns: [\r\n\t\t\t\t\t\t{ offset: '50%', repeat: 0, symbol: L.Symbol.arrowHead({ pixelSize: 15, polygon: false, pathOptions: { color: 'green', stroke: true } }) }\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\tstartingSubs: this.selectedSubbasins,\r\n\t\t\t\tlayerColors: [\r\n\t\t\t\t\t'#a4f24b',\r\n\t\t\t\t\t'#ff194f',\r\n\t\t\t\t\t'#ce29e8',\r\n\t\t\t\t\t'#0274cc',\r\n\t\t\t\t\t'#f7ff1e'\r\n\t\t\t\t],\r\n\t\t\t\tusgsSite: {\r\n\t\t\t\t\tshow: false,\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\titem: {\r\n\t\t\t\t\t\tnumber: null,\r\n\t\t\t\t\t\tname: null,\r\n\t\t\t\t\t\tisUsgsSite: false,\r\n\t\t\t\t\t\tdata: {}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tdata: {},\r\n\t\t\t\t\tdisplay: {\r\n\t\t\t\t\t\tname: null,\r\n\t\t\t\t\t\tlatitude: null,\r\n\t\t\t\t\t\tlongitude: null,\r\n\t\t\t\t\t\tvariable: null,\r\n\t\t\t\t\t\tvariableDescription: null,\r\n\t\t\t\t\t\tvalueType: null,\r\n\t\t\t\t\t\tunits: null,\r\n\t\t\t\t\t\tchartOptions: {\r\n\t\t\t\t\t\t\tchart: { zoomType: 'x' },\r\n\t\t\t\t\t\t\ttitle: { text: null },\r\n\t\t\t\t\t\t\txAxis: [{\r\n\t\t\t\t\t\t\t\ttitle: null,\r\n\t\t\t\t\t\t\t\ttype: 'datetime',\r\n\t\t\t\t\t\t\t\tlabels: {\r\n\t\t\t\t\t\t\t\t\tformat: '{value:%b %e}'\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\topposite: false\r\n\t\t\t\t\t\t\t}],\r\n\t\t\t\t\t\t\tyAxis: [{\r\n\t\t\t\t\t\t\t\ttitle: { text: 'Streamflow' },\r\n\t\t\t\t\t\t\t\tlabels: { format: '{value} ft3/s' },\r\n\t\t\t\t\t\t\t\tgridLineWidth: 1,\r\n\t\t\t\t\t\t\t\topposite: false\r\n\t\t\t\t\t\t\t}],\r\n\t\t\t\t\t\t\tseries: [{\r\n\t\t\t\t\t\t\t\tdata: [],\r\n\t\t\t\t\t\t\t\tname: 'Streamflow',\r\n\t\t\t\t\t\t\t\ttype: 'line',\r\n\t\t\t\t\t\t\t\txAxis: 0,\r\n\t\t\t\t\t\t\t\tyAxis: 0,\r\n\t\t\t\t\t\t\t\ttooltip: {\r\n\t\t\t\t\t\t\t\t\tvalueSuffix: ' ft3/s',\r\n\t\t\t\t\t\t\t\t\tvalueDecimals: 2\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}],\r\n\t\t\t\t\t\t\tplotOptions: {\r\n\t\t\t\t\t\t\t\tseries: { turboThreshold: 0 }\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\texporting: {\r\n\t\t\t\t\t\t\t\tcsv: { dateFormat: '%Y-%m-%d' }\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tupdateArgs: [true, true, { duration: 1000 }]\r\n\t\t\t\t\t},\r\n\t\t\t\t\toptions: {\r\n\t\t\t\t\t\tusePeriod: false,\r\n\t\t\t\t\t\tperiod: 'P7D',\r\n\t\t\t\t\t\tstartDT: null,\r\n\t\t\t\t\t\tendDT: null,\r\n\t\t\t\t\t\tunitOptions: [\r\n\t\t\t\t\t\t\t{ value: 0, text: 'Metric units' },\r\n\t\t\t\t\t\t\t{ value: 1, text: 'English units' }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tunits: 0\r\n\t\t\t\t\t},\r\n\t\t\t\t\tbaseUrl: 'https://waterservices.usgs.gov/nwis/dv/?format=json&parameterCd=00060&siteStatus=all'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t},\r\n\t\tasync mounted() {\r\n\t\t\tawait this.get();\r\n\t\t\tif (this.projectMap.connections.length > 1)\r\n\t\t\t\tthis.$refs.routeLayer.mapObject.remove();\r\n\t\t\t/*if (this.showExtraLayers && this.projectMap.extraLayers.length > 0) {\r\n\t\t\t\tfor (let i = 0; i < this.projectMap.extraLayers.length; i++) {\r\n\t\t\t\t\tif (this.projectMap.extraLayers[i].name in ['Ponds', 'Reservoirs']) {\r\n\t\t\t\t\t\tthis.$refs[`extraLayer${i}`].mapObject.remove();\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}*/\r\n\t\t\tthis.renderMap();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\tselectedSubbasins(newVal, oldVal) {\r\n\t\t\t\tthis.startingSubs = newVal;\r\n\t\t\t\t__globalStartingSubs = this.startingSubs;\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.log(this.startingSubs);\r\n\t\t\t\tthis.log(\"Map\");\r\n\t\t\t\tthis.log(this.projectMap);\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\tthis.loadMapColors();\r\n\t\t\t\tthis.map.streams.options.style.color = this.mapColors.stream;\r\n\r\n\t\t\t\tthis.usgsSite.options.endDT = this.todaysDate;\r\n\t\t\t\tthis.usgsSite.options.startDT = moment().subtract(1, 'months').format('YYYY-MM-DD');\r\n\t\t\t\tthis.usgsSite.options.units = this.projectMap.defaultUnits;\r\n\r\n\t\t\t\tif (this.isNullOrEmpty(this.loadOnlyOnView) || this.$route.name == this.loadOnlyOnView) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\t/*\r\n\t\t\t\t\t\tNice idea, but there is a hard limit of 5MB local storage, so this isn't very useful.\r\n\t\r\n\t\t\t\t\t\tlet storedSubbasinsKey = `subs_geojson:${this.projectMap.geoJsonUrls.subbasins}`;\r\n\t\t\t\t\t\tlet storedSubbasinsGeojson = localStorage.getItem(storedSubbasinsKey);\r\n\t\t\t\t\t\tif (!this.isNullOrEmpty(storedSubbasinsGeojson)) {\r\n\t\t\t\t\t\t\tthis.map.subbasins.geojson = JSON.parse(storedSubbasinsGeojson);\r\n\t\t\t\t\t\t\tthis.log(`Retrieved map from local storage ${storedSubbasinsKey}`);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tconst subsResponse = await this.$httpRoot.get(this.projectMap.geoJsonUrls.subbasins);\r\n\t\t\t\t\t\t\tthis.map.subbasins.geojson = subsResponse.data;\r\n\t\t\t\t\t\t\tlocalStorage.setItem(storedSubbasinsKey, JSON.stringify(subsResponse.data));\r\n\t\t\t\t\t\t}\r\n\t\r\n\t\t\t\t\t\tlet storedStreamsKey = `streams_geojson:${this.projectMap.geoJsonUrls.streams}`;\r\n\t\t\t\t\t\tlet storedStreamsGeojson = localStorage.getItem(storedStreamsKey);\r\n\t\t\t\t\t\tif (!this.isNullOrEmpty(storedStreamsGeojson)) {\r\n\t\t\t\t\t\t\tthis.map.streams.geojson = JSON.parse(storedStreamsGeojson);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tconst streamsResponse = await this.$httpRoot.get(this.projectMap.geoJsonUrls.streams);\r\n\t\t\t\t\t\t\tthis.map.streams.geojson = streamsResponse.data;\r\n\t\t\t\t\t\t\tlocalStorage.setItem(storedStreamsKey, JSON.stringify(streamsResponse.data));\r\n\t\t\t\t\t\t}*/\r\n\r\n\t\t\t\t\t\tconst subsResponse = await this.$httpRoot.get(this.projectMap.geoJsonUrls.subbasins);\r\n\t\t\t\t\t\tthis.map.subbasins.geojson = subsResponse.data;\r\n\r\n\t\t\t\t\t\tif (!this.isRegional && (this.projectMap.connections.length < this.globals.maxSubbasinsForMap)) {\r\n\t\t\t\t\t\t\tconst streamsResponse = await this.$httpRoot.get(this.projectMap.geoJsonUrls.streams);\r\n\t\t\t\t\t\t\tthis.map.streams.geojson = streamsResponse.data;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.map.route = this.projectMap.connections;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tmapMove(e) {\r\n\t\t\t\tthis.map.currentCoords = e.latlng;\r\n\t\t\t},\r\n\t\t\tmapSubbasinsClick(e) {\r\n\t\t\t\tvar sub = e.target.feature.properties;\r\n\t\t\t\tvar item = { id: sub.id, name: sub.name };\r\n\r\n\t\t\t\tif (this.highlightSelected) {\r\n\t\t\t\t\tif (this.selectMultiple) {\r\n\t\t\t\t\t\tvar index = this.startingSubs.findIndex(x => x.id == sub.id);\r\n\t\t\t\t\t\tif (index === -1) {\r\n\t\t\t\t\t\t\tthis.startingSubs.push(item);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.removeStartingSub(sub.id);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.startingSubs = [item];\r\n\t\t\t\t\t}\r\n\t\t\t\t\t__globalStartingSubs = this.startingSubs;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.$emit('subbasin-click', this.startingSubs);\r\n\t\t\t},\r\n\t\t\tremoveStartingSub(id) {\r\n\t\t\t\tif (this.highlightSelected) {\r\n\t\t\t\t\tthis.startingSubs = this.startingSubs.filter(function (el) { return el.id != id; });\r\n\t\t\t\t\t__globalStartingSubs = this.startingSubs;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\trenderMap() {\r\n\t\t\t\twindow.dispatchEvent(new Event('resize'));\r\n\t\t\t\tvar ref = this.$refs[this.refName];\r\n\t\t\t\tvar self = this;\r\n\t\t\t\tthis.$nextTick(function () {\r\n\t\t\t\t\tref.mapObject.invalidateSize(true);\r\n\t\t\t\t\tself.setMapBounds();\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tsetMapBounds() {\r\n\t\t\t\tthis.map.bounds = L.latLngBounds(this.projectMap.watershedBounds);\r\n\t\t\t\tif (this.map.subbasins.geojson) {\r\n\t\t\t\t\tvar bounds = bbox(this.map.subbasins.geojson);\r\n\t\t\t\t\tthis.map.bounds = L.latLngBounds([[bounds[3], bounds[2]], [bounds[1], bounds[0]]]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.map.bounds = L.latLngBounds(this.projectMap.watershedBounds);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\ttoggleColors() {\r\n\t\t\t\tthis.setMapColors(!this.mapColors.highContrast);\r\n\t\t\t\tthis.map.streams.options.style.color = this.mapColors.stream;\r\n\t\t\t},\r\n\t\t\tmapExtraLayersOptions(i) {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tonEachFeature: this.mapExtraLayersOnEachFeature,\r\n\t\t\t\t\tpointToLayer: this.mapExtraLayersPointToLayer(i)\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapExtraLayersPointToLayer(i) {\r\n\t\t\t\treturn (feature, latlng) => {\r\n\t\t\t\t\tlet color = this.layerColors[0];\r\n\t\t\t\t\tif (i < this.layerColors.length) {\r\n\t\t\t\t\t\tcolor = this.layerColors[i];\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn L.circleMarker(latlng, {\r\n\t\t\t\t\t\tradius: 5,\r\n\t\t\t\t\t\tfillColor: color,\r\n\t\t\t\t\t\tcolor: '#000',\r\n\t\t\t\t\t\tweight: 1,\r\n\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\tfillOpacity: 0.9\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync usgsSiteClick(e) {\r\n\t\t\t\tlet props = e.target.feature.properties;\r\n\t\t\t\tthis.log(props);\r\n\r\n\t\t\t\tlet keys = Object.keys(props);\r\n\t\t\t\tlet hasCalibrations = keys.includes('calibrations');\r\n\t\t\t\tif (hasCalibrations) {\r\n\t\t\t\t\tfor (let cal of props.calibrations) {\r\n\t\t\t\t\t\tif (cal.isUsgsSite) {\r\n\t\t\t\t\t\t\tthis.usgsSite.item = cal;\r\n\t\t\t\t\t\t\tthis.usgsSite.data = {};\r\n\t\t\t\t\t\t\tthis.usgsSite.show = true;\r\n\t\t\t\t\t\t\tawait this.queryWaterServices();\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\t\t\t\r\n\t\t\t},\r\n\t\t\tasync queryWaterServices() {\r\n\t\t\t\tthis.usgsSite.loading = true;\r\n\t\t\t\tthis.usgsSite.errors = [];\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tlet url = `${this.usgsSite.baseUrl}&sites=${this.usgsSite.item.number}`;\r\n\r\n\t\t\t\t\tif (this.usgsSite.options.usePeriod) {\r\n\t\t\t\t\t\turl += `&period=${this.usgsSite.options.period}`;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\turl += `&startDT=${this.usgsSite.options.startDT}&endDT=${this.usgsSite.options.endDT}`;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst response = await this.$httpRoot.get(url);\r\n\t\t\t\t\tthis.log(response);\r\n\r\n\t\t\t\t\tthis.usgsSite.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.usgsSite.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (this.usgsSite.errors.length < 1) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tlet series = this.usgsSite.data.value.timeSeries[0];\r\n\t\t\t\t\t\tthis.usgsSite.display.name = series.sourceInfo.siteName;\r\n\t\t\t\t\t\tthis.usgsSite.display.latitude = series.sourceInfo.geoLocation.geogLocation.latitude;\r\n\t\t\t\t\t\tthis.usgsSite.display.longitude = series.sourceInfo.geoLocation.geogLocation.longitude;\r\n\t\t\t\t\t\tthis.usgsSite.display.variable = series.variable.variableName;\r\n\t\t\t\t\t\tthis.usgsSite.display.variableDescription = series.variable.variableDescription;\r\n\t\t\t\t\t\tthis.usgsSite.display.valueType = series.variable.valueType;\r\n\t\t\t\t\t\tthis.usgsSite.display.units = series.variable.unit.unitCode;\r\n\r\n\t\t\t\t\t\tlet multiplier = 1;\r\n\t\t\t\t\t\tif (this.usgsSite.options.units === 0) {\r\n\t\t\t\t\t\t\tthis.usgsSite.display.chartOptions.yAxis[0].labels.format = '{value} m3/s';\r\n\t\t\t\t\t\t\tthis.usgsSite.display.chartOptions.series[0].tooltip.valueSuffix = ' m3/s';\r\n\t\t\t\t\t\t\tthis.usgsSite.display.units = 'm3/s';\r\n\t\t\t\t\t\t\tmultiplier = 0.0283168;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.usgsSite.display.chartOptions.yAxis[0].labels.format = '{value} ft3/s';\r\n\t\t\t\t\t\t\tthis.usgsSite.display.chartOptions.series[0].tooltip.valueSuffix = ' ft3/s';\r\n\t\t\t\t\t\t\tthis.usgsSite.display.units = 'ft3/s';\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.usgsSite.display.chartOptions.title.text = `USGS Site ${this.usgsSite.item.number} Daily Average Streamflow (${this.usgsSite.display.units})`;\r\n\r\n\t\t\t\t\t\tlet zone = series.sourceInfo.timeZoneInfo.defaultTimeZone.zoneOffset;\r\n\t\t\t\t\t\tif (series.sourceInfo.timeZoneInfo.siteUsesDaylightSavingsTime) {\r\n\t\t\t\t\t\t\tzone = series.sourceInfo.timeZoneInfo.daylightSavingsTimeZone.zoneOffset;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tlet timeSeries = series.values[0].value;\r\n\t\t\t\t\t\tthis.usgsSite.display.chartOptions.series[0].data = [];\r\n\t\t\t\t\t\tlet chartData = [];\r\n\r\n\t\t\t\t\t\tfor (let point of timeSeries) {\r\n\t\t\t\t\t\t\tchartData.push({\r\n\t\t\t\t\t\t\t\tx: moment(point.dateTime).utcOffset(zone).valueOf(),\r\n\t\t\t\t\t\t\t\ty: Number(point.value) * multiplier\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.usgsSite.display.chartOptions.series[0].data = chartData;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tlet errorMessage = 'Error parsing response from waterservices.usgs.gov web API. Data may be incomplete or the format was unexpected.';\r\n\t\t\t\t\t\tif (this.usgsSite.data.value.timeSeries.length < 1) {\r\n\t\t\t\t\t\t\terrorMessage = `No time series data available for USGS site #${this.usgsSite.item.number}.`;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.usgsSite.errors.push(errorMessage);\r\n\t\t\t\t\t\tconsole.log(this.usgsSite.data);\r\n\t\t\t\t\t\tconsole.log(this.usgsSite.display);\r\n\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.usgsSite.loading = false;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\ttodaysDate() {\r\n\t\t\t\treturn moment().format('YYYY-MM-DD');\r\n\t\t\t},\r\n\t\t\tallowedExtraLayers() {\r\n\t\t\t\tif (!this.showExtraLayers) return [];\r\n\t\t\t\treturn this.projectMap.extraLayers;\r\n\t\t\t},\r\n\t\t\tpolylines() {\r\n\t\t\t\treturn this.projectMap.connections.filter(function (el) { return el.lineCoordinates[1].length > 0; })\r\n\t\t\t},\r\n\t\t\tmapExtraLayersOnEachFeature() {\r\n\t\t\t\treturn (feature, layer) => {\r\n\t\t\t\t\tlet popText = '';\r\n\t\t\t\t\tlet keys = Object.keys(feature.properties);\r\n\t\t\t\t\tlet hasCalibrations = keys.includes('calibrations');\r\n\r\n\t\t\t\t\tlet isUsgsSite = false;\r\n\t\t\t\t\tif (hasCalibrations) {\r\n\t\t\t\t\t\tfor (let cal of feature.properties.calibrations) {\r\n\t\t\t\t\t\t\tif (cal.isUsgsSite) {\r\n\t\t\t\t\t\t\t\tpopText += `<div>USGS Site: ${cal.number}</div>`;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tpopText += `<div>${cal.name}</div><div class=\"mt-2\"><table class=\"table table-sm\">`;\r\n\r\n\t\t\t\t\t\t\t/*let calKeys = Object.keys(cal.data);\r\n\t\t\t\t\t\t\tfor (let k of calKeys) {\r\n\t\t\t\t\t\t\t\tlet name = k == 'CalibrationYears' ? 'Calibration years' : k.toUpperCase();\r\n\t\t\t\t\t\t\t\tpopText += `<div>${name}: ${cal.data[k]}</div>`;\r\n\t\t\t\t\t\t\t}*/\r\n\t\t\t\t\t\t\t//Change to array\r\n\t\t\t\t\t\t\tlet i = 0;\r\n\t\t\t\t\t\t\tfor (let d of cal.data) {\r\n\t\t\t\t\t\t\t\tlet calKeys = Object.keys(d);\r\n\t\t\t\t\t\t\t\tif (i === 0) {\r\n\t\t\t\t\t\t\t\t\tpopText += `<tr>`;\r\n\t\t\t\t\t\t\t\t\tfor (let k of calKeys) {\r\n\t\t\t\t\t\t\t\t\t\tlet name = k == 'CalibrationYears' ? 'Calibration years' : k;\r\n\t\t\t\t\t\t\t\t\t\tpopText += `<th>${name}</th>`;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\tpopText += `</tr>`;\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\tpopText += `<tr>`;\r\n\t\t\t\t\t\t\t\tfor (let k of calKeys) {\r\n\t\t\t\t\t\t\t\t\tpopText += `<td>${d[k]}</td>`;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tpopText += `</tr>`;\r\n\t\t\t\t\t\t\t\ti++;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tpopText += `</table></div>`;\r\n\t\t\t\t\t\t\tif (cal.isUsgsSite) {\r\n\t\t\t\t\t\t\t\tpopText += `<div class=\"mt-2 font-italic\">Click the dot for streamflow data</div>`;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tisUsgsSite = isUsgsSite || cal.isUsgsSite;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tlayer.on({\r\n\t\t\t\t\t\t\tclick: this.usgsSiteClick\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tfor (let k of keys) {\r\n\t\t\t\t\t\t\tpopText += `<div>${k}: ${feature.properties[k]}</div>`;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\t\t\t\t\t\r\n\r\n\t\t\t\t\tlayer.bindTooltip(\r\n\t\t\t\t\t\tpopText,\r\n\t\t\t\t\t\t{ permanent: false, sticky: true, interactive: isUsgsSite });\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapSubbasinsOptions() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tonEachFeature: this.mapSubbasinsOnEachFeature\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapSubbasinsStyle() {\r\n\t\t\t\t__globalStartingSubs = this.startingSubs;\r\n\t\t\t\t__globalColors = this.mapColors;\r\n\t\t\t\treturn (feature) => {\r\n\t\t\t\t\tvar fillColor = feature.properties.isDownstream ? __globalColors.downstream : (feature.properties.isNearbyOnly ? __globalColors.nearby : __globalColors.subbasin);\r\n\t\t\t\t\tvar index = __globalStartingSubs.findIndex(x => x.id == feature.properties.id);\r\n\t\t\t\t\tif (index > -1)\r\n\t\t\t\t\t\tfillColor = __globalColors.selected;\r\n\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tfillColor: fillColor,\r\n\t\t\t\t\t\tweight: 1,\r\n\t\t\t\t\t\topacity: 0.8,\r\n\t\t\t\t\t\tcolor: 'black',\r\n\t\t\t\t\t\tdashArray: '0',\r\n\t\t\t\t\t\tfillOpacity: feature.properties.isDownstream ? 0.9 : 0.5\r\n\t\t\t\t\t};\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapSubbasinsOnEachFeature() {\r\n\t\t\t\treturn (feature, layer) => {\r\n\t\t\t\t\tlet streamName = feature.properties.name === feature.properties.streams ? '' : feature.properties.streams;\r\n\t\t\t\t\tlet landArea = feature.properties.landArea;\r\n\t\t\t\t\tlet landAreaStr = this.isNullOrEmpty(landArea) || landArea === 0 ? '' : `<br />${this.numberWithCommas(landArea.toFixed(2))} km<sup>2</sup> land-only area`;\r\n\t\t\t\t\tlet cArea = feature.properties.cumulativeArea;\r\n\t\t\t\t\tlet cAreaStr = this.isNullOrEmpty(cArea) || cArea === 0 ? '' : `<br />${this.numberWithCommas(cArea.toFixed(2))} km<sup>2</sup> cumulative area`;\r\n\t\t\t\t\tlayer.bindTooltip(\r\n\t\t\t\t\t\t'<div>' + feature.properties.name + '</div>' +\r\n\t\t\t\t\t\t'<div>' + streamName + '</div>' +\r\n\t\t\t\t\t\t'<div class=\"mt-2\">' + this.numberWithCommas(feature.properties.area.toFixed(2)) + 'km<sup>2</sup> area' + landAreaStr + cAreaStr + '<br />' +\r\n\t\t\t\t\t\tthis.numberWithCommas(feature.properties.elevation.toFixed(2)) + 'm elevation</div>',\r\n\t\t\t\t\t\t{ permanent: false, sticky: true });\r\n\r\n\t\t\t\t\tlayer.on({\r\n\t\t\t\t\t\tclick: this.mapSubbasinsClick\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\trouteCoordinates() {\r\n\t\t\t\tvar plArray = [];\r\n\t\t\t\tfor (var i = 0; i < this.projectMap.connections.length; i++) {\r\n\t\t\t\t\tif (this.projectMap.connections[i].lineCoordinates[1].length > 0)\r\n\t\t\t\t\t\tplArray.push(this.projectMap.connections[i].lineCoordinates);\r\n\t\t\t\t}\r\n\t\t\t\treturn plArray;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectMap.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectMap.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectMap.vue?vue&type=template&id=718e7b3c&\"\nimport script from \"./ProjectMap.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectMap.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<b-alert :show=\"siteSettings.enableAlertNotification\" variant=\"warning\" class=\"mb-0\">\r\n\t\t\t\t{{ siteSettings.alertNotification }}\r\n\t\t\t</b-alert>\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<div v-if=\"$route.path == '/projects'\" class=\"container py-5\">\r\n\t\t\t\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t\t\t\t<div v-if=\"!page.loading\">\r\n\t\t\t\t\t\t<login-form v-if=\"page.showLogin\" show-header no-redirect @success=\"loginSuccess\"></login-form>\r\n\t\t\t\t\t\t<div v-else-if=\"!isAuthorized(roleNames.registered)\">\r\n\t\t\t\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\t\t\t\tYour account is pending approval. You will receive a notification by email when it is approved.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t<b-alert variant=\"info\" :show=\"isImporting\">\r\n\t\t\t\t\t\t\t\tWe're importing your projects from version 1. You will receive a notification and email when the process is complete. <a href=\"#\" @click.prevent=\"refresh\">Refresh projects list now.</a>\r\n\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t<b-tabs content-class=\"mt-4\" class=\"page-nav-tabs\">\r\n\t\t\t\t\t\t\t\t<template v-slot:tabs-end>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item to=\"create\" append><font-awesome-icon :icon=\"['fas', 'plus-square']\" fixed-width class=\"text-info\" /> New Project</b-nav-item>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t<b-tab v-if=\"recent.length > 0\" title=\"Recent Activity\">\r\n\t\t\t\t\t\t\t\t\t<b-card-group deck>\r\n\t\t\t\t\t\t\t\t\t\t<b-card no-body class=\"border\" v-for=\"(r, i) in recent\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t<project-map :project-map=\"r.map\" height=\"250px\" :ref-name=\"`leafmap${i}`\" :is-regional=\"r.isRegional\"></project-map>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-card-body>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-card-title class=\"text-center\">{{r.name}}</b-card-title>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-card-text>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"text-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{r.numSubbasins | number(0)}} subbasins /\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{r.numHrus | number(0)}} HRUs /\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{r.totalArea | number(2)}} km<sup>2</sup>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</b-card-text>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-list-group flush class=\"border-bottom\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item v-if=\"r.scenarios.length > 0\" class=\"bg-light py-0 text-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<small class=\"text-uppercase text-muted\">Recent scenarios</small>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item v-for=\"(s, j) in r.scenarios\" :key=\"j\" class=\"d-flex justify-content-between align-items-center py-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<router-link :to=\"`${r.id}/scenarios/${s.id}`\" append>{{s.name}}</router-link>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div v-if=\"s.hasRun\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<small class=\"text-muted\">Last ran {{s.lastRunDate | dateFromNow}}</small>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon v-else-if=\"s.isRunning\" :icon=\"['fas', 'spinner']\" spin class=\"icon ml-2\" title=\"Running\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<small class=\"text-muted\">Modified {{s.lastModifiedDate | dateFromNow}}</small>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-card-body>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t<router-link :to=\"`projects/${r.id}`\" class=\"btn btn-primary btn-card-flush py-3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<small class=\"text-uppercase\">Go to project</small>\r\n\t\t\t\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t\t\t\t</b-card>\r\n\t\t\t\t\t\t\t\t\t</b-card-group>\r\n\t\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t\t<b-tab title=\"Projects\">\r\n\t\t\t\t\t\t\t\t\t<grid-view api-url=\"projects\" delete-api-url=\"projects\" show-refresh ref=\"projectsGrid\" use-filter\r\n\t\t\t\t\t\t\t\t\t\t\t   :fields=\"projects.table.fields\" link-name\r\n\t\t\t\t\t\t\t\t\t\t\t   :default-sort=\"projects.table.sort\" :default-reverse=\"projects.table.reverse\" :default-per-page=\"projects.table.itemsPerPage\"\r\n\t\t\t\t\t\t\t\t\t\t\t   collection-description=\"projects\"\r\n\t\t\t\t\t\t\t\t\t\t\t   item-name=\"project\"\r\n\t\t\t\t\t\t\t\t\t\t\t   create-route=\"create\" show-create show-help\r\n\t\t\t\t\t\t\t\t\t\t\t   extra-delete-message=\"All files and scenarios related to this project will be removed.\"></grid-view>\r\n\r\n\t\t\t\t\t\t\t\t\t<div v-if=\"hasAccessToUploads\">\r\n\t\t\t\t\t\t\t\t\t\t<hr class=\"my-4\" />\r\n\t\t\t\t\t\t\t\t\t\t<h4 class=\"mb-3\">Looking to upload projects edited offline?</h4>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tIf you checked the box to write SWAT Editor tables on any of your scenario runs\r\n\t\t\t\t\t\t\t\t\t\t\tand modified the project offline, you may upload those changes back into the\r\n\t\t\t\t\t\t\t\t\t\t\tsystem as a new project dataset.\r\n\t\t\t\t\t\t\t\t\t\t\tAfter uploading your project, you may create new projects in the system based off\r\n\t\t\t\t\t\t\t\t\t\t\tit, as well as share the project dataset with your groups or request it be made public\r\n\t\t\t\t\t\t\t\t\t\t\tto all users.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\t<router-link to=\"/datasets\" class=\"btn btn-success\">Go to project uploads</router-link>\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t\t<b-tab title=\"Group Projects\">\r\n\t\t\t\t\t\t\t\t\t<div v-if=\"groupInvites > 0\" class=\"mb-4\">\r\n\t\t\t\t\t\t\t\t\t\t<router-link to=\"/groups/invites\" class=\"btn btn-primary\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-badge variant=\"light\">{{groupInvites}}</b-badge>\r\n\t\t\t\t\t\t\t\t\t\t\tPending group invitations\r\n\t\t\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t<grid-view api-url=\"groups/projects\"\r\n\t\t\t\t\t\t\t\t\t\t\t   :fields=\"groups.table.fields\"\r\n\t\t\t\t\t\t\t\t\t\t\t   :default-sort=\"groups.table.sort\" :default-reverse=\"groups.table.reverse\" :default-per-page=\"groups.table.itemsPerPage\"\r\n\t\t\t\t\t\t\t\t\t\t\t   collection-description=\"groups\"\r\n\t\t\t\t\t\t\t\t\t\t\t   item-name=\"group\"\r\n\t\t\t\t\t\t\t\t\t\t\t   has-items-intro=\"Projects shared by other members in your groups are listed below. You may view, edit, and run* these projects. (*Note: tier limits still apply.)\"\r\n\t\t\t\t\t\t\t\t\t\t\t   :custom-empty-message=\"hasGroups ? 'No members of your groups have shared any projects yet.' : 'You are not a member of any groups.'\"></grid-view>\r\n\r\n\t\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t\t<router-link to=\"/groups\" class=\"btn btn-success\">Go to your groups / create a new group</router-link>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t</b-tabs>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<router-view></router-view>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport ProjectMap from '@/components/ProjectMap';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'ProjectList',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader, GridView, ProjectMap\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tprojects: {\r\n\t\t\t\t\ttable: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t\t{ key: 'dataset', sortable: false },\r\n\t\t\t\t\t\t\t{ key: 'endingSubbasin', label: 'Downstream ID', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'numSubbasins', label: 'Subbasins', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t\t{ key: 'numHrus', label: 'HRUs', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t\t{ key: 'totalArea', label: 'Area (sq. km.)', sortable: false, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t\t{ key: 'numScenarios', label: 'Scenarios', sortable: false },\r\n\t\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\t\treverse: true,\r\n\t\t\t\t\t\titemsPerPage: 10\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tgroups: {\r\n\t\t\t\t\ttable: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'group', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'project', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'userName', label: 'Belongs to', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t\t{ key: 'dataset', sortable: false },\r\n\t\t\t\t\t\t\t{ key: 'endingSubbasin', label: 'Downstream ID', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'numSubbasins', label: 'Subbasins', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t\t{ key: 'numHrus', label: 'HRUs', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t\t{ key: 'totalArea', label: 'Area (sq. km.)', sortable: false, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t\t{ key: 'numScenarios', label: 'Scenarios', sortable: false }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\t\treverse: true,\r\n\t\t\t\t\t\titemsPerPage: 10\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\trecent: [],\r\n\t\t\t\thasGroups: false,\r\n\t\t\t\thasAccessToUploads: false,\n\t\t\t\tgroupInvites: 0,\n\t\t\t\tisImporting: false\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tloginSuccess(wasSuccessful) {\r\n\t\t\t\tthis.page.showLogin = !wasSuccessful;\r\n\t\t\t},\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.showLogin = !this.isAuthenticated;\r\n\r\n\t\t\t\tif (this.$route.path === '/projects') {\r\n\t\t\t\t\tthis.page.errors = [];\r\n\t\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get(`projects/recent-activity`, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.recent = response.data.projects;\r\n\t\t\t\t\t\tthis.hasGroups = response.data.hasGroups;\r\n\t\t\t\t\t\tthis.hasAccessToUploads = response.data.hasAccessToUploads;\n\t\t\t\t\t\tthis.groupInvites = response.data.groupInvites;\n\t\t\t\t\t\tthis.isImporting = response.data.isImporting;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.page.loading = false;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfromNow(d) {\r\n\t\t\t\treturn moment(d).fromNow();\r\n\t\t\t},\n\t\t\tasync refresh() {\n\t\t\t\tawait this.get();\n\t\t\t\tawait this.$refs.projectsGrid.get();\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectList.vue?vue&type=template&id=5e320f67&\"\nimport script from \"./ProjectList.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"show-errors-with-object\":\"\",\"no-bottom-marg\":\"\"}},[_c('b-container',{staticClass:\"p-0\",attrs:{\"fluid\":\"\"}},[_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{staticClass:\"fixed-height shadow d-flex align-items-stretch flex-column\",staticStyle:{\"z-index\":\"500\"},attrs:{\"md\":\"3\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('error-list',{attrs:{\"errors\":_vm.calibrationGroup.errors}}),_c('div',{staticClass:\"px-3 py-4 bg-light border-bottom\"},[_vm._v(\" Select a dataset from the dropdown below, then click on the map to select your watershed. The map will display all subbasins upstream of your click location, as well as nearby subbasins. \")]),_c('div',{staticClass:\"p-3\"},[(_vm.calibrationLayers.groups.length > 0)?_c('b-form-group',{attrs:{\"label\":\"Show the following calibrated watersheds on map\"}},[_c('b-form-select',{attrs:{\"options\":_vm.calibrationLayers.groups},on:{\"change\":_vm.getCalibrationGroup},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null}},[_vm._v(\"None\")])]},proxy:true}],null,false,2806070356),model:{value:(_vm.calibrationGroup.selected),callback:function ($$v) {_vm.$set(_vm.calibrationGroup, \"selected\", $$v)},expression:\"calibrationGroup.selected\"}})],1):_vm._e(),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.calibrationGroup.selected !== null),expression:\"calibrationGroup.selected !== null\"}]},[_c('b-alert',{staticClass:\"border mt-2 d-flex\",attrs:{\"variant\":\"light\",\"show\":\"\"}},[_c('div',[_c('font-awesome-icon',{staticClass:\"text-info mr-2\",attrs:{\"icon\":['fas', 'info-circle']}})],1),_c('div',[_vm._v(\" Click a calibration site for more information or to select it as a new project. \"),(_vm.project.endID === undefined)?_c('span',[_vm._v(\"Turn the layer back off to return to selecting any downstream subbasin.\")]):_c('span',[_vm._v(\"Your previously selected watershed is still on the map. Turn the layer back off to return to it.\")])])])],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.calibrationGroup.selected === null),expression:\"calibrationGroup.selected === null\"}]},[_c('b-form-group',{attrs:{\"label\":`${_vm.siteText.siteName} Dataset`}},[_c('b-form-select',{on:{\"change\":_vm.datasetChange},model:{value:(_vm.project.datasetID),callback:function ($$v) {_vm.$set(_vm.project, \"datasetID\", $$v)},expression:\"project.datasetID\"}},[_vm._l((_vm.options.datasets),function(o,i){return _c('b-form-select-option-group',{key:i,attrs:{\"label\":_vm.isNullOrEmpty(o.label) ? 'System datasets' : o.label,\"options\":o.options}})}),(_vm.options.userDatasets.length > 0)?_c('b-form-select-option-group',{attrs:{\"label\":\"User-submitted datasets\",\"options\":_vm.options.userDatasets}}):_vm._e()],2),(!_vm.isNullOrEmpty(_vm.selectedDataset) && (!_vm.isNullOrEmpty(_vm.selectedDataset.description) || !_vm.isNullOrEmpty(_vm.selectedDataset.attribution)))?_c('div',[_c('b-alert',{staticClass:\"border mt-2 d-flex\",attrs:{\"variant\":\"light\",\"show\":\"\"}},[_c('div',[_c('font-awesome-icon',{staticClass:\"text-info mr-2\",attrs:{\"icon\":['fas', 'info-circle']}})],1),_c('div',[_vm._v(\" \"+_vm._s(_vm.selectedDataset.description)+\" \"),(!_vm.isNullOrEmpty(_vm.selectedDataset.attribution))?_c('div',[_c('i',[_vm._v(\"Credit: \"+_vm._s(_vm.selectedDataset.attribution))])]):_vm._e()])])],1):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Downstream subbasin\"}},[_c('b-typeahead',{ref:\"subbasinsTypeahead\",attrs:{\"data\":_vm.options.subbasins == null ? [] : _vm.options.subbasins,\"serializer\":s => s.name,\"max-matches\":100},on:{\"hit\":function($event){return _vm.loadMapFromSub($event.name)}},model:{value:(_vm.subbasinsSearch),callback:function ($$v) {_vm.subbasinsSearch=$$v},expression:\"subbasinsSearch\"}},[_c('template',{slot:\"append\"},[_c('b-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",value:('Show watershed ending with this subbasin on map'),expression:\"'Show watershed ending with this subbasin on map'\",modifiers:{\"hover\":true}}],attrs:{\"variant\":\"secondary\"},on:{\"click\":function($event){return _vm.loadMapFromSub(_vm.subbasinsSearch)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'map-marked-alt']}})],1)],1)],2)],1),((_vm.hasWatershed() && _vm.map.route.length > 2) || _vm.startingSubs.length > 0 || _vm.options.selectStart)?_c('div',[_c('b-button',{staticClass:\"pr-3\",attrs:{\"variant\":\"light\",\"size\":\"sm\"},on:{\"click\":function($event){_vm.options.showAdvanced = !_vm.options.showAdvanced}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', _vm.options.showAdvanced ? 'caret-down' : 'caret-right'],\"fixed-width\":\"\"}}),_vm._v(\" Advanced options \")],1),_c('b-collapse',{attrs:{\"id\":\"adv-collapse\"},model:{value:(_vm.options.showAdvanced),callback:function ($$v) {_vm.$set(_vm.options, \"showAdvanced\", $$v)},expression:\"options.showAdvanced\"}},[_c('p',{staticClass:\"mt-3\"},[_vm._v(\" By default your watershed is routed from the head to the downstream subbasin. If you want to start your project somewhere other than the head, toggle the button below and click the desired starting subbasins on the map. We recommend providing inlet data to your scenarios when utilizing this option. \")]),_c('div',{staticClass:\"mb-1\"},_vm._l((_vm.startingSubs),function(s,i){return _c('b-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",value:(_vm.options.selectStart ? 'Click to remove from list' : 'Toggle the select starting subbasins button to modify'),expression:\"options.selectStart ? 'Click to remove from list' : 'Toggle the select starting subbasins button to modify'\",modifiers:{\"hover\":true}}],key:i,staticClass:\"mr-2 mb-2\",attrs:{\"variant\":\"light\",\"size\":\"sm\"},on:{\"click\":function($event){return _vm.removeStartingSub(s.id)}}},[_vm._v(\" \"+_vm._s(s.name)+\" \"),(_vm.options.selectStart)?_c('font-awesome-icon',{staticClass:\"text-danger\",attrs:{\"icon\":['fas', 'times']}}):_vm._e()],1)}),1),_c('p',[_c('b-button',{attrs:{\"pressed\":_vm.options.selectStart,\"variant\":\"primary\"},on:{\"update:pressed\":function($event){return _vm.$set(_vm.options, \"selectStart\", $event)},\"click\":_vm.loadMapFromIds}},[_vm._v(_vm._s(_vm.options.selectStart ? 'Done' : 'Begin')+\" selecting starting subbasins\")])],1)])],1):_vm._e()],1)],1),(_vm.hasWatershed() && !_vm.options.selectStart && _vm.calibrationGroup.selected === null)?_c('div',{staticClass:\"mt-4 p-3 border-top\"},[_c('p',[_vm._v(\" The selected watershed contains \"+_vm._s(_vm._f(\"number\")(_vm.map.numSubs,0))+\" subbasins and \"+_vm._s(_vm._f(\"number\")(_vm.map.numHrus,0))+\" HRUs. \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.modals.route.show=true}}},[_vm._v(\"View routing table.\")])]),(_vm.isNumSubsValid)?_c('div',[(_vm.map.route.length > 1)?_c('b-form-checkbox',{model:{value:(_vm.map.showRoute),callback:function ($$v) {_vm.$set(_vm.map, \"showRoute\", $$v)},expression:\"map.showRoute\"}},[_vm._v(\"Show routing on map\")]):_vm._e(),_c('b-form-group',{staticClass:\"mt-4\",attrs:{\"label\":\"Give your project a name\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.project.name)},model:{value:(_vm.project.name),callback:function ($$v) {_vm.$set(_vm.project, \"name\", $$v)},expression:\"project.name\"}}),(!_vm.$v.project.name.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.project.name.maxLength)?_c('b-form-invalid-feedback',[_vm._v(\"Must be fewer than 100 characters\")]):_vm._e(),(!_vm.$v.project.name.hasAlphaNumeric)?_c('b-form-invalid-feedback',[_vm._v(\"Must contain at least one letter or number\")]):_vm._e()],1),_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":!_vm.isNumHrusValid}},[_vm._v(\" Warning: your account is limited to \"+_vm._s(_vm._f(\"number\")(_vm.limits.hruLimit,0))+\" HRUs per project. You will be required to set your HRUs under this limit before running scenarios. Go to the set HRUs page after the project is created. \")]),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"primary\"},on:{\"click\":_vm.createProject}},[_vm._v(\"Create Project\")])],1):_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" Warning: your account is limited to \"+_vm._s(_vm._f(\"number\")(_vm.limits.subbasinLimit,0))+\" subbasins and \"+_vm._s(_vm._f(\"number\")(_vm.limits.hruLimit,0))+\" HRUs per project. Please select a smaller watershed. \")])],1)]):_vm._e(),_c('div',{staticClass:\"d-none d-md-flex align-items-center border-top bg-white position-relative mt-auto\"},[_c('div',{staticClass:\"p-3\"},[_c('router-link',{staticClass:\"stretched-link text-reset\",attrs:{\"to\":\"/projects\",\"title\":\"Back to project list\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left'],\"fixed-width\":\"\"}})],1)],1),_c('div',{staticClass:\"p-3 border-left text-uppercase\"},[_vm._v(\" Back to project list \")])])],1),_c('b-col',{attrs:{\"md\":\"9\"}},[_c('div',{staticClass:\"map-container full-map\"},[_c('l-map',{ref:\"leafmap\",staticStyle:{\"height\":\"100%\",\"width\":\"100%\"},attrs:{\"zoom\":_vm.defaultMapZoom,\"center\":_vm.defaultMapBounds,\"bounds\":_vm.map.bounds},on:{\"click\":_vm.mapClick,\"mousemove\":_vm.mapMove}},[_c('l-control-layers',{attrs:{\"position\":\"topright\"}}),_vm._l((_vm.defaultMapTileProviders),function(tileProvider){return _c('l-tile-layer',{key:tileProvider.name,attrs:{\"name\":tileProvider.name,\"visible\":tileProvider.visible,\"url\":tileProvider.url,\"attribution\":tileProvider.attribution,\"layer-type\":\"base\"}})}),(_vm.map.subbasins.geojson !== undefined)?_c('l-geo-json',{ref:\"subGeojson\",attrs:{\"geojson\":_vm.map.subbasins.geojson,\"options\":_vm.mapSubbasinsOptions,\"options-style\":_vm.mapSubbasinsStyle}}):_vm._e(),(_vm.map.streams.geojson !== undefined)?_c('l-geo-json',{attrs:{\"geojson\":_vm.map.streams.geojson,\"options\":_vm.map.streams.options}}):_vm._e(),(!_vm.isNullOrEmpty(_vm.map.outline.geojson))?_c('l-geo-json',{attrs:{\"geojson\":_vm.map.outline.geojson,\"options\":_vm.map.outline.options}}):_vm._e(),_c('l-control',{attrs:{\"position\":\"bottomleft\"}},[(_vm.map.currentCoords !== undefined)?_c('div',[_vm._v(\"Cursor position: \"+_vm._s(_vm._f(\"number\")(_vm.map.currentCoords.lat,3))+\", \"+_vm._s(_vm._f(\"number\")(_vm.map.currentCoords.lng,3)))]):_vm._e()]),(_vm.map.showRoute && _vm.map.route.length > 1)?_c('div',[_vm._l((_vm.polylines),function(c,i){return _c('l-polyline',{key:i,attrs:{\"lat-lngs\":c.lineCoordinates,\"color\":\"green\"}})}),_c('v-polyline-decorator',{attrs:{\"paths\":_vm.routeCoordinates,\"patterns\":_vm.map.patterns}})],2):_vm._e(),(_vm.calibrationGroup.selected !== null && _vm.hasCalibrations)?_c('l-geo-json',{ref:\"calibratedWatershedsGeojson\",attrs:{\"geojson\":_vm.calibrationGroup.geojson,\"options\":_vm.mapCalibratedWatershedsOptions,\"options-style\":_vm.mapCalibratedWatershedsStyle}}):_vm._e(),(_vm.hasCalibrationLocations)?_c('l-layer-group',{ref:\"calLocationLayer\",attrs:{\"visible\":_vm.hasCalibrationLocations && _vm.map.showCalibrationLocations,\"layer-type\":\"overlay\",\"name\":_vm.calibrationLayers.locationPoints.name}},[_c('l-geo-json',{attrs:{\"geojson\":_vm.calibrationLayers.locationPoints.geojson,\"options\":_vm.mapCalibrationLocationOptions}})],1):_vm._e(),(!_vm.isNullOrEmpty(_vm.map.regions.geojson))?_c('l-layer-group',{ref:\"regionsLayer\",attrs:{\"visible\":false,\"layer-type\":\"overlay\",\"name\":\"HUC2 Region Boundaries\"}},[_c('l-geo-json',{attrs:{\"geojson\":_vm.map.regions.geojson,\"options\":_vm.mapRegionOptions}})],1):_vm._e(),_c('l-control',{attrs:{\"position\":\"bottomright\"}},[_c('b-button',{staticStyle:{\"font-size\":\"0.8rem\"},attrs:{\"variant\":\"dark\",\"size\":\"sm\"},on:{\"click\":_vm.toggleColors}},[_vm._v(\"Toggle Contrast\")])],1)],2),(_vm.map.loading)?_c('div',{staticClass:\"map-loading-overlay\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\",\"size\":\"3x\"}})],1):_vm._e()],1)])],1)],1),_c('b-modal',{attrs:{\"scrollable\":\"\",\"size\":\"md\",\"title\":\"Watershed Route\"},model:{value:(_vm.modals.route.show),callback:function ($$v) {_vm.$set(_vm.modals.route, \"show\", $$v)},expression:\"modals.route.show\"}},[_c('b-table',{attrs:{\"striped\":\"\",\"hover\":\"\",\"small\":\"\",\"no-sort-reset\":\"\",\"items\":_vm.map.route,\"fields\":['fromName', 'toName']}}),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":function($event){_vm.modals.route.show = false}}},[_vm._v(\"Close\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"hide-footer\":\"\",\"title\":\"Please log in to continue\"},model:{value:(_vm.page.showLogin),callback:function ($$v) {_vm.$set(_vm.page, \"showLogin\", $$v)},expression:\"page.showLogin\"}},[_c('login-form',{attrs:{\"no-redirect\":\"\"},on:{\"success\":_vm.loginSuccess}})],1),_c('b-modal',{attrs:{\"scrollable\":\"\",\"size\":\"xl\",\"title\":_vm.modals.calibration.watershed.name,\"hide-footer\":\"\"},model:{value:(_vm.modals.calibration.show),callback:function ($$v) {_vm.$set(_vm.modals.calibration, \"show\", $$v)},expression:\"modals.calibration.show\"}},[(_vm.modals.calibration.loading)?_c('div',{staticClass:\"text-center p-5\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\",\"size\":\"2x\"}}),_c('div',[_vm._v(\"Please wait while we load the watershed...\")])],1):_c('div',[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.getLocationSitesTable(_vm.modals.calibration.watershed.locationSites))}}),_c('p',[_c('small',{staticClass:\"text-muted\"},[_vm._v(\"See the \"),_c('router-link',{attrs:{\"to\":\"/help\",\"target\":\"_blank\"}},[_vm._v(\"help page\")]),_vm._v(\" for more information about the calibrated parameters for this watershed.\")],1)]),_c('hr',{staticClass:\"my-4\"}),_c('div',{staticClass:\"form-inline my-4\"},[_c('b-form-select',{staticClass:\"d-inline mr-2\",attrs:{\"options\":_vm.modals.calibration.watershed.datasets},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null}},[_vm._v(\"Select a dataset to set up a project\")])]},proxy:true}]),model:{value:(_vm.modals.calibration.selectedDataset),callback:function ($$v) {_vm.$set(_vm.modals.calibration, \"selectedDataset\", $$v)},expression:\"modals.calibration.selectedDataset\"}}),_c('b-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"variant\":\"primary\",\"disabled\":_vm.modals.calibration.selectedDataset === null},on:{\"click\":_vm.setProjectToCalibration}},[_vm._v(\"Set Up Project\")]),_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.modals.calibration.show = false}}},[_vm._v(\"Cancel\")])],1)])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" show-errors-with-object no-bottom-marg>\r\n\t\t\t<b-container fluid class=\"p-0\">\r\n\t\t\t\t<b-row no-gutters>\r\n\t\t\t\t\t<b-col md=\"3\" class=\"fixed-height shadow d-flex align-items-stretch flex-column\" style=\"z-index:500\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t\t\t<error-list :errors=\"calibrationGroup.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<div class=\"px-3 py-4 bg-light border-bottom\">\r\n\t\t\t\t\t\t\tSelect a dataset from the dropdown below, then click on the map to select your watershed.\r\n\t\t\t\t\t\t\tThe map will display all subbasins upstream of your click location, as well as nearby subbasins.\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div class=\"p-3\">\r\n\t\t\t\t\t\t\t<b-form-group label=\"Show the following calibrated watersheds on map\" v-if=\"calibrationLayers.groups.length > 0\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"calibrationGroup.selected\" :options=\"calibrationLayers.groups\" @change=\"getCalibrationGroup\">\r\n\t\t\t\t\t\t\t\t\t<template #first>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\">None</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<div v-show=\"calibrationGroup.selected !== null\">\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"light\" show class=\"border mt-2 d-flex\">\r\n\t\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'info-circle']\" class=\"text-info mr-2\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t\tClick a calibration site for more information or to select it as a new project.\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"project.endID === undefined\">Turn the layer back off to return to selecting any downstream subbasin.</span>\r\n\t\t\t\t\t\t\t\t\t\t<span v-else>Your previously selected watershed is still on the map. Turn the layer back off to return to it.</span>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-show=\"calibrationGroup.selected === null\">\r\n\t\t\t\t\t\t\t\t<b-form-group :label=\"`${siteText.siteName} Dataset`\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"project.datasetID\" @change=\"datasetChange\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option-group v-for=\"(o, i) in options.datasets\" :key=\"i\" :label=\"isNullOrEmpty(o.label) ? 'System datasets' : o.label\" :options=\"o.options\"></b-form-select-option-group>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option-group v-if=\"options.userDatasets.length > 0\" label=\"User-submitted datasets\" :options=\"options.userDatasets\"></b-form-select-option-group>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t\t<div v-if=\"!isNullOrEmpty(selectedDataset) && (!isNullOrEmpty(selectedDataset.description) || !isNullOrEmpty(selectedDataset.attribution))\">\r\n\t\t\t\t\t\t\t\t\t\t<b-alert variant=\"light\" show class=\"border mt-2 d-flex\">\r\n\t\t\t\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'info-circle']\" class=\"text-info mr-2\" />\r\n\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{selectedDataset.description}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div v-if=\"!isNullOrEmpty(selectedDataset.attribution)\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<i>Credit: {{selectedDataset.attribution}}</i>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Downstream subbasin\">\r\n\t\t\t\t\t\t\t\t\t<b-typeahead ref=\"subbasinsTypeahead\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t :data=\"options.subbasins == null ? [] : options.subbasins\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t v-model=\"subbasinsSearch\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t :serializer=\"s => s.name\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t :max-matches=\"100\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t @hit=\"loadMapFromSub($event.name)\">\r\n\t\t\t\t\t\t\t\t\t\t<template slot=\"append\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-button @click=\"loadMapFromSub(subbasinsSearch)\" variant=\"secondary\" v-b-tooltip.hover=\"'Show watershed ending with this subbasin on map'\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'map-marked-alt']\" />\r\n\t\t\t\t\t\t\t\t\t\t\t</b-button>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-typeahead>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t<div v-if=\"(hasWatershed() && map.route.length > 2) || startingSubs.length > 0 || options.selectStart\">\r\n\t\t\t\t\t\t\t\t\t<b-button @click=\"options.showAdvanced = !options.showAdvanced\" variant=\"light\" size=\"sm\" class=\"pr-3\">\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', options.showAdvanced ? 'caret-down' : 'caret-right']\" fixed-width />\r\n\t\t\t\t\t\t\t\t\t\tAdvanced options\r\n\t\t\t\t\t\t\t\t\t</b-button>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-collapse id=\"adv-collapse\" v-model=\"options.showAdvanced\">\r\n\t\t\t\t\t\t\t\t\t\t<p class=\"mt-3\">\r\n\t\t\t\t\t\t\t\t\t\t\tBy default your watershed is routed from the head to the downstream subbasin.\r\n\t\t\t\t\t\t\t\t\t\t\tIf you want to start your project somewhere other than the head, toggle the button below\r\n\t\t\t\t\t\t\t\t\t\t\tand click the desired starting subbasins on the map. We recommend providing inlet data to your scenarios when utilizing this option.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"mb-1\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-button v-for=\"(s, i) in startingSubs\" :key=\"i\" variant=\"light\" size=\"sm\" class=\"mr-2 mb-2\" v-b-tooltip.hover=\"options.selectStart ? 'Click to remove from list' : 'Toggle the select starting subbasins button to modify'\" @click=\"removeStartingSub(s.id)\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{s.name}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon v-if=\"options.selectStart\" :icon=\"['fas', 'times']\" class=\"text-danger\" />\r\n\t\t\t\t\t\t\t\t\t\t\t</b-button>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-button :pressed.sync=\"options.selectStart\" variant=\"primary\" @click=\"loadMapFromIds\">{{options.selectStart ? 'Done' : 'Begin'}} selecting starting subbasins</b-button>\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</b-collapse>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-if=\"hasWatershed() && !options.selectStart && calibrationGroup.selected === null\" class=\"mt-4 p-3 border-top\">\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tThe selected watershed contains {{map.numSubs | number(0)}} subbasins and {{map.numHrus | number(0)}} HRUs.\r\n\t\t\t\t\t\t\t\t<a href=\"#\" @click.prevent=\"modals.route.show=true\">View routing table.</a>\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"isNumSubsValid\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-if=\"map.route.length > 1\" v-model=\"map.showRoute\">Show routing on map</b-form-checkbox>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Give your project a name\" class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"project.name\" type=\"text\" :state=\"getValidState($v.project.name)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.project.name.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.project.name.maxLength\">Must be fewer than 100 characters</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.project.name.hasAlphaNumeric\">Must contain at least one letter or number</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"warning\" :show=\"!isNumHrusValid\">\r\n\t\t\t\t\t\t\t\t\tWarning: your account is limited to {{limits.hruLimit | number(0)}} HRUs per project.\r\n\t\t\t\t\t\t\t\t\tYou will be required to set your HRUs under this limit before running scenarios.\r\n\t\t\t\t\t\t\t\t\tGo to the set HRUs page after the project is created.\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t\t<b-button type=\"submit\" variant=\"primary\" @click=\"createProject\">Create Project</b-button>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\t\t\t\t\tWarning: your account is limited to {{limits.subbasinLimit | number(0)}} subbasins\r\n\t\t\t\t\t\t\t\t\tand {{limits.hruLimit | number(0)}} HRUs per project.\r\n\t\t\t\t\t\t\t\t\tPlease select a smaller watershed.\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<div class=\"d-none d-md-flex align-items-center border-top bg-white position-relative mt-auto\">\r\n\t\t\t\t\t\t\t<div class=\"p-3\">\r\n\t\t\t\t\t\t\t\t<router-link to=\"/projects\" class=\"stretched-link text-reset\" title=\"Back to project list\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'chevron-left']\" fixed-width />\r\n\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"p-3 border-left text-uppercase\">\r\n\t\t\t\t\t\t\t\tBack to project list\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md=\"9\">\r\n\t\t\t\t\t\t<div class=\"map-container full-map\">\r\n\t\t\t\t\t\t\t<l-map ref=\"leafmap\" style=\"height: 100%; width:100%\" :zoom=\"defaultMapZoom\" :center=\"defaultMapBounds\" :bounds=\"map.bounds\" @click=\"mapClick\" @mousemove=\"mapMove\">\r\n\t\t\t\t\t\t\t\t<l-control-layers position=\"topright\"></l-control-layers>\r\n\t\t\t\t\t\t\t\t<l-tile-layer v-for=\"tileProvider in defaultMapTileProviders\"\r\n\t\t\t\t\t\t\t\t\t\t\t  :key=\"tileProvider.name\"\r\n\t\t\t\t\t\t\t\t\t\t\t  :name=\"tileProvider.name\"\r\n\t\t\t\t\t\t\t\t\t\t\t  :visible=\"tileProvider.visible\"\r\n\t\t\t\t\t\t\t\t\t\t\t  :url=\"tileProvider.url\"\r\n\t\t\t\t\t\t\t\t\t\t\t  :attribution=\"tileProvider.attribution\"\r\n\t\t\t\t\t\t\t\t\t\t\t  layer-type=\"base\" />\r\n\r\n\t\t\t\t\t\t\t\t<l-geo-json ref=\"subGeojson\" v-if=\"map.subbasins.geojson !== undefined\" :geojson=\"map.subbasins.geojson\" :options=\"mapSubbasinsOptions\" :options-style=\"mapSubbasinsStyle\"></l-geo-json>\r\n\t\t\t\t\t\t\t\t<l-geo-json v-if=\"map.streams.geojson !== undefined\" :geojson=\"map.streams.geojson\" :options=\"map.streams.options\"></l-geo-json>\r\n\t\t\t\t\t\t\t\t<l-geo-json v-if=\"!isNullOrEmpty(map.outline.geojson)\" :geojson=\"map.outline.geojson\" :options=\"map.outline.options\"></l-geo-json>\r\n\t\t\t\t\t\t\t\t<l-control position=\"bottomleft\">\r\n\t\t\t\t\t\t\t\t\t<div v-if=\"map.currentCoords !== undefined\">Cursor position: {{map.currentCoords.lat | number(3)}}, {{map.currentCoords.lng | number(3)}}</div>\r\n\t\t\t\t\t\t\t\t</l-control>\r\n\t\t\t\t\t\t\t\t<div v-if=\"map.showRoute && map.route.length > 1\">\r\n\t\t\t\t\t\t\t\t\t<l-polyline v-for=\"(c, i) in polylines\" :key=\"i\" :lat-lngs=\"c.lineCoordinates\" color=\"green\"></l-polyline>\r\n\t\t\t\t\t\t\t\t\t<v-polyline-decorator :paths=\"routeCoordinates\" :patterns=\"map.patterns\"></v-polyline-decorator>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<l-geo-json ref=\"calibratedWatershedsGeojson\"\r\n\t\t\t\t\t\t\t\t\t\t\tv-if=\"calibrationGroup.selected !== null && hasCalibrations\"\r\n\t\t\t\t\t\t\t\t\t\t\t:geojson=\"calibrationGroup.geojson\"\r\n\t\t\t\t\t\t\t\t\t\t\t:options=\"mapCalibratedWatershedsOptions\" :options-style=\"mapCalibratedWatershedsStyle\"></l-geo-json>\r\n\t\t\t\t\t\t\t\t<l-layer-group v-if=\"hasCalibrationLocations\" :visible=\"hasCalibrationLocations && map.showCalibrationLocations\" ref=\"calLocationLayer\" layer-type=\"overlay\" :name=\"calibrationLayers.locationPoints.name\">\r\n\t\t\t\t\t\t\t\t\t<l-geo-json :geojson=\"calibrationLayers.locationPoints.geojson\" :options=\"mapCalibrationLocationOptions\"></l-geo-json>\r\n\t\t\t\t\t\t\t\t</l-layer-group>\r\n\r\n\t\t\t\t\t\t\t\t<l-layer-group v-if=\"!isNullOrEmpty(map.regions.geojson)\" :visible=\"false\" ref=\"regionsLayer\" layer-type=\"overlay\" name=\"HUC2 Region Boundaries\">\r\n\t\t\t\t\t\t\t\t\t<l-geo-json :geojson=\"map.regions.geojson\" :options=\"mapRegionOptions\"></l-geo-json>\r\n\t\t\t\t\t\t\t\t</l-layer-group>\r\n\t\t\t\t\t\t\t\t<l-control position=\"bottomright\">\r\n\t\t\t\t\t\t\t\t\t<b-button variant=\"dark\" size=\"sm\" @click=\"toggleColors\" style=\"font-size:0.8rem\">Toggle Contrast</b-button>\r\n\t\t\t\t\t\t\t\t</l-control>\r\n\t\t\t\t\t\t\t</l-map>\r\n\t\t\t\t\t\t\t<div v-if=\"map.loading\" class=\"map-loading-overlay\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'spinner']\" spin size=\"3x\" />\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\t\t\t</b-container>\r\n\r\n\t\t\t<b-modal v-model=\"modals.route.show\" scrollable size=\"md\" title=\"Watershed Route\">\r\n\t\t\t\t<b-table striped hover small no-sort-reset :items=\"map.route\" :fields=\"['fromName', 'toName']\"></b-table>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"primary\" @click=\"modals.route.show = false\">Close</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\t\t\t<b-modal v-model=\"page.showLogin\" size=\"md\" hide-footer title=\"Please log in to continue\">\r\n\t\t\t\t<login-form no-redirect @success=\"loginSuccess\"></login-form>\r\n\t\t\t</b-modal>\r\n\r\n\t\t\t<b-modal v-model=\"modals.calibration.show\" scrollable size=\"xl\" :title=\"modals.calibration.watershed.name\" hide-footer>\r\n\t\t\t\t<div v-if=\"modals.calibration.loading\" class=\"text-center p-5\">\r\n\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'spinner']\" spin size=\"2x\" />\r\n\t\t\t\t\t<div>Please wait while we load the watershed...</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-else>\r\n\t\t\t\t\t<div v-html=\"getLocationSitesTable(modals.calibration.watershed.locationSites)\"></div>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\t<small class=\"text-muted\">See the <router-link to=\"/help\" target=\"_blank\">help page</router-link> for more information about the calibrated parameters for this watershed.</small>\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t<div class=\"form-inline my-4\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"modals.calibration.selectedDataset\" :options=\"modals.calibration.watershed.datasets\" class=\"d-inline mr-2\">\r\n\t\t\t\t\t\t\t<template #first>\r\n\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\">Select a dataset to set up a project</b-form-select-option>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"primary\" @click=\"setProjectToCalibration\" :disabled=\"modals.calibration.selectedDataset === null\" class=\"mr-2\">Set Up Project</b-button>\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"modals.calibration.show = false\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport L from 'leaflet';\r\n\timport { LMap, LTileLayer, LGeoJson, LControl, LPolyline, LControlLayers, LLayerGroup } from 'vue2-leaflet';\r\n\timport Vue2LeafletPolylineDecorator from '@/components/helpers/Vue2LeafletPolylineDecorator';\r\n\timport _ from 'underscore';\r\n\timport 'leaflet/dist/leaflet.css';\r\n\timport { required, maxLength } from 'vuelidate/lib/validators';\r\n\tvar bbox = require('geojson-bbox');\r\n\r\n\tvar __globalStartingSubs = []; //needed to sync with this.startingSubs because style function can't access 'this' and doesn't always touch line before return function in mapSubbasinsStyle\r\n\tvar __globalColors = {};\r\n\r\n\texport default {\r\n\t\tname: 'ProjectCreate',\r\n\t\tcomponents: {\r\n\t\t\tLMap, LTileLayer, LGeoJson, LControl, LPolyline, LControlLayers, LLayerGroup, 'v-polyline-decorator': Vue2LeafletPolylineDecorator\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tdatasets: [],\r\n\t\t\t\t\tuserDatasets: [],\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tshowAdvanced: false,\r\n\t\t\t\t\tselectStart: false\r\n\t\t\t\t},\r\n\t\t\t\tlimits: {\r\n\t\t\t\t\tsubbasinLimit: 0,\r\n\t\t\t\t\thruLimit: 0\r\n\t\t\t\t},\r\n\t\t\t\tsubbasinsSearch: '',\r\n\t\t\t\tproject: {\r\n\t\t\t\t\tdatasetID: 1,\r\n\t\t\t\t\tendID: undefined,\r\n\t\t\t\t\tstartIDs: [],\r\n\t\t\t\t\tname: undefined,\r\n\t\t\t\t\tcacheID: undefined\r\n\t\t\t\t},\r\n\t\t\t\tstartingSubs: [],\r\n\t\t\t\tmap: {\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tbounds: undefined,\r\n\t\t\t\t\tsubbasins: {\r\n\t\t\t\t\t\tgeojson: undefined\r\n\t\t\t\t\t},\r\n\t\t\t\t\tstreams: {\r\n\t\t\t\t\t\tgeojson: undefined,\r\n\t\t\t\t\t\toptions: {\r\n\t\t\t\t\t\t\tstyle: {\r\n\t\t\t\t\t\t\t\tweight: 1,\r\n\t\t\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\t\t\tcolor: '#006da0',\r\n\t\t\t\t\t\t\t\tdashArray: '0'\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcurrentCoords: undefined,\r\n\t\t\t\t\tselectedPoint: undefined,\r\n\t\t\t\t\tnumSubs: 0,\r\n\t\t\t\t\tnumHrus: 0,\r\n\t\t\t\t\troute: [],\r\n\t\t\t\t\tshowRoute: false,\r\n\t\t\t\t\tpatterns: [\r\n\t\t\t\t\t\t{ offset: '50%', repeat: 0, symbol: L.Symbol.arrowHead({ pixelSize: 15, polygon: false, pathOptions: { color: 'green', stroke: true } }) }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tid: undefined,\r\n\t\t\t\t\tshowCalibrationLayers: false,\r\n\t\t\t\t\tshowCalibrationLocations: true,\r\n\t\t\t\t\toutline: {\r\n\t\t\t\t\t\tgeojson: undefined,\r\n\t\t\t\t\t\toptions: {\r\n\t\t\t\t\t\t\tstyle: {\r\n\t\t\t\t\t\t\t\tweight: 2,\r\n\t\t\t\t\t\t\t\topacity: 0.8,\r\n\t\t\t\t\t\t\t\tcolor: '#7f0096',\r\n\t\t\t\t\t\t\t\tdashArray: '0',\r\n\t\t\t\t\t\t\t\tfillOpacity: 0\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\n\t\t\t\t\tregions: {\r\n\t\t\t\t\t\tgeojson: undefined,\r\n\t\t\t\t\t\toptions: {\r\n\t\t\t\t\t\t\tstyle: {\r\n\t\t\t\t\t\t\t\tweight: 2,\r\n\t\t\t\t\t\t\t\topacity: 0.8,\r\n\t\t\t\t\t\t\t\tcolor: '#5b5b5b',\r\n\t\t\t\t\t\t\t\tdashArray: '0',\r\n\t\t\t\t\t\t\t\tfillOpacity: 0\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tmodals: {\r\n\t\t\t\t\troute: {\r\n\t\t\t\t\t\tshow: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcalibration: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\twatershed: {\r\n\t\t\t\t\t\t\tid: 0,\r\n\t\t\t\t\t\t\tname: null,\r\n\t\t\t\t\t\t\tdatasets: [],\r\n\t\t\t\t\t\t\tlocationSites: []\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tselectedDataset: null\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tselectedDataset: null,\r\n\t\t\t\tcalibrationLayers: {\r\n\t\t\t\t\tgroups: [],\r\n\t\t\t\t\tlocationPoints: {\r\n\t\t\t\t\t\tname: null,\r\n\t\t\t\t\t\tgeojson: { type: null, features: [] }\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tcalibrationGroup: {\r\n\t\t\t\t\tselected: null,\r\n\t\t\t\t\tgeojson: { type: null, features: [] },\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\terrors: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tproject: {\r\n\t\t\t\tname: {\r\n\t\t\t\t\trequired,\r\n\t\t\t\t\tmaxLength: maxLength(100),\r\n\t\t\t\t\thasAlphaNumeric(value) {\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t/[A-Z]/.test(value) || // checks for a-z\r\n\t\t\t\t\t\t\t/[a-z]/.test(value) || // checks for a-z\r\n\t\t\t\t\t\t\t/[0-9]/.test(value) // checks for 0-9\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t\tif (this.$refs.calLocationLayer.mapObject) this.$refs.calLocationLayer.mapObject.remove();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\tsubbasinsSearch: _.debounce(function (query) { this.findSubbasins(query) }, 500)\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.loadMapColors();\r\n\t\t\t\tthis.map.streams.options.style.color = this.mapColors.stream;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('/datasets/user', this.getTokenHeader());\r\n\t\t\t\t\tconsole.log(response.data);\r\n\t\t\t\t\tthis.options.datasets = response.data.datasets;\r\n\t\t\t\t\tthis.options.userDatasets = response.data.userDatasets;\r\n\t\t\t\t\tthis.limits = response.data.limits;\r\n\r\n\t\t\t\t\tif (this.options.datasets.length > 0 && this.options.datasets[0].options.length > 0) {\r\n\t\t\t\t\t\tthis.map.bounds = L.latLngBounds(this.options.datasets[0].options[0].bounds);\r\n\t\t\t\t\t\tthis.project.datasetID = this.options.datasets[0].options[0].value;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tvar dataset = this.getSelectedDataset();\r\n\t\t\t\t\tif (!this.isNullOrEmpty(dataset)) {\r\n\t\t\t\t\t\tawait this.getDatasetOutline(dataset.value);\r\n\t\t\t\t\t\tif (dataset.loadByDefault && !this.isNullOrEmpty(dataset.endingSubbasin)) {\r\n\t\t\t\t\t\t\tawait this.loadMapFromSub(dataset.endingSubbasin);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tconst response2 = await this.$http.get('/maps/calibrated-watersheds', this.getTokenHeader());\r\n\t\t\t\t\t\tconsole.log(response2.data);\r\n\t\t\t\t\t\tthis.calibrationLayers = response2.data;\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tloginSuccess(wasSuccessful) {\r\n\t\t\t\tthis.page.showLogin = !wasSuccessful;\r\n\t\t\t},\r\n\t\t\tasync findSubbasins(query) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`/subbasins/find/${this.project.datasetID}/${query}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.options.subbasins = response.data != '' && response.data != null ? response.data : [];\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync datasetChange() {\r\n\t\t\t\tvar dataset = this.getSelectedDataset();\r\n\t\t\t\tawait this.getDatasetOutline(dataset.value);\r\n\t\t\t\tif (dataset.loadByDefault && !this.isNullOrEmpty(dataset.endingSubbasin)) {\r\n\t\t\t\t\tawait this.loadMapFromSub(dataset.endingSubbasin);\r\n\t\t\t\t} else if (this.map.selectedPoint != undefined) {\r\n\t\t\t\t\tawait this.loadMap(this.map.selectedPoint[0], this.map.selectedPoint[1]);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.setBounds();\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync getDatasetOutline(id) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`/datasets/outlinegeojson/${id}`, this.getTokenHeader());\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.map.outline.geojson = response.data.outline;\r\n\t\t\t\t\tthis.map.regions.geojson = response.data.regions;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tgetSelectedDataset() {\r\n\t\t\t\tlet id = this.project.datasetID;\r\n\t\t\t\tlet matches = [];\r\n\t\t\t\tfor (let group of this.options.datasets) {\r\n\t\t\t\t\tmatches = group.options.filter(function (el) { return el.value == id; });\r\n\t\t\t\t\tif (matches.length > 0) break;\r\n\t\t\t\t}\r\n\t\t\t\tif (matches.length == 0) {\r\n\t\t\t\t\tmatches = this.options.userDatasets.filter(function (el) { return el.value == id; });\r\n\t\t\t\t}\r\n\t\t\t\tthis.selectedDataset = matches[0];\r\n\t\t\t\treturn matches[0];\r\n\t\t\t\t//return this.options.datasets.filter(function (el) { return el.value == id; })[0]; \r\n\t\t\t},\r\n\t\t\tsetBounds() {\r\n\t\t\t\tvar dataset = this.getSelectedDataset();\r\n\t\t\t\tif (dataset) {\r\n\t\t\t\t\tthis.map.bounds = L.latLngBounds(dataset.bounds);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync mapClick(e) {\r\n\t\t\t\tif (!this.options.selectStart && this.calibrationGroup.selected === null) {\r\n\t\t\t\t\tawait this.loadMap(e.latlng.lat, e.latlng.lng);\r\n\t\t\t\t}\t\t\t\r\n\t\t\t},\r\n\t\t\tasync loadMap(lat, lon) {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.map.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`/maps/coords/${this.project.datasetID}/${lat}/${lon}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\r\n\t\t\t\t\tthis.map.selectedPoint = [lat, lon];\r\n\t\t\t\t\tthis.setMapData(response.data);\r\n\t\t\t\t\tthis.startingSubs = [];\r\n\r\n\t\t\t\t\tthis.page.loading = false;\r\n\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.map.loading = false;\r\n\t\t\t},\r\n\t\t\tasync loadMapFromSub(name) {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.map.loading = true;\r\n\r\n\t\t\t\tif (!this.isNullOrEmpty(name)) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get(`/maps/subbasin/name/${this.project.datasetID}/${name}`, this.getTokenHeader());\r\n\t\t\t\t\t\t//console.log(response);\r\n\r\n\t\t\t\t\t\tthis.map.selectedPoint = undefined;\r\n\t\t\t\t\t\tthis.setMapData(response.data);\r\n\t\t\t\t\t\tthis.startingSubs = [];\r\n\r\n\t\t\t\t\t\tthis.page.loading = false;\r\n\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.map.loading = false;\r\n\t\t\t},\r\n\t\t\tgetMapFromIdsDb() {\r\n\t\t\t\tvar starting = '';\r\n\t\t\t\tfor (var i = 0; i < this.startingSubs.length; i++) {\r\n\t\t\t\t\tstarting += this.startingSubs[i].id.toString();\r\n\t\t\t\t\tif (i < this.startingSubs.length - 1)\r\n\t\t\t\t\t\tstarting += ',';\r\n\t\t\t\t}\r\n\t\t\t\treturn this.$http.get(`/maps/subbasin/id/${this.project.endID}/${starting}`, this.getTokenHeader());\r\n\t\t\t},\r\n\t\t\tasync loadMapFromIds() {\r\n\t\t\t\tif (!this.options.selectStart) {\r\n\t\t\t\t\tthis.map.loading = true;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.getMapFromIdsDb();\r\n\r\n\t\t\t\t\t\tthis.map.selectedPoint = undefined;\r\n\t\t\t\t\t\tthis.setMapData(response.data);\r\n\r\n\t\t\t\t\t\tthis.page.loading = false;\r\n\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.map.loading = false;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tsetMapData(map) {\r\n\t\t\t\tthis.map.subbasins.geojson = map.subbasinsGeoJson;\r\n\t\t\t\tthis.map.streams.geojson = map.streamsGeoJson;\r\n\t\t\t\tthis.setEndingSubbasin(map.downstreamSubbasin);\r\n\t\t\t\tthis.project.endID = map.downstreamID;\r\n\r\n\t\t\t\tthis.map.bounds = L.latLngBounds(map.bounds);\r\n\r\n\t\t\t\tthis.map.numSubs = map.numSubbasins;\r\n\t\t\t\tthis.map.numHrus = map.numHrus;\r\n\t\t\t\tthis.map.route = map.connections;\r\n\t\t\t\tthis.map.id = map.id;\r\n\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tif (!this.hasWatershed()) {\r\n\t\t\t\t\tthis.page.errors.push('Please select a subbasin within the study area.');\r\n\t\t\t\t\tthis.setBounds();\r\n\t\t\t\t} else {\r\n\t\t\t\t\tvar dataset = this.getSelectedDataset();\r\n\t\t\t\t\tif (dataset) {\r\n\t\t\t\t\t\tthis.project.name = dataset.text + ' - ' + map.downstreamSubbasin;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tclearMapData() {\r\n\t\t\t\tthis.map.subbasins.geojson = undefined;\r\n\t\t\t\tthis.map.streams.geojson = undefined;\r\n\t\t\t\tthis.subbasinsSearch = '';\r\n\t\t\t\ttry { this.$refs.subbasinsTypeahead.$data.inputValue = ''; } catch (e) { this.log(e); }\r\n\t\t\t\tthis.project.endID = undefined;\r\n\t\t\t\tthis.project.name = undefined;\r\n\t\t\t\tthis.project.startIDs = [];\r\n\t\t\t\tthis.project.cacheID = undefined;\r\n\r\n\t\t\t\tthis.map.numSubs = 0;\r\n\t\t\t\tthis.map.numHrus = 0;\r\n\t\t\t\tthis.map.route = [];\r\n\t\t\t\tthis.map.showRoute = false;\r\n\t\t\t\tthis.map.id = undefined;\r\n\t\t\t},\r\n\t\t\tmapMove(e) {\r\n\t\t\t\tthis.map.currentCoords = e.latlng;\r\n\t\t\t},\r\n\t\t\tsetEndingSubbasin(name) {\r\n\t\t\t\tthis.subbasinsSearch = name;\r\n\t\t\t\tthis.log(this.$refs.subbasinsTypeahead);\r\n\t\t\t\ttry { this.$refs.subbasinsTypeahead.$data.inputValue = name; } catch (e) { this.log(e); }\r\n\t\t\t},\r\n\t\t\thasWatershed() {\r\n\t\t\t\treturn !this.map.subbasins.geojson ?  false : this.map.subbasins.geojson.features.length > 0;\r\n\t\t\t},\r\n\t\t\tasync createProject() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.project.startIDs = [];\r\n\t\t\t\t\tfor (var i = 0; i < this.startingSubs.length; i++) {\r\n\t\t\t\t\t\tthis.project.startIDs.push(this.startingSubs[i].id);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.project.cacheID = this.map.id;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post('projects/', this.project, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ProjectView', params: { id: response.data } }).catch(err => { });\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tmapSubbasinsClick(e) {\r\n\t\t\t\tif (this.options.selectStart && !e.target.feature.properties.isNearbyOnly) {\r\n\t\t\t\t\tvar sub = e.target.feature.properties;\r\n\t\t\t\t\tvar index = this.startingSubs.findIndex(x => x.id == sub.id);\r\n\t\t\t\t\tif (index === -1) {\r\n\t\t\t\t\t\tthis.startingSubs.push({\r\n\t\t\t\t\t\t\tid: sub.id,\r\n\t\t\t\t\t\t\tname: sub.name\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.removeStartingSub(sub.id);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t__globalStartingSubs = this.startingSubs;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tremoveStartingSub(id) {\r\n\t\t\t\tif (this.options.selectStart) {\r\n\t\t\t\t\tthis.startingSubs = this.startingSubs.filter(function (el) { return el.id != id; });\r\n\t\t\t\t\t__globalStartingSubs = this.startingSubs;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\ttoggleColors() {\r\n\t\t\t\tthis.setMapColors(!this.mapColors.highContrast);\r\n\t\t\t\tthis.map.streams.options.style.color = this.mapColors.stream;\r\n\t\t\t},\r\n\t\t\tmapCalibratedWatershedsClick(e) {\r\n\t\t\t\tlet watershed = e.target.feature.properties;\r\n\t\t\t\tthis.log(watershed);\r\n\t\t\t\tthis.modals.calibration.selectedDataset = null;\r\n\t\t\t\tthis.modals.calibration.watershed = watershed;\r\n\t\t\t\tthis.modals.calibration.show = true;\r\n\t\t\t\tthis.modals.calibration.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getCalibrationGroup() {\r\n\t\t\t\tthis.map.loading = true;\r\n\t\t\t\tthis.calibrationGroup.errors = [];\r\n\r\n\t\t\t\tif (this.isNullOrEmpty(this.calibrationGroup.selected)) {\r\n\t\t\t\t\tthis.calibrationGroup.geojson = { type: null, features: [] };\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get(`/maps/calibrated-watersheds/${this.calibrationGroup.selected}`, this.getTokenHeader());\r\n\t\t\t\t\t\tconsole.log(response.data);\r\n\t\t\t\t\t\tthis.calibrationGroup.geojson = response.data.geojson;\r\n\r\n\t\t\t\t\t\tif (this.hasCalibrationLocations) {\r\n\t\t\t\t\t\t\tthis.$nextTick(() => {\r\n\t\t\t\t\t\t\t\tthis.$refs.calLocationLayer.mapObject.remove();\r\n\t\t\t\t\t\t\t\tthis.$refs.calLocationLayer.mapObject.addTo(this.$refs.leafmap.mapObject);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tlet bounds = bbox(this.calibrationGroup.geojson);\r\n\t\t\t\t\t\tthis.map.bounds = L.latLngBounds([[bounds[3], bounds[2]], [bounds[1], bounds[0]]]);\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.calibrationGroup.errors = this.logError(error);\r\n\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.map.loading = false;\r\n\t\t\t},\r\n\t\t\t/*toggleCalibrationLayers(checked) {\r\n\t\t\t\tif (checked) {\r\n\t\t\t\t\tif (this.hasCalibrationLocations) {\r\n\t\t\t\t\t\tthis.$nextTick(() => {\r\n\t\t\t\t\t\t\tthis.$refs.calLocationLayer.mapObject.remove();\r\n\t\t\t\t\t\t\tthis.$refs.calLocationLayer.mapObject.addTo(this.$refs.leafmap.mapObject);\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t\tlet bounds = bbox(this.calibrationGroup.geojson);\r\n\t\t\t\t\tthis.map.bounds = L.latLngBounds([[bounds[3], bounds[2]], [bounds[1], bounds[0]]]);\r\n\t\t\t\t}\r\n\t\t\t},*/\r\n\t\t\tasync setProjectToCalibration() {\r\n\t\t\t\tthis.modals.calibration.loading = true;\r\n\t\t\t\tthis.project.datasetID = this.modals.calibration.selectedDataset.id;\r\n\t\t\t\tthis.getSelectedDataset();\r\n\t\t\t\tthis.subbasinsSearch = this.modals.calibration.selectedDataset.endingSubbasin;\r\n\r\n\t\t\t\tawait this.loadMapFromSub(this.modals.calibration.selectedDataset.endingSubbasin);\r\n\r\n\t\t\t\tthis.modals.calibration.loading = false;\r\n\t\t\t\tthis.calibrationGroup.selected = null\r\n\t\t\t\tthis.modals.calibration.show = false;\r\n\t\t\t},\r\n\t\t\tgetLocationSitesTable(sites) {\r\n\t\t\t\tlet text = '';\r\n\t\t\t\tif (sites.length > 0 && sites[0].data.length > 0) {\t\r\n\t\t\t\t\ttext += `<table class=\"table table-sm table-striped\"><thead><tr>`;\r\n\t\t\t\t\tif (sites[0].isUsgsSite) text += `<th>USGS Site #</th>`;\r\n\t\t\t\t\telse text += `<th>Site #</th>`;\r\n\t\t\t\t\ttext += `<th>Name</th>`;\r\n\r\n\t\t\t\t\tfor (let k of Object.keys(sites[0].data[0])) {\r\n\t\t\t\t\t\tlet name = k == 'CalibrationYears' ? 'Calibration years' : k;\r\n\t\t\t\t\t\ttext += `<th>${name}</th>`;\r\n\t\t\t\t\t}\r\n\t\t\t\t\ttext += `</tr></thead><tbody>`;\r\n\r\n\t\t\t\t\tfor (let site of sites) {\r\n\t\t\t\t\t\tlet rowSpan = site.data.length;\r\n\t\t\t\t\t\ttext += `<tr>`;\r\n\r\n\t\t\t\t\t\ttext += `<td rowspan=\"${rowSpan}\">${site.number}</td>`;\r\n\t\t\t\t\t\ttext += `<td rowspan=\"${rowSpan}\">${site.name}</td>`;\r\n\r\n\t\t\t\t\t\tlet i = 0;\r\n\t\t\t\t\t\tfor (let row of site.data) {\r\n\t\t\t\t\t\t\tif (i > 0) text += `<tr>`;\r\n\r\n\t\t\t\t\t\t\tfor (let k of Object.keys(row)) {\r\n\t\t\t\t\t\t\t\ttext += `<td>${row[k]}</td>`;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\ttext += `</tr>`;\r\n\t\t\t\t\t\t\ti++;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ttext += `</tbody></table>`;\r\n\t\t\t\t}\r\n\t\t\t\treturn text;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tpolylines() {\r\n\t\t\t\treturn this.map.route.filter(function (el) { return el.lineCoordinates[1].length > 0; })\r\n\t\t\t},\r\n\t\t\tisNumSubsValid() {\r\n\t\t\t\treturn this.limits.subbasinLimit === 0 || this.limits.subbasinLimit >= this.map.numSubs;\r\n\t\t\t},\r\n\t\t\tisNumHrusValid() {\r\n\t\t\t\treturn this.limits.hruLimit === 0 || this.limits.hruLimit >= this.map.numHrus;\r\n\t\t\t},\r\n\t\t\tmapSubbasinsOptions() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tonEachFeature: this.mapSubbasinsOnEachFeature\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapSubbasinsStyle() {\r\n\t\t\t\t__globalStartingSubs = this.startingSubs;\r\n\t\t\t\t__globalColors = this.mapColors;\r\n\t\t\t\treturn (feature) => {\r\n\t\t\t\t\tvar fillColor = feature.properties.isDownstream ? __globalColors.downstream : (feature.properties.isNearbyOnly ? __globalColors.nearby : __globalColors.subbasin);\r\n\t\t\t\t\tvar index = __globalStartingSubs.findIndex(x => x.id == feature.properties.id);\r\n\t\t\t\t\tif (index > -1)\r\n\t\t\t\t\t\tfillColor = __globalColors.selected;\r\n\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tfillColor: fillColor,\r\n\t\t\t\t\t\tweight: 1,\r\n\t\t\t\t\t\topacity: 0.8,\r\n\t\t\t\t\t\tcolor: 'black',\r\n\t\t\t\t\t\tdashArray: '0',\r\n\t\t\t\t\t\tfillOpacity: feature.properties.isDownstream ? 0.9 : 0.5\r\n\t\t\t\t\t};\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapSubbasinsOnEachFeature() {\r\n\t\t\t\treturn (feature, layer) => {\r\n\t\t\t\t\tlet streamName = feature.properties.name === feature.properties.streams ? '' : feature.properties.streams;\r\n\t\t\t\t\tlet landArea = feature.properties.landArea;\r\n\t\t\t\t\tlet landAreaStr = this.isNullOrEmpty(landArea) || landArea === 0 ? '' : `<br />${this.numberWithCommas(landArea.toFixed(2))} km<sup>2</sup> land-only area`;\r\n\t\t\t\t\tlet cArea = feature.properties.cumulativeArea;\r\n\t\t\t\t\tlet cAreaStr = this.isNullOrEmpty(cArea) || cArea === 0 ? '' : `<br />${this.numberWithCommas(cArea.toFixed(2))} km<sup>2</sup> cumulative area`;\r\n\t\t\t\t\tlayer.bindTooltip(\r\n\t\t\t\t\t\t'<div>' + feature.properties.name + '</div>' +\r\n\t\t\t\t\t\t'<div>' + streamName + '</div>' +\r\n\t\t\t\t\t\t'<div class=\"mt-2\">' + this.numberWithCommas(feature.properties.area.toFixed(2)) + 'km<sup>2</sup> area' + landAreaStr + cAreaStr + '<br />' +\r\n\t\t\t\t\t\tthis.numberWithCommas(feature.properties.elevation.toFixed(2)) + 'm elevation</div>',\r\n\t\t\t\t\t\t{ permanent: false, sticky: true });\r\n\r\n\t\t\t\t\tlayer.on({\r\n\t\t\t\t\t\tclick: this.mapSubbasinsClick\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\trouteCoordinates() {\r\n\t\t\t\tvar plArray = [];\r\n\t\t\t\tfor (var i = 0; i < this.map.route.length; i++) {\r\n\t\t\t\t\tif (this.map.route[i].lineCoordinates[1].length > 0)\r\n\t\t\t\t\t\tplArray.push(this.map.route[i].lineCoordinates);\r\n\t\t\t\t}\r\n\t\t\t\treturn plArray;\r\n\t\t\t},\r\n\t\t\tmapCalibratedWatershedsOptions() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tonEachFeature: this.mapCalibratedWatershedsOnEachFeature\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapCalibratedWatershedsStyle() {\r\n\t\t\t\t__globalColors = this.mapColors;\r\n\t\t\t\treturn (feature) => {\r\n\t\t\t\t\tlet fillColor = __globalColors.subbasin;\r\n\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tfillColor: '#ce29e8',\r\n\t\t\t\t\t\tweight: 2,\r\n\t\t\t\t\t\topacity: 0.8,\r\n\t\t\t\t\t\tcolor: '#7f0096',\r\n\t\t\t\t\t\tdashArray: '0',\r\n\t\t\t\t\t\tfillOpacity: 0.5\r\n\t\t\t\t\t};\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapCalibratedWatershedsOnEachFeature() {\r\n\t\t\t\treturn (feature, layer) => {\r\n\t\t\t\t\tlayer.bindTooltip(\r\n\t\t\t\t\t\t`<div>${feature.properties.name}</div>`,\r\n\t\t\t\t\t\t{ permanent: false, sticky: true });\r\n\r\n\t\t\t\t\tlayer.on({\r\n\t\t\t\t\t\tclick: this.mapCalibratedWatershedsClick\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\thasCalibrations() {\r\n\t\t\t\treturn this.calibrationGroup.geojson.features.length > 0;\r\n\t\t\t},\r\n\t\t\thasCalibrationLocations() {\r\n\t\t\t\treturn this.calibrationLayers.locationPoints.geojson.features.length > 0;\r\n\t\t\t},\r\n\t\t\tmapCalibratedUsgsSitesOptions() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tonEachFeature: this.mapCalibratedUsgsSitesOnEachFeature,\r\n\t\t\t\t\tpointToLayer: this.mapCalibratedUsgsSitesPointToLayer\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapCalibrationLocationOptions() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tonEachFeature: this.mapCalibrationLocationOnEachFeature,\r\n\t\t\t\t\tpointToLayer: this.mapCalibrationLocationPointToLayer\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tmapCalibrationLocationPointToLayer() {\r\n\t\t\t\treturn (feature, latlng) => {\r\n\t\t\t\t\tlet pointColor = '#f7ff1e';\r\n\t\t\t\t\tlet name = feature.properties.calibrations[0].name;\r\n\t\t\t\t\tif (name.includes(\"HAWQS v1.2\")) pointColor = '#a4f24b';\r\n\t\t\t\t\tif (name.includes(\"WOTUS\")) pointColor = '#ff194f';\r\n\r\n\t\t\t\t\treturn L.circleMarker(latlng, {\r\n\t\t\t\t\t\tradius: 5,\r\n\t\t\t\t\t\tfillColor: pointColor,\r\n\t\t\t\t\t\tcolor: '#000',\r\n\t\t\t\t\t\tweight: 1,\r\n\t\t\t\t\t\topacity: 1,\r\n\t\t\t\t\t\tfillOpacity: 0.9\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tmapCalibrationLocationOnEachFeature() {\r\n\t\t\t\treturn (feature, layer) => {\r\n\t\t\t\t\tlet popText = '<div><b>Calibrated Sites:</b></div>';\r\n\r\n\t\t\t\t\tfor (let cal of feature.properties.calibrations) {\r\n\t\t\t\t\t\tif (cal.isUsgsSite) {\r\n\t\t\t\t\t\t\tpopText += `<div>USGS Site: ${cal.number}</div>`;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tpopText += `<div>${cal.name}</div><div class=\"mt-2\"><table class=\"table table-sm\">`;\r\n\r\n\t\t\t\t\t\tlet i = 0;\r\n\t\t\t\t\t\tfor (let d of cal.data) {\r\n\t\t\t\t\t\t\tlet calKeys = Object.keys(d);\r\n\t\t\t\t\t\t\tif (i === 0) {\r\n\t\t\t\t\t\t\t\tpopText += `<tr>`;\r\n\t\t\t\t\t\t\t\tfor (let k of calKeys) {\r\n\t\t\t\t\t\t\t\t\tlet name = k == 'CalibrationYears' ? 'Calibration years' : k;\r\n\t\t\t\t\t\t\t\t\tpopText += `<th>${name}</th>`;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tpopText += `</tr>`;\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tpopText += `<tr>`;\r\n\t\t\t\t\t\t\tfor (let k of calKeys) {\r\n\t\t\t\t\t\t\t\tpopText += `<td>${d[k]}</td>`;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tpopText += `</tr>`;\r\n\t\t\t\t\t\t\ti++;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tpopText += `</table></div>`;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tlayer.bindTooltip(\r\n\t\t\t\t\t\tpopText,\r\n\t\t\t\t\t\t{ permanent: false, sticky: true });\r\n\t\t\t\t};\r\n\t\t\t},\n\t\t\tmapRegionOptions() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tonEachFeature: this.mapRegionOnEachFeature,\r\n\t\t\t\t\tstyle: this.map.regions.options.style\r\n\t\t\t\t};\r\n\t\t\t},\n\t\t\tmapRegionOnEachFeature() {\r\n\t\t\t\treturn (feature, layer) => {\r\n\t\t\t\t\tlet popText = `<div><b>Region ${feature.properties.region}</b></div>`;\r\n\r\n\t\t\t\t\tlayer.bindTooltip(\r\n\t\t\t\t\t\tpopText,\r\n\t\t\t\t\t\t{ permanent: false, sticky: true });\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style scoped>\r\n\t.map-container {\r\n\t\tposition: relative;\r\n\t}\r\n\r\n\t.map-loading-overlay {\r\n\t\tz-index: 1000;\r\n\t\tposition: absolute;\r\n\t\ttop: 45%;\r\n\t\tleft: 0;\r\n\t\ttext-align: center;\r\n\t\twidth: 100%;\r\n\t}\r\n</style>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectCreate.vue?vue&type=template&id=76690c43&scoped=true&\"\nimport script from \"./ProjectCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectCreate.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ProjectCreate.vue?vue&type=style&index=0&id=76690c43&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"76690c43\",\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',[(!_vm.isAuthenticated || _vm.page.showLogin)?_c('login-form',{attrs:{\"show-header\":\"\"}}):(!_vm.isAuthorized(_vm.roleNames.registered))?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" Your account is pending approval. You will receive a notification by email when it is approved. \")])],1):(_vm.page.errors.length > 0)?_c('error-list',{attrs:{\"errors\":_vm.page.errors}}):(_vm.status.isCreating || _vm.status.isSettingHrus || _vm.status.isZipping)?_c('div',{staticClass:\"max-w-400 py-5 mx-auto text-center\"},[_c('b-progress',{attrs:{\"value\":_vm.progress.percent,\"max\":100,\"animated\":\"\"}}),_c('p',[_vm._v(\" \"+_vm._s(_vm.progress.message)+\" \")]),_c('p',{staticClass:\"text-muted mt-5\"},[_c('small',[_vm._v(\" Progress not updating? \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get(false)}}},[_vm._v(\"Refresh now.\")]),_c('br'),(_vm.status.isZipping)?_c('a',{staticClass:\"text-danger\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.page.abort.show = true}}},[_vm._v(\"Cancel zip file creation.\")]):_vm._e()])])],1):(_vm.status.hasError)?_c('div',{staticClass:\"container\"},[_c('h2',{staticClass:\"mb-3 mt-3\"},[_c('font-awesome-icon',{staticClass:\"icon mr-1 text-warning\",attrs:{\"icon\":['fas', 'exclamation-triangle']}}),_vm._v(\" An error occurred in the project \"+_vm._s(_vm.project.name)+\" \")],1),_c('p',[_vm._v(\" Errors can be the result of a bug in the system. Please see the full exception message below. \")]),_c('hr',{staticClass:\"my-4\"}),_c('h5',[_vm._v(_vm._s(_vm.status.statusMessage))]),_c('p',[_c('b-form-textarea',{attrs:{\"rows\":\"15\"},model:{value:(_vm.status.exceptionMessage),callback:function ($$v) {_vm.$set(_vm.status, \"exceptionMessage\", $$v)},expression:\"status.exceptionMessage\"}})],1),_c('fixed-action-bar',{attrs:{\"cols\":12,\"cols-lg\":12,\"offset\":0,\"offset-lg\":0}},[_c('b-button',{staticClass:\"mr-2\",on:{\"click\":function($event){_vm.page.errorReport.show = true}}},[_vm._v(\"Submit Error Report\")]),_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"secondary\"},on:{\"click\":_vm.clearError}},[_vm._v(\"Clear Error\")])],1),_c('b-modal',{attrs:{\"title\":\"Submit an error report\"},model:{value:(_vm.page.errorReport.show),callback:function ($$v) {_vm.$set(_vm.page.errorReport, \"show\", $$v)},expression:\"page.errorReport.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.errorReport.errors}}),_c('p',[_vm._v(\" Complete the form below to notify developers about the error. If you have already submitted a report for this error or a similar error, there is no need to submit again. \")]),_c('b-form-group',{attrs:{\"label\":\"Add any additional comments (optional)\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"7\"},model:{value:(_vm.errorForm.userComments),callback:function ($$v) {_vm.$set(_vm.errorForm, \"userComments\", $$v)},expression:\"errorForm.userComments\"}})],1),_c('div',{staticClass:\"mt-4\"},[_c('b-form-checkbox',{model:{value:(_vm.errorForm.clearError),callback:function ($$v) {_vm.$set(_vm.errorForm, \"clearError\", $$v)},expression:\"errorForm.clearError\"}},[_vm._v(\"Clear error after submitting report\")])],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.errorReport.saving,\"text\":\"Submit Report\",\"variant\":\"success\"},nativeOn:{\"click\":function($event){return _vm.submitErrorReport.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.errorReport.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1):_c('div',[_c('b-container',{staticClass:\"p-0\",attrs:{\"fluid\":\"\"}},[(_vm.$route.name == 'ProjectView')?_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{staticClass:\"fixed-height shadow d-flex align-items-stretch flex-column\",staticStyle:{\"z-index\":\"500\"},attrs:{\"md\":\"3\"}},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white px-3 mb-0\",attrs:{\"items\":_vm.breadCrumbs}}),_c('div',{staticClass:\"px-3 py-4 bg-gradient-light-blue\"},[_c('h2',{staticClass:\"h6\"},[_vm._v(\"Summary\")]),_c('table',{staticClass:\"table table-sm table-borderless table-summary mt-2 mb-0\"},[_c('tbody',[_c('tr',[_c('th',[_vm._v(\"Name\")]),_c('td',[_vm._v(_vm._s(_vm.project.name))])]),_c('tr',[_c('th',[_c('a',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],attrs:{\"href\":_vm.project.subbasinsCsv,\"title\":\"Download SWAT->Subbasin CSV file\"}},[_vm._v(\"Subbasins\")])]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numSubbasins,0)))])]),_c('tr',[_c('th',[_c('router-link',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],attrs:{\"to\":\"hrus\",\"append\":\"\",\"title\":_vm.status.hasSetHrus ? 'Review or download your project HRUs' : 'Set your HRUs to eliminate minor land uses'}},[_vm._v(\"HRUs\")])],1),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numHrus,0)))])]),_c('tr',[_c('th',[_vm._v(\"Total area\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.totalArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])])]),(_vm.project.totalLandArea > 0)?_c('tr',[_c('th',[_vm._v(\"Land-only area\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.totalLandArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])])]):_vm._e(),_c('tr',[_c('th',[_vm._v(\"Watershed\")]),_c('td',[_vm._v(_vm._s(_vm.project.dataset)+\", \"+_vm._s(_vm.project.endingSubbasin))])])])])]),_c('div',{staticClass:\"px-3 py-4\"},[_c('h2',{staticClass:\"h6\"},[_vm._v(\"Set-up\")]),_c('b-nav',{staticClass:\"dash-items-nav\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":\"hrus\",\"append\":\"\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'sliders-h'],\"fixed-width\":\"\"}}),_vm._v(\" \"+_vm._s(_vm.status.hasSetHrus ? 'Review' : 'Set')+\" HRUs\")],1),(_vm.project.scenarios.length < 1 && _vm.withinTierLimits)?_c('b-nav-item',{on:{\"click\":_vm.openNewScenario}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'cog'],\"fixed-width\":\"\"}}),_vm._v(\" Create scenario\")],1):(_vm.project.scenarios.length > 0)?_c('b-nav-item',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.collapse-scenarios\",modifiers:{\"collapse-scenarios\":true}}]},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'cog'],\"fixed-width\":\"\"}}),_vm._v(\" Scenarios \"),_c('font-awesome-icon',{staticClass:\"ml-3 mr-1 mt-1 float-right\",attrs:{\"icon\":['fas', 'angle-down'],\"fixed-width\":\"\"}})],1):_vm._e(),_c('b-collapse',{attrs:{\"id\":\"collapse-scenarios\"}},[_c('ul',_vm._l((_vm.project.scenarios),function(s,i){return _c('li',{key:i},[_c('router-link',{attrs:{\"to\":`scenarios/${s.id}`,\"append\":\"\"}},[_vm._v(_vm._s(s.name))])],1)}),0),_c('ul',{staticClass:\"font-weight-bold\"},[_c('li',[_c('router-link',{attrs:{\"to\":`/projects/${_vm.projectID}/scenarios`}},[_vm._v(\"All scenarios\")])],1),(_vm.withinTierLimits)?_c('li',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.openNewScenario.apply(null, arguments)}}},[_vm._v(\"Create a new scenario\")])]):_vm._e()])])],1),_c('b-alert',{staticClass:\"mt-3\",attrs:{\"variant\":\"warning\",\"show\":!_vm.withinTierLimits}},[_c('p',[_vm._v(\" Your account tier only has access to run scenarios from limited datasets with \"+_vm._s(_vm._f(\"number\")(_vm.tier.subbasinLimit,0))+\" subbasins and \"+_vm._s(_vm._f(\"number\")(_vm.tier.hruLimit,0))+\" HRUs or fewer. Use the set HRUs link above to reduce the number of HRUs below the limit if possible. \")]),_c('p',{staticClass:\"mb-0\"},[_vm._v(\" Need access to a higher tier? \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"Go to your account\")]),_vm._v(\" and click the tier tab. \")],1)]),_c('h2',{staticClass:\"h6 mt-4\"},[_vm._v(\"Data\")]),_c('b-nav',{staticClass:\"dash-items-nav\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":\"metadata\",\"append\":\"\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['far', 'clipboard'],\"fixed-width\":\"\"}}),_vm._v(\" Metadata\")],1),_c('b-nav-item',{attrs:{\"to\":\"downloads\",\"append\":\"\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'archive'],\"fixed-width\":\"\"}}),_vm._v(\" Project downloads\")],1),_c('b-nav-item',{attrs:{\"to\":\"documents\",\"append\":\"\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'upload'],\"fixed-width\":\"\"}}),_vm._v(\" Uploaded documents\")],1),_c('b-nav-item',{attrs:{\"to\":\"errors\",\"append\":\"\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'exclamation-triangle'],\"fixed-width\":\"\"}}),_vm._v(\" Feedback and error reports\")],1)],1),_c('h2',{staticClass:\"h6 mt-4\"},[_vm._v(\"Actions\")]),_c('b-nav',{staticClass:\"dash-items-nav\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{on:{\"click\":function($event){_vm.page.share.show = true}}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'user-friends'],\"fixed-width\":\"\"}}),_vm._v(\" Share project\")],1),_c('b-nav-item',{on:{\"click\":function($event){_vm.page.copy.show = true}}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'copy'],\"fixed-width\":\"\"}}),_vm._v(\" Copy project\")],1),_c('b-nav-item',{on:{\"click\":function($event){_vm.page.edit.show = true}}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'edit'],\"fixed-width\":\"\"}}),_vm._v(\" Change project name\")],1),_c('b-nav-item',{on:{\"click\":function($event){_vm.page.delete.show = true}}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'trash'],\"fixed-width\":\"\"}}),_vm._v(\" Delete project\")],1)],1)],1),_c('div',{staticClass:\"d-none d-md-flex align-items-center border-top bg-white position-relative mt-auto\"},[_c('div',{staticClass:\"p-3\"},[_c('router-link',{staticClass:\"stretched-link text-reset\",attrs:{\"to\":\"/projects\",\"title\":\"Back to project list\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left'],\"fixed-width\":\"\"}})],1)],1),_c('div',{staticClass:\"p-3 border-left text-uppercase\"},[_vm._v(\" Back to project list \")])])],1),_c('b-col',{attrs:{\"md\":\"9\"}},[_c('project-map',{attrs:{\"project-map\":_vm.project.map,\"show-layer-control\":\"\",\"show-extra-layers\":\"\",\"load-only-on-view\":\"ProjectView\"}})],1)],1):(_vm.$route.name.startsWith('Output'))?_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{staticClass:\"fixed-height bg-light\",attrs:{\"lg\":\"2\",\"order\":\"2\",\"order-lg\":\"1\"}},[_c('div',{staticClass:\"d-flex align-items-center border-bottom bg-white position-relative\"},[_c('div',{staticClass:\"p-3\"},[_c('router-link',{staticClass:\"stretched-link text-reset\",attrs:{\"to\":_vm.baseRoute,\"title\":\"Back to scenario\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left'],\"fixed-width\":\"\"}})],1)],1),_c('div',{staticClass:\"p-3 border-left text-uppercase\"},[_vm._v(\" Back to scenario \")])]),_c('div',{staticClass:\"px-3 pt-4\"},[_c('h2',{staticClass:\"h6\"},[_vm._v(\"Output\")]),_c('b-nav',{staticClass:\"dash-items-nav nav-sm mb-4\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"href\":_vm.project.currentScenarioZipFile}},[_vm._v(\"Download scenario files\")]),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/output/swat-check`}},[_vm._v(\"SWAT check\")]),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/output/charts`}},[_vm._v(\"Charts\")]),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/output/maps`}},[_vm._v(\"Maps\")]),(_vm.siteSettings.includeCeQual)?_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/output/ce-qual`}},[_vm._v(\"CE-QUAL-W2\")]):_vm._e(),(_vm.siteSettings.includeFfa)?_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/output/ffa`}},[_vm._v(\"Flood Frequency Analysis\")]):_vm._e(),(_vm.siteSettings.includeBaseflowSeparation)?_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/output/baseflowseparation`}},[_vm._v(\"Baseflow Separation\")]):_vm._e()],1)],1),_c('div',{staticStyle:{\"height\":\"70px\"}})]),_c('b-col',{staticClass:\"fixed-height shadow no-shadow-md\",staticStyle:{\"z-index\":\"500\"},attrs:{\"lg\":\"10\",\"order\":\"1\",\"order-lg\":\"2\"}},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white px-md-4\",attrs:{\"items\":_vm.breadCrumbs}}),_c('div',{staticClass:\"container-fluid px-md-4 pb-4\"},[_c('router-view')],1)],1)],1):(_vm.$route.name.startsWith('Edit'))?_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{staticClass:\"fixed-height bg-light\",attrs:{\"md\":\"3\",\"order\":\"2\",\"order-md\":\"1\"}},[_c('div',{staticClass:\"d-flex align-items-center border-bottom bg-white position-relative\"},[_c('div',{staticClass:\"p-3\"},[_c('router-link',{staticClass:\"stretched-link text-reset\",attrs:{\"to\":_vm.baseRoute,\"title\":\"Back to scenario\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'chevron-left'],\"fixed-width\":\"\"}})],1)],1),_c('div',{staticClass:\"p-3 border-left text-uppercase\"},[_vm._v(\" Back to scenario \")])]),_c('div',{staticClass:\"px-3 pt-4\"},[_c('h2',{staticClass:\"h6\"},[_vm._v(\"Data\")]),_c('b-nav',{staticClass:\"dash-items-nav nav-sm mb-4\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":\"Opens in a separate window\",\"link-classes\":\"d-flex justify-content-between align-items-center\"},on:{\"click\":_vm.openHrus}},[_c('span',[_vm._v(\"Project HRU table\")]),_c('font-awesome-icon',{staticClass:\"icon ml-2\",attrs:{\"icon\":['fas', 'external-link-alt'],\"fixed-width\":\"\"}})],1)],1),_c('h2',{staticClass:\"h6\"},[_vm._v(\"General\")]),_c('b-nav',{staticClass:\"dash-items-nav nav-sm mb-4\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/calibration`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Calibration data\")])]),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/bsn`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Basin input data\")]),(_vm.project.modTables.includes('Bsn'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/fert`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Fertilizers\")]),(_vm.project.modTables.includes('Fert'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/nutrient-efficiency`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Nutrient efficiency\")]),(_vm.project.modTables.includes('AutoEff'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/urban`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Urban input data\")]),(_vm.project.modTables.includes('Urban'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/lup`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Land use update\")]),(_vm.project.modTables.includes('Lup'))?_c('check-icon'):_vm._e()],1)],1),_c('h2',{staticClass:\"h6\"},[_vm._v(\"Weather data\")]),_c('b-nav',{staticClass:\"dash-items-nav nav-sm mb-4\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/climate-sensitivity`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Climate sensitivity/variability analysis\")]),(_vm.project.modTables.includes('ClimateSensitivity'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/weather-generator`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Weather generator\")]),(_vm.project.modTables.includes('Wgn'))?_c('check-icon'):_vm._e()],1)],1),_c('h2',{staticClass:\"h6\"},[_vm._v(\"Subbasin inputs\")]),_c('b-nav',{staticClass:\"dash-items-nav nav-sm mb-4\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/curve-number`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Curve number\")]),(_vm.project.modTables.includes('Cn2Percent'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/potholes`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Pothole variables\")]),(_vm.project.modTables.includes('Potholes'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/sediment-routing`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Sediment routing method\")]),(_vm.project.modTables.includes('RteChEqn'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/point-source`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Point source\")]),(_vm.project.modTables.includes('Ptsrc'))?_c('check-icon'):_vm._e()],1)],1),_c('h2',{staticClass:\"h6\"},[_vm._v(\"Ag management\")]),_c('b-nav',{staticClass:\"dash-items-nav nav-sm mb-4\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/mgt-general`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"General parameters\")]),(_vm.project.modTables.includes('Mgt1'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/mgt-operations`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"Operations management\")]),(_vm.project.modTables.includes('Mgt2'))?_c('check-icon'):_vm._e()],1)],1),_c('h2',{staticClass:\"h6\"},[_vm._v(\"Print\")]),_c('b-nav',{staticClass:\"dash-items-nav nav-sm mb-4\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/hru-vars`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"HRU variables\")]),(_vm.project.modTables.includes('HruVars'))?_c('check-icon'):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":`${_vm.baseRoute}/hru-print`,\"link-classes\":\"d-flex justify-content-between align-items-center\"}},[_c('span',[_vm._v(\"HRUs to print\")]),(_vm.project.modTables.includes('HruPrint'))?_c('check-icon'):_vm._e()],1)],1)],1),_c('div',{staticStyle:{\"height\":\"70px\"}})]),_c('b-col',{staticClass:\"fixed-height shadow no-shadow-sm\",staticStyle:{\"z-index\":\"500\"},attrs:{\"md\":\"9\",\"order\":\"1\",\"order-md\":\"2\"}},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white px-md-4\",attrs:{\"items\":_vm.breadCrumbs}}),_c('div',{staticClass:\"container-fluid px-md-4 pb-4\"},[_c('router-view')],1)],1)],1):_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{staticClass:\"fixed-height bg-light d-none d-md-block\",attrs:{\"md\":\"3\",\"order\":\"2\",\"order-md\":\"1\"}},[(_vm.project.numSubbasins < _vm.globals.maxSubbasinsForMap)?_c('div',{staticClass:\"border-bottom\"},[_c('project-map',{attrs:{\"project-map\":_vm.project.map,\"height\":\"350px\"}})],1):_vm._e(),_c('div',{staticClass:\"px-3 py-4\"},[_c('table',{staticClass:\"table table-sm table-borderless table-summary my-0\"},[_c('tbody',[_c('tr',[_c('th',[_vm._v(\"Project\")]),_c('td',[_vm._v(_vm._s(_vm.project.name))])]),_c('tr',[_c('th',[_vm._v(\"Subbasins\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numSubbasins,0)))])]),_c('tr',[_c('th',[_vm._v(\"HRUs\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numHrus,0)))])]),_c('tr',[_c('th',[_vm._v(\"Total area\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.totalArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])])]),_c('tr',[_c('th',[_vm._v(\"Land-only area\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.totalLandArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])])]),_c('tr',[_c('th',[_vm._v(\"Watershed\")]),_c('td',[_vm._v(_vm._s(_vm.project.dataset)+\", \"+_vm._s(_vm.project.endingSubbasin))])])])]),((_vm.project.scenarios.length > 0) && _vm.$route.name !== 'ScenarioList')?_c('b-dropdown',{staticClass:\"mt-3\",attrs:{\"text\":\"Scenarios\",\"size\":\"sm\",\"variant\":\"secondary\"}},[_vm._l((_vm.project.scenarios),function(s,i){return _c('b-dropdown-item',{key:i,attrs:{\"to\":`/projects/${_vm.projectID}/scenarios/${s.id}`}},[_vm._v(_vm._s(s.name))])}),_c('b-dropdown-divider'),_c('b-dropdown-item',{attrs:{\"to\":`/projects/${_vm.projectID}/scenarios`}},[_vm._v(\"All scenarios\")]),_c('b-dropdown-item',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.openNewScenario.apply(null, arguments)}}},[_vm._v(\"Create a new scenario\")])],2):_vm._e()],1),_c('div',{staticStyle:{\"height\":\"70px\"}})]),_c('b-col',{staticClass:\"fixed-height shadow no-shadow-sm border-bottom-0\",staticStyle:{\"z-index\":\"500\"},attrs:{\"md\":\"9\",\"order\":\"1\",\"order-md\":\"2\"}},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white px-md-4\",attrs:{\"items\":_vm.breadCrumbs}}),_c('div',{staticClass:\"container-fluid px-md-4\"},[_c('router-view')],1)],1)],1)],1),_c('b-modal',{attrs:{\"size\":\"lg\",\"title\":\"Create a new scenario\",\"hide-footer\":\"\"},model:{value:(_vm.show.scenarioForm),callback:function ($$v) {_vm.$set(_vm.show, \"scenarioForm\", $$v)},expression:\"show.scenarioForm\"}},[_c('scenario-form',{attrs:{\"data\":_vm.newScenario,\"show-cancel-button\":\"\"},on:{\"saved\":_vm.cancelOpenScenario}})],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this project? This action is permanent and cannot be undone. All files and scenarios related to this project will be removed. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"title\":\"Copy project\"},model:{value:(_vm.page.copy.show),callback:function ($$v) {_vm.$set(_vm.page.copy, \"show\", $$v)},expression:\"page.copy.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.copy.errors}}),_c('p',[_vm._v(\" Copy this project to a new project. All scenarios and files will be copied. \")]),_c('b-form-group',{attrs:{\"label\":\"Provide a name for the new project\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"required\":\"\"},model:{value:(_vm.page.copy.name),callback:function ($$v) {_vm.$set(_vm.page.copy, \"name\", $$v)},expression:\"page.copy.name\"}})],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.copy.saving,\"text\":\"Copy Project\",\"variant\":\"success\"},nativeOn:{\"click\":function($event){return _vm.copyProject.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.copy.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"title\":\"Edit project name\"},model:{value:(_vm.page.edit.show),callback:function ($$v) {_vm.$set(_vm.page.edit, \"show\", $$v)},expression:\"page.edit.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.edit.errors}}),_c('b-form-group',{attrs:{\"label\":\"Provide a new name for the project\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"required\":\"\"},model:{value:(_vm.page.edit.name),callback:function ($$v) {_vm.$set(_vm.page.edit, \"name\", $$v)},expression:\"page.edit.name\"}})],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.edit.saving},nativeOn:{\"click\":function($event){return _vm.editProject.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.edit.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"title\":\"Share project\"},model:{value:(_vm.page.share.show),callback:function ($$v) {_vm.$set(_vm.page.share, \"show\", $$v)},expression:\"page.share.show\"}},[_c('p',[_vm._v(\" Groups are a way to share your projects and scenarios with other users. All users in the group may view, edit, and run* projects shared with the group. (*Note: tier limits still apply. If the project is outside the tier of other members in the group, they may view and edit the project but not run it.) \")]),_c('p',[_vm._v(\" Tip: use the copy project feature to retain a copy of this project that is not available for other group members to modify. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.share.errors}}),_c('b-alert',{attrs:{\"show\":_vm.page.share.sharedSuccess,\"variant\":\"success\"}},[_vm._v(\" Your project has been shared with \"),_c('router-link',{attrs:{\"to\":`/groups/${_vm.page.share.currentItem.value}`}},[_vm._v(_vm._s(_vm.page.share.currentItem.text))]),_vm._v(\". Done sharing? \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.closeShare.apply(null, arguments)}}},[_vm._v(\"Close this window.\")]),(_vm.groupOptions.length > 0)?_c('span',[_vm._v(\" Otherwise, select another group below. \")]):_vm._e()],1),_c('b-alert',{attrs:{\"show\":_vm.page.share.unsharedSuccess,\"variant\":\"success\"}},[_vm._v(\" Your project has been removed from \"),_c('router-link',{attrs:{\"to\":`/groups/${_vm.page.share.currentItem.value}`}},[_vm._v(_vm._s(_vm.page.share.currentItem.text))]),_vm._v(\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.closeShare.apply(null, arguments)}}},[_vm._v(\"Close this window if done.\")])],1),(_vm.groupOptions.length > 0)?_c('b-form-group',[_c('b-form-select',{attrs:{\"options\":_vm.groupOptions},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a group for sharing --\")])]},proxy:true}],null,false,547373144),model:{value:(_vm.page.share.groupID),callback:function ($$v) {_vm.$set(_vm.page.share, \"groupID\", $$v)},expression:\"page.share.groupID\"}})],1):_vm._e(),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.groupOptions.length <= 0 && _vm.project.groups.length <= 0}},[_vm._v(\" You don't belong to any groups. \"),_c('router-link',{attrs:{\"to\":\"/groups/create\"}},[_vm._v(\"Create one now.\")])],1),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.groupOptions.length <= 0 && _vm.project.groups.length > 0}},[_vm._v(\" This project is already shared with all of your groups. \")]),(_vm.project.groups.length > 0)?_c('div',{staticClass:\"my-4\"},[_c('div',[_vm._v(\"Currently shared with (click to remove):\")]),_vm._l((_vm.project.groups),function(g,i){return _c('b-button',{key:i,staticClass:\"mr-2 mb-2\",attrs:{\"variant\":\"light\",\"size\":\"sm\"},on:{\"click\":function($event){return _vm.unshareProject(g.value)}}},[_vm._v(\" \"+_vm._s(g.text)+\" \"),_c('font-awesome-icon',{staticClass:\"text-danger\",attrs:{\"icon\":['fas', 'times']}})],1)})],2):_vm._e(),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[(_vm.groupOptions.length > 0)?_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.share.saving,\"text\":\"Share Project\",\"disabled\":_vm.page.share.groupID === null},nativeOn:{\"click\":function($event){return _vm.shareProject.apply(null, arguments)}}}):_vm._e(),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":_vm.closeShare}},[_vm._v(\"Cancel\")])],1)],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm cancellation\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.abort.show),callback:function ($$v) {_vm.$set(_vm.page.abort, \"show\", $$v)},expression:\"page.abort.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to cancel creating a zip file of this project? \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.abort.saving,\"text\":\"Yes, Abort\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.abortZip.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.abort.show = false}}},[_vm._v(\"No\")])],1)],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"show-errors-with-object\":\"\"}},[_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.create.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"Scenario name\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.name)},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}}),(!_vm.$v.form.name.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.form.name.hasAlphaNumeric)?_c('b-form-invalid-feedback',[_vm._v(\"Must contain at least one letter or number\")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Weather data\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.weatherDatasetID)}},[_c('b-form-select',{attrs:{\"state\":_vm.getValidState(_vm.$v.form.weatherDatasetID)},on:{\"change\":_vm.updateWeatherOptions},model:{value:(_vm.form.weatherDatasetID),callback:function ($$v) {_vm.$set(_vm.form, \"weatherDatasetID\", $$v)},expression:\"form.weatherDatasetID\"}},_vm._l((_vm.options.weatherDatasets),function(group,i){return _c('optgroup',{key:i,attrs:{\"label\":group.label}},_vm._l((group.options),function(opt,j){return _c('option',{key:j,domProps:{\"value\":opt.id}},[_vm._v(_vm._s(opt.name))])}),0)}),0)],1),(_vm.weatherOptions.showClimateChange)?_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Climate time period\"}},[_c('b-form-select',{on:{\"change\":_vm.updateClimateTimePeriod},model:{value:(_vm.form.climateChangeTimePeriodID),callback:function ($$v) {_vm.$set(_vm.form, \"climateChangeTimePeriodID\", $$v)},expression:\"form.climateChangeTimePeriodID\"}},_vm._l((_vm.climateTimePeriodOptions),function(opt,i){return _c('option',{key:i,domProps:{\"value\":opt.id}},[_vm._v(_vm._s(opt.name))])}),0)],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Climate scenario\"}},[_c('b-form-select',{model:{value:(_vm.form.climateChangeScenarioID),callback:function ($$v) {_vm.$set(_vm.form, \"climateChangeScenarioID\", $$v)},expression:\"form.climateChangeScenarioID\"}},_vm._l((_vm.climateScenarioOptions),function(opt,i){return _c('option',{key:i,domProps:{\"value\":opt.id}},[_vm._v(_vm._s(opt.name))])}),0)],1)],1)],1):_vm._e(),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Simulation start date\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.startingSimulationDate)}},[_c('b-form-input',{attrs:{\"type\":\"date\",\"state\":_vm.getValidState(_vm.$v.form.startingSimulationDate)},model:{value:(_vm.form.startingSimulationDate),callback:function ($$v) {_vm.$set(_vm.form, \"startingSimulationDate\", $$v)},expression:\"form.startingSimulationDate\"}}),_c('small',{staticClass:\"form-text text-muted\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.weatherOptions.minDate,'MM/DD/YYYY'))+\" or later\")])],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Simulation end date\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.endingSimulationDate)}},[_c('b-form-input',{attrs:{\"type\":\"date\",\"state\":_vm.getValidState(_vm.$v.form.endingSimulationDate)},model:{value:(_vm.form.endingSimulationDate),callback:function ($$v) {_vm.$set(_vm.form, \"endingSimulationDate\", $$v)},expression:\"form.endingSimulationDate\"}}),_c('small',{staticClass:\"form-text text-muted\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.weatherOptions.maxDate,'MM/DD/YYYY'))+\" or earlier\")])],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Set-up/warm-up years\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.skipYears)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.skipYears)},model:{value:(_vm.form.skipYears),callback:function ($$v) {_vm.$set(_vm.form, \"skipYears\", $$v)},expression:\"form.skipYears\"}})],1),_c('b-form-group',{attrs:{\"label\":\"SWAT output print setting\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.printSetting)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.printSettings,\"state\":_vm.getValidState(_vm.$v.form.printSetting)},model:{value:(_vm.form.printSetting),callback:function ($$v) {_vm.$set(_vm.form, \"printSetting\", $$v)},expression:\"form.printSetting\"}})],1),_c('b-form-group',{attrs:{\"label\":\"SWAT model version to run\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.swatVersionID)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.swatVersions,\"state\":_vm.getValidState(_vm.$v.form.swatVersionID)},model:{value:(_vm.form.swatVersionID),callback:function ($$v) {_vm.$set(_vm.form, \"swatVersionID\", $$v)},expression:\"form.swatVersionID\"}})],1),_c('div',{staticClass:\"mt-4 mb-3\"},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"text\":\"Save Changes\"}}),(_vm.showCancelButton)?_c('b-button',{attrs:{\"variant\":\"secondary\"},on:{\"click\":_vm.cancel}},[_vm._v(\"Cancel\")]):_vm._e(),(_vm.showBackButton)?_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}):_vm._e()],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" show-errors-with-object>\r\n\t\t\t<b-form @submit.prevent=\"create\">\r\n\t\t\t\t<b-form-group label=\"Scenario name\">\r\n\t\t\t\t\t<b-form-input v-model=\"form.name\" type=\"text\" autofocus :state=\"getValidState($v.form.name)\"></b-form-input>\r\n\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.name.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.name.hasAlphaNumeric\">Must contain at least one letter or number</b-form-invalid-feedback>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Weather data\" :invalid-feedback=\"requiredFeedback($v.form.weatherDatasetID)\">\r\n\t\t\t\t\t<b-form-select v-model=\"form.weatherDatasetID\" :state=\"getValidState($v.form.weatherDatasetID)\" @change=\"updateWeatherOptions\">\r\n\t\t\t\t\t\t<optgroup v-for=\"(group, i) in options.weatherDatasets\" :key=\"i\" :label=\"group.label\">\r\n\t\t\t\t\t\t\t<option v-for=\"(opt, j) in group.options\" :key=\"j\" :value=\"opt.id\">{{opt.name}}</option>\r\n\t\t\t\t\t\t</optgroup>\r\n\t\t\t\t\t</b-form-select>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-row v-if=\"weatherOptions.showClimateChange\">\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Climate time period\">\r\n\t\t\t\t\t\t\t<b-form-select v-model=\"form.climateChangeTimePeriodID\" @change=\"updateClimateTimePeriod\">\r\n\t\t\t\t\t\t\t\t<option v-for=\"(opt, i) in climateTimePeriodOptions\" :key=\"i\" :value=\"opt.id\">{{opt.name}}</option>\r\n\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Climate scenario\">\r\n\t\t\t\t\t\t\t<b-form-select v-model=\"form.climateChangeScenarioID\">\r\n\t\t\t\t\t\t\t\t<option v-for=\"(opt, i) in climateScenarioOptions\" :key=\"i\" :value=\"opt.id\">{{opt.name}}</option>\r\n\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Simulation start date\" :invalid-feedback=\"requiredFeedback($v.form.startingSimulationDate)\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"form.startingSimulationDate\" type=\"date\" :state=\"getValidState($v.form.startingSimulationDate)\"></b-form-input>\r\n\t\t\t\t\t\t\t<small class=\"form-text text-muted\">{{weatherOptions.minDate | date('MM/DD/YYYY')}} or later</small>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Simulation end date\" :invalid-feedback=\"requiredFeedback($v.form.endingSimulationDate)\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"form.endingSimulationDate\" type=\"date\" :state=\"getValidState($v.form.endingSimulationDate)\"></b-form-input>\r\n\t\t\t\t\t\t\t<small class=\"form-text text-muted\">{{weatherOptions.maxDate | date('MM/DD/YYYY')}} or earlier</small>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<b-form-group label=\"Set-up/warm-up years\" :invalid-feedback=\"requiredFeedback($v.form.skipYears)\">\r\n\t\t\t\t\t<b-form-input v-model=\"form.skipYears\" type=\"number\" :state=\"getValidState($v.form.skipYears)\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"SWAT output print setting\" :invalid-feedback=\"requiredFeedback($v.form.printSetting)\">\r\n\t\t\t\t\t<b-form-select v-model=\"form.printSetting\" :options=\"options.printSettings\" :state=\"getValidState($v.form.printSetting)\"></b-form-select>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"SWAT model version to run\" :invalid-feedback=\"requiredFeedback($v.form.swatVersionID)\">\r\n\t\t\t\t\t<b-form-select v-model=\"form.swatVersionID\" :options=\"options.swatVersions\" :state=\"getValidState($v.form.swatVersionID)\"></b-form-select>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<div class=\"mt-4 mb-3\">\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" text=\"Save Changes\" class=\"mr-2\" />\r\n\t\t\t\t\t<b-button v-if=\"showCancelButton\" variant=\"secondary\" @click=\"cancel\">Cancel</b-button>\r\n\t\t\t\t\t<back-button v-if=\"showBackButton\" class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</div>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'ScenarioForm',\r\n\t\tprops: {\r\n\t\t\tisUpdate: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tdata: {\r\n\t\t\t\ttype: Object,\r\n\t\t\t\trequired: true\r\n\t\t\t},\r\n\t\t\tshowCancelButton: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tshowBackButton: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tclimateChangeScenarios: [],\r\n\t\t\t\t\tclimateChangeTimePeriods: [],\r\n\t\t\t\t\tprintSettings: [],\r\n\t\t\t\t\tswatVersions: [],\r\n\t\t\t\t\tweatherDatasets: []\r\n\t\t\t\t},\r\n\t\t\t\tform: this.data,\r\n\t\t\t\tweatherOptions: {\r\n\t\t\t\t\tselectedDataset: undefined,\r\n\t\t\t\t\tminDate: undefined,\r\n\t\t\t\t\tmaxDate: undefined,\r\n\t\t\t\t\tshowClimateChange: false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tname: {\r\n\t\t\t\t\trequired,\r\n\t\t\t\t\thasAlphaNumeric(value) {\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t/[A-Z]/.test(value) || // checks for a-z\r\n\t\t\t\t\t\t\t/[a-z]/.test(value) || // checks for a-z\r\n\t\t\t\t\t\t\t/[0-9]/.test(value) // checks for 0-9\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tstartingSimulationDate: { required },\r\n\t\t\t\tendingSimulationDate: { required },\r\n\t\t\t\tweatherDatasetID: { required },\r\n\t\t\t\tswatVersionID: { required },\r\n\t\t\t\tprintSetting: { required },\r\n\t\t\t\tskipYears: { required }\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/options/${this.data.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.options = response.data;\r\n\t\t\t\t\tif (!this.isUpdate) {\r\n\t\t\t\t\t\tthis.form.weatherDatasetID = response.data.defaultWeatherDataset;\r\n\t\t\t\t\t\tthis.form.swatVersionID = response.data.defaultSWATVersion;\r\n\t\t\t\t\t\tthis.updateWeatherOptions(true);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tthis.updateWeatherOptions(false);\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync create() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.errors.push('Please fix the errors below and try again.');\n\t\t\t\t} else if (moment(this.form.endingSimulationDate).isSameOrBefore(this.form.startingSimulationDate)) {\n\t\t\t\t\tthis.page.errors.push('Simulation end date must be greater than starting date.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar response;\r\n\t\t\t\t\t\tvar scenarioID;\r\n\r\n\t\t\t\t\t\tif (!this.isUpdate) {\r\n\t\t\t\t\t\t\tresponse = await this.$http.post('scenarios', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\t\tscenarioID = response.data;\r\n\t\t\t\t\t\t\tthis.$router.push({ name: 'ScenarioView', params: { id: this.data.projectID, scenarioID: scenarioID } }).catch(err => {});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tresponse = await this.$http.put(`scenarios/${this.data.id}`, this.form, this.getTokenHeader());\r\n\t\t\t\t\t\t\tscenarioID = this.data.id;\r\n\t\t\t\t\t\t\tthis.$emit('saved', 'success');\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tupdateWeatherOptions(setDefaults = true) {\r\n\t\t\t\tfor (var i = 0; i < this.options.weatherDatasets.length; i++) {\r\n\t\t\t\t\tvar index = this.options.weatherDatasets[i].options.findIndex(x => x.id == this.form.weatherDatasetID);\r\n\t\t\t\t\tif (index > -1) {\r\n\t\t\t\t\t\tvar dataset = this.options.weatherDatasets[i].options[index];\r\n\t\t\t\t\t\tthis.weatherOptions.selectedDataset = dataset;\r\n\t\t\t\t\t\tthis.weatherOptions.minDate = moment(dataset.startDate).format('YYYY-MM-DD');\r\n\t\t\t\t\t\tthis.weatherOptions.maxDate = moment(dataset.endDate).format('YYYY-MM-DD');\r\n\t\t\t\t\t\tthis.weatherOptions.showClimateChange = !this.isNullOrEmpty(dataset.cmipVersion);\r\n\r\n\t\t\t\t\t\tif (setDefaults) {\r\n\t\t\t\t\t\t\tthis.form.startingSimulationDate = this.weatherOptions.minDate;\r\n\t\t\t\t\t\t\tvar maxDate = moment(this.weatherOptions.minDate).add(5, 'y').subtract(1, 'd');\r\n\t\t\t\t\t\t\tif (moment(this.weatherOptions.maxDate).isBefore(maxDate)) {\r\n\t\t\t\t\t\t\t\tmaxDate = this.weatherOptions.maxDate;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tthis.form.endingSimulationDate = moment(maxDate).format('YYYY-MM-DD');\r\n\r\n\t\t\t\t\t\t\tif (this.weatherOptions.showClimateChange) {\r\n\t\t\t\t\t\t\t\tthis.form.climateChangeScenarioID = this.climateScenarioOptions[0].id;\r\n\t\t\t\t\t\t\t\tthis.form.climateChangeTimePeriodID = this.climateTimePeriodOptions[0].id;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.form.startingSimulationDate = moment(this.data.startingSimulationDate).format('YYYY-MM-DD');\r\n\t\t\t\t\t\t\tthis.form.endingSimulationDate = moment(this.data.endingSimulationDate).format('YYYY-MM-DD');\r\n\t\t\t\t\t\t}\t\t\t\t\t\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tupdateClimateTimePeriod() {\r\n\t\t\t\tvar index = this.options.climateChangeTimePeriods.findIndex(x => x.id == this.form.climateChangeTimePeriodID);\r\n\t\t\t\tif (index > -1) {\r\n\t\t\t\t\tvar dataset = this.options.climateChangeTimePeriods[index];\r\n\t\t\t\t\tthis.weatherOptions.minDate = moment(dataset.startDate).format('YYYY-MM-DD');\r\n\t\t\t\t\tthis.weatherOptions.maxDate = moment(dataset.endDate).format('YYYY-MM-DD');\r\n\t\t\t\t\tthis.form.startingSimulationDate = this.weatherOptions.minDate;\r\n\t\t\t\t\tthis.form.endingSimulationDate = this.weatherOptions.maxDate;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tcancel() {\r\n\t\t\t\tthis.$emit('saved', 'cancel');\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tclimateScenarioOptions() {\r\n\t\t\t\tif (this.weatherOptions.showClimateChange) {\r\n\t\t\t\t\tvar selectedCMIP = this.weatherOptions.selectedDataset.cmipVersion;\r\n\t\t\t\t\treturn this.options.climateChangeScenarios.filter(function (el) { return el.cmipVersion == selectedCMIP; });\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn this.options.climateChangeScenarios;\r\n\t\t\t},\r\n\t\t\tclimateTimePeriodOptions() {\r\n\t\t\t\tif (this.weatherOptions.showClimateChange) {\r\n\t\t\t\t\tvar selectedCMIP = this.weatherOptions.selectedDataset.cmipVersion;\r\n\t\t\t\t\treturn this.options.climateChangeTimePeriods.filter(function (el) { return el.cmipVersion == selectedCMIP; });\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn this.options.climateChangeTimePeriods;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScenarioForm.vue?vue&type=template&id=d9509098&\"\nimport script from \"./ScenarioForm.vue?vue&type=script&lang=js&\"\nexport * from \"./ScenarioForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t<div v-if=\"!page.loading\">\r\n\t\t\t<login-form v-if=\"!isAuthenticated || page.showLogin\" show-header></login-form>\r\n\t\t\t<div v-else-if=\"!isAuthorized(roleNames.registered)\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\tYour account is pending approval. You will receive a notification by email when it is approved.\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<error-list v-else-if=\"page.errors.length > 0\" :errors=\"page.errors\"></error-list>\r\n\t\t\t<div v-else-if=\"status.isCreating || status.isSettingHrus || status.isZipping\" class=\"max-w-400 py-5 mx-auto text-center\">\r\n\t\t\t\t<b-progress :value=\"progress.percent\" :max=\"100\" animated></b-progress>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t{{progress.message}}\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<p class=\"text-muted mt-5\">\r\n\t\t\t\t\t<small>\r\n\t\t\t\t\t\tProgress not updating? <a href=\"#\" @click.prevent=\"get(false)\">Refresh now.</a>\r\n\t\t\t\t\t\t<br /><a v-if=\"status.isZipping\" href=\"#\" @click.prevent=\"page.abort.show = true\" class=\"text-danger\">Cancel zip file creation.</a>\r\n\t\t\t\t\t</small>\r\n\t\t\t\t</p>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"status.hasError\" class=\"container\">\r\n\t\t\t\t<h2 class=\"mb-3 mt-3\">\r\n\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" class=\"icon mr-1 text-warning\" />\r\n\t\t\t\t\tAn error occurred in the project {{project.name}}\r\n\t\t\t\t</h2>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tErrors can be the result of a bug in the system.\r\n\t\t\t\t\tPlease see the full exception message below.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t<h5>{{status.statusMessage}}</h5>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t<b-form-textarea v-model=\"status.exceptionMessage\" rows=\"15\"></b-form-textarea>\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<fixed-action-bar :cols=\"12\" :cols-lg=\"12\" :offset=\"0\" :offset-lg=\"0\">\r\n\t\t\t\t\t<b-button @click=\"page.errorReport.show = true\" class=\"mr-2\">Submit Error Report</b-button>\r\n\t\t\t\t\t<b-button variant=\"secondary\" @click=\"clearError\" class=\"mr-2\">Clear Error</b-button>\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.errorReport.show\" title=\"Submit an error report\">\r\n\t\t\t\t\t<error-list :errors=\"page.errorReport.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tComplete the form below to notify developers about the error.\r\n\t\t\t\t\t\tIf you have already submitted a report for this error or a similar error, there is no need to submit again.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Add any additional comments (optional)\">\r\n\t\t\t\t\t\t<b-form-textarea v-model=\"errorForm.userComments\" rows=\"7\"></b-form-textarea>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t<b-form-checkbox v-model=\"errorForm.clearError\">Clear error after submitting report</b-form-checkbox>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.errorReport.saving\" @click.native=\"submitErrorReport\" text=\"Submit Report\" variant=\"success\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.errorReport.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-container fluid class=\"p-0\">\r\n\t\t\t\t\t<b-row no-gutters v-if=\"$route.name == 'ProjectView'\">\r\n\t\t\t\t\t\t<b-col md=\"3\" class=\"fixed-height shadow d-flex align-items-stretch flex-column\" style=\"z-index:500\">\r\n\t\t\t\t\t\t\t<b-breadcrumb :items=\"breadCrumbs\" class=\"no-curves bg-white px-3 mb-0\"></b-breadcrumb>\r\n\t\t\t\t\t\t\t<div class=\"px-3 py-4 bg-gradient-light-blue\">\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">Summary</h2>\r\n\t\t\t\t\t\t\t\t<table class=\"table table-sm table-borderless table-summary mt-2 mb-0\">\r\n\t\t\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Name</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.name}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th><a :href=\"project.subbasinsCsv\" v-b-tooltip.hover.bottom title=\"Download SWAT->Subbasin CSV file\">Subbasins</a></th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.numSubbasins | number(0)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<router-link to=\"hrus\" append v-b-tooltip.hover.bottom :title=\"status.hasSetHrus ? 'Review or download your project HRUs' : 'Set your HRUs to eliminate minor land uses'\">HRUs</router-link>\r\n\t\t\t\t\t\t\t\t\t\t\t</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.numHrus | number(0)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Total area</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.totalArea | number(2)}} km<sup>2</sup></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr v-if=\"project.totalLandArea > 0\">\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Land-only area</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.totalLandArea | number(2)}} km<sup>2</sup></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Watershed</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.dataset}}, {{project.endingSubbasin}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"px-3 py-4\">\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">Set-up</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item to=\"hrus\" append><font-awesome-icon :icon=\"['fas', 'sliders-h']\" fixed-width class=\"mr-3\" /> {{status.hasSetHrus ? 'Review' : 'Set'}} HRUs</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item v-if=\"project.scenarios.length < 1 && withinTierLimits\" @click=\"openNewScenario\"><font-awesome-icon :icon=\"['fas', 'cog']\" fixed-width class=\"mr-3\" /> Create scenario</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item v-else-if=\"project.scenarios.length > 0\" v-b-toggle.collapse-scenarios>\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'cog']\" fixed-width class=\"mr-3\" /> Scenarios\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'angle-down']\" fixed-width class=\"ml-3 mr-1 mt-1 float-right\" />\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-collapse id=\"collapse-scenarios\">\r\n\t\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t\t<li v-for=\"(s, i) in project.scenarios\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<router-link :to=\"`scenarios/${s.id}`\" append>{{s.name}}</router-link>\r\n\t\t\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t\t\t<ul class=\"font-weight-bold\">\r\n\t\t\t\t\t\t\t\t\t\t\t<li><router-link :to=\"`/projects/${projectID}/scenarios`\">All scenarios</router-link></li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li v-if=\"withinTierLimits\"><a href=\"#\" @click.prevent=\"openNewScenario\">Create a new scenario</a></li>\r\n\t\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t\t</b-collapse>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"warning\" :show=\"!withinTierLimits\" class=\"mt-3\">\r\n\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\tYour account tier only has access to run scenarios from limited datasets with {{tier.subbasinLimit | number(0)}} subbasins\r\n\t\t\t\t\t\t\t\t\t\tand {{tier.hruLimit | number(0)}} HRUs or fewer.\r\n\t\t\t\t\t\t\t\t\t\tUse the set HRUs link above to reduce the number of HRUs below the limit if possible.\r\n\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t<p class=\"mb-0\">\r\n\t\t\t\t\t\t\t\t\t\tNeed access to a higher tier? <router-link to=\"/account\">Go to your account</router-link> and click the tier tab.\r\n\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6 mt-4\">Data</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item to=\"metadata\" append><font-awesome-icon :icon=\"['far', 'clipboard']\" fixed-width class=\"mr-3\" /> Metadata</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item to=\"downloads\" append><font-awesome-icon :icon=\"['fas', 'archive']\" fixed-width class=\"mr-3\" /> Project downloads</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item to=\"documents\" append><font-awesome-icon :icon=\"['fas', 'upload']\" fixed-width class=\"mr-3\" /> Uploaded documents</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item to=\"errors\" append><font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" fixed-width class=\"mr-3\" /> Feedback and error reports</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6 mt-4\">Actions</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item @click=\"page.share.show = true\"><font-awesome-icon :icon=\"['fas', 'user-friends']\" fixed-width class=\"mr-3\" /> Share project</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item @click=\"page.copy.show = true\"><font-awesome-icon :icon=\"['fas', 'copy']\" fixed-width class=\"mr-3\" /> Copy project</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item @click=\"page.edit.show = true\"><font-awesome-icon :icon=\"['fas', 'edit']\" fixed-width class=\"mr-3\" /> Change project name</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item @click=\"page.delete.show = true\"><font-awesome-icon :icon=\"['fas', 'trash']\" fixed-width class=\"mr-3\" /> Delete project</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"d-none d-md-flex align-items-center border-top bg-white position-relative mt-auto\">\r\n\t\t\t\t\t\t\t\t<div class=\"p-3\">\r\n\t\t\t\t\t\t\t\t\t<router-link to=\"/projects\" class=\"stretched-link text-reset\" title=\"Back to project list\">\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'chevron-left']\" fixed-width />\r\n\t\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"p-3 border-left text-uppercase\">\r\n\t\t\t\t\t\t\t\t\tBack to project list\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md=\"9\">\r\n\t\t\t\t\t\t\t<project-map :project-map=\"project.map\" show-layer-control show-extra-layers load-only-on-view=\"ProjectView\"></project-map>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t\t<b-row no-gutters v-else-if=\"$route.name.startsWith('Output')\">\r\n\t\t\t\t\t\t<b-col lg=\"2\" order=\"2\" order-lg=\"1\" class=\"fixed-height bg-light\">\r\n\t\t\t\t\t\t\t<div class=\"d-flex align-items-center border-bottom bg-white position-relative\">\r\n\t\t\t\t\t\t\t\t<div class=\"p-3\">\r\n\t\t\t\t\t\t\t\t\t<router-link :to=\"baseRoute\" class=\"stretched-link text-reset\" title=\"Back to scenario\">\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'chevron-left']\" fixed-width />\r\n\t\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"p-3 border-left text-uppercase\">\r\n\t\t\t\t\t\t\t\t\tBack to scenario\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"px-3 pt-4\">\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">Output</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-sm mb-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :href=\"project.currentScenarioZipFile\">Download scenario files</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/output/swat-check`\">SWAT check</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/output/charts`\">Charts</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/output/maps`\">Maps</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item v-if=\"siteSettings.includeCeQual\" :to=\"`${baseRoute}/output/ce-qual`\">CE-QUAL-W2</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item v-if=\"siteSettings.includeFfa\" :to=\"`${baseRoute}/output/ffa`\">Flood Frequency Analysis</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item v-if=\"siteSettings.includeBaseflowSeparation\" :to=\"`${baseRoute}/output/baseflowseparation`\">Baseflow Separation</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div style=\"height:70px\"></div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col lg=\"10\" order=\"1\" order-lg=\"2\" class=\"fixed-height shadow no-shadow-md\" style=\"z-index:500\">\r\n\t\t\t\t\t\t\t<b-breadcrumb :items=\"breadCrumbs\" class=\"no-curves bg-white px-md-4\"></b-breadcrumb>\r\n\t\t\t\t\t\t\t<div class=\"container-fluid px-md-4 pb-4\">\r\n\t\t\t\t\t\t\t\t<router-view></router-view>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t\t<b-row no-gutters v-else-if=\"$route.name.startsWith('Edit')\">\r\n\t\t\t\t\t\t<b-col md=\"3\" order=\"2\" order-md=\"1\" class=\"fixed-height bg-light\">\r\n\t\t\t\t\t\t\t<div class=\"d-flex align-items-center border-bottom bg-white position-relative\">\r\n\t\t\t\t\t\t\t\t<div class=\"p-3\">\r\n\t\t\t\t\t\t\t\t\t<router-link :to=\"baseRoute\" class=\"stretched-link text-reset\" title=\"Back to scenario\">\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'chevron-left']\" fixed-width />\r\n\t\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"p-3 border-left text-uppercase\">\r\n\t\t\t\t\t\t\t\t\tBack to scenario\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"px-3 pt-4\">\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">Data</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-sm mb-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item @click=\"openHrus\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tv-b-tooltip.hover title=\"Opens in a separate window\"\r\n\t\t\t\t\t\t\t\t\t\t\t\tlink-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Project HRU table</span>\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'external-link-alt']\" fixed-width class=\"icon ml-2\" />\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">General</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-sm mb-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/calibration`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Calibration data</span>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/bsn`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Basin input data</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Bsn')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/fert`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Fertilizers</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Fert')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/nutrient-efficiency`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Nutrient efficiency</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('AutoEff')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/urban`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Urban input data</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Urban')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/lup`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Land use update</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Lup')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">Weather data</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-sm mb-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/climate-sensitivity`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Climate sensitivity/variability analysis</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('ClimateSensitivity')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/weather-generator`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Weather generator</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Wgn')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">Subbasin inputs</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-sm mb-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/curve-number`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Curve number</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Cn2Percent')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/potholes`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Pothole variables</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Potholes')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/sediment-routing`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Sediment routing method</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('RteChEqn')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/point-source`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Point source</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Ptsrc')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">Ag management</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-sm mb-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/mgt-general`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>General parameters</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Mgt1')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/mgt-operations`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>Operations management</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('Mgt2')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\r\n\t\t\t\t\t\t\t\t<h2 class=\"h6\">Print</h2>\r\n\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-sm mb-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/hru-vars`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>HRU variables</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('HruVars')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t<b-nav-item :to=\"`${baseRoute}/hru-print`\" link-classes=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<span>HRUs to print</span>\r\n\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"project.modTables.includes('HruPrint')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div style=\"height:70px\"></div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md=\"9\" order=\"1\" order-md=\"2\" class=\"fixed-height shadow no-shadow-sm\" style=\"z-index:500\">\r\n\t\t\t\t\t\t\t<b-breadcrumb :items=\"breadCrumbs\" class=\"no-curves bg-white px-md-4\"></b-breadcrumb>\r\n\t\t\t\t\t\t\t<div class=\"container-fluid px-md-4 pb-4\">\r\n\t\t\t\t\t\t\t\t<router-view></router-view>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t\t<b-row no-gutters v-else>\r\n\t\t\t\t\t\t<b-col md=\"3\" order=\"2\" order-md=\"1\" class=\"fixed-height bg-light d-none d-md-block\">\r\n\t\t\t\t\t\t\t<div class=\"border-bottom\" v-if=\"project.numSubbasins < globals.maxSubbasinsForMap\">\r\n\t\t\t\t\t\t\t\t<project-map :project-map=\"project.map\" height=\"350px\"></project-map>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"px-3 py-4\">\r\n\t\t\t\t\t\t\t\t<table class=\"table table-sm table-borderless table-summary my-0\">\r\n\t\t\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Project</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.name}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Subbasins</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.numSubbasins | number(0)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>HRUs</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.numHrus | number(0)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Total area</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.totalArea | number(2)}} km<sup>2</sup></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Land-only area</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.totalLandArea | number(2)}} km<sup>2</sup></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th>Watershed</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{project.dataset}}, {{project.endingSubbasin}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t\t\t<b-dropdown text=\"Scenarios\" size=\"sm\" variant=\"secondary\" class=\"mt-3\" v-if=\"(project.scenarios.length > 0) && $route.name !== 'ScenarioList'\">\r\n\t\t\t\t\t\t\t\t\t<b-dropdown-item v-for=\"(s, i) in project.scenarios\" :key=\"i\" :to=\"`/projects/${projectID}/scenarios/${s.id}`\">{{s.name}}</b-dropdown-item>\r\n\t\t\t\t\t\t\t\t\t<b-dropdown-divider></b-dropdown-divider>\r\n\t\t\t\t\t\t\t\t\t<b-dropdown-item :to=\"`/projects/${projectID}/scenarios`\">All scenarios</b-dropdown-item>\r\n\t\t\t\t\t\t\t\t\t<b-dropdown-item href=\"#\" @click.prevent=\"openNewScenario\">Create a new scenario</b-dropdown-item>\r\n\t\t\t\t\t\t\t\t</b-dropdown>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div style=\"height:70px\"></div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md=\"9\" order=\"1\" order-md=\"2\" class=\"fixed-height shadow no-shadow-sm border-bottom-0\" style=\"z-index:500\">\r\n\t\t\t\t\t\t\t<b-breadcrumb :items=\"breadCrumbs\" class=\"no-curves bg-white px-md-4\"></b-breadcrumb>\r\n\t\t\t\t\t\t\t<div class=\"container-fluid px-md-4\">\r\n\t\t\t\t\t\t\t\t<router-view></router-view>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t</b-container>\r\n\r\n\t\t\t\t<b-modal v-model=\"show.scenarioForm\" size=\"lg\" title=\"Create a new scenario\" hide-footer>\r\n\t\t\t\t\t<scenario-form :data=\"newScenario\" @saved=\"cancelOpenScenario\" show-cancel-button></scenario-form>\r\n\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete this project?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone. All files and scenarios related to this project will be removed.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.copy.show\" title=\"Copy project\">\r\n\t\t\t\t\t<error-list :errors=\"page.copy.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tCopy this project to a new project. All scenarios and files will be copied.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Provide a name for the new project\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"page.copy.name\" type=\"text\" required></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.copy.saving\" @click.native=\"copyProject\" text=\"Copy Project\" variant=\"success\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.copy.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.edit.show\" title=\"Edit project name\">\r\n\t\t\t\t\t<error-list :errors=\"page.edit.errors\"></error-list>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Provide a new name for the project\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"page.edit.name\" type=\"text\" required></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.edit.saving\" @click.native=\"editProject\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.edit.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.share.show\" title=\"Share project\">\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tGroups are a way to share your projects and scenarios with other users.\r\n\t\t\t\t\t\tAll users in the group may view, edit, and run* projects shared with the group.\r\n\t\t\t\t\t\t(*Note: tier limits still apply. If the project is outside the tier of other members in the group, they may view and edit the project but not run it.)\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tTip: use the copy project feature to retain a copy of this project that\r\n\t\t\t\t\t\tis not available for other group members to modify.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<error-list :errors=\"page.share.errors\"></error-list>\r\n\r\n\t\t\t\t\t<b-alert :show=\"page.share.sharedSuccess\" variant=\"success\">\r\n\t\t\t\t\t\tYour project has been shared with\r\n\t\t\t\t\t\t<router-link :to=\"`/groups/${page.share.currentItem.value}`\">{{page.share.currentItem.text}}</router-link>.\r\n\t\t\t\t\t\tDone sharing? <a href=\"#\" @click.prevent=\"closeShare\">Close this window.</a>\r\n\t\t\t\t\t\t<span v-if=\"groupOptions.length > 0\">\r\n\t\t\t\t\t\t\tOtherwise, select another group below.\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t<b-alert :show=\"page.share.unsharedSuccess\" variant=\"success\">\r\n\t\t\t\t\t\tYour project has been removed from\r\n\t\t\t\t\t\t<router-link :to=\"`/groups/${page.share.currentItem.value}`\">{{page.share.currentItem.text}}</router-link>.\r\n\t\t\t\t\t\t<a href=\"#\" @click.prevent=\"closeShare\">Close this window if done.</a>\r\n\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t<b-form-group v-if=\"groupOptions.length > 0\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"page.share.groupID\" :options=\"groupOptions\">\r\n\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a group for sharing --</option>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-alert variant=\"info\" :show=\"groupOptions.length <= 0 && project.groups.length <= 0\">\r\n\t\t\t\t\t\tYou don't belong to any groups.\r\n\t\t\t\t\t\t<router-link to=\"/groups/create\">Create one now.</router-link>\r\n\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t<b-alert variant=\"info\" :show=\"groupOptions.length <= 0 && project.groups.length > 0\">\r\n\t\t\t\t\t\tThis project is already shared with all of your groups.\r\n\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t<div v-if=\"project.groups.length > 0\" class=\"my-4\">\r\n\t\t\t\t\t\t<div>Currently shared with (click to remove):</div>\r\n\t\t\t\t\t\t<b-button v-for=\"(g, i) in project.groups\" :key=\"i\" variant=\"light\" size=\"sm\" class=\"mr-2 mb-2\" @click=\"unshareProject(g.value)\">\r\n\t\t\t\t\t\t\t{{g.text}}\r\n\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" class=\"text-danger\" />\r\n\t\t\t\t\t\t</b-button>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button v-if=\"groupOptions.length > 0\" type=\"button\" :saving=\"page.share.saving\" @click.native=\"shareProject\" text=\"Share Project\" :disabled=\"page.share.groupID === null\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"closeShare\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</div>\r\n\r\n\t\t\t<b-modal v-model=\"page.abort.show\" size=\"md\" title=\"Confirm cancellation\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to cancel creating a zip file of this project?\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.abort.saving\" @click.native=\"abortZip\" text=\"Yes, Abort\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.abort.show = false\" class=\"ml-1\">No</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport ProjectMap from '@/components/ProjectMap';\r\n\timport ScenarioForm from '@/views/projects/scenarios/ScenarioForm';\r\n\timport _ from 'lodash';\r\n\r\n\texport default {\r\n\t\tname: 'ProjectView',\r\n\t\tcomponents: {\r\n\t\t\tProjectMap, ScenarioForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcopy: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tname: ''\r\n\t\t\t\t\t},\r\n\t\t\t\t\tedit: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tname: ''\r\n\t\t\t\t\t},\r\n\t\t\t\t\tshare: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tgroupID: null,\r\n\t\t\t\t\t\tcurrentItem: {},\r\n\t\t\t\t\t\tsharedSuccess: false,\r\n\t\t\t\t\t\tunsharedSuccess: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\terrorReport: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tabort: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tproject: {},\r\n\t\t\t\ttier: {\r\n\t\t\t\t\tsubbasinLimit: 0,\r\n\t\t\t\t\thruLimit: 0\r\n\t\t\t\t},\r\n\t\t\t\tstatus: {\r\n\t\t\t\t\thasError: false,\r\n\t\t\t\t\tisCreating: false,\r\n\t\t\t\t\tisCreated: false,\r\n\t\t\t\t\tisSettingHrus: false,\r\n\t\t\t\t\thasSetHrus: false,\r\n\t\t\t\t\tisZipping: false\r\n\t\t\t\t},\r\n\t\t\t\tgroupOptions: [],\r\n\t\t\t\tprogress: {\r\n\t\t\t\t\tpercent: 0,\r\n\t\t\t\t\tmessage: 'Please wait...'\r\n\t\t\t\t},\r\n\t\t\t\tshow: {\r\n\t\t\t\t\tscenarioForm: false,\r\n\t\t\t\t\tzip: false\r\n\t\t\t\t},\r\n\t\t\t\tnewScenario: undefined,\r\n\t\t\t\tbaseRoute: '',\r\n\t\t\t\thruWindow: null,\r\n\t\t\t\terrorForm: {\r\n\t\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\t\tscenarioID: null,\r\n\t\t\t\t\ttitle: '',\r\n\t\t\t\t\tmessage: '',\r\n\t\t\t\t\texception: '',\r\n\t\t\t\t\tuserComments: '',\r\n\t\t\t\t\tclearError: true\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.$statusHub.projectClosed(this.projectID);\r\n\t\t\tthis.$statusHub.$off('create-project-status-changed', this.onCreatingStatusChanged);\r\n\t\t\tthis.$statusHub.$off('set-hrus-status-changed', this.onSetHrusStatusChanged);\r\n\t\t\tthis.$statusHub.$off('zip-project-status-changed', this.onZippingStatusChanged);\r\n\t\t\tthis.$statusHub.$off('copy-project-status-changed', this.onCopyingStatusChanged);\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get(initialize=true) {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.baseRoute = `/projects/${this.projectID}/scenarios/${this.scenarioID}`;\r\n\r\n\t\t\t\tthis.show.scenarioForm = false;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar url = `projects/${this.projectID}`;\r\n\t\t\t\t\tif (this.scenarioID)\r\n\t\t\t\t\t\turl += `/${this.scenarioID}`;\r\n\t\t\t\t\tconst response = await this.$http.get(url, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.project = response.data.project;\r\n\t\t\t\t\tthis.tier = response.data.tier;\r\n\t\t\t\t\tthis.status = response.data.status;\r\n\t\t\t\t\tthis.groupOptions = response.data.groupOptions;\r\n\t\t\t\t\tthis.progress = response.data.progress;\r\n\t\t\t\t\tthis.page.copy.name = this.project.name + ' (Copy)';\r\n\t\t\t\t\tthis.page.edit.name = this.project.name;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t\tif (initialize) {\r\n\t\t\t\t\tthis.$statusHub.projectOpened(this.projectID);\r\n\t\t\t\t\tthis.$statusHub.$on('create-project-status-changed', this.onCreatingStatusChanged);\r\n\t\t\t\t\tthis.$statusHub.$on('set-hrus-status-changed', this.onSetHrusStatusChanged);\r\n\t\t\t\t\tthis.$statusHub.$on('zip-project-status-changed', this.onZippingStatusChanged);\r\n\t\t\t\t\tthis.$statusHub.$on('copy-project-status-changed', this.onCopyingStatusChanged);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync onCreatingStatusChanged(data) {\r\n\t\t\t\tif (this.projectID != data.projectID) return;\r\n\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.progress.percent = data.progress;\r\n\t\t\t\tthis.progress.message = data.statusMessage;\r\n\t\t\t},\r\n\t\t\tonSetHrusStatusChanged(data) {\r\n\t\t\t\tif (this.projectID != data.projectID) return;\r\n\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\tthis.status.isSettingHrus = false;\r\n\t\t\t\t\tthis.status.hasSetHrus = false;\r\n\t\t\t\t\tthis.$router.push({ name: 'ProjectHrus', params: { id: this.projectID }}).catch(err => {});\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.progress.percent = data.progress;\r\n\t\t\t\tthis.progress.message = data.statusMessage;\r\n\t\t\t},\r\n\t\t\tasync onZippingStatusChanged(data) {\r\n\t\t\t\tif (this.projectID != data.projectID) return;\r\n\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\t//await this.get(false);\n\t\t\t\t\tthis.status.isZipping = false;\r\n\t\t\t\t\tthis.$router.push({ name: 'ProjectDownloads', params: { id: this.projectID } }).catch(err => { });\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.progress.percent = data.progress;\r\n\t\t\t\tthis.progress.message = data.statusMessage;\r\n\t\t\t},\r\n\t\t\tasync onCopyingStatusChanged(data) {\r\n\t\t\t\tif (this.projectID != data.projectID) return;\r\n\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.progress.percent = data.progress;\r\n\t\t\t\tthis.progress.message = data.statusMessage;\r\n\t\t\t},\r\n\t\t\topenNewScenario() {\r\n\t\t\t\tthis.newScenario = {\r\n\t\t\t\t\tprojectID: this.projectID,\r\n\t\t\t\t\tname: this.project.scenarios.length > 0 ? '' : 'Default',\r\n\t\t\t\t\tstartingSimulationDate: undefined,\r\n\t\t\t\t\tendingSimulationDate: undefined,\r\n\t\t\t\t\tweatherDatasetID: undefined,\r\n\t\t\t\t\tclimateChangeScenarioID: undefined,\r\n\t\t\t\t\tclimateChangeTimePeriodID: undefined,\r\n\t\t\t\t\tswatVersionID: undefined,\r\n\t\t\t\t\tprintSetting: 1,\r\n\t\t\t\t\tskipYears: 2\r\n\t\t\t\t};\r\n\r\n\t\t\t\tthis.show.scenarioForm = true;\r\n\t\t\t},\r\n\t\t\tcancelOpenScenario() {\r\n\t\t\t\tthis.show.scenarioForm = false;\r\n\t\t\t},\r\n\t\t\topenHrus() {\r\n\t\t\t\tvar routeData = this.$router.resolve({ name: 'HruTable', params: { id: this.projectID } });\r\n\t\t\t\tvar features = \"resizable=yes,scrollbars=yes,status=yes,width=800,height=600\";\r\n\t\t\t\tif (this.hruWindow === null || this.hruWindow.closed) {\r\n\t\t\t\t\tthis.hruWindow = window.open(routeData.href, '_blank', features);\r\n\t\t\t\t\tthis.log(this.hruWindow);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (this.hruWindow.location.href != routeData.href)\r\n\t\t\t\t\t\tthis.hruWindow.location.assign(routeData.href);\r\n\t\t\t\t\tthis.hruWindow.focus();\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`projects/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'ProjectList' }).catch(err => {});\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tasync copyProject() {\r\n\t\t\t\tthis.page.copy.errors = [];\r\n\t\t\t\tthis.page.copy.saving = true;\r\n\r\n\t\t\t\tif (this.isNullOrEmpty(this.page.copy.name)) {\r\n\t\t\t\t\tthis.page.copy.errors.push('Please provide a name for the new project.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tvalue: this.page.copy.name\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.post(`projects/copy/${this.projectID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ProjectView', params: { id: response.data }}).catch(err => {});\r\n\t\t\t\t\t\tthis.page.copy.show = false;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.copy.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.copy.saving = false;\r\n\t\t\t},\r\n\t\t\tasync editProject() {\r\n\t\t\t\tthis.page.edit.errors = [];\r\n\t\t\t\tthis.page.edit.saving = true;\r\n\r\n\t\t\t\tif (this.isNullOrEmpty(this.page.edit.name)) {\r\n\t\t\t\t\tthis.page.copy.errors.push('Please provide a name for the project.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tvalue: this.page.edit.name\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.put(`projects/${this.projectID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.page.edit.show = false;\r\n\t\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.edit.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.edit.saving = false;\r\n\t\t\t},\r\n\t\t\tasync shareProject() {\r\n\t\t\t\tthis.page.share.errors = [];\r\n\t\t\t\tthis.page.share.saving = true;\r\n\r\n\t\t\t\tif (this.isNullOrEmpty(this.page.share.groupID)) {\r\n\t\t\t\t\tthis.page.share.errors.push('Please select a group.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.patch(`groups/share/${this.page.share.groupID}/${this.projectID}`, {}, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.page.share.currentItem = response.data;\r\n\t\t\t\t\t\tthis.groupOptions = _.remove(this.groupOptions, function (n) { return n.value !== response.data.value; });\r\n\t\t\t\t\t\tthis.project.groups.push(response.data);\r\n\t\t\t\t\t\tthis.page.share.groupID = null;\r\n\t\t\t\t\t\tthis.page.share.sharedSuccess = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.share.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.share.saving = false;\r\n\t\t\t},\r\n\t\t\tasync unshareProject(id) {\r\n\t\t\t\tthis.page.share.errors = [];\r\n\t\t\t\tthis.page.share.saving = true;\r\n\r\n\t\t\t\tif (!this.isNullOrEmpty(id)) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.patch(`groups/unshare/${id}/${this.projectID}`, {}, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.page.share.currentItem = response.data;\r\n\t\t\t\t\t\tthis.project.groups = _.remove(this.project.groups, function (n) { return n.value !== response.data.value; });\r\n\t\t\t\t\t\tthis.groupOptions.push(response.data);\r\n\t\t\t\t\t\tthis.page.share.unsharedSuccess = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.share.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.share.saving = false;\r\n\t\t\t},\r\n\t\t\tcloseShare() {\r\n\t\t\t\tthis.page.share.unsharedSuccess = false;\r\n\t\t\t\tthis.page.share.sharedSuccess = false;\r\n\t\t\t\tthis.page.share.show = false;\r\n\t\t\t},\r\n\t\t\tasync clearError() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.get(`projects/clearerror/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync submitErrorReport() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tthis.errorForm.exception = this.status.exceptionMessage;\r\n\t\t\t\t\tthis.errorForm.title = this.status.statusMessage;\r\n\t\t\t\t\tthis.errorForm.message = this.status.statusMessage;\r\n\t\t\t\t\tawait this.$http.post(`errorreports`, this.errorForm, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errorReport.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync abortZip() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.get(`projects/abortzip/${this.projectID}`, this.getTokenHeader());\n\t\t\t\t\tthis.page.abort.show = false;\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.abort.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tbreadCrumbs() {\r\n\t\t\t\tvar crumbs = [];\r\n\t\t\t\tfor (var i = 0; i < this.$route.matched.length; i++) {\r\n\t\t\t\t\tvar item = this.$route.matched[i];\r\n\t\t\t\t\tvar name = item.meta.title ? item.meta.title : item.name;\r\n\r\n\t\t\t\t\tif (item.name == \"ProjectView\") {\r\n\t\t\t\t\t\tname = this.project.name;\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse if (item.name == \"ScenarioView\") {\r\n\t\t\t\t\t\tname = this.project.currentScenarioName;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tcrumbs.push({\r\n\t\t\t\t\t\ttext: name,\r\n\t\t\t\t\t\tto: { name: item.name }\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\treturn crumbs;\r\n\t\t\t},\r\n\t\t\twithinTierLimits() {\r\n\t\t\t\tvar subsValid = this.tier.subbasinLimit === 0 || this.tier.subbasinLimit >= this.project.numSubbasins;\r\n\t\t\t\tvar hrusValid = this.tier.hruLimit === 0 || this.tier.hruLimit >= this.project.numHrus;\n\t\t\t\tvar datasetValid = this.tier.datasets.includes(this.project.datasetID) || this.isAuthorized(this.roleNames.admin) || this.isAuthorized(this.roleNames.partialAdmin);\r\n\t\t\t\treturn subsValid && hrusValid && datasetValid;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectView.vue?vue&type=template&id=4a1ae3a4&\"\nimport script from \"./ProjectView.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[(_vm.project.hasScenarios && !_vm.status.hasSetHrus)?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Review Project HRUs\")]),_c('p',[_vm._v(\" Your project has \"),_c('a',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"font-weight-bold\",attrs:{\"href\":_vm.project.hrusOriginalCsv,\"title\":\"Download CSV\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numHrus,0))+\" HRUs \"),_c('font-awesome-icon',{attrs:{\"icon\":\"file-csv\"}})],1),_vm._v(\". HRUs may not be modified after scenarios are created; you will need to delete all scenarios for this project or create a new project. Read the \"),_c('a',{attrs:{\"href\":\"https://hawqs.tamu.edu/content/docs/HAWQS2.0_HRUAggregation_Guidance.pdf\",\"target\":\"_blank\"}},[_vm._v(\"documentation\")]),_vm._v(\" on HRU aggregation. \")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-table',{attrs:{\"striped\":\"\",\"responsive\":\"\",\"small\":\"\",\"items\":_vm.project.originalGroups.landuse,\"fields\":_vm.landuseFields.slice(1)},scopedSlots:_vm._u([{key:\"cell(name)\",fn:function(data){return [_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":_vm.getLanduseDescription(data.item.name)}},[_vm._v(_vm._s(data.item.name))])]}},{key:\"cell(area)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")(data.item.area,2))+\" km \"),_c('sup',[_vm._v(\"2\")])]}},{key:\"cell(percent)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")((data.item.area / _vm.project.totalLandArea * 100),3))+\" % \")]}}],null,false,4001698524)})],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('highcharts',{attrs:{\"options\":_vm.charts.original.landuse}})],1)],1),_c('fixed-action-bar',[_c('router-link',{staticClass:\"btn btn-success mr-2\",attrs:{\"to\":`/projects/${_vm.projectID}/scenarios/create`}},[_vm._v(\"Create a scenario\")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1):(_vm.status.hasSetHrus)?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Review Project HRUs\")]),(_vm.project.method == 'Area')?_c('p',[_vm._v(\" You removed HRUs with an area less than \"),_c('strong',[_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.project.targetThreshold,2))+\" \"),(_vm.project.units == 'Percent')?_c('span',[_vm._v(\" % of each subbasin \")]):_c('span',[_vm._v(\" km\"),_c('sup',[_vm._v(\"2\")])])]),(_vm.project.exemptLanduse.length > 0)?_c('span',[_vm._v(\" (exempting land uses \"+_vm._s(_vm.project.exemptLanduse.join(', '))+\") \")]):_vm._e(),_vm._v(\" eliminating \"+_vm._s(_vm._f(\"number\")((_vm.project.numOriginalHrus - _vm.project.numHrus),0))+\" HRUs and redistributing \"+_vm._s(_vm._f(\"number\")(_vm.project.trimmedLanduseArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")]),_vm._v(\" of your project area\"),(_vm.project.noAreaRedistribution.length > 0)?_c('span',[_vm._v(\" (area was not redistributed in \"+_vm._s(_vm.project.noAreaRedistribution.join(', '))+\")\")]):_vm._e(),_vm._v(\". \")]):(_vm.project.method == 'TargetHrus')?_c('p',[_vm._v(\" You aimed to retain \"+_vm._s(_vm._f(\"number\")(_vm.project.targetThreshold,0))+\" HRUs \"),_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],attrs:{\"title\":\"We try to get as close to this number as possible, however it may not be exact due to landuse exemptions or ensuring all HRUs in the subbasin do not get eliminated.\"}},[_c('font-awesome-icon',{staticClass:\"text-info\",attrs:{\"icon\":\"info-circle\"}})],1),(_vm.project.exemptLanduse.length > 0)?_c('span',[_vm._v(\" (exempting land uses \"+_vm._s(_vm.project.exemptLanduse.join(', '))+\" from elimination) \")]):_vm._e(),_vm._v(\" which resulted in \"+_vm._s(_vm._f(\"number\")((_vm.project.numOriginalHrus - _vm.project.numHrus),0))+\" HRUs removed and \"+_vm._s(_vm._f(\"number\")(_vm.project.trimmedLanduseArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")]),_vm._v(\" of your project area redistributed\"),(_vm.project.noAreaRedistribution.length > 0)?_c('span',[_vm._v(\" (area was not redistributed in \"+_vm._s(_vm.project.noAreaRedistribution.join(', '))+\")\")]):_vm._e(),_vm._v(\". \")]):_vm._e(),_c('p',[_vm._v(\" Read the \"),_c('a',{attrs:{\"href\":\"https://hawqs.tamu.edu/content/docs/HAWQS2.0_HRUAggregation_Guidance.pdf\",\"target\":\"_blank\"}},[_vm._v(\"documentation\")]),_vm._v(\" on HRU aggregation. \")]),_c('table',{staticClass:\"table table-sm table-borderless mb-4\"},[_c('tbody',[_c('tr',[_c('td',{staticClass:\"min pl-0\"},[_c('a',{staticClass:\"btn btn-primary btn-sm\",attrs:{\"href\":_vm.project.hrusTrimmedCsv}},[_vm._v(\"Download \"),_c('font-awesome-icon',{attrs:{\"icon\":\"file-csv\"}})],1)]),_c('td',{staticClass:\"align-middle\"},[_c('b-progress',{attrs:{\"height\":\"1.875rem\",\"max\":_vm.project.numOriginalHrus}},[_c('b-progress-bar',{attrs:{\"value\":_vm.project.numHrus,\"label\":`${_vm.numberWithCommas(_vm.project.numHrus)} HRUs after thresholds applied`,\"variant\":\"primary\"}})],1)],1)]),_c('tr',[_c('td',{staticClass:\"min pl-0\"},[_c('a',{staticClass:\"btn btn-secondary btn-sm\",attrs:{\"href\":_vm.project.hrusOriginalCsv}},[_vm._v(\"Download \"),_c('font-awesome-icon',{attrs:{\"icon\":\"file-csv\"}})],1)]),_c('td',{staticClass:\"align-middle\"},[_c('b-progress',{attrs:{\"height\":\"1.875rem\",\"max\":_vm.project.numOriginalHrus}},[_c('b-progress-bar',{attrs:{\"value\":_vm.project.numOriginalHrus,\"label\":`${_vm.numberWithCommas(_vm.project.numOriginalHrus)} default HRUs`,\"variant\":\"secondary\"}})],1)],1)])])]),(!_vm.project.hasScenarios)?_c('p',[_c('save-button',{staticClass:\"btn btn-primary mr-2\",attrs:{\"saving\":_vm.page.saving,\"text\":\"Reset / Clear Thresholds\"},nativeOn:{\"click\":function($event){return _vm.reset.apply(null, arguments)}}})],1):_c('p',[_vm._v(\" HRUs may not be modified after scenarios are created; you will need to delete all scenarios for this project or create a new project. \")]),_c('b-row',{staticClass:\"mt-5\"},[_c('b-col',{attrs:{\"md\":\"5\"}},[_c('highcharts',{attrs:{\"options\":_vm.charts.trimmed.landuse}})],1),_c('b-col',{attrs:{\"md\":\"5\",\"offset\":\"1\"}},[_c('highcharts',{attrs:{\"options\":_vm.charts.original.landuse}})],1)],1),_c('h3',{staticClass:\"mt-5\"},[_vm._v(\"Distribution comparison tables\")]),_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-4\"}},[_c('b-tab',{attrs:{\"title\":\"Landuse\"}},[_c('table',{staticClass:\"table table-striped table-definitions table-responsive\"},[_c('thead',[_c('tr',{staticClass:\"bg-light\"},[_c('th'),_c('th',{staticClass:\"text-right border-right\",attrs:{\"colspan\":\"2\"}},[_vm._v(\"With thresholds applied\")]),_c('th',{staticClass:\"text-right\",attrs:{\"colspan\":\"2\"}},[_vm._v(\"Original\")])]),_c('tr',[_c('th',[_vm._v(\"Land Use\")]),_c('th',{staticClass:\"text-right\"},[_vm._v(\"Area\")]),_c('th',{staticClass:\"text-right border-right\"},[_vm._v(\"% of Total Area\")]),_c('th',{staticClass:\"text-right\"},[_vm._v(\"Area\")]),_c('th',{staticClass:\"text-right\"},[_vm._v(\"% of Total Area\")])])]),_c('tbody',_vm._l((_vm.landuseComparison),function(row,index){return _c('tr',{key:index},[_c('td',[_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":_vm.getLanduseDescription(row.name)}},[_vm._v(_vm._s(row.name))])]),(row.trimmedArea)?_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(row.trimmedArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])]):_c('td',{staticClass:\"text-right\"},[_vm._v(\"-\")]),(row.trimmedArea)?_c('td',{staticClass:\"text-right border-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(row.trimmedPercent,2))+\" %\")]):_c('td',{staticClass:\"text-right border-right\"},[_vm._v(\"-\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(row.originalArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(row.originalPercent,2))+\" %\")])])}),0)])]),_c('b-tab',{attrs:{\"title\":\"Soil\"}},[_c('p',[_vm._v(\"(after thresholds applied)\")]),_c('b-table',{staticStyle:{\"width\":\"auto\"},attrs:{\"striped\":\"\",\"head-variant\":\"light\",\"items\":_vm.project.trimmedGroups.soil,\"fields\":_vm.soilFields},scopedSlots:_vm._u([{key:\"cell(area)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")(data.item.area,2))+\" km \"),_c('sup',[_vm._v(\"2\")])]}},{key:\"cell(percent)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")((data.item.area / _vm.project.totalArea * 100),3))+\" % \")]}}])})],1),_c('b-tab',{attrs:{\"title\":\"Slope class\"}},[_c('p',[_vm._v(\"(after thresholds applied)\")]),_c('b-table',{staticClass:\"mb-3\",staticStyle:{\"width\":\"auto\"},attrs:{\"striped\":\"\",\"head-variant\":\"light\",\"items\":_vm.project.trimmedGroups.slope,\"fields\":_vm.slopeFields},scopedSlots:_vm._u([{key:\"cell(area)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")(data.item.area,2))+\" km \"),_c('sup',[_vm._v(\"2\")])]}},{key:\"cell(percent)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")((data.item.area / _vm.project.totalArea * 100),3))+\" % \")]}}])})],1)],1),_c('fixed-action-bar',[_c('router-link',{staticClass:\"btn btn-success mr-2\",attrs:{\"to\":`/projects/${_vm.projectID}/scenarios/create`}},[_vm._v(\"Create a scenario\")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1):_c('div',[_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Set Project HRUs\")]),_c('b-alert',{staticClass:\"mt-3\",attrs:{\"variant\":\"warning\",\"show\":!_vm.$parent.withinTierLimits}},[_vm._v(\" Your account tier limits you to \"+_vm._s(_vm._f(\"number\")(_vm.$parent.tier.hruLimit,0))+\" HRUs or fewer. Reduce the number of HRUs to the limit in order to create and run scenarios. \")]),_c('p',[_vm._v(\" Reduce the number of HRUs in your project for faster simulation runs. Your project has \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numSubbasins,0)))]),_vm._v(\" subbasins and \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numHrus,0)))]),_vm._v(\" HRUs covering a land area of \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.totalLandArea,3))+\" km\"),_c('sup',[_vm._v(\"2\")])]),_vm._v(\". \")]),_c('p',[_vm._v(\" Read the \"),_c('a',{attrs:{\"href\":\"https://hawqs.tamu.edu/content/docs/HAWQS2.0_HRUAggregation_Guidance.pdf\",\"target\":\"_blank\"}},[_vm._v(\"documentation\")]),_vm._v(\" on HRU aggregation. \")]),_c('error-list',{attrs:{\"errors\":_vm.formData.errors}}),_c('b-row',{staticClass:\"my-4\"},[_c('b-col',{attrs:{\"lg\":\"7\"}},[_c('div',{staticStyle:{\"max-width\":\"700px\"}},[_c('b-form-group',{attrs:{\"label\":\"Select a method for reducing HRUs:\"}},[_c('b-form-select',{attrs:{\"options\":_vm.hruReductionMethods},model:{value:(_vm.formData.method),callback:function ($$v) {_vm.$set(_vm.formData, \"method\", $$v)},expression:\"formData.method\"}},[(!_vm.isNullOrEmpty(_vm.iclusHruThreshold))?_c('b-form-select-option',{attrs:{\"value\":\"iclus\"}},[_vm._v(\"Set for use with Integrated Climate and Land Use Scenarios (ICLUS)\")]):_vm._e()],1)],1),_c('div',{staticClass:\"mt-4\"},[_vm._v(\" \"+_vm._s(_vm.hruReductionDescriptions[_vm.formData.method])+\" \"),(_vm.formData.method == 'iclus')?_c('span',[_vm._v(\" HRUs with an area less than \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.iclusHruThreshold,1))+\" km\"),_c('sup',[_vm._v(\"2\")])]),_vm._v(\" will be removed. \")]):_vm._e()]),(_vm.formData.method == 'targetHrus')?_c('b-row',{staticClass:\"align-items-center my-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"9\",\"sm\":\"10\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"min\":_vm.project.numSubbasins,\"max\":_vm.project.numOriginalHrus},model:{value:(_vm.formData.targetHrus),callback:function ($$v) {_vm.$set(_vm.formData, \"targetHrus\", $$v)},expression:\"formData.targetHrus\"}})],1),_c('b-col',[_c('b-form-input',{attrs:{\"size\":\"sm\",\"type\":\"number\",\"min\":_vm.project.numSubbasins,\"max\":_vm.project.numOriginalHrus},model:{value:(_vm.formData.targetHrus),callback:function ($$v) {_vm.$set(_vm.formData, \"targetHrus\", $$v)},expression:\"formData.targetHrus\"}})],1)],1):(_vm.formData.method == 'area')?_c('b-row',{staticClass:\"align-items-center my-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"8\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"step\":\"0.25\",\"min\":0,\"max\":_vm.formData.units == 'area' ? _vm.project.totalLandArea : 100},model:{value:(_vm.formData.minimumArea),callback:function ($$v) {_vm.$set(_vm.formData, \"minimumArea\", $$v)},expression:\"formData.minimumArea\"}})],1),_c('b-col',{attrs:{\"cols\":\"2\"}},[_c('b-form-input',{attrs:{\"size\":\"sm\",\"type\":\"number\",\"step\":\"any\",\"min\":0,\"max\":_vm.formData.units == 'area' ? _vm.project.totalLandArea : 100},model:{value:(_vm.formData.minimumArea),callback:function ($$v) {_vm.$set(_vm.formData, \"minimumArea\", $$v)},expression:\"formData.minimumArea\"}})],1),_c('b-col',{attrs:{\"cols\":\"2\"}},[_c('b-form-select',{attrs:{\"size\":\"sm\",\"options\":_vm.unitsOptions},on:{\"change\":_vm.setAreaLimit},model:{value:(_vm.formData.units),callback:function ($$v) {_vm.$set(_vm.formData, \"units\", $$v)},expression:\"formData.units\"}})],1)],1):(_vm.formData.method == 'landuseSoilSlope')?_c('div',[_c('div',{staticClass:\"form-inline mt-3\"},[_c('label',{staticClass:\"mr-2\",attrs:{\"for\":\"formUnits\"}},[_vm._v(\"Units\")]),_c('b-form-select',{attrs:{\"id\":\"formUnits\",\"options\":_vm.unitsOptions},on:{\"change\":_vm.setLSSLimit},model:{value:(_vm.formData.units),callback:function ($$v) {_vm.$set(_vm.formData, \"units\", $$v)},expression:\"formData.units\"}})],1),_c('b-row',{staticClass:\"align-items-center my-3\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"3\"}},[_vm._v(\"Land use threshold\")]),_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"9\",\"sm\":\"7\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"min\":0,\"max\":_vm.formData.units == 'area' ? _vm.project.totalLandArea : 100},model:{value:(_vm.form.landuseThreshold),callback:function ($$v) {_vm.$set(_vm.form, \"landuseThreshold\", $$v)},expression:\"form.landuseThreshold\"}})],1),_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"2\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":0,\"max\":_vm.formData.units == 'area' ? _vm.project.totalLandArea : 100},model:{value:(_vm.form.landuseThreshold),callback:function ($$v) {_vm.$set(_vm.form, \"landuseThreshold\", $$v)},expression:\"form.landuseThreshold\"}})],1)],1),_c('b-row',{staticClass:\"align-items-center my-3\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"3\"}},[_vm._v(\"Soil threshold\")]),_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"9\",\"sm\":\"7\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"min\":0,\"max\":_vm.formData.units == 'area' ? _vm.project.totalLandArea : 100},model:{value:(_vm.form.soilThreshold),callback:function ($$v) {_vm.$set(_vm.form, \"soilThreshold\", $$v)},expression:\"form.soilThreshold\"}})],1),_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"2\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":0,\"max\":_vm.formData.units == 'area' ? _vm.project.totalLandArea : 100},model:{value:(_vm.form.soilThreshold),callback:function ($$v) {_vm.$set(_vm.form, \"soilThreshold\", $$v)},expression:\"form.soilThreshold\"}})],1)],1),_c('b-row',{staticClass:\"align-items-center my-3\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"3\"}},[_vm._v(\"Slope threshold\")]),_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"9\",\"sm\":\"7\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"min\":0,\"max\":_vm.formData.units == 'area' ? _vm.project.totalLandArea : 100},model:{value:(_vm.form.slopeThreshold),callback:function ($$v) {_vm.$set(_vm.form, \"slopeThreshold\", $$v)},expression:\"form.slopeThreshold\"}})],1),_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"2\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":0,\"max\":_vm.formData.units == 'area' ? _vm.project.totalLandArea : 100},model:{value:(_vm.form.slopeThreshold),callback:function ($$v) {_vm.$set(_vm.form, \"slopeThreshold\", $$v)},expression:\"form.slopeThreshold\"}})],1)],1)],1):_vm._e(),(_vm.formData.method != 'dominantHru')?_c('div',{staticClass:\"text-muted mt-4\"},[_c('font-awesome-icon',{staticClass:\"mr-1 text-info\",attrs:{\"icon\":\"info-circle\"}}),_c('em',[_vm._v(\"Please note: one HRU per subbasin will always be retained.\")])],1):_vm._e()],1)]),_c('b-col',{attrs:{\"lg\":\"\"}},[_c('highcharts',{attrs:{\"options\":_vm.charts.original.landuse}})],1)],1),_c('hr',{staticClass:\"my-4\"}),(_vm.formData.method == 'iclus')?_c('div',[_c('p',[_vm._v(\" For ICLUS, water and wetland land use are exempt and retained. The exemptions below cannot be changed when the ICLUS method is selected. \")])]):_c('div',[_c('p',[_vm._v(\" In the table below, check the box in the \\\"Exempt\\\" column for any land use that you would like to exempt from elimination. Check the \\\"Retain Area\\\" column next to any land use you do not want to redistribute area to during HRU elimination (e.g., if you have a WATR HRU with area of 10km\"),_c('sup',[_vm._v(\"2\")]),_vm._v(\", if you check the \\\"Retain Area\\\" box, it will remain 10km\"),_c('sup',[_vm._v(\"2\")]),_vm._v(\"; if you do not check the box, the area will increase proportionally based on its fraction of total area in the subbasin). \")]),_c('p',[_vm._v(\" Any water and wetland land use are exempt and retained by default. \")])]),_c('b-table',{attrs:{\"striped\":\"\",\"responsive\":\"\",\"small\":\"\",\"items\":_vm.project.originalGroups.landuse,\"fields\":_vm.landuseFields},scopedSlots:_vm._u([{key:\"cell(exempt)\",fn:function(data){return [_c('b-form-checkbox',{attrs:{\"value\":data.item.name,\"disabled\":_vm.formData.method == 'iclus'},model:{value:(_vm.form.exemptLanduse),callback:function ($$v) {_vm.$set(_vm.form, \"exemptLanduse\", $$v)},expression:\"form.exemptLanduse\"}})]}},{key:\"cell(noRedistrib)\",fn:function(data){return [_c('b-form-checkbox',{attrs:{\"value\":data.item.name,\"disabled\":_vm.formData.method == 'iclus'},model:{value:(_vm.form.noAreaRedistribution),callback:function ($$v) {_vm.$set(_vm.form, \"noAreaRedistribution\", $$v)},expression:\"form.noAreaRedistribution\"}})]}},{key:\"cell(name)\",fn:function(data){return [_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"title\":_vm.getLanduseDescription(data.item.name)}},[_vm._v(_vm._s(data.item.name))])]}},{key:\"cell(description)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.getLanduseDescription(data.item.name))+\" \")]}},{key:\"cell(area)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")(data.item.area,2))+\" km \"),_c('sup',[_vm._v(\"2\")])]}},{key:\"cell(percent)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")((data.item.area / _vm.project.totalLandArea * 100),3))+\" % \")]}}])}),_c('fixed-action-bar',[_c('save-button',{staticClass:\"btn btn-primary mr-2\",attrs:{\"saving\":_vm.page.saving}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<div v-if=\"project.hasScenarios && !status.hasSetHrus\">\r\n\t\t\t\t<h2 class=\"mb-3\">Review Project HRUs</h2>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tYour project has <a :href=\"project.hrusOriginalCsv\" class=\"font-weight-bold\" v-b-tooltip.hover title=\"Download CSV\">{{project.numHrus | number(0)}} HRUs <font-awesome-icon icon=\"file-csv\" /></a>.\r\n\t\t\t\t\tHRUs may not be modified after scenarios are created; you will need to delete all scenarios for this project or create a new project.\r\n\t\t\t\t\tRead the <a href=\"https://hawqs.tamu.edu/content/docs/HAWQS2.0_HRUAggregation_Guidance.pdf\" target=\"_blank\">documentation</a> on HRU aggregation.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-table striped responsive small\r\n\t\t\t\t\t\t\t\t :items=\"project.originalGroups.landuse\"\r\n\t\t\t\t\t\t\t\t :fields=\"landuseFields.slice(1)\">\r\n\t\t\t\t\t\t\t<template v-slot:cell(name)=\"data\">\r\n\t\t\t\t\t\t\t\t<span v-b-tooltip.hover :title=\"getLanduseDescription(data.item.name)\">{{data.item.name}}</span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(area)=\"data\">\r\n\t\t\t\t\t\t\t\t{{data.item.area | number(2)}} km\r\n\t\t\t\t\t\t\t\t<sup>2</sup>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(percent)=\"data\">\r\n\t\t\t\t\t\t\t\t{{(data.item.area / project.totalLandArea * 100) | number(3)}} %\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<highcharts :options=\"charts.original.landuse\"></highcharts>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<router-link :to=\"`/projects/${projectID}/scenarios/create`\" class=\"btn btn-success mr-2\">Create a scenario</router-link>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"status.hasSetHrus\">\r\n\t\t\t\t<h2 class=\"mb-3\">Review Project HRUs</h2>\r\n\r\n\t\t\t\t<p v-if=\"project.method == 'Area'\">\r\n\t\t\t\t\tYou removed HRUs with an area less than\r\n\t\t\t\t\t<strong>\r\n\t\t\t\t\t\t{{project.targetThreshold | number(2)}}\r\n\t\t\t\t\t\t<span v-if=\"project.units == 'Percent'\">\r\n\t\t\t\t\t\t\t% of each subbasin\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<span v-else>\r\n\t\t\t\t\t\t\tkm<sup>2</sup>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</strong>\r\n\t\t\t\t\t<span v-if=\"project.exemptLanduse.length > 0\">\r\n\t\t\t\t\t\t(exempting land uses {{project.exemptLanduse.join(', ')}})\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\teliminating {{(project.numOriginalHrus - project.numHrus) | number(0)}} HRUs and redistributing\r\n\t\t\t\t\t{{project.trimmedLanduseArea | number(2)}} km<sup>2</sup> of your project area<span v-if=\"project.noAreaRedistribution.length > 0\"> (area was not redistributed in {{project.noAreaRedistribution.join(', ')}})</span>.\r\n\t\t\t\t</p>\r\n\t\t\t\t<p v-else-if=\"project.method == 'TargetHrus'\">\r\n\t\t\t\t\tYou aimed to retain {{project.targetThreshold | number(0)}} HRUs\r\n\t\t\t\t\t<span v-b-tooltip.hover.bottom title=\"We try to get as close to this number as possible, however it may not be exact due to landuse exemptions or ensuring all HRUs in the subbasin do not get eliminated.\">\r\n\t\t\t\t\t\t<font-awesome-icon icon=\"info-circle\" class=\"text-info\" />\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<span v-if=\"project.exemptLanduse.length > 0\">\r\n\t\t\t\t\t\t(exempting land uses {{project.exemptLanduse.join(', ')}} from elimination)\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\twhich resulted in {{(project.numOriginalHrus - project.numHrus) | number(0)}} HRUs removed and\r\n\t\t\t\t\t{{project.trimmedLanduseArea | number(2)}} km<sup>2</sup> of your project area redistributed<span v-if=\"project.noAreaRedistribution.length > 0\"> (area was not redistributed in {{project.noAreaRedistribution.join(', ')}})</span>.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tRead the <a href=\"https://hawqs.tamu.edu/content/docs/HAWQS2.0_HRUAggregation_Guidance.pdf\" target=\"_blank\">documentation</a> on HRU aggregation.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<table class=\"table table-sm table-borderless mb-4\">\r\n\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"min pl-0\">\r\n\t\t\t\t\t\t\t\t<a :href=\"project.hrusTrimmedCsv\" class=\"btn btn-primary btn-sm\">Download <font-awesome-icon icon=\"file-csv\" /></a>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td class=\"align-middle\">\r\n\t\t\t\t\t\t\t\t<b-progress height=\"1.875rem\" :max=\"project.numOriginalHrus\">\r\n\t\t\t\t\t\t\t\t\t<b-progress-bar :value=\"project.numHrus\" :label=\"`${numberWithCommas(project.numHrus)} HRUs after thresholds applied`\" variant=\"primary\"></b-progress-bar>\r\n\t\t\t\t\t\t\t\t</b-progress>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t<td class=\"min pl-0\">\r\n\t\t\t\t\t\t\t\t<a :href=\"project.hrusOriginalCsv\" class=\"btn btn-secondary btn-sm\">Download <font-awesome-icon icon=\"file-csv\" /></a>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t<td class=\"align-middle\">\r\n\t\t\t\t\t\t\t\t<b-progress height=\"1.875rem\" :max=\"project.numOriginalHrus\">\r\n\t\t\t\t\t\t\t\t\t<b-progress-bar :value=\"project.numOriginalHrus\" :label=\"`${numberWithCommas(project.numOriginalHrus)} default HRUs`\" variant=\"secondary\"></b-progress-bar>\r\n\t\t\t\t\t\t\t\t</b-progress>\r\n\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t</tbody>\r\n\t\t\t\t</table>\r\n\r\n\t\t\t\t<p v-if=\"!project.hasScenarios\">\r\n\t\t\t\t\t<save-button class=\"btn btn-primary mr-2\" :saving=\"page.saving\" @click.native=\"reset\" text=\"Reset / Clear Thresholds\" />\r\n\t\t\t\t</p>\r\n\t\t\t\t<p v-else>\r\n\t\t\t\t\tHRUs may not be modified after scenarios are created; you will need to delete all scenarios for this project or create a new project.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<b-row class=\"mt-5\">\r\n\t\t\t\t\t<b-col md=\"5\">\r\n\t\t\t\t\t\t<highcharts :options=\"charts.trimmed.landuse\"></highcharts>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md=\"5\" offset=\"1\">\r\n\t\t\t\t\t\t<highcharts :options=\"charts.original.landuse\"></highcharts>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<h3 class=\"mt-5\">Distribution comparison tables</h3>\r\n\r\n\t\t\t\t<b-tabs content-class=\"mt-4\" class=\"page-nav-tabs\">\r\n\t\t\t\t\t<b-tab title=\"Landuse\">\r\n\t\t\t\t\t\t<table class=\"table table-striped table-definitions table-responsive\">\r\n\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t<tr class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t\t<th></th>\r\n\t\t\t\t\t\t\t\t\t<th class=\"text-right border-right\" colspan=\"2\">With thresholds applied</th>\r\n\t\t\t\t\t\t\t\t\t<th class=\"text-right\" colspan=\"2\">Original</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<th>Land Use</th>\r\n\t\t\t\t\t\t\t\t\t<th class=\"text-right\">Area</th>\r\n\t\t\t\t\t\t\t\t\t<th class=\"text-right border-right\">% of Total Area</th>\r\n\t\t\t\t\t\t\t\t\t<th class=\"text-right\">Area</th>\r\n\t\t\t\t\t\t\t\t\t<th class=\"text-right\">% of Total Area</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t<tr v-for=\"(row, index) in landuseComparison\" :key=\"index\">\r\n\t\t\t\t\t\t\t\t\t<td><span v-b-tooltip.hover :title=\"getLanduseDescription(row.name)\">{{row.name}}</span></td>\r\n\t\t\t\t\t\t\t\t\t<td class=\"text-right\" v-if=\"row.trimmedArea\">{{row.trimmedArea | number(2)}} km<sup>2</sup></td>\r\n\t\t\t\t\t\t\t\t\t<td class=\"text-right\" v-else>-</td>\r\n\t\t\t\t\t\t\t\t\t<td class=\"text-right border-right\" v-if=\"row.trimmedArea\">{{row.trimmedPercent | number(2)}} %</td>\r\n\t\t\t\t\t\t\t\t\t<td class=\"text-right border-right\" v-else>-</td>\r\n\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{row.originalArea | number(2)}} km<sup>2</sup></td>\r\n\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{row.originalPercent | number(2)}} %</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t<b-tab title=\"Soil\">\r\n\t\t\t\t\t\t<p>(after thresholds applied)</p>\r\n\t\t\t\t\t\t<b-table striped head-variant=\"light\" style=\"width:auto\"\r\n\t\t\t\t\t\t\t\t :items=\"project.trimmedGroups.soil\"\r\n\t\t\t\t\t\t\t\t :fields=\"soilFields\">\r\n\t\t\t\t\t\t\t<template v-slot:cell(area)=\"data\">\r\n\t\t\t\t\t\t\t\t{{data.item.area | number(2)}} km\r\n\t\t\t\t\t\t\t\t<sup>2</sup>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(percent)=\"data\">\r\n\t\t\t\t\t\t\t\t{{(data.item.area / project.totalArea * 100) | number(3)}} %\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t<b-tab title=\"Slope class\">\r\n\t\t\t\t\t\t<p>(after thresholds applied)</p>\r\n\t\t\t\t\t\t<b-table striped head-variant=\"light\" class=\"mb-3\" style=\"width:auto\"\r\n\t\t\t\t\t\t\t\t :items=\"project.trimmedGroups.slope\"\r\n\t\t\t\t\t\t\t\t :fields=\"slopeFields\">\r\n\t\t\t\t\t\t\t<template v-slot:cell(area)=\"data\">\r\n\t\t\t\t\t\t\t\t{{data.item.area | number(2)}} km\r\n\t\t\t\t\t\t\t\t<sup>2</sup>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(percent)=\"data\">\r\n\t\t\t\t\t\t\t\t{{(data.item.area / project.totalArea * 100) | number(3)}} %\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t</b-tabs>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<router-link :to=\"`/projects/${projectID}/scenarios/create`\" class=\"btn btn-success mr-2\">Create a scenario</router-link>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t<h2 class=\"mb-3\">Set Project HRUs</h2>\r\n\r\n\t\t\t\t\t<b-alert variant=\"warning\" :show=\"!$parent.withinTierLimits\" class=\"mt-3\">\r\n\t\t\t\t\t\tYour account tier limits you to {{$parent.tier.hruLimit | number(0)}} HRUs or fewer.\r\n\t\t\t\t\t\tReduce the number of HRUs to the limit in order to create and run scenarios.\r\n\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tReduce the number of HRUs in your project for faster simulation runs.\r\n\t\t\t\t\t\tYour project has <strong>{{project.numSubbasins | number(0)}}</strong> subbasins and\r\n\t\t\t\t\t\t<strong>{{project.numHrus | number(0)}}</strong> HRUs covering a land area of\r\n\t\t\t\t\t\t<strong>{{project.totalLandArea | number(3)}} km<sup>2</sup></strong>.\r\n\t\t\t\t\t</p>\n\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tRead the <a href=\"https://hawqs.tamu.edu/content/docs/HAWQS2.0_HRUAggregation_Guidance.pdf\" target=\"_blank\">documentation</a> on HRU aggregation.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<error-list :errors=\"formData.errors\"></error-list>\r\n\n\t\t\t\t\t<b-row class=\"my-4\">\n\t\t\t\t\t\t<b-col lg=\"7\">\r\n\t\t\t\t\t\t\t<div style=\"max-width:700px\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Select a method for reducing HRUs:\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"formData.method\" :options=\"hruReductionMethods\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option v-if=\"!isNullOrEmpty(iclusHruThreshold)\" value=\"iclus\">Set for use with Integrated Climate and Land Use Scenarios (ICLUS)</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t{{hruReductionDescriptions[formData.method]}}\r\n\t\t\t\t\t\t\t\t\t<span v-if=\"formData.method == 'iclus'\">\r\n\t\t\t\t\t\t\t\t\t\tHRUs with an area less than <strong>{{iclusHruThreshold | number(1)}} km<sup>2</sup></strong> will be removed.\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<b-row v-if=\"formData.method == 'targetHrus'\" class=\"align-items-center my-3\">\r\n\t\t\t\t\t\t\t\t\t<b-col cols=\"9\" sm=\"10\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"formData.targetHrus\" type=\"range\" :min=\"project.numSubbasins\" :max=\"project.numOriginalHrus\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input size=\"sm\" v-model=\"formData.targetHrus\" type=\"number\" :min=\"project.numSubbasins\" :max=\"project.numOriginalHrus\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t<b-row v-else-if=\"formData.method == 'area'\" class=\"align-items-center my-3\">\r\n\t\t\t\t\t\t\t\t\t<b-col cols=\"8\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"formData.minimumArea\" type=\"range\" step=\"0.25\" :min=\"0\" :max=\"formData.units == 'area' ? project.totalLandArea : 100\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col cols=\"2\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input size=\"sm\" v-model=\"formData.minimumArea\" type=\"number\" step=\"any\" :min=\"0\" :max=\"formData.units == 'area' ? project.totalLandArea : 100\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col cols=\"2\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select size=\"sm\" v-model=\"formData.units\" :options=\"unitsOptions\" @change=\"setAreaLimit\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t<div v-else-if=\"formData.method == 'landuseSoilSlope'\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"form-inline mt-3\">\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"formUnits\" class=\"mr-2\">Units</label>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select id=\"formUnits\" v-model=\"formData.units\" :options=\"unitsOptions\" @change=\"setLSSLimit\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-row class=\"align-items-center my-3\">\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"12\" sm=\"3\">Land use threshold</b-col>\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"9\" sm=\"7\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.landuseThreshold\" type=\"range\" :min=\"0\" :max=\"formData.units == 'area' ? project.totalLandArea : 100\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"3\" sm=\"2\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.landuseThreshold\" type=\"number\" :min=\"0\" :max=\"formData.units == 'area' ? project.totalLandArea : 100\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-row class=\"align-items-center my-3\">\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"12\" sm=\"3\">Soil threshold</b-col>\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"9\" sm=\"7\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.soilThreshold\" type=\"range\" :min=\"0\" :max=\"formData.units == 'area' ? project.totalLandArea : 100\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"3\" sm=\"2\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.soilThreshold\" type=\"number\" :min=\"0\" :max=\"formData.units == 'area' ? project.totalLandArea : 100\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-row class=\"align-items-center my-3\">\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"12\" sm=\"3\">Slope threshold</b-col>\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"9\" sm=\"7\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.slopeThreshold\" type=\"range\" :min=\"0\" :max=\"formData.units == 'area' ? project.totalLandArea : 100\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t<b-col cols=\"3\" sm=\"2\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.slopeThreshold\" type=\"number\" :min=\"0\" :max=\"formData.units == 'area' ? project.totalLandArea : 100\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"formData.method != 'dominantHru'\" class=\"text-muted mt-4\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon icon=\"info-circle\" class=\"mr-1 text-info\" />\r\n\t\t\t\t\t\t\t\t\t<em>Please note: one HRU per subbasin will always be retained.</em>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\n\t\t\t\t\t\t<b-col lg>\r\n\t\t\t\t\t\t\t<highcharts :options=\"charts.original.landuse\"></highcharts>\r\n\t\t\t\t\t\t</b-col>\n\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t<hr class=\"my-4\" />\n\n\t\t\t\t\t<div v-if=\"formData.method == 'iclus'\">\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tFor ICLUS, water and wetland land use are exempt and retained. The exemptions below cannot be changed when the ICLUS method is selected.\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t</div>\n\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tIn the table below, check the box in the \"Exempt\" column for any land use that you would like to exempt from elimination.\r\n\t\t\t\t\t\t\tCheck the \"Retain Area\" column next to any land use you do not want to redistribute area to during HRU elimination\r\n\t\t\t\t\t\t\t(e.g., if you have a WATR HRU with area of 10km<sup>2</sup>, if you check the \"Retain Area\" box, it will remain 10km<sup>2</sup>;\r\n\t\t\t\t\t\t\tif you do not check the box, the area will increase proportionally based on its fraction of total area in the subbasin).\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tAny water and wetland land use are exempt and retained by default.\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<b-table striped responsive small\r\n\t\t\t\t\t\t\t :items=\"project.originalGroups.landuse\"\r\n\t\t\t\t\t\t\t :fields=\"landuseFields\">\r\n\t\t\t\t\t\t<template v-slot:cell(exempt)=\"data\">\r\n\t\t\t\t\t\t\t<b-form-checkbox v-model=\"form.exemptLanduse\" :value=\"data.item.name\" :disabled=\"formData.method == 'iclus'\"></b-form-checkbox>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t<template v-slot:cell(noRedistrib)=\"data\">\r\n\t\t\t\t\t\t\t<b-form-checkbox v-model=\"form.noAreaRedistribution\" :value=\"data.item.name\" :disabled=\"formData.method == 'iclus'\"></b-form-checkbox>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t<template v-slot:cell(name)=\"data\">\r\n\t\t\t\t\t\t\t<span v-b-tooltip.hover :title=\"getLanduseDescription(data.item.name)\">{{data.item.name}}</span>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t<template v-slot:cell(description)=\"data\">\r\n\t\t\t\t\t\t\t{{getLanduseDescription(data.item.name)}}\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t<template v-slot:cell(area)=\"data\">\r\n\t\t\t\t\t\t\t{{data.item.area | number(2)}} km\r\n\t\t\t\t\t\t\t<sup>2</sup>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t<template v-slot:cell(percent)=\"data\">\r\n\t\t\t\t\t\t\t{{(data.item.area / project.totalLandArea * 100) | number(3)}} %\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-table>\r\n\r\n\t\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t\t<save-button class=\"btn btn-primary mr-2\" :saving=\"page.saving\" />\r\n\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t</b-form>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'ProjectHrus',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\tproject: {\r\n\t\t\t\t\tcharts: {},\r\n\t\t\t\t\texemptLanduse: [],\r\n\t\t\t\t\toriginalGroups: {}\r\n\t\t\t\t},\r\n\t\t\t\tstatus: {\r\n\t\t\t\t\thasError: false,\r\n\t\t\t\t\tisSettingHrus: false,\r\n\t\t\t\t\thasSetHrus: false\r\n\t\t\t\t},\n\t\t\t\tcropCodes: [],\n\t\t\t\tdefaultWetlands: [],\n\t\t\t\ticlusHruThreshold: null,\r\n\t\t\t\tprogress: {\r\n\t\t\t\t\tpercent: 0,\r\n\t\t\t\t\tmessage: 'Please wait...'\r\n\t\t\t\t},\r\n\t\t\t\tcharts: {\r\n\t\t\t\t\toriginal: {\r\n\t\t\t\t\t\tlanduse: {},\r\n\t\t\t\t\t\tsoil: {},\r\n\t\t\t\t\t\tslope: {}\r\n\t\t\t\t\t},\r\n\t\t\t\t\ttrimmed: {\r\n\t\t\t\t\t\tlanduse: {},\r\n\t\t\t\t\t\tsoil: {},\r\n\t\t\t\t\t\tslope: {}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\t\tmethod: 'area',\r\n\t\t\t\t\ttargetThreshold: 0,\r\n\t\t\t\t\tlanduseThreshold: 0,\r\n\t\t\t\t\tsoilThreshold: 0,\r\n\t\t\t\t\tslopeThreshold: 0,\r\n\t\t\t\t\texemptLanduse: [],\r\n\t\t\t\t\tnoAreaRedistribution: [],\r\n\t\t\t\t\tunits: 'none'\r\n\t\t\t\t},\r\n\t\t\t\tformData: {\r\n\t\t\t\t\tmethod: 'area',\r\n\t\t\t\t\ttargetHrus: 0,\r\n\t\t\t\t\tminimumArea: 1,\r\n\t\t\t\t\tunits: 'area',\r\n\t\t\t\t\terrors: []\r\n\t\t\t\t},\r\n\t\t\t\tunitsOptions: [\r\n\t\t\t\t\t{ value: 'area', text: 'km2' },\r\n\t\t\t\t\t{ value: 'percent', text: '%' }\r\n\t\t\t\t],\r\n\t\t\t\tlanduseFields: [\r\n\t\t\t\t\t{ key: 'exempt', label: 'Exempt', sortable: false, class: 'text-center' },\r\n\t\t\t\t\t{ key: 'noRedistrib', label: 'Retain Area', sortable: false, class: 'text-center' },\r\n\t\t\t\t\t{ key: 'name', label: 'Land Use', sortable: true },\r\n\t\t\t\t\t{ key: 'description', label: 'Description', sortable: true },\r\n\t\t\t\t\t{ key: 'area', sortable: true, class: 'text-right' },\r\n\t\t\t\t\t{ key: 'percent', label: '% of Total Area', sortable: false, class: 'text-right' }\r\n\t\t\t\t],\r\n\t\t\t\tsoilFields: [\r\n\t\t\t\t\t{ key: 'name', label: 'Soil', sortable: false },\r\n\t\t\t\t\t{ key: 'area', sortable: false, class: 'text-right' },\r\n\t\t\t\t\t{ key: 'percent', label: '% of Total Area', sortable: false, class: 'text-right' }\r\n\t\t\t\t],\r\n\t\t\t\tslopeFields: [\r\n\t\t\t\t\t{ key: 'name', label: 'Slope Class', sortable: false },\r\n\t\t\t\t\t{ key: 'area', sortable: false, class: 'text-right' },\r\n\t\t\t\t\t{ key: 'percent', label: '% of Total Area', sortable: false, class: 'text-right' }\r\n\t\t\t\t],\r\n\t\t\t\thruReductionMethods: [\r\n\t\t\t\t\t{ value: 'area', text: 'Set by area' },\r\n\t\t\t\t\t{ value: 'targetHrus', text: 'Target number of HRUs' },\r\n\t\t\t\t\t//{ value: 'dominantHru', text: 'Dominant HRU' },\r\n\t\t\t\t\t//{ value: 'landuseSoilSlope', text: 'Filter by landuse, soil, and slope' }\r\n\t\t\t\t],\r\n\t\t\t\thruReductionDescriptions: {\r\n\t\t\t\t\t'area': 'Enter a minimum area threshold. HRUs with an area less than this threshold will be removed.',\r\n\t\t\t\t\t'targetHrus': 'Select a target number of HRUs to be retained. HRUs with the smallest area will be removed.',\r\n\t\t\t\t\t'dominantHru': 'This method will keep one HRU per subbasin, the HRU with the largest area.',\r\n\t\t\t\t\t'landuseSoilSlope': 'Enter minimum land use, soil, and slope thresholds below. HRUs with land uses, soils, or slopes that cover area less than the threshold levels will be removed.',\n\t\t\t\t\t'iclus': 'ICLUS require specific HRU reduction settings to run. Select this option if you intend to run these scenarios.'\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`projects/hrus/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.project = response.data.project;\r\n\t\t\t\t\tthis.status = response.data.status;\n\t\t\t\t\tthis.cropCodes = response.data.cropCodes;\n\t\t\t\t\tthis.defaultWetlands = response.data.defaultWetlands;\n\t\t\t\t\tthis.iclusHruThreshold = response.data.iclusHruThreshold;\n\n\t\t\t\t\tthis.form.exemptLanduse = this.defaultWetlands;\n\t\t\t\t\tthis.form.noAreaRedistribution = this.defaultWetlands;\r\n\r\n\t\t\t\t\tthis.charts.original.landuse = this.getPieChart('Land Use Distribution', this.project.charts.original.landuse);\n\n\t\t\t\t\tif (this.project.exemptLanduse === null) this.project.exemptLanduse = [];\n\t\t\t\t\tif (this.project.noAreaRedistribution === null) this.project.noAreaRedistribution = [];\r\n\r\n\t\t\t\t\tif (this.status.hasSetHrus) {\r\n\t\t\t\t\t\tthis.charts.original.landuse.title.text = 'Default Land Use Distribution';\r\n\t\t\t\t\t\tthis.charts.trimmed.landuse = this.getPieChart('Land Use Distribution With Thresholds Applied', this.project.charts.trimmed.landuse);\r\n\r\n\t\t\t\t\t\t/*this.charts.original.soil = this.getPieChart('Default Soil Distribution', this.project.charts.original.soil);\r\n\t\t\t\t\t\tthis.charts.trimmed.soil = this.getPieChart('Soil Distribution With Thresholds Applied', this.project.charts.trimmed.soil);\r\n\r\n\t\t\t\t\t\tthis.charts.original.slope = this.getPieChart('Default Slope Class Distribution', this.project.charts.original.slope);\r\n\t\t\t\t\t\tthis.charts.trimmed.slope = this.getPieChart('Slope Class Distribution With Thresholds Applied', this.project.charts.trimmed.slope);*/\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.formData.targetHrus = Math.ceil(this.project.numOriginalHrus * 0.75);\n\n\t\t\t\t\tif (!this.isNullOrEmpty(response.data.defaultHruThreshold)) {\n\t\t\t\t\t\tthis.formData.minimumArea = response.data.defaultHruThreshold;\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\n\t\t\tsetIclus() {\n\t\t\t\tif (!this.isNullOrEmpty(this.iclusHruThreshold) && this.formData.method == 'iclus') {\n\t\t\t\t\tthis.form.method = 'area';\r\n\t\t\t\t\tthis.form.targetThreshold = this.iclusHruThreshold;\n\t\t\t\t\tthis.formData.minimumArea = this.iclusHruThreshold;\n\t\t\t\t\tthis.form.units = 'area';\n\t\t\t\t\tthis.formData.units = 'area';\r\n\t\t\t\t\tthis.form.exemptLanduse = this.defaultWetlands;\n\t\t\t\t\tthis.form.noAreaRedistribution = this.defaultWetlands;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tgetPieChart(title, data) {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tplotOptions: { pie: { dataLabels: { enabled: false }, showInLegend: true } },\r\n\t\t\t\t\ttitle: { text: title },\r\n\t\t\t\t\ttooltip: { pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b> ({point.additional} km<sup>2</sup>)' },\r\n\t\t\t\t\tseries: [{ data: data, name: 'Area', type: 'pie' }]\r\n\t\t\t\t};\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.formData.errors = [];\r\n\r\n\t\t\t\tif (this.formData.method == 'area') {\r\n\t\t\t\t\tthis.form.method = 'area';\r\n\t\t\t\t\tthis.form.targetThreshold = this.formData.minimumArea;\r\n\t\t\t\t\tthis.form.units = this.formData.units;\r\n\t\t\t\t} else if (this.formData.method == 'targetHrus') {\r\n\t\t\t\t\tthis.form.method = 'targetHrus';\r\n\t\t\t\t\tthis.form.targetThreshold = this.formData.targetHrus;\r\n\t\t\t\t} else if (this.formData.method == 'iclus') {\r\n\t\t\t\t\tthis.setIclus();\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.form.projectID = this.projectID;\r\n\t\t\t\tif (this.form.targetThreshold <= 0) {\r\n\t\t\t\t\tthis.formData.errors.push('You must enter a threshold greater than 0.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tawait this.$http.post('projects/hrus', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ProjectView', params: { id: this.projectID } }).catch(err => { this.log(err); });\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.formData.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync reset() {\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.page.errors = [];\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.patch(`projects/hrus/reset/${this.projectID}`, {}, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tsetAreaLimit() {\r\n\t\t\t\tif (this.formData.units == 'percent' && this.formData.minimumArea > 100) {\r\n\t\t\t\t\tthis.formData.minimumArea = 0;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tsetLSSLimit() {\r\n\t\t\t\tif (this.formData.units == 'percent') {\r\n\t\t\t\t\tif (this.form.landuseThreshold > 100) this.form.landuseThreshold = 0;\r\n\t\t\t\t\tif (this.form.soilThreshold > 100) this.form.soilThreshold = 0;\r\n\t\t\t\t\tif (this.form.slopeThreshold > 100) this.form.slopeThreshold = 0;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfindGroupRow(group, name) {\r\n\t\t\t\tvar index = group.findIndex(x => x.name == name);\r\n\t\t\t\tif (index > -1)\r\n\t\t\t\t\treturn group[index];\r\n\r\n\t\t\t\treturn undefined;\r\n\t\t\t},\n\t\t\tgetLanduseDescription(name) {\n\t\t\t\tif (this.cropCodes.length > 0) {\n\t\t\t\t\tvar filtered = this.cropCodes.filter(function (el) { return el.code === name; });\r\n\t\t\t\t\tif (filtered.length > 0) return filtered[0].name;\r\n\t\t\t\t}\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tlanduseComparison() {\r\n\t\t\t\tvar landuses = [];\r\n\t\t\t\tvar original = this.project.originalGroups.landuse;\r\n\t\t\t\tvar trimmed = this.project.trimmedGroups.landuse;\r\n\r\n\t\t\t\tfor (var i = 0; i < original.length; i++) {\r\n\t\t\t\t\tvar trimmedLanduse = this.findGroupRow(trimmed, original[i].name);\r\n\r\n\t\t\t\t\tlanduses.push({\r\n\t\t\t\t\t\tname: original[i].name,\r\n\t\t\t\t\t\toriginalArea: original[i].area,\r\n\t\t\t\t\t\toriginalPercent: original[i].area / this.project.totalArea * 100,\r\n\t\t\t\t\t\ttrimmedArea: trimmedLanduse === undefined ? undefined : trimmedLanduse.area,\r\n\t\t\t\t\t\ttrimmedPercent: trimmedLanduse === undefined ? undefined : trimmedLanduse.area / this.project.totalArea * 100\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn landuses;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectHrus.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectHrus.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectHrus.vue?vue&type=template&id=b8af34f6&\"\nimport script from \"./ProjectHrus.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectHrus.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Uploaded documents\")]),_c('p',[_vm._v(\" Upload up to \"),_c('strong',[_vm._v(_vm._s(_vm.maxFiles))]),_vm._v(\" documents to store with this project. Each file cannot exceed \"),_c('strong',[_vm._v(\"50 MB\")]),_vm._v(\" in size. Allowed file types include Microsoft Office (.docx, .xslx, .pptx), PDF (.pdf), images (.jpg, .png), or zip (.zip, .7z) files. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-alert',{attrs:{\"show\":_vm.files.length >= _vm.maxFiles,\"variant\":\"info\"}},[_vm._v(\" You have already uploaded \"+_vm._s(_vm.maxFiles)+\" for this project. You must delete one to upload more. \")]),(_vm.files.length < _vm.maxFiles)?_c('vue-dropzone',{ref:\"addFile\",attrs:{\"id\":\"addFile\",\"options\":_vm.dropzoneOptions},on:{\"vdropzone-success\":_vm.fileUploaded,\"vdropzone-error\":_vm.uploadError}}):_vm._e(),_c('b-table',{staticClass:\"mt-4\",attrs:{\"responsive\":\"\",\"striped\":\"\",\"items\":_vm.files,\"fields\":['fileName','modified',{key:'delete', label:'', class:'min'}]},scopedSlots:_vm._u([{key:\"cell(fileName)\",fn:function(data){return [_c('a',{attrs:{\"href\":data.item.fileUrl,\"target\":\"_blank\"}},[_vm._v(_vm._s(data.item.fileName))])]}},{key:\"cell(modified)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"date\")(data.item.modified))+\" \")]}},{key:\"cell(delete)\",fn:function(data){return [_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",on:{\"click\":function($event){return _vm.askDelete(data.item.fileName)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1)]}}])}),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete \"),_c('strong',[_vm._v(_vm._s(_vm.page.delete.name))]),_vm._v(\"? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Uploaded documents</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tUpload up to <strong>{{maxFiles}}</strong> documents to store with this project.\r\n\t\t\t\tEach file cannot exceed <strong>50 MB</strong> in size.\r\n\t\t\t\tAllowed file types include Microsoft Office (.docx, .xslx, .pptx), PDF (.pdf), images (.jpg, .png), or zip (.zip, .7z) files.\r\n\t\t\t</p>\r\n\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t<b-alert :show=\"files.length >= maxFiles\" variant=\"info\">\r\n\t\t\t\tYou have already uploaded {{maxFiles}} for this project.\r\n\t\t\t\tYou must delete one to upload more.\r\n\t\t\t</b-alert>\r\n\t\t\t<vue-dropzone v-if=\"files.length < maxFiles\" ref=\"addFile\" id=\"addFile\" :options=\"dropzoneOptions\" @vdropzone-success=\"fileUploaded\" @vdropzone-error=\"uploadError\"></vue-dropzone>\r\n\r\n\t\t\t<b-table responsive striped class=\"mt-4\" :items=\"files\" :fields=\"['fileName','modified',{key:'delete', label:'', class:'min'}]\">\r\n\t\t\t\t<template v-slot:cell(fileName)=\"data\">\r\n\t\t\t\t\t<a :href=\"data.item.fileUrl\" target=\"_blank\">{{data.item.fileName}}</a>\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(modified)=\"data\">\r\n\t\t\t\t\t{{data.item.modified | date}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(delete)=\"data\">\r\n\t\t\t\t\t<button class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDelete(data.item.fileName)\">\r\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t</button>\r\n\t\t\t\t</template>\r\n\t\t\t</b-table>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete <strong>{{page.delete.name}}</strong>?\r\n\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\t\t\t<fixed-action-bar>\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport vue2Dropzone from 'vue2-dropzone';\r\n\timport 'vue2-dropzone/dist/vue2Dropzone.min.css';\r\n\r\n\texport default {\r\n\t\tname: 'ProjectDocuments',\r\n\t\tcomponents: {\r\n\t\t\tvueDropzone: vue2Dropzone\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\tname: '',\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tmaxFiles: 10,\r\n\t\t\t\tdropzoneOptions: {\r\n\t\t\t\t\turl: `/api/projects/documents/${this.$route.params.id}`,\r\n\t\t\t\t\theaders: this.getTokenHeaderPart(),\r\n\t\t\t\t\tacceptedFiles: '.docx, .xslx, .pptx, .pdf, .jpg, .png, .zip, .7z',\r\n\t\t\t\t\tmaxFilesize: 50\r\n\t\t\t\t},\r\n\t\t\t\tfiles: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`projects/documents/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.files = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync fileUploaded(file, response) {\r\n\t\t\t\tthis.log(response);\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tawait this.get();\r\n\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t},\r\n\t\t\tuploadError(file, message, xhr) {\r\n\t\t\t\tthis.log(file);\r\n\t\t\t\tthis.log(xhr);\r\n\t\t\t\tthis.page.saveErrors.push(message);\r\n\t\t\t},\r\n\t\t\taskDelete(name) {\r\n\t\t\t\tthis.page.delete.name = name;\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`projects/documents/${this.projectID}/${this.page.delete.name}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectDocuments.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectDocuments.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectDocuments.vue?vue&type=template&id=5702dd49&\"\nimport script from \"./ProjectDocuments.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectDocuments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Project Metadata\")]),_c('p',[_vm._v(\" This page lists your SWAT input data settings for each scenario in your project. \")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Watershed\")]),_c('table',{staticClass:\"table table-striped border-bottom table-definitions\"},[_c('tbody',[_c('tr',[_c('th',[_vm._v(\"Project name\")]),_c('td',[_vm._v(_vm._s(_vm.project.name))])]),_c('tr',[_c('th',[_vm._v(\"Dataset\")]),_c('td',[_vm._v(_vm._s(_vm.project.dataset))])]),_c('tr',[_c('th',[_vm._v(\"Start of the watershed\")]),(_vm.project.startingSubbasins.length === 0)?_c('td',[_vm._v(\"Head\")]):_c('td',[_vm._v(_vm._s(_vm.project.startingSubbasins.join(', ')))])]),_c('tr',[_c('th',[_vm._v(\"Ending subbasin\")]),_c('td',[_vm._v(_vm._s(_vm.project.endingSubbasin))])]),_c('tr',[_c('th',[_vm._v(\"Number of subbasins\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numSubbasins,0)))])]),_c('tr',[_c('th',[_vm._v(\"Total area\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.totalArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])])])])])]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"HRUs\")]),_c('table',{staticClass:\"table table-striped border-bottom table-definitions\"},[_c('tbody',[(_vm.project.hasSetHrus)?_c('tr',[_c('th',[_vm._v(\"Original number of HRUs\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numOriginalHrus,0)))])]):_vm._e(),_c('tr',[_c('th',[_vm._v(\"Number of HRUs\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.numHrus,0)))])]),(_vm.project.hasSetHrus)?_c('tr',[_c('th',[_vm._v(\"Method for setting HRUs\")]),(_vm.project.hruMethod == 'Area')?_c('td',[_vm._v(\" Removed with area less than \"+_vm._s(_vm._f(\"number\")(_vm.project.targetThreshold,2))+\" \"),(_vm.project.hruUnits == 'Percent')?_c('span',[_vm._v(\" % of each subbasin \")]):_c('span',[_vm._v(\" km\"),_c('sup',[_vm._v(\"2\")])])]):(_vm.project.hruMethod == 'TargetHrus')?_c('td',[_vm._v(\" Aimed to retain \"+_vm._s(_vm._f(\"number\")(_vm.project.targetThreshold,0))+\" HRUs \")]):_vm._e()]):_vm._e(),(_vm.project.hasSetHrus)?_c('tr',[_c('th',[_vm._v(\"Land use exempt\")]),(_vm.project.exemptLanduse.length === 0)?_c('td',[_vm._v(\"None\")]):_c('td',[_vm._v(_vm._s(_vm.project.exemptLanduse.join(', ')))])]):_vm._e(),(_vm.project.hasSetHrus)?_c('tr',[_c('th',[_vm._v(\"Project area redistributed\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.project.trimmedLanduseArea,2))+\" km\"),_c('sup',[_vm._v(\"2\")])])]):_vm._e()])])])],1),_c('h3',{staticClass:\"mt-4 mb-3\"},[_vm._v(\"Scenarios\")]),_c('b-table',{attrs:{\"responsive\":\"\",\"striped\":\"\",\"items\":_vm.project.scenarios,\"fields\":_vm.tables.scenarios.fields,\"head-variant\":\"light\",\"show-empty\":\"\"},scopedSlots:_vm._u([{key:\"empty\",fn:function(){return [_c('p',[_vm._v(\"This project does not have any scenarios.\")])]},proxy:true}])}),_c('h3',{staticClass:\"mt-5 mb-3\"},[_vm._v(\"Input Modifications\")]),_c('b-table',{attrs:{\"responsive\":\"\",\"striped\":\"\",\"items\":_vm.project.modifications,\"fields\":_vm.tables.modifications.fields,\"head-variant\":\"light\",\"show-empty\":\"\"},scopedSlots:_vm._u([{key:\"empty\",fn:function(){return [_c('p',[_vm._v(\"This project does not have any input modifications.\")])]},proxy:true},{key:\"cell(values)\",fn:function(data){return _vm._l((Object.keys(data.item.values)),function(k,i){return _c('div',{key:i},[_c('span',[_vm._v(_vm._s(k)+\":\")]),_vm._v(\" \"+_vm._s(data.item.values[k])+\" \")])})}},{key:\"cell(subbasins)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.subbasins.map(({ name }) => name)))+\" \")]}},{key:\"cell(landuses)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.landuses))+\" \")]}},{key:\"cell(soils)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.soils))+\" \")]}},{key:\"cell(slopes)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.slopes))+\" \")]}}])}),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Project Metadata</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tThis page lists your SWAT input data settings for each scenario in your project.\r\n\t\t\t</p>\r\n\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<h3 class=\"mb-3\">Watershed</h3>\r\n\t\t\t\t\t<table class=\"table table-striped border-bottom table-definitions\">\r\n\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th>Project name</th>\r\n\t\t\t\t\t\t\t\t<td>{{project.name}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th>Dataset</th>\r\n\t\t\t\t\t\t\t\t<td>{{project.dataset}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th>Start of the watershed</th>\r\n\t\t\t\t\t\t\t\t<td v-if=\"project.startingSubbasins.length === 0\">Head</td>\r\n\t\t\t\t\t\t\t\t<td v-else>{{project.startingSubbasins.join(', ')}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th>Ending subbasin</th>\r\n\t\t\t\t\t\t\t\t<td>{{project.endingSubbasin}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th>Number of subbasins</th>\r\n\t\t\t\t\t\t\t\t<td>{{project.numSubbasins | number(0)}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th>Total area</th>\r\n\t\t\t\t\t\t\t\t<td>{{project.totalArea | number(2)}} km<sup>2</sup></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<h3 class=\"mb-3\">HRUs</h3>\r\n\t\t\t\t\t<table class=\"table table-striped border-bottom table-definitions\">\r\n\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t<tr v-if=\"project.hasSetHrus\">\r\n\t\t\t\t\t\t\t\t<th>Original number of HRUs</th>\r\n\t\t\t\t\t\t\t\t<td>{{project.numOriginalHrus | number(0)}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th>Number of HRUs</th>\r\n\t\t\t\t\t\t\t\t<td>{{project.numHrus | number(0)}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr v-if=\"project.hasSetHrus\">\r\n\t\t\t\t\t\t\t\t<th>Method for setting HRUs</th>\r\n\t\t\t\t\t\t\t\t<td v-if=\"project.hruMethod == 'Area'\">\r\n\t\t\t\t\t\t\t\t\tRemoved with area less than\r\n\t\t\t\t\t\t\t\t\t{{project.targetThreshold | number(2)}}\r\n\t\t\t\t\t\t\t\t\t<span v-if=\"project.hruUnits == 'Percent'\">\r\n\t\t\t\t\t\t\t\t\t\t% of each subbasin\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<span v-else>\r\n\t\t\t\t\t\t\t\t\t\tkm<sup>2</sup>\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t<td v-else-if=\"project.hruMethod == 'TargetHrus'\">\r\n\t\t\t\t\t\t\t\t\tAimed to retain {{project.targetThreshold | number(0)}} HRUs\r\n\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr v-if=\"project.hasSetHrus\">\r\n\t\t\t\t\t\t\t\t<th>Land use exempt</th>\r\n\t\t\t\t\t\t\t\t<td v-if=\"project.exemptLanduse.length === 0\">None</td>\r\n\t\t\t\t\t\t\t\t<td v-else>{{project.exemptLanduse.join(', ')}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr v-if=\"project.hasSetHrus\">\r\n\t\t\t\t\t\t\t\t<th>Project area redistributed</th>\r\n\t\t\t\t\t\t\t\t<td>{{project.trimmedLanduseArea | number(2)}} km<sup>2</sup></td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t</table>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\r\n\t\t\t<h3 class=\"mt-4 mb-3\">Scenarios</h3>\r\n\t\t\t<b-table responsive striped :items=\"project.scenarios\" :fields=\"tables.scenarios.fields\" head-variant=\"light\" show-empty>\r\n\t\t\t\t<template v-slot:empty>\r\n\t\t\t\t\t<p>This project does not have any scenarios.</p>\r\n\t\t\t\t</template>\r\n\t\t\t</b-table>\r\n\r\n\t\t\t<h3 class=\"mt-5 mb-3\">Input Modifications</h3>\r\n\t\t\t<b-table responsive striped :items=\"project.modifications\" :fields=\"tables.modifications.fields\" head-variant=\"light\" show-empty>\r\n\t\t\t\t<template v-slot:empty>\r\n\t\t\t\t\t<p>This project does not have any input modifications.</p>\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(values)=\"data\">\r\n\t\t\t\t\t<div v-for=\"(k, i) in Object.keys(data.item.values)\" :key=\"i\">\r\n\t\t\t\t\t\t<span>{{k}}:</span>\r\n\t\t\t\t\t\t{{data.item.values[k]}}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(subbasins)=\"data\">\r\n\t\t\t\t\t{{writeArray(data.item.subbasins.map(({ name }) => name))}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(landuses)=\"data\">\r\n\t\t\t\t\t{{writeArray(data.item.landuses)}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(soils)=\"data\">\r\n\t\t\t\t\t{{writeArray(data.item.soils)}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(slopes)=\"data\">\r\n\t\t\t\t\t{{writeArray(data.item.slopes)}}\r\n\t\t\t\t</template>\r\n\t\t\t</b-table>\r\n\r\n\t\t\t<fixed-action-bar>\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'ProjectMetadata',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tproject: {\r\n\t\t\t\t\tstartingSubbasins: [],\r\n\t\t\t\t\tscenarios: [],\r\n\t\t\t\t\texemptLanduse: [],\r\n\t\t\t\t\tmodifications: []\r\n\t\t\t\t},\r\n\t\t\t\ttables: {\r\n\t\t\t\t\tscenarios: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'name' },\r\n\t\t\t\t\t\t\t{ key: 'weatherDataset', label: 'Weather' },\r\n\t\t\t\t\t\t\t{ key: 'startingSimulationDate', label: 'Start', formatter: (value) => { return moment(value).format('M/D/YYYY') } },\r\n\t\t\t\t\t\t\t{ key: 'endingSimulationDate', label: 'End', formatter: (value) => { return moment(value).format('M/D/YYYY') } },\r\n\t\t\t\t\t\t\t{ key: 'skipYears', label: 'Skip' },\r\n\t\t\t\t\t\t\t{ key: 'printSetting', label: 'Print' },\r\n\t\t\t\t\t\t\t{ key: 'swatVersion', label: 'SWAT' }\r\n\t\t\t\t\t\t]\r\n\t\t\t\t\t},\n\t\t\t\t\tmodifications: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'scenario' },\r\n\t\t\t\t\t\t\t{ key: 'table' },\r\n\t\t\t\t\t\t\t{ key: 'subbasins' },\r\n\t\t\t\t\t\t\t{ key: 'landuses', label: 'Land use' },\r\n\t\t\t\t\t\t\t{ key: 'soils' },\r\n\t\t\t\t\t\t\t{ key: 'slopes' },\n\t\t\t\t\t\t\t{ key: 'values' }\r\n\t\t\t\t\t\t]\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`projects/metadata/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.project = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\n\t\t\twriteArray(items, limit = 5) {\r\n\t\t\t\tif (items === null || items.length === 0) return 'All';\r\n\t\t\t\tif (limit === 0) limit = items.length;\r\n\t\t\t\tvar s = items.slice(0, limit).join(', ');\r\n\r\n\t\t\t\tif (items.length > limit) return s + ' (...)';\r\n\t\t\t\treturn s;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectMetadata.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectMetadata.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectMetadata.vue?vue&type=template&id=370e9bb1&\"\nimport script from \"./ProjectMetadata.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectMetadata.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Project Downloads\")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('div',{staticClass:\"font-weight-bold mb-0\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Zip and download project\")]),_c('b-card-body',[_c('error-list',{attrs:{\"errors\":_vm.page.zip.errors}}),(_vm.data.status.isZipping)?_c('div',[_vm._v(\" Your project is currently zipping files. Please wait. \")]):(_vm.data.status.isRunningScenarios)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" Your project is busy running scenarios. Please wait until all scenario runs have completed to zip your project files. \")])],1):_c('div',[_c('p',[_vm._v(\" Create a zip of all your project files and download them to your computer for offline use. We recommend waiting until you are done running all scenarios for this project before creating this file. It may take several hours if you have multiple scenarios and your project is large (>10,000 HRUs). \")]),(_vm.data.zipFile.canGetGisData)?_c('p',[_c('b-form-checkbox',{model:{value:(_vm.page.zip.includeGisData),callback:function ($$v) {_vm.$set(_vm.page.zip, \"includeGisData\", $$v)},expression:\"page.zip.includeGisData\"}},[_vm._v(\"Include GIS project data in your download?\")])],1):_vm._e()]),_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"info\",\"show\":_vm.data.zipFile.exists}},[_c('p',[_vm._v(\"A zip file of your project was created on\"),_c('br'),_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.data.zipFile.createdOn))+\".\")]),_c('a',{staticClass:\"btn btn-primary mr-1\",attrs:{\"href\":_vm.data.zipFile.url}},[_vm._v(\"Download Zip File\")])])],1)],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('div',{staticClass:\"font-weight-bold mb-0\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"GIS data\")]),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',{attrs:{\"href\":_vm.data.geoJsonUrls.subbasins}},[_vm._v(\"Subbasins geojson\")]),_c('b-list-group-item',{attrs:{\"href\":_vm.data.geoJsonUrls.streams}},[_vm._v(\"Streams geojson\")]),_vm._l((_vm.data.geoJsonLayers),function(layer){return _c('b-list-group-item',{key:layer,attrs:{\"href\":`/api/exports/geojson/${_vm.projectID}/${layer}?access_token=${_vm.localStorageToken}`}},[_vm._v(_vm._s(layer)+\" geojson\")])})],2)],1),_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('div',{staticClass:\"font-weight-bold mb-0\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Watershed data\")]),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',{attrs:{\"href\":_vm.data.subbasinsCsv}},[_vm._v(\"Subbasins from/to connectivity CSV\")]),(_vm.data.hasSetHrus)?_c('b-list-group-item',{attrs:{\"href\":_vm.data.hrusOriginalCsv}},[_vm._v(\"Default HRUs CSV\")]):_vm._e(),(_vm.data.hasSetHrus)?_c('b-list-group-item',{attrs:{\"href\":_vm.data.hrusTrimmedCsv}},[_vm._v(\"Trimmed HRUs CSV\")]):_c('b-list-group-item',{attrs:{\"href\":_vm.data.hrusOriginalCsv}},[_vm._v(\"HRUs CSV\")]),_c('b-list-group-item',{attrs:{\"href\":_vm.data.pointSourceConstant}},[_vm._v(_vm._s(_vm.siteText.siteName)+\" constant point source values CSV\")])],1)],1)],1)],1),_c('fixed-action-bar',[_c('save-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"saving\":_vm.page.zip.saving,\"disabled\":_vm.data.status.isZipping || _vm.data.status.isRunningScenarios,\"text\":_vm.data.zipFile.exists ? 'Create a New Zip File' : 'Zip Project Files',\"variant\":\"success\"},nativeOn:{\"click\":function($event){return _vm.zipProject.apply(null, arguments)}}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Project Downloads</h2>\r\n\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\n\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t<div slot=\"header\" class=\"font-weight-bold mb-0\">Zip and download project</div>\r\n\t\t\t\t\t\t<b-card-body>\r\n\t\t\t\t\t\t\t<error-list :errors=\"page.zip.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"data.status.isZipping\">\r\n\t\t\t\t\t\t\t\tYour project is currently zipping files. Please wait.\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-else-if=\"data.status.isRunningScenarios\">\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\t\t\t\t\tYour project is busy running scenarios.\r\n\t\t\t\t\t\t\t\t\tPlease wait until all scenario runs have completed to zip your project files.\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tCreate a zip of all your project files and download them to your computer for offline use.\r\n\t\t\t\t\t\t\t\t\tWe recommend waiting until you are done running all scenarios for this project before creating\r\n\t\t\t\t\t\t\t\t\tthis file. It may take several hours if you have multiple scenarios and your project is\r\n\t\t\t\t\t\t\t\t\tlarge (>10,000 HRUs).\r\n\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t<p v-if=\"data.zipFile.canGetGisData\">\n\t\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"page.zip.includeGisData\">Include GIS project data in your download?</b-form-checkbox>\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<b-alert variant=\"info\" :show=\"data.zipFile.exists\" class=\"text-center\">\r\n\t\t\t\t\t\t\t\t<p>A zip file of your project was created on<br /> {{data.zipFile.createdOn | date}}.</p>\r\n\t\t\t\t\t\t\t\t<a :href=\"data.zipFile.url\" class=\"btn btn-primary mr-1\">Download Zip File</a>\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t</b-card-body>\r\n\t\t\t\t\t</b-card>\r\n\t\t\t\t</b-col>\r\n\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t<div slot=\"header\" class=\"font-weight-bold mb-0\">GIS data</div>\r\n\t\t\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t\t\t<b-list-group-item :href=\"data.geoJsonUrls.subbasins\">Subbasins geojson</b-list-group-item>\r\n\t\t\t\t\t\t\t<b-list-group-item :href=\"data.geoJsonUrls.streams\">Streams geojson</b-list-group-item>\r\n\t\t\t\t\t\t\t<b-list-group-item v-for=\"layer in data.geoJsonLayers\" :key=\"layer\" :href=\"`/api/exports/geojson/${projectID}/${layer}?access_token=${localStorageToken}`\">{{layer}} geojson</b-list-group-item>\r\n\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t</b-card>\r\n\r\n\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t<div slot=\"header\" class=\"font-weight-bold mb-0\">Watershed data</div>\r\n\t\t\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t\t\t<b-list-group-item :href=\"data.subbasinsCsv\">Subbasins from/to connectivity CSV</b-list-group-item>\r\n\t\t\t\t\t\t\t<b-list-group-item v-if=\"data.hasSetHrus\" :href=\"data.hrusOriginalCsv\">Default HRUs CSV</b-list-group-item>\r\n\t\t\t\t\t\t\t<b-list-group-item v-if=\"data.hasSetHrus\" :href=\"data.hrusTrimmedCsv\">Trimmed HRUs CSV</b-list-group-item>\r\n\t\t\t\t\t\t\t<b-list-group-item v-else :href=\"data.hrusOriginalCsv\">HRUs CSV</b-list-group-item>\n\t\t\t\t\t\t\t<b-list-group-item :href=\"data.pointSourceConstant\">{{siteText.siteName}} constant point source values CSV</b-list-group-item>\r\n\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t</b-card>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\r\n\t\t\t\r\n\r\n\t\t\t<fixed-action-bar>\r\n\t\t\t\t<save-button type=\"button\" :saving=\"page.zip.saving\" :disabled=\"data.status.isZipping || data.status.isRunningScenarios\" @click.native=\"zipProject\" :text=\"data.zipFile.exists ? 'Create a New Zip File' : 'Zip Project Files'\" variant=\"success\" class=\"mr-2\" />\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\t//import moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'ProjectDownloads',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\n\t\t\t\t\tzip: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\n\t\t\t\t\t\tincludeGisData: true\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tgeoJsonUrls: {},\n\t\t\t\t\tgeoJsonLayers: [],\n\t\t\t\t\tzipFile: {},\n\t\t\t\t\tstatus: {}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`projects/downloads/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync zipProject() {\r\n\t\t\t\tthis.page.zip.errors = [];\r\n\t\t\t\tthis.page.zip.saving = true;\r\n\r\n\t\t\t\tif (!this.data.status.isZipping && !this.data.status.isRunningScenarios) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.put(`projects/zip/${this.projectID}`, { value: this.page.zip.includeGisData && this.data.zipFile.canGetGisData }, this.getTokenHeader());\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ProjectView', params: { id: this.projectID } }).catch(err => { this.log(err) });\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.zip.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.zip.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectDownloads.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProjectDownloads.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ProjectDownloads.vue?vue&type=template&id=e9573d50&\"\nimport script from \"./ProjectDownloads.vue?vue&type=script&lang=js&\"\nexport * from \"./ProjectDownloads.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name === 'ScenarioList')?_c('div',[_c('h2',[_vm._v(\"Scenarios\")]),_c('b-alert',{staticClass:\"my-3\",attrs:{\"variant\":\"warning\",\"show\":!_vm.$parent.withinTierLimits}},[_vm._v(\" Your account only has access to create and run scenarios with \"+_vm._s(_vm._f(\"number\")(_vm.$parent.tier.subbasinLimit,0))+\" subbasins and \"+_vm._s(_vm._f(\"number\")(_vm.$parent.tier.hruLimit,0))+\" HRUs or fewer. \")]),_c('grid-view',{attrs:{\"api-url\":_vm.apiUrl,\"delete-api-url\":\"scenarios\",\"fields\":_vm.table.fields,\"link-name\":\"\",\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"scenarios\",\"item-name\":\"scenario\",\"create-route\":\"create\",\"show-create\":_vm.$parent.withinTierLimits,\"extra-delete-message\":\"All files related to this scenario will be removed.\"}})],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\n\t\t<div v-if=\"$route.name === 'ScenarioList'\">\r\n\t\t\t<h2>Scenarios</h2>\r\n\r\n\t\t\t<b-alert variant=\"warning\" :show=\"!$parent.withinTierLimits\" class=\"my-3\">\r\n\t\t\t\tYour account only has access to create and run scenarios with {{$parent.tier.subbasinLimit | number(0)}} subbasins\r\n\t\t\t\tand {{$parent.tier.hruLimit | number(0)}} HRUs or fewer.\r\n\t\t\t</b-alert>\n\r\n\t\t\t<grid-view :api-url=\"apiUrl\" delete-api-url=\"scenarios\"\r\n\t\t\t\t\t   :fields=\"table.fields\" link-name\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t   collection-description=\"scenarios\"\r\n\t\t\t\t\t   item-name=\"scenario\"\r\n\t\t\t\t\t   create-route=\"create\" :show-create=\"$parent.withinTierLimits\"\r\n\t\t\t\t\t   extra-delete-message=\"All files related to this scenario will be removed.\"></grid-view>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\t\t\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'ScenarioList',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\n\t\t\t\tapiUrl: `projects/scenarios/${this.$route.params.id}`,\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t{ key: 'hasRun', label: 'Ran?', sortable: false, formatter: (value) => { return value === true ? 'Yes' : 'No' } },\r\n\t\t\t\t\t\t{ key: 'weatherDataset', label: 'Weather', sortable: false },\r\n\t\t\t\t\t\t{ key: 'startingSimulationDate', label: 'Start', sortable: false, formatter: (value) => { return moment(value).format('M/D/YYYY') } },\r\n\t\t\t\t\t\t{ key: 'endingSimulationDate', label: 'End', sortable: false, formatter: (value) => { return moment(value).format('M/D/YYYY') } },\r\n\t\t\t\t\t\t{ key: 'skipYears', label: 'Skip', sortable: false },\r\n\t\t\t\t\t\t{ key: 'printSetting', label: 'Print', sortable: false },\r\n\t\t\t\t\t\t{ key: 'swatVersion', label: 'SWAT', sortable: false },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 10\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScenarioList.vue?vue&type=template&id=499b2ece&\"\nimport script from \"./ScenarioList.vue?vue&type=script&lang=js&\"\nexport * from \"./ScenarioList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name === 'ScenarioView')?_c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[(!_vm.scenario.status.hasError)?_c('h2',{staticClass:\"mb-3\"},[_vm._v(_vm._s(_vm.scenario.name)+\" Scenario\")]):_vm._e(),_c('success-alert',{ref:\"reportSubmittedAlert\",attrs:{\"text\":\"Error report submitted.\"}}),(_vm.scenario.status.isRunning)?_c('div',{staticClass:\"max-w-400 py-5 mx-auto text-center\"},[_c('b-progress',{attrs:{\"value\":_vm.progress.percent,\"max\":100,\"animated\":\"\"}}),_c('p',[_vm._v(\" \"+_vm._s(_vm.progress.message)+\" \")]),_c('p',{staticClass:\"text-muted mt-5\"},[_c('small',[(!_vm.isNullOrEmpty(this.currentRunTime))?_c('span',[_vm._v(\"Time elapsed: \"+_vm._s(this.currentRunTime)),_c('br')]):_vm._e(),_vm._v(\" Progress not updating? \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get(false)}}},[_vm._v(\"Refresh now.\")]),_c('br'),_c('a',{staticClass:\"text-danger\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.page.abort.show = true}}},[_vm._v(\"Cancel scenario run.\")])])])],1):(_vm.scenario.status.hasError)?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_c('font-awesome-icon',{staticClass:\"icon mr-1 text-warning\",attrs:{\"icon\":['fas', 'exclamation-triangle']}}),_vm._v(\" An error occurred while running \"+_vm._s(_vm.scenario.name)+\" scenario \")],1),_c('p',[_vm._v(\" Errors can be the result of a bug in the system or due to a change to your SWAT input data that caused a crash in the model. If you believe the error is a result of customizations to your input data, simply clear the error, modify the necessary inputs, and run the scenario again. If you need further assistance with the error, submit an error report. Please see the full exception message below. \")]),_c('hr',{staticClass:\"my-4\"}),_c('h5',[_vm._v(_vm._s(_vm.scenario.status.statusMessage))]),_c('p',[_c('b-form-textarea',{attrs:{\"rows\":\"15\"},model:{value:(_vm.scenario.status.exceptionMessage),callback:function ($$v) {_vm.$set(_vm.scenario.status, \"exceptionMessage\", $$v)},expression:\"scenario.status.exceptionMessage\"}})],1),_c('fixed-action-bar',[(!_vm.isNullOrEmpty(_vm.scenario.status.zipFile))?_c('b-button',{staticClass:\"mr-2\",attrs:{\"href\":_vm.scenario.status.zipFile}},[_vm._v(\"Download Files for Debug\")]):_vm._e(),_c('b-button',{staticClass:\"mr-2\",on:{\"click\":function($event){_vm.page.errorReport.show = true}}},[_vm._v(\"Submit Error Report\")]),_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"secondary\"},on:{\"click\":_vm.clearError}},[_vm._v(\"Clear Error\")])],1),_c('b-modal',{attrs:{\"title\":\"Submit an error report\"},model:{value:(_vm.page.errorReport.show),callback:function ($$v) {_vm.$set(_vm.page.errorReport, \"show\", $$v)},expression:\"page.errorReport.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.errorReport.errors}}),_c('p',[_vm._v(\" Complete the form below to notify developers about the error. If you have already submitted a report for this error or a similar error, there is no need to submit again. \")]),_c('b-form-group',{attrs:{\"label\":\"Add any additional comments (optional)\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"7\"},model:{value:(_vm.errorForm.userComments),callback:function ($$v) {_vm.$set(_vm.errorForm, \"userComments\", $$v)},expression:\"errorForm.userComments\"}})],1),_c('div',{staticClass:\"mt-4\"},[_c('b-form-checkbox',{model:{value:(_vm.errorForm.clearError),callback:function ($$v) {_vm.$set(_vm.errorForm, \"clearError\", $$v)},expression:\"errorForm.clearError\"}},[_vm._v(\"Clear error after submitting report\")])],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.errorReport.saving,\"text\":\"Submit Report\",\"variant\":\"success\"},nativeOn:{\"click\":function($event){return _vm.submitErrorReport.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.errorReport.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1):_c('div',[_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-4\"},model:{value:(_vm.tabIndex),callback:function ($$v) {_vm.tabIndex=$$v},expression:\"tabIndex\"}},[_c('b-tab',{attrs:{\"title\":_vm.tabs[0]}},[_c('b-alert',{staticClass:\"my-3\",attrs:{\"variant\":\"warning\",\"show\":!_vm.$parent.$parent.withinTierLimits}},[_c('p',{staticClass:\"mb-md-0\"},[_vm._v(\" Your account only has access to run scenarios from limited datasets with \"+_vm._s(_vm._f(\"number\")(_vm.$parent.$parent.tier.subbasinLimit,0))+\" subbasins and \"+_vm._s(_vm._f(\"number\")(_vm.$parent.$parent.tier.hruLimit,0))+\" HRUs or fewer. \")]),_c('p',{staticClass:\"mb-0\"},[_vm._v(\" Need access to a higher tier? \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"Go to your account\")]),_vm._v(\" and click the tier tab. \")],1)]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('table',{staticClass:\"table table-inner-borders mb-4\"},[_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Weather dataset\")]),_c('td',[_vm._v(_vm._s(_vm.weatherDatasetDescription))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Starting simulation date\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.scenario.startingSimulationDate,'M/D/YYYY')))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Ending simulation date\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.scenario.endingSimulationDate,'M/D/YYYY')))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Set-up/warm-up years\")]),_c('td',[_vm._v(_vm._s(_vm.scenario.skipYears))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"SWAT output print setting\")]),_c('td',[_vm._v(_vm._s(_vm.scenario.printSetting))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"SWAT model version\")]),_c('td',[_vm._v(_vm._s(_vm.scenario.swatVersion))])])])]),(_vm.scenario.status.hasRun && !_vm.isNullOrEmpty(_vm.scenario.status.lastRunDate))?_c('b-col',{attrs:{\"md\":\"5\"}},[_c('table',{staticClass:\"table table-inner-borders mb-4\"},[_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"SWAT editor tables\")]),(_vm.scenario.runSettings.writeSwatEditor)?_c('td',[_vm._v(_vm._s(_vm.scenario.runSettings.writeSwatEditorAsSqlite ? 'SQLite database' : 'Access database'))]):_c('td',[_vm._v(\"Not included\")])]),(_vm.scenario.runSettings.noModelRun)?_c('tr',[_c('th',{staticClass:\"text-danger\",attrs:{\"colspan\":\"2\"}},[_vm._v(\"SWAT model run skipped\")])]):_vm._e(),(_vm.scenario.runSettings.noOutputProcessing)?_c('tr',[_c('th',{staticClass:\"text-danger\",attrs:{\"colspan\":\"2\"}},[_vm._v(\"SWAT output processing skipped\")])]):_vm._e()])]):_vm._e()],1),(_vm.scenario.status.hasRun && !_vm.isNullOrEmpty(_vm.scenario.status.lastRunDate))?_c('div',{staticClass:\"mt-3\"},[_c('span',{staticClass:\"foot-pill\"},[_vm._v(\"Last ran on \"+_vm._s(_vm._f(\"date\")(_vm.scenario.status.lastRunDate))+\". The run took \"+_vm._s(_vm.scenario.status.runtime)+\".\")])]):_vm._e(),_c('div',{staticClass:\"mt-3\"},[_c('span',{staticClass:\"foot-pill\"},[_vm._v(\"Last modified on \"+_vm._s(_vm._f(\"date\")(_vm.scenario.status.lastModifiedDate)))])]),_c('div',{staticClass:\"mt-3\"},[_c('span',{staticClass:\"foot-pill\"},[_vm._v(\"Created on \"+_vm._s(_vm._f(\"date\")(_vm.scenario.status.createdDate)))])])],1),_c('b-tab',{attrs:{\"title\":_vm.tabs[1]}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('div',{staticClass:\"font-weight-bold mb-0\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"General watershed inputs and databases\")]),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"calibration\",\"append\":\"\"}},[_c('span',[_vm._v(\"Calibration data\")])]),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"bsn\",\"append\":\"\"}},[_c('span',[_vm._v(\"Basin input data\")]),(_vm.scenario.modTables.includes('Bsn'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"fert\",\"append\":\"\"}},[_c('span',[_vm._v(\"Fertilizers\")]),(_vm.scenario.modTables.includes('Fert'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"nutrient-efficiency\",\"append\":\"\"}},[_c('span',[_vm._v(\"Nutrient efficiency\")]),(_vm.scenario.modTables.includes('AutoEff'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"urban\",\"append\":\"\"}},[_c('span',[_vm._v(\"Urban input data\")]),(_vm.scenario.modTables.includes('Urban'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"lup\",\"append\":\"\"}},[_c('span',[_vm._v(\"Land use update\")]),(_vm.scenario.modTables.includes('Lup'))?_c('check-icon'):_vm._e()],1)],1)],1),_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('div',{staticClass:\"font-weight-bold mb-0\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Weather data\")]),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"climate-sensitivity\",\"append\":\"\"}},[_c('span',[_vm._v(\"Climate sensitivity/variability analysis\")]),(_vm.scenario.modTables.includes('ClimateSensitivity'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"weather-generator\",\"append\":\"\"}},[_c('span',[_vm._v(\"Weather generator\")]),(_vm.scenario.modTables.includes('Wgn'))?_c('check-icon'):_vm._e()],1)],1)],1),_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('div',{staticClass:\"font-weight-bold mb-0\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"SWAT output to print\")]),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"hru-vars\",\"append\":\"\"}},[_c('span',[_vm._v(\"HRU variables to print\")]),(_vm.scenario.modTables.includes('HruVars'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"hru-print\",\"append\":\"\"}},[_c('span',[_vm._v(\"HRUs to print\")]),(_vm.scenario.modTables.includes('HruPrint'))?_c('check-icon'):_vm._e()],1)],1)],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('div',{staticClass:\"font-weight-bold mb-0\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Subbasin inputs\")]),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"curve-number\",\"append\":\"\"}},[_c('span',[_vm._v(\"Curve number\")]),(_vm.scenario.modTables.includes('Cn2Percent'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"potholes\",\"append\":\"\"}},[_c('span',[_vm._v(\"Pothole variables\")]),(_vm.scenario.modTables.includes('Potholes'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"sediment-routing\",\"append\":\"\"}},[_c('span',[_vm._v(\"Sediment routing method\")]),(_vm.scenario.modTables.includes('RteChEqn'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"point-source\",\"append\":\"\"}},[_c('span',[_vm._v(\"Point source\")]),(_vm.scenario.modTables.includes('Ptsrc'))?_c('check-icon'):_vm._e()],1)],1)],1),_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('div',{staticClass:\"font-weight-bold mb-0\",attrs:{\"slot\":\"header\"},slot:\"header\"},[_vm._v(\"Ag management/BMPs/Conservation practices\")]),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"mgt-general\",\"append\":\"\"}},[_c('span',[_vm._v(\"General parameters\")]),(_vm.scenario.modTables.includes('Mgt1'))?_c('check-icon'):_vm._e()],1),_c('b-list-group-item',{staticClass:\"d-flex justify-content-between align-items-center\",attrs:{\"to\":\"mgt-operations\",\"append\":\"\"}},[_c('span',[_vm._v(\"Operations management\")]),(_vm.scenario.modTables.includes('Mgt2'))?_c('check-icon'):_vm._e()],1)],1)],1)],1)],1)],1),(_vm.scenario.status.hasRun)?_c('b-tab',{attrs:{\"title\":_vm.tabs[2]}},[_c('p',[_vm._v(\" This scenario last ran on \"+_vm._s(_vm._f(\"date\")(_vm.scenario.status.lastRunDate))+\". The run took \"+_vm._s(_vm.scenario.status.runtime)+\". \"),_c('br'),_vm._v(\"The scenario output will be kept on our system until \"),_c('span',{staticClass:\"text-danger\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.keepUntilDate,'ll')))]),_vm._v(\". \")]),_c('b-card',{staticClass:\"border mb-3\",attrs:{\"header-bg-variant\":\"light\",\"no-body\":\"\"}},[_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',{attrs:{\"to\":\"output/swat-check\",\"append\":\"\"}},[_vm._v(\"Run SWAT Check to identify potential model problems\")]),_c('b-list-group-item',{attrs:{\"to\":\"output/charts\",\"append\":\"\"}},[_vm._v(\"Output charts\")]),_c('b-list-group-item',{attrs:{\"to\":\"output/maps\",\"append\":\"\"}},[_vm._v(\"Output maps\")]),(_vm.siteSettings.includeCeQual)?_c('b-list-group-item',{attrs:{\"to\":\"output/ce-qual\",\"append\":\"\"}},[_vm._v(\"CE-QUAL-W2\")]):_vm._e(),(_vm.siteSettings.includeFfa)?_c('b-list-group-item',{attrs:{\"to\":\"output/ffa\",\"append\":\"\"}},[_vm._v(\"Flood Frequency Analysis\")]):_vm._e(),(_vm.siteSettings.includeBaseflowSeparation)?_c('b-list-group-item',{attrs:{\"to\":\"output/baseflowseparation\",\"append\":\"\"}},[_vm._v(\"Baseflow Separation\")]):_vm._e()],1)],1)],1):_vm._e()],1),_c('fixed-action-bar',[(_vm.$parent.$parent.withinTierLimits)?_c('span',[(_vm.scenario.status.hasRun && !_vm.isNullOrEmpty(_vm.scenario.status.zipFile))?_c('b-dropdown',{staticClass:\"mr-2\",attrs:{\"variant\":\"success\",\"split\":\"\",\"split-href\":_vm.scenario.status.zipFile,\"text\":\"Download Scenario\"}},[_c('b-dropdown-item',{on:{\"click\":function($event){_vm.page.run.show = true}}},[_vm._v(\"Re-run Scenario\")])],1):_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"success\"},on:{\"click\":function($event){_vm.page.run.show = true}}},[_vm._v(\"Run Scenario\")])],1):(_vm.scenario.status.hasRun && !_vm.isNullOrEmpty(_vm.scenario.status.zipFile))?_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"success\",\"href\":_vm.scenario.status.zipFile}},[_vm._v(\"Download Scenario\")]):_vm._e(),_c('b-dropdown',{staticClass:\"mr-2\",attrs:{\"variant\":\"primary\",\"text\":\"Edit/Copy Settings\"}},[_c('b-dropdown-item-button',{on:{\"click\":_vm.openScenarioForm}},[_vm._v(\"Edit Settings\")]),_c('b-dropdown-item-button',{on:{\"click\":function($event){_vm.page.copy.show = true}}},[_vm._v(\"Copy Settings\")])],1),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),_c('b-button',{staticClass:\"ml-auto\",attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")])],1),_c('b-modal',{attrs:{\"size\":\"lg\",\"title\":\"Edit scenario\",\"hide-footer\":\"\"},model:{value:(_vm.show.scenarioForm),callback:function ($$v) {_vm.$set(_vm.show, \"scenarioForm\", $$v)},expression:\"show.scenarioForm\"}},[_c('scenario-form',{attrs:{\"data\":_vm.scenarioForm,\"is-update\":\"\",\"show-cancel-button\":\"\"},on:{\"saved\":_vm.saved}})],1),_c('b-modal',{attrs:{\"title\":\"Run scenario\"},model:{value:(_vm.page.run.show),callback:function ($$v) {_vm.$set(_vm.page.run, \"show\", $$v)},expression:\"page.run.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.run.errors}}),(_vm.scenario.status.canRun)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":_vm.scenario.status.hasRun}},[_vm._v(\" Please note any previous runs of this scenario will be overwritten. Be sure to download your files first if you wish to keep them. \")]),_c('p',[_vm._v(\" Click the button below to run the scenario. This will write your SWAT input files and SWAT editor tables (if checked), run the model, and process model outputs. If you still want to change your SWAT input data, click the cancel button. \")]),_c('p',[_vm._v(\" Estimated run time: \"),_c('span',{staticClass:\"font-weight-bold mr-2\"},[_vm._v(_vm._s(_vm.page.run.writeTables ? _vm.scenario.runtimeEstimateWithEditor : _vm.scenario.runtimeEstimate))]),_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],attrs:{\"title\":\"Estimated from your number of HRUs and simulation years. Subject to fluctuation based on number of concurrent users and projects running at any given time.\"}},[_c('font-awesome-icon',{staticClass:\"text-info\",attrs:{\"icon\":\"info-circle\"}})],1)]),_c('div',{staticClass:\"mt-4\"},[_c('b-form-checkbox',{model:{value:(_vm.page.run.writeTables),callback:function ($$v) {_vm.$set(_vm.page.run, \"writeTables\", $$v)},expression:\"page.run.writeTables\"}},[_vm._v(\"Write SWAT editor tables\")])],1),(_vm.page.run.writeTables && _vm.scenario.canDownloadSqlite)?_c('div',{staticClass:\"mt-2 pl-4\"},[_c('b-form-group',{attrs:{\"label\":\"Format:\"}},[_c('b-form-select',{model:{value:(_vm.page.run.writeTablesFormat),callback:function ($$v) {_vm.$set(_vm.page.run, \"writeTablesFormat\", $$v)},expression:\"page.run.writeTablesFormat\"}},[_c('b-form-select-option',{attrs:{\"value\":\"mdb\"}},[_vm._v(\"Access database\")]),_c('b-form-select-option',{attrs:{\"value\":\"sqlite\"}},[_vm._v(\"SQLite database\")])],1)],1)],1):_vm._e(),(_vm.scenario.canIncludeModflow)?_c('div',{staticClass:\"mt-2\"},[_c('b-form-checkbox',{model:{value:(_vm.page.run.includeModflow),callback:function ($$v) {_vm.$set(_vm.page.run, \"includeModflow\", $$v)},expression:\"page.run.includeModflow\"}},[_vm._v(\"Create MODFLOW files\")])],1):_vm._e(),_c('div',{staticClass:\"mt-2\"},[_c('b-form-checkbox',{on:{\"change\":_vm.setModelRunOption},model:{value:(_vm.page.run.skipModelRun),callback:function ($$v) {_vm.$set(_vm.page.run, \"skipModelRun\", $$v)},expression:\"page.run.skipModelRun\"}},[_vm._v(\"Skip model run (write inputs only)\")])],1),_c('div',{staticClass:\"mt-2\"},[_c('b-form-checkbox',{attrs:{\"disabled\":_vm.page.run.skipModelRun},model:{value:(_vm.page.run.skipOutputProcessing),callback:function ($$v) {_vm.$set(_vm.page.run, \"skipOutputProcessing\", $$v)},expression:\"page.run.skipOutputProcessing\"}},[_vm._v(\"Skip output processing (charts, maps, csv will be unavailable)\")])],1),_c('div',{staticClass:\"mt-2\"},[_c('b-form-checkbox',{model:{value:(_vm.page.run.emailMe),callback:function ($$v) {_vm.$set(_vm.page.run, \"emailMe\", $$v)},expression:\"page.run.emailMe\"}},[_vm._v(\"Email me when run completes\")])],1)],1):_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_c('p',[_vm._v(\" Unable to run your scenario at this time. \"+_vm._s(_vm.scenario.status.runLimit)+\" \")]),_c('div',[_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"Go to my account information\")]),_c('br'),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get()}}},[_vm._v(\"Refresh run status\")])],1)])],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[(_vm.scenario.status.canRun)?_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.run.saving,\"text\":\"Run Scenario\",\"variant\":\"success\"},nativeOn:{\"click\":function($event){return _vm.run.apply(null, arguments)}}}):_vm._e(),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.run.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this scenario? This action is permanent and cannot be undone. All files related to this scenario will be removed. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"title\":\"Copy scenario settings\"},model:{value:(_vm.page.copy.show),callback:function ($$v) {_vm.$set(_vm.page.copy, \"show\", $$v)},expression:\"page.copy.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.copy.errors}}),_c('p',[_vm._v(\" Copy this scenario's settings to a new scenario. All input customizations will be copied, but the model run will not. \")]),_c('b-form-group',{attrs:{\"label\":\"Provide a name for the new scenario\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"required\":\"\"},model:{value:(_vm.page.copy.name),callback:function ($$v) {_vm.$set(_vm.page.copy, \"name\", $$v)},expression:\"page.copy.name\"}})],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.copy.saving,\"text\":\"Copy Scenario\",\"variant\":\"success\"},nativeOn:{\"click\":function($event){return _vm.copyScenario.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.copy.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm run cancellation\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.abort.show),callback:function ($$v) {_vm.$set(_vm.page.abort, \"show\", $$v)},expression:\"page.abort.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to abort the current run of this scenario? All files related to the model run will be deleted. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.abort.saving,\"text\":\"Yes, Abort\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.abortRun.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.abort.show = false}}},[_vm._v(\"No\")])],1)],1)],1)],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name === 'ScenarioView'\">\r\n\t\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t\t<h2 class=\"mb-3\" v-if=\"!scenario.status.hasError\">{{scenario.name}} Scenario</h2>\r\n\t\t\t\t<success-alert ref=\"reportSubmittedAlert\" text=\"Error report submitted.\" />\r\n\r\n\t\t\t\t<div v-if=\"scenario.status.isRunning\" class=\"max-w-400 py-5 mx-auto text-center\">\r\n\t\t\t\t\t<b-progress :value=\"progress.percent\" :max=\"100\" animated></b-progress>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\t{{progress.message}}\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<p class=\"text-muted mt-5\">\r\n\t\t\t\t\t\t<small>\r\n\t\t\t\t\t\t\t<span v-if=\"!isNullOrEmpty(this.currentRunTime)\">Time elapsed: {{this.currentRunTime}}<br /></span>\r\n\t\t\t\t\t\t\tProgress not updating? <a href=\"#\" @click.prevent=\"get(false)\">Refresh now.</a>\r\n\t\t\t\t\t\t\t<br /><a href=\"#\" @click.prevent=\"page.abort.show = true\" class=\"text-danger\">Cancel scenario run.</a>\r\n\t\t\t\t\t\t</small>\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-else-if=\"scenario.status.hasError\">\r\n\t\t\t\t\t<h2 class=\"mb-3\">\r\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" class=\"icon mr-1 text-warning\" />\r\n\t\t\t\t\t\tAn error occurred while running {{scenario.name}} scenario\r\n\t\t\t\t\t</h2>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tErrors can be the result of a bug in the system or due to a change to your SWAT input data that caused a crash in the model.\r\n\t\t\t\t\t\tIf you believe the error is a result of customizations to your input data, simply clear the error, modify the necessary inputs, and run the scenario again.\r\n\t\t\t\t\t\tIf you need further assistance with the error, submit an error report.\r\n\t\t\t\t\t\tPlease see the full exception message below.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t<h5>{{scenario.status.statusMessage}}</h5>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\t<b-form-textarea v-model=\"scenario.status.exceptionMessage\" rows=\"15\"></b-form-textarea>\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t\t<b-button v-if=\"!isNullOrEmpty(scenario.status.zipFile)\" :href=\"scenario.status.zipFile\" class=\"mr-2\">Download Files for Debug</b-button>\r\n\t\t\t\t\t\t<b-button @click=\"page.errorReport.show = true\" class=\"mr-2\">Submit Error Report</b-button>\r\n\t\t\t\t\t\t<b-button variant=\"secondary\" @click=\"clearError\" class=\"mr-2\">Clear Error</b-button>\r\n\t\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.errorReport.show\" title=\"Submit an error report\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.errorReport.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tComplete the form below to notify developers about the error.\r\n\t\t\t\t\t\t\tIf you have already submitted a report for this error or a similar error, there is no need to submit again.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Add any additional comments (optional)\">\r\n\t\t\t\t\t\t\t<b-form-textarea v-model=\"errorForm.userComments\" rows=\"7\"></b-form-textarea>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t<b-form-checkbox v-model=\"errorForm.clearError\">Clear error after submitting report</b-form-checkbox>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.errorReport.saving\" @click.native=\"submitErrorReport\" text=\"Submit Report\" variant=\"success\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.errorReport.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-else>\r\n\t\t\t\t\t<b-tabs v-model=\"tabIndex\" content-class=\"mt-4\" class=\"page-nav-tabs\">\r\n\t\t\t\t\t\t<b-tab :title=\"tabs[0]\">\r\n\t\t\t\t\t\t\t<b-alert variant=\"warning\" :show=\"!$parent.$parent.withinTierLimits\" class=\"my-3\">\r\n\t\t\t\t\t\t\t\t<p class=\"mb-md-0\">\r\n\t\t\t\t\t\t\t\t\tYour account only has access to run scenarios from limited datasets with {{$parent.$parent.tier.subbasinLimit | number(0)}} subbasins\r\n\t\t\t\t\t\t\t\t\tand {{$parent.$parent.tier.hruLimit | number(0)}} HRUs or fewer.\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t<p class=\"mb-0\">\r\n\t\t\t\t\t\t\t\t\tNeed access to a higher tier? <router-link to=\"/account\">Go to your account</router-link> and click the tier tab.\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</b-alert>\r\n\n\t\t\t\t\t\t\t<b-row>\n\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t<table class=\"table table-inner-borders mb-4\">\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"min\">Weather dataset</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{weatherDatasetDescription}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"min\">Starting simulation date</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{scenario.startingSimulationDate | date('M/D/YYYY')}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"min\">Ending simulation date</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{scenario.endingSimulationDate | date('M/D/YYYY')}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"min\">Set-up/warm-up years</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{scenario.skipYears}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"min\">SWAT output print setting</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{scenario.printSetting}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"min\">SWAT model version</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>{{scenario.swatVersion}}</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t</b-col>\n\t\t\t\t\t\t\t\t<b-col md=\"5\" v-if=\"scenario.status.hasRun && !isNullOrEmpty(scenario.status.lastRunDate)\">\r\n\t\t\t\t\t\t\t\t\t<table class=\"table table-inner-borders mb-4\">\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"min\">SWAT editor tables</th>\r\n\t\t\t\t\t\t\t\t\t\t\t<td v-if=\"scenario.runSettings.writeSwatEditor\">{{scenario.runSettings.writeSwatEditorAsSqlite ? 'SQLite database' : 'Access database'}}</td>\n\t\t\t\t\t\t\t\t\t\t\t<td v-else>Not included</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr v-if=\"scenario.runSettings.noModelRun\">\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"text-danger\" colspan=\"2\">SWAT model run skipped</th>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr v-if=\"scenario.runSettings.noOutputProcessing\">\r\n\t\t\t\t\t\t\t\t\t\t\t<th class=\"text-danger\" colspan=\"2\">SWAT output processing skipped</th>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t</b-col>\n\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t<div class=\"mt-3\" v-if=\"scenario.status.hasRun && !isNullOrEmpty(scenario.status.lastRunDate)\">\r\n\t\t\t\t\t\t\t\t<span class=\"foot-pill\">Last ran on {{scenario.status.lastRunDate | date}}. The run took {{scenario.status.runtime}}.</span>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"mt-3\">\r\n\t\t\t\t\t\t\t\t<span class=\"foot-pill\">Last modified on {{scenario.status.lastModifiedDate | date}}</span>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"mt-3\">\r\n\t\t\t\t\t\t\t\t<span class=\"foot-pill\">Created on {{scenario.status.createdDate | date}}</span>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t<b-tab :title=\"tabs[1]\">\r\n\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t\t\t\t\t<div slot=\"header\" class=\"font-weight-bold mb-0\">General watershed inputs and databases</div>\r\n\t\t\t\t\t\t\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"calibration\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Calibration data</span>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"bsn\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Basin input data</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Bsn')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"fert\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Fertilizers</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Fert')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"nutrient-efficiency\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Nutrient efficiency</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('AutoEff')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"urban\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Urban input data</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Urban')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"lup\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Land use update</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Lup')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t\t\t\t\t</b-card>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t\t\t\t\t<div slot=\"header\" class=\"font-weight-bold mb-0\">Weather data</div>\r\n\t\t\t\t\t\t\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"climate-sensitivity\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Climate sensitivity/variability analysis</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('ClimateSensitivity')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"weather-generator\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Weather generator</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Wgn')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t\t\t\t\t</b-card>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t\t\t\t\t<div slot=\"header\" class=\"font-weight-bold mb-0\">SWAT output to print</div>\r\n\t\t\t\t\t\t\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"hru-vars\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>HRU variables to print</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('HruVars')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"hru-print\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>HRUs to print</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('HruPrint')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t\t\t\t\t</b-card>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t\t\t\t\t<div slot=\"header\" class=\"font-weight-bold mb-0\">Subbasin inputs</div>\r\n\t\t\t\t\t\t\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"curve-number\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Curve number</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Cn2Percent')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"potholes\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Pothole variables</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Potholes')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"sediment-routing\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Sediment routing method</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('RteChEqn')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"point-source\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Point source</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Ptsrc')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t\t\t\t\t</b-card>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t\t\t\t\t<div slot=\"header\" class=\"font-weight-bold mb-0\">Ag management/BMPs/Conservation practices</div>\r\n\t\t\t\t\t\t\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"mgt-general\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>General parameters</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Mgt1')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"mgt-operations\" append class=\"d-flex justify-content-between align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span>Operations management</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<check-icon v-if=\"scenario.modTables.includes('Mgt2')\"></check-icon>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t\t\t\t\t</b-card>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t<b-tab :title=\"tabs[2]\" v-if=\"scenario.status.hasRun\">\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tThis scenario last ran on {{scenario.status.lastRunDate | date}}. The run took {{scenario.status.runtime}}.\r\n\t\t\t\t\t\t\t\t<br />The scenario output will be kept on our system until <span class=\"text-danger\">{{keepUntilDate | date('ll')}}</span>.\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<b-card header-bg-variant=\"light\" no-body class=\"border mb-3\">\r\n\t\t\t\t\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"output/swat-check\" append>Run SWAT Check to identify potential model problems</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"output/charts\" append>Output charts</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t<b-list-group-item to=\"output/maps\" append>Output maps</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t<b-list-group-item v-if=\"siteSettings.includeCeQual\" to=\"output/ce-qual\" append>CE-QUAL-W2</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t<b-list-group-item v-if=\"siteSettings.includeFfa\" to=\"output/ffa\" append>Flood Frequency Analysis</b-list-group-item>\r\n\t\t\t\t\t\t\t\t\t<b-list-group-item v-if=\"siteSettings.includeBaseflowSeparation\" to=\"output/baseflowseparation\" append>Baseflow Separation</b-list-group-item>\r\n\t\t\t\t\t\t\t\t</b-list-group>\r\n\t\t\t\t\t\t\t</b-card>\r\n\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t</b-tabs>\r\n\r\n\t\t\t\t\t<fixed-action-bar>\n\t\t\t\t\t\t<span v-if=\"$parent.$parent.withinTierLimits\">\r\n\t\t\t\t\t\t\t<b-dropdown v-if=\"scenario.status.hasRun && !isNullOrEmpty(scenario.status.zipFile)\" variant=\"success\" split :split-href=\"scenario.status.zipFile\" text=\"Download Scenario\" class=\"mr-2\">\r\n\t\t\t\t\t\t\t\t<b-dropdown-item @click=\"page.run.show = true\">Re-run Scenario</b-dropdown-item>\r\n\t\t\t\t\t\t\t</b-dropdown>\r\n\t\t\t\t\t\t\t<b-button v-else variant=\"success\" @click=\"page.run.show = true\" class=\"mr-2\">Run Scenario</b-button>\r\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<b-button v-else-if=\"scenario.status.hasRun && !isNullOrEmpty(scenario.status.zipFile)\" variant=\"success\" :href=\"scenario.status.zipFile\" class=\"mr-2\">Download Scenario</b-button>\r\n\r\n\t\t\t\t\t\t<b-dropdown variant=\"primary\" text=\"Edit/Copy Settings\" class=\"mr-2\">\r\n\t\t\t\t\t\t\t<b-dropdown-item-button @click=\"openScenarioForm\">Edit Settings</b-dropdown-item-button>\r\n\t\t\t\t\t\t\t<b-dropdown-item-button @click=\"page.copy.show = true\">Copy Settings</b-dropdown-item-button>\r\n\t\t\t\t\t\t</b-dropdown>\r\n\r\n\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t\t<b-button variant=\"danger\" @click=\"page.delete.show = true\" class=\"ml-auto\">Delete</b-button>\r\n\t\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"show.scenarioForm\" size=\"lg\" title=\"Edit scenario\" hide-footer>\r\n\t\t\t\t\t\t<scenario-form :data=\"scenarioForm\" is-update @saved=\"saved\" show-cancel-button></scenario-form>\r\n\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.run.show\" title=\"Run scenario\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.run.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<div v-if=\"scenario.status.canRun\">\r\n\t\t\t\t\t\t\t<b-alert variant=\"warning\" :show=\"scenario.status.hasRun\">\r\n\t\t\t\t\t\t\t\tPlease note any previous runs of this scenario will be overwritten.\r\n\t\t\t\t\t\t\t\tBe sure to download your files first if you wish to keep them.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tClick the button below to run the scenario.\r\n\t\t\t\t\t\t\t\tThis will write your SWAT input files and SWAT editor tables (if checked),\r\n\t\t\t\t\t\t\t\trun the model, and process model outputs.\r\n\t\t\t\t\t\t\t\tIf you still want to change your SWAT input data, click the cancel button.\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tEstimated run time: <span class=\"font-weight-bold mr-2\">{{page.run.writeTables ? scenario.runtimeEstimateWithEditor : scenario.runtimeEstimate}}</span>\r\n\t\t\t\t\t\t\t\t<span v-b-tooltip.hover.bottom title=\"Estimated from your number of HRUs and simulation years. Subject to fluctuation based on number of concurrent users and projects running at any given time.\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon icon=\"info-circle\" class=\"text-info\" />\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"page.run.writeTables\">Write SWAT editor tables</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"mt-2 pl-4\" v-if=\"page.run.writeTables && scenario.canDownloadSqlite\">\n\t\t\t\t\t\t\t\t<b-form-group label=\"Format:\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"page.run.writeTablesFormat\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option value=\"mdb\">Access database</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option value=\"sqlite\">SQLite database</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"mt-2\" v-if=\"scenario.canIncludeModflow\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"page.run.includeModflow\">Create MODFLOW files</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"mt-2\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"page.run.skipModelRun\" @change=\"setModelRunOption\">Skip model run (write inputs only)</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"mt-2\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"page.run.skipOutputProcessing\" :disabled=\"page.run.skipModelRun\">Skip output processing (charts, maps, csv will be unavailable)</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"mt-2\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"page.run.emailMe\">Email me when run completes</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tUnable to run your scenario at this time. {{scenario.status.runLimit}}\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t<router-link to=\"/account\">Go to my account information</router-link><br />\r\n\t\t\t\t\t\t\t\t\t<a href=\"#\" @click.prevent=\"get()\">Refresh run status</a>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button v-if=\"scenario.status.canRun\" type=\"button\" :saving=\"page.run.saving\" @click.native=\"run\" text=\"Run Scenario\" variant=\"success\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.run.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tAre you sure you want to delete this scenario?\r\n\t\t\t\t\t\t\tThis action is permanent and cannot be undone. All files related to this scenario will be removed.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.copy.show\" title=\"Copy scenario settings\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.copy.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tCopy this scenario's settings to a new scenario.\r\n\t\t\t\t\t\t\tAll input customizations will be copied, but the model run will not.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Provide a name for the new scenario\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"page.copy.name\" type=\"text\" required></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.copy.saving\" @click.native=\"copyScenario\" text=\"Copy Scenario\" variant=\"success\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.copy.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.abort.show\" size=\"md\" title=\"Confirm run cancellation\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to abort the current run of this scenario?\r\n\t\t\t\t\t\tAll files related to the model run will be deleted.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.abort.saving\" @click.native=\"abortRun\" text=\"Yes, Abort\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.abort.show = false\" class=\"ml-1\">No</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</page-authorization-container>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport ScenarioForm from '@/views/projects/scenarios/ScenarioForm';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'ScenarioView',\r\n\t\tcomponents: {\r\n\t\t\tScenarioForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\n\t\t\t\tcurrentRunTime: '',\n\t\t\t\ttimer: '',\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: true,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\trun: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\twriteTables: false,\n\t\t\t\t\t\twriteTablesFormat: 'mdb',\r\n\t\t\t\t\t\temailMe: false,\n\t\t\t\t\t\tskipModelRun: false,\n\t\t\t\t\t\tskipOutputProcessing: false,\n\t\t\t\t\t\tincludeModflow: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\terrorReport: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcopy: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tname: ''\r\n\t\t\t\t\t},\r\n\t\t\t\t\tabort: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tscenario: {\r\n\t\t\t\t\tstatus: {},\r\n\t\t\t\t\tmodTables: [],\n\t\t\t\t\trunSettings: {\n\t\t\t\t\t\twriteSwatEditor: false,\n\t\t\t\t\t\twriteSwatEditorAsSqlite: false,\n\t\t\t\t\t\tnoModelRun: false,\n\t\t\t\t\t\tnoOutputProcessing: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tprogress: {\r\n\t\t\t\t\tpercent: 0,\r\n\t\t\t\t\tmessage: 'Please wait...'\r\n\t\t\t\t},\r\n\t\t\t\ttabIndex: 0,\r\n\t\t\t\tnumTabs: 2,\r\n\t\t\t\ttabs: [\r\n\t\t\t\t\t'Overview',\r\n\t\t\t\t\t'Customize SWAT Inputs',\r\n\t\t\t\t\t'Output Data'\r\n\t\t\t\t],\r\n\t\t\t\tshow: {\r\n\t\t\t\t\tscenarioForm: false\r\n\t\t\t\t},\r\n\t\t\t\tscenarioForm: undefined,\r\n\t\t\t\terrorForm: {\r\n\t\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\t\ttitle: '',\r\n\t\t\t\t\tmessage: '',\r\n\t\t\t\t\texception: '',\r\n\t\t\t\t\tuserComments: '',\r\n\t\t\t\t\tclearError: true\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.$statusHub.scenarioClosed(this.scenarioID);\r\n\t\t\tthis.$statusHub.$off('scenario-status-changed', this.onStatusChanged);\n\t\t\tthis.cancelTimer();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get(initialize = true) {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\r\n\t\t\t\t//if (this.$route.name === 'ScenarioView') {\r\n\t\t\t\t\tthis.page.errors = [];\r\n\t\t\t\t\tthis.page.loading = true;\r\n\t\t\t\t\tthis.show.scenarioForm = false;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get(`scenarios/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.scenario = response.data;\n\n\t\t\t\t\t\tthis.page.run.writeTables = this.scenario.runSettings.writeSwatEditor;\n\t\t\t\t\t\tthis.page.run.writeTablesFormat = this.scenario.runSettings.writeSwatEditorAsSqlite ? 'sqlite' : 'mdb';\n\t\t\t\t\t\tthis.page.run.skipModelRun = this.scenario.runSettings.noModelRun;\n\t\t\t\t\t\tthis.page.run.skipOutputProcessing = this.scenario.runSettings.noOutputProcessing;\r\n\r\n\t\t\t\t\t\tif (this.scenario.status.hasRun) {\r\n\t\t\t\t\t\t\tthis.numTabs++;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (this.scenario.status.isRunning) {\r\n\t\t\t\t\t\t\tthis.progress.message = this.scenario.status.statusMessage;\r\n\t\t\t\t\t\t\tthis.progress.percent = this.scenario.status.currentProgress;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (this.scenario.projectID != this.projectID) {\r\n\t\t\t\t\t\t\tthis.page.errors.push('Invalid scenario ID for this project. Please check the URL in your browser.')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.page.loading = false;\r\n\t\t\t\t//}\r\n\r\n\t\t\t\tif (initialize) {\r\n\t\t\t\t\tthis.$statusHub.scenarioOpened(this.scenarioID);\r\n\t\t\t\t\tthis.$statusHub.$on('scenario-status-changed', this.onStatusChanged);\n\n\t\t\t\t\tthis.setCurrentRunTime();\r\n\t\t\t\t\tthis.timer = setInterval(this.setCurrentRunTime, 1000);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\topenScenarioForm() {\r\n\t\t\t\tthis.scenarioForm = {\r\n\t\t\t\t\tid: this.scenario.id,\r\n\t\t\t\t\tprojectID: this.scenario.projectID,\r\n\t\t\t\t\tname: this.scenario.name,\r\n\t\t\t\t\tstartingSimulationDate: this.scenario.startingSimulationDate,\r\n\t\t\t\t\tendingSimulationDate: this.scenario.endingSimulationDate,\r\n\t\t\t\t\tweatherDatasetID: this.scenario.weatherDatasetID,\r\n\t\t\t\t\tclimateChangeScenarioID: this.scenario.climateChangeScenarioID,\r\n\t\t\t\t\tclimateChangeTimePeriodID: this.scenario.climateChangeTimePeriodID,\r\n\t\t\t\t\tswatVersionID: this.scenario.swatVersionID,\r\n\t\t\t\t\tprintSetting: this.scenario.printSettingID,\r\n\t\t\t\t\tskipYears: this.scenario.skipYears,\r\n\t\t\t\t\tpathName: this.scenario.pathName\r\n\t\t\t\t};\r\n\r\n\t\t\t\tthis.show.scenarioForm = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'ProjectView', params: { id: this.projectID }}).catch(err => {});\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tasync saved(response) {\r\n\t\t\t\tif (response == 'success') {\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t}\r\n\t\t\t\tthis.show.scenarioForm = false;\r\n\t\t\t},\r\n\t\t\tasync run() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar model = {\r\n\t\t\t\t\t\tcreateEditorTables: this.page.run.writeTables,\r\n\t\t\t\t\t\tsendEmailNotification: this.page.run.emailMe,\n\t\t\t\t\t\tskipOutputProcessing: this.page.run.skipOutputProcessing,\n\t\t\t\t\t\tincludeModflow: this.page.run.includeModflow,\n\t\t\t\t\t\tskipModelRun: this.page.run.skipModelRun,\n\t\t\t\t\t\twriteEditorTablesAsSqlite: this.page.run.writeTablesFormat === 'sqlite',\r\n\t\t\t\t\t};\r\n\t\t\t\t\tconst response = await this.$http.post(`scenarios/run/${this.scenarioID}`, model, this.getTokenHeader());\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.scenario.status.isRunning = true;\n\t\t\t\t\tthis.scenario.status.startRunDate = moment().toDate();\r\n\t\t\t\t\tthis.progress.percent = 0;\r\n\t\t\t\t\tthis.progress.message = \"In the queue, preparing to run...\";\r\n\t\t\t\t\tthis.page.run.show = false;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync clearError() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.get(`scenarios/clearerror/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync abortRun() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.get(`scenarios/abort/${this.scenarioID}`, this.getTokenHeader());\n\t\t\t\t\tthis.page.abort.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.abort.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync onStatusChanged(data) {\r\n\t\t\t\tif (this.scenarioID != data.scenarioID) return;\r\n\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.progress.percent = data.progress;\r\n\t\t\t\tthis.progress.message = data.statusMessage;\r\n\t\t\t},\r\n\t\t\tasync submitErrorReport() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tthis.errorForm.exception = this.scenario.status.exceptionMessage;\r\n\t\t\t\t\tthis.errorForm.title = this.scenario.status.statusMessage;\r\n\t\t\t\t\tthis.errorForm.message = this.scenario.status.statusMessage;\r\n\t\t\t\t\tconst response = await this.$http.post(`errorreports`, this.errorForm, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.reportSubmittedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errorReport.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync copyScenario() {\r\n\t\t\t\tif (this.isNullOrEmpty(this.page.copy.name)) {\r\n\t\t\t\t\tthis.page.copy.errors.push('Please provide a name for the new scenario.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tvalue: this.page.copy.name\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/copy/${this.scenarioID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ScenarioView', params: { id: this.projectID, scenarioID: response.data } }).catch(err => { });\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.copy.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\n\t\t\tsetCurrentRunTime() {\n\t\t\t\tthis.currentRunTime = this.isNullOrEmpty(this.scenario.status.startRunDate) ? \"\" : moment(this.scenario.status.startRunDate).fromNow(true);\r\n\t\t\t},\r\n\t\t\tcancelTimer() {\r\n\t\t\t\tclearInterval(this.timer);\r\n\t\t\t},\n\t\t\tsetModelRunOption() {\n\t\t\t\tif (this.page.run.skipModelRun) this.page.run.skipOutputProcessing = true;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tweatherDatasetDescription() {\r\n\t\t\t\tvar d = this.scenario.weatherDataset;\r\n\r\n\t\t\t\tif (!this.isNullOrEmpty(this.scenario.climateChangeScenario))\r\n\t\t\t\t\td += ', ' + this.scenario.climateChangeScenario;\r\n\r\n\t\t\t\tif (!this.isNullOrEmpty(this.scenario.climateChangeTimePeriod))\r\n\t\t\t\t\td += ', ' + this.scenario.climateChangeTimePeriod;\r\n\r\n\t\t\t\treturn d;\r\n\t\t\t},\n\t\t\tkeepUntilDate() {\n\t\t\t\treturn moment(this.scenario.status.lastRunDate).add(this.scenario.status.keepMonths, 'months');\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScenarioView.vue?vue&type=template&id=20ca9030&\"\nimport script from \"./ScenarioView.vue?vue&type=script&lang=js&\"\nexport * from \"./ScenarioView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h2',[_vm._v(\"Create a new scenario\")]),_c('scenario-form',{attrs:{\"data\":_vm.scenario,\"show-back-button\":\"\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<h2>Create a new scenario</h2>\r\n\t\t<scenario-form :data=\"scenario\" show-back-button></scenario-form>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport ScenarioForm from '@/views/projects/scenarios/ScenarioForm';\r\n\r\n\texport default {\r\n\t\tname: 'ScenarioCreate',\r\n\t\tcomponents: {\r\n\t\t\tScenarioForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenario: {\r\n\t\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\t\tname: 'Default',\r\n\t\t\t\t\tstartingSimulationDate: undefined,\r\n\t\t\t\t\tendingSimulationDate: undefined,\r\n\t\t\t\t\tweatherDatasetID: undefined,\r\n\t\t\t\t\tclimateChangeScenarioID: undefined,\r\n\t\t\t\t\tclimateChangeTimePeriodID: undefined,\r\n\t\t\t\t\tswatVersionID: undefined,\r\n\t\t\t\t\tprintSetting: 1,\r\n\t\t\t\t\tskipYears: 2\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScenarioCreate.vue?vue&type=template&id=65fa14e7&\"\nimport script from \"./ScenarioCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./ScenarioCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'ErrorReportList')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Project feedback and error reports\")]),_c('p',[_vm._v(\" Feedback and error reports submitted for this project are listed below. We will update you via email as soon as we are able to look into your error. Please do not submit duplicate reports. \")]),_c('p',[_vm._v(\" If you received an error related to the SWAT model run, it could be do to improper input values. Please check your input customizations for the scenario. \")]),_c('grid-view',{attrs:{\"api-url\":`errorreports/${_vm.projectID}`,\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"error reports\",\"item-name\":\"error report\",\"create-route\":\"create\",\"show-create\":\"\"}}),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'ErrorReportList'\">\r\n\t\t\t<h2 class=\"mb-3\">Project feedback and error reports</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tFeedback and error reports submitted for this project are listed below.\r\n\t\t\t\tWe will update you via email as soon as we are able to look into your error.\r\n\t\t\t\tPlease do not submit duplicate reports.\r\n\t\t\t</p>\r\n\t\t\t<p>\r\n\t\t\t\tIf you received an error related to the SWAT model run, it could be do to improper input values.\r\n\t\t\t\tPlease check your input customizations for the scenario.\r\n\t\t\t</p>\r\n\r\n\t\t\t<grid-view :api-url=\"`errorreports/${projectID}`\"\r\n\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t   collection-description=\"error reports\"\r\n\t\t\t\t\t   item-name=\"error report\"\r\n\t\t\t\t\t   create-route=\"create\" show-create></grid-view>\r\n\r\n\t\t\t<fixed-action-bar>\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'ErrorReportList',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '', class: 'min' },\r\n\t\t\t\t\t\t{ key: 'reportStatus', label: 'Status', sortable: true },\r\n\t\t\t\t\t\t{ key: 'title', sortable: true },\r\n\t\t\t\t\t\t{ key: 'scenario', sortable: true },\r\n\t\t\t\t\t\t{ key: 'dateSubmitted', sortable: true, formatter: (value) => { return moment(value).format('llll') } }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'dateSubmitted',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ErrorReportList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ErrorReportList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ErrorReportList.vue?vue&type=template&id=539d91a2&\"\nimport script from \"./ErrorReportList.vue?vue&type=script&lang=js&\"\nexport * from \"./ErrorReportList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Feedback / error report details\")]),_c('table',{staticClass:\"table table-striped\"},[_c('tbody',[_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Report title\")]),_c('td',[_vm._v(_vm._s(_vm.data.title))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Report status\")]),_c('td',[(_vm.data.status === 'Submitted')?_c('b-badge',{attrs:{\"variant\":\"danger\"}},[_vm._v(\"Submitted\")]):_vm._e(),(_vm.data.status === 'Working')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(\"Working\")]):_vm._e(),(_vm.data.status === 'Resolved')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(\"Resolved\")]):_vm._e()],1)]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Date submitted\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.data.dateSubmitted)))])]),(!_vm.isNullOrEmpty(_vm.data.resolvedDate))?_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Resolution\")]),_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.data.resolvedDate))+\" \"),(!_vm.isNullOrEmpty(_vm.data.resolvedBy))?_c('span',[_vm._v(\"by \"+_vm._s(_vm.data.resolvedBy))]):_vm._e()])]):_vm._e(),(!_vm.isNullOrEmpty(_vm.data.developerComments))?_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Developer comments\")]),_c('td',[_c('b-form-textarea',{attrs:{\"readonly\":\"\",\"rows\":\"7\"},model:{value:(_vm.data.developerComments),callback:function ($$v) {_vm.$set(_vm.data, \"developerComments\", $$v)},expression:\"data.developerComments\"}})],1)]):_vm._e(),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"User comments\")]),_c('td',[_c('b-form-textarea',{attrs:{\"readonly\":\"\",\"rows\":\"7\"},model:{value:(_vm.data.userComments),callback:function ($$v) {_vm.$set(_vm.data, \"userComments\", $$v)},expression:\"data.userComments\"}})],1)]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Error message received\")]),_c('td',[_c('b-form-textarea',{attrs:{\"readonly\":\"\",\"rows\":\"10\"},model:{value:(_vm.data.exception),callback:function ($$v) {_vm.$set(_vm.data, \"exception\", $$v)},expression:\"data.exception\"}})],1)])])]),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Feedback / error report details</h2>\r\n\r\n\t\t\t<table class=\"table table-striped\">\r\n\t\t\t\t<tbody>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">Report title</th>\r\n\t\t\t\t\t\t<td>{{data.title}}</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">Report status</th>\r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t<b-badge v-if=\"data.status === 'Submitted'\" variant=\"danger\">Submitted</b-badge>\r\n\t\t\t\t\t\t\t<b-badge v-if=\"data.status === 'Working'\" variant=\"warning\">Working</b-badge>\r\n\t\t\t\t\t\t\t<b-badge v-if=\"data.status === 'Resolved'\" variant=\"success\">Resolved</b-badge>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">Date submitted</th>\r\n\t\t\t\t\t\t<td>{{data.dateSubmitted | date}}</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr v-if=\"!isNullOrEmpty(data.resolvedDate)\">\r\n\t\t\t\t\t\t<th class=\"min\">Resolution</th>\r\n\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t{{data.resolvedDate | date}}\r\n\t\t\t\t\t\t\t<span v-if=\"!isNullOrEmpty(data.resolvedBy)\">by {{data.resolvedBy}}</span>\r\n\t\t\t\t\t\t</td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr v-if=\"!isNullOrEmpty(data.developerComments)\">\r\n\t\t\t\t\t\t<th class=\"min\">Developer comments</th>\r\n\t\t\t\t\t\t<td><b-form-textarea readonly v-model=\"data.developerComments\" rows=\"7\"></b-form-textarea></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">User comments</th>\r\n\t\t\t\t\t\t<td><b-form-textarea readonly v-model=\"data.userComments\" rows=\"7\"></b-form-textarea></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th class=\"min\">Error message received</th>\r\n\t\t\t\t\t\t<td><b-form-textarea readonly v-model=\"data.exception\" rows=\"10\"></b-form-textarea></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</tbody>\r\n\t\t\t</table>\r\n\r\n\t\t\t<fixed-action-bar>\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'ErrorReportView',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\treportID: this.$route.params.reportID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.reportID = this.$route.params.reportID;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`errorreports/view/${this.reportID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ErrorReportView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ErrorReportView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ErrorReportView.vue?vue&type=template&id=9ecc7b60&\"\nimport script from \"./ErrorReportView.vue?vue&type=script&lang=js&\"\nexport * from \"./ErrorReportView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Submit feedback / error report\")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('b-form-group',{attrs:{\"label\":\"Report title\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.title)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.title)},model:{value:(_vm.$v.form.title.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.title, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.title.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"If the report is related to a scenario, select it below\"}},[_c('b-form-select',{attrs:{\"options\":_vm.scenarios},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":null}},[_vm._v(\"None\")])]},proxy:true}]),model:{value:(_vm.form.scenarioID),callback:function ($$v) {_vm.$set(_vm.form, \"scenarioID\", $$v)},expression:\"form.scenarioID\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Please provide a description of the error\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.userComments)}},[_c('b-form-textarea',{attrs:{\"rows\":\"10\",\"state\":_vm.getValidState(_vm.$v.form.userComments)},model:{value:(_vm.$v.form.userComments.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.userComments, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.userComments.$model\"}})],1),_c('fixed-action-bar',[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Submit feedback / error report</h2>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t\t<b-form-group label=\"Report title\" :invalid-feedback=\"requiredFeedback($v.form.title)\">\r\n\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.title.$model\" type=\"text\" autofocus :state=\"getValidState($v.form.title)\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"If the report is related to a scenario, select it below\">\r\n\t\t\t\t\t<b-form-select v-model=\"form.scenarioID\" :options=\"scenarios\">\r\n\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t<option :value=\"null\">None</option>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-form-select>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Please provide a description of the error\" :invalid-feedback=\"requiredFeedback($v.form.userComments)\">\r\n\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.form.userComments.$model\" rows=\"10\" :state=\"getValidState($v.form.userComments)\"></b-form-textarea>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'ErrorReportCreate',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\t\tscenarioID: null,\r\n\t\t\t\t\ttitle: '',\r\n\t\t\t\t\tuserComments: ''\r\n\t\t\t\t},\r\n\t\t\t\tscenarios: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\ttitle: { required },\r\n\t\t\t\tuserComments: { required }\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`projects/scenarios/listall/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.scenarios = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`errorreports`, this.form, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ErrorReportList' }).catch(err => {});\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ErrorReportCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ErrorReportCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ErrorReportCreate.vue?vue&type=template&id=947fbe0a&\"\nimport script from \"./ErrorReportCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./ErrorReportCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Basin input data\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):_c('div',[_c('p',[_vm._v(\" General watershed attributes are defined in the basin input file. These attributes control a diversity of physical processes at the watershed level. The interfaces will automatically set these variables to the default or recommended values listed in the variable documentation. You can use the default values or change the available values below to better reflect what is happening in your watershed. Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch04_input_bsn.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on basin inputs\")]),_vm._v(\". \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-3\"},model:{value:(_vm.tabIndex),callback:function ($$v) {_vm.tabIndex=$$v},expression:\"tabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Water Balance\",\"active\":\"\"}},[_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"table-valign-m mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.form.tables.waterBalance,\"fields\":_vm.form.fieldsHeading},scopedSlots:_vm._u([{key:\"cell(value)\",fn:function(data){return [(_vm.form.selectListFields.includes(data.item.variable))?_c('b-form-select',{attrs:{\"options\":_vm.options[data.item.variable],\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}}):_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}})]}}])})],1)]),_c('b-tab',{attrs:{\"title\":\"Surface Runoff\"}},[_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"table-valign-m mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.form.tables.surfaceRunoff,\"fields\":_vm.form.fieldsHeading},scopedSlots:_vm._u([{key:\"cell(value)\",fn:function(data){return [(_vm.form.selectListFields.includes(data.item.variable))?_c('b-form-select',{attrs:{\"options\":_vm.options[data.item.variable],\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}}):_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}})]}}])})],1)]),_c('b-tab',{attrs:{\"title\":\"Nutrient Cycling\"}},[_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"table-valign-m mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.form.tables.nutrientCycling,\"fields\":_vm.form.fieldsHeading},scopedSlots:_vm._u([{key:\"cell(value)\",fn:function(data){return [(_vm.form.selectListFields.includes(data.item.variable))?_c('b-form-select',{attrs:{\"options\":_vm.options[data.item.variable],\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}}):_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}})]}}])})],1)]),_c('b-tab',{attrs:{\"title\":\"Reaches\"}},[_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"table-valign-m mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.form.tables.reaches,\"fields\":_vm.form.fieldsHeading},scopedSlots:_vm._u([{key:\"cell(value)\",fn:function(data){return [(_vm.form.selectListFields.includes(data.item.variable))?_c('b-form-select',{attrs:{\"options\":_vm.options[data.item.variable],\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}}):_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}})]}}])})],1)])],1),_c('fixed-action-bar',[_c('b-button',{staticClass:\"border mr-2\",attrs:{\"variant\":\"light\",\"disabled\":_vm.tabIndex == 0,\"title\":\"Previous tab\"},on:{\"click\":function($event){return _vm.nextTab(-1)}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-left\"}})],1),_c('b-button',{staticClass:\"border mr-2\",attrs:{\"variant\":\"light\",\"disabled\":_vm.tabIndex == _vm.numTabs - 1,\"title\":\"Next tab\"},on:{\"click\":function($event){return _vm.nextTab(1)}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-right\"}})],1),_c('save-button',{staticClass:\"ml-2 mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.$anyDirty}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.changes.hasChanges)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete your basin input data changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Basin input data</h2>\n\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\n\t\t\t\t<page-running />\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tGeneral watershed attributes are defined in the basin input file. These attributes control a diversity of physical processes at the watershed level.\r\n\t\t\t\t\tThe interfaces will automatically set these variables to the default or recommended values listed in the variable documentation.\r\n\t\t\t\t\tYou can use the default values or change the available values below to better reflect what is happening in your watershed.\r\n\t\t\t\t\tRead the <a href=\"/content/docs/io/ch04_input_bsn.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on basin inputs</a>.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t<b-tabs content-class=\"mt-3\" v-model=\"tabIndex\" class=\"page-nav-tabs\">\r\n\t\t\t\t\t\t<b-tab title=\"Water Balance\" active>\r\n\t\t\t\t\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t\t\t\t\t<b-table responsive class=\"table-valign-m mb-0\" :items=\"form.tables.waterBalance\" :fields=\"form.fieldsHeading\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:cell(value)=\"data\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-if=\"form.selectListFields.includes(data.item.variable)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   :options=\"options[data.item.variable]\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   v-model.trim=\"$v.item[data.item.variable].$model\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   :state=\"getValidState($v.item[data.item.variable])\"></b-form-select>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-else v-model.trim=\"$v.item[data.item.variable].$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.item[data.item.variable])\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t\t\t<b-tab title=\"Surface Runoff\">\r\n\t\t\t\t\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t\t\t\t\t<b-table responsive class=\"table-valign-m mb-0\" :items=\"form.tables.surfaceRunoff\" :fields=\"form.fieldsHeading\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:cell(value)=\"data\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-if=\"form.selectListFields.includes(data.item.variable)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   :options=\"options[data.item.variable]\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   v-model.trim=\"$v.item[data.item.variable].$model\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   :state=\"getValidState($v.item[data.item.variable])\"></b-form-select>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-else v-model.trim=\"$v.item[data.item.variable].$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.item[data.item.variable])\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t\t\t<b-tab title=\"Nutrient Cycling\">\r\n\t\t\t\t\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t\t\t\t\t<b-table responsive class=\"table-valign-m mb-0\" :items=\"form.tables.nutrientCycling\" :fields=\"form.fieldsHeading\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:cell(value)=\"data\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-if=\"form.selectListFields.includes(data.item.variable)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   :options=\"options[data.item.variable]\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   v-model.trim=\"$v.item[data.item.variable].$model\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   :state=\"getValidState($v.item[data.item.variable])\"></b-form-select>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-else v-model.trim=\"$v.item[data.item.variable].$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.item[data.item.variable])\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t\t\t<b-tab title=\"Reaches\">\r\n\t\t\t\t\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t\t\t\t\t<b-table responsive class=\"table-valign-m mb-0\" :items=\"form.tables.reaches\" :fields=\"form.fieldsHeading\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:cell(value)=\"data\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-if=\"form.selectListFields.includes(data.item.variable)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   :options=\"options[data.item.variable]\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   v-model.trim=\"$v.item[data.item.variable].$model\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t   :state=\"getValidState($v.item[data.item.variable])\"></b-form-select>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-else v-model.trim=\"$v.item[data.item.variable].$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.item[data.item.variable])\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t</b-tabs>\r\n\r\n\t\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t\t<b-button variant=\"light\" @click=\"nextTab(-1)\" class=\"border mr-2\" :disabled=\"tabIndex == 0\" title=\"Previous tab\"><font-awesome-icon icon=\"chevron-left\" /></b-button>\r\n\t\t\t\t\t\t<b-button variant=\"light\" @click=\"nextTab(1)\" class=\"border mr-2\" :disabled=\"tabIndex == numTabs - 1\" title=\"Next tab\"><font-awesome-icon icon=\"chevron-right\" /></b-button>\r\n\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"ml-2 mr-2\" :disabled=\"!$v.$anyDirty\" />\r\n\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t\t<save-button v-if=\"changes.hasChanges\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t</b-form>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete your basin input data changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'EditBsn',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\ttabIndex: 1,\n\t\t\t\tnumTabs: 4,\r\n\r\n\t\t\t\tform: {\r\n\t\t\t\t\ttables: {\r\n\t\t\t\t\t\twaterBalance: [],\r\n\t\t\t\t\t\tsurfaceRunoff: [],\r\n\t\t\t\t\t\tnutrientCycling: [],\r\n\t\t\t\t\t\treaches: []\r\n\t\t\t\t\t},\r\n\t\t\t\t\tfields: {\r\n\t\t\t\t\t\twaterBalance: ['SFTMP', 'SMTMP', 'SMFMX', 'SMFMN', 'TIMP', 'IPET', 'ESCO', 'EPCO'],\r\n\t\t\t\t\t\tsurfaceRunoff: ['ICN', 'CNCOEF', 'ICRK', 'SURLAG'],\r\n\t\t\t\t\t\tnutrientCycling: ['RCN', 'CDN', 'SDNCO', 'NPERCO', 'PPERCO', 'PHOSKD', 'PSP'],\r\n\t\t\t\t\t\treaches: ['IRTE', 'MSK_COL1', 'MSK_COL2', 'MSK_X', 'TRNSRCH', 'EVRCH', 'IDEG', 'PRF', 'SPCON', 'SPEXP', 'IWQ', 'ADJ_PKR']\r\n\t\t\t\t\t},\r\n\t\t\t\t\tfieldsHeading: [\r\n\t\t\t\t\t\t{ key: 'value', class: 'min-w-100 table-input-col' },\r\n\t\t\t\t\t\t{ key: 'units', class: 'min' },\r\n\t\t\t\t\t\t{ key: 'description', class: 'wrap' },\r\n\t\t\t\t\t\t'variable', 'default', 'valid_range'\r\n\t\t\t\t\t],\r\n\t\t\t\t\tselectListFields: ['IPET', 'ICNT', 'ICRK', 'IRTE', 'IDEG', 'IWQ'],\r\n\t\t\t\t},\r\n\r\n\t\t\t\tdefinitions: {},\r\n\t\t\t\tdefaults: {},\r\n\t\t\t\titem: {},\n\t\t\t\tchanges: {},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tIPET: [\r\n\t\t\t\t\t\t{ value: 0, text: '0 - Priestley-Taylor method' },\r\n\t\t\t\t\t\t{ value: 1, text: '1 - Penman/Monteith method' },\r\n\t\t\t\t\t\t{ value: 2, text: '2 - Hargreaves method' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tICNT: [\r\n\t\t\t\t\t\t{ value: 0, text: '0 - Calculate as a function of soil moisture' },\r\n\t\t\t\t\t\t{ value: 1, text: '1 - Calculate as a function of plant evaporatnspiration' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tICRK: [\r\n\t\t\t\t\t\t{ value: 0, text: '0 - Do not model crack flow in soil' },\r\n\t\t\t\t\t\t{ value: 1, text: '1 - Model crack flow in soil' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tIRTE: [\r\n\t\t\t\t\t\t{ value: 0, text: '0 - Variable Storage method' },\r\n\t\t\t\t\t\t{ value: 1, text: '1 - Muskingum method' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tIDEG: [\r\n\t\t\t\t\t\t{ value: 0, text: '0 - Channel dimensions are not updated as a result of degradation' },\r\n\t\t\t\t\t\t{ value: 1, text: '1 - Channel dimensions are updated as a result of degradation' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tIWQ: [\r\n\t\t\t\t\t\t{ value: 0, text: '0 - Do not model in-stream nutrient and pesticide transformations' },\r\n\t\t\t\t\t\t{ value: 1, text: '1 - Model in-stream nutrient and pesticide transformations' }\r\n\t\t\t\t\t]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations() {\r\n\t\t\tvar item = {};\r\n\t\t\tvar fields = this.form.fields.waterBalance.concat(this.form.fields.surfaceRunoff).concat(this.form.fields.nutrientCycling).concat(this.form.fields.reaches);\r\n\t\t\tfor (var i = 0; i < fields.length; i++) {\r\n\t\t\t\titem[fields[i]] = { required };\r\n\t\t\t}\r\n\t\t\treturn { item: item };\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/general/bsn/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.item = response.data.item;\r\n\t\t\t\t\tthis.defaults = response.data.default;\r\n\t\t\t\t\tthis.definitions = response.data.definitions;\n\t\t\t\t\tthis.changes = response.data.changes;\n\t\t\t\t\tthis.log(this.$v);\r\n\r\n\t\t\t\t\t//Water Balance Tab\r\n\t\t\t\t\tthis.form.tables.waterBalance = [];\r\n\t\t\t\t\tfor (var i = 0; i < this.form.fields.waterBalance.length; i++) {\r\n\t\t\t\t\t\tvar n = this.form.fields.waterBalance[i];\r\n\t\t\t\t\t\tthis.form.tables.waterBalance.push({\r\n\t\t\t\t\t\t\tvariable: n,\r\n\t\t\t\t\t\t\tdescription: this.definitions[n].description,\r\n\t\t\t\t\t\t\tvalue: this.item[n],\r\n\t\t\t\t\t\t\tunits: this.definitions[n].units,\r\n\t\t\t\t\t\t\tvalid_range: this.definitions[n].maxValue === this.definitions[n].minValue ? '' : `${this.definitions[n].minValue} to ${this.definitions[n].maxValue}`,\r\n\t\t\t\t\t\t\tdefault: this.defaults[n]\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t//Surface Runoff Tab\r\n\t\t\t\t\tthis.form.tables.surfaceRunoff = [];\r\n\t\t\t\t\tfor (i = 0; i < this.form.fields.surfaceRunoff.length; i++) {\r\n\t\t\t\t\t\tn = this.form.fields.surfaceRunoff[i];\r\n\t\t\t\t\t\tthis.form.tables.surfaceRunoff.push({\r\n\t\t\t\t\t\t\tvariable: n,\r\n\t\t\t\t\t\t\tdescription: this.definitions[n].description,\r\n\t\t\t\t\t\t\tvalue: this.item[n],\r\n\t\t\t\t\t\t\tunits: this.definitions[n].units,\r\n\t\t\t\t\t\t\tvalid_range: this.definitions[n].maxValue === this.definitions[n].minValue ? '' : `${this.definitions[n].minValue} to ${this.definitions[n].maxValue}`,\r\n\t\t\t\t\t\t\tdefault: this.defaults[n]\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t//Nutrient Cycling Tab\r\n\t\t\t\t\tthis.form.tables.nutrientCycling = [];\r\n\t\t\t\t\tfor (i = 0; i < this.form.fields.nutrientCycling.length; i++) {\r\n\t\t\t\t\t\tn = this.form.fields.nutrientCycling[i];\r\n\t\t\t\t\t\tthis.form.tables.nutrientCycling.push({\r\n\t\t\t\t\t\t\tvariable: n,\r\n\t\t\t\t\t\t\tdescription: this.definitions[n].description,\r\n\t\t\t\t\t\t\tvalue: this.item[n],\r\n\t\t\t\t\t\t\tunits: this.definitions[n].units,\r\n\t\t\t\t\t\t\tvalid_range: this.definitions[n].maxValue === this.definitions[n].minValue ? '' : `${this.definitions[n].minValue} to ${this.definitions[n].maxValue}`,\r\n\t\t\t\t\t\t\tdefault: this.defaults[n]\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t//Reaches Tab\r\n\t\t\t\t\tthis.form.tables.reaches = [];\r\n\t\t\t\t\tfor (i = 0; i < this.form.fields.reaches.length; i++) {\r\n\t\t\t\t\t\tn = this.form.fields.reaches[i];\r\n\t\t\t\t\t\tthis.form.tables.reaches.push({\r\n\t\t\t\t\t\t\tvariable: n,\r\n\t\t\t\t\t\t\tdescription: this.definitions[n].description,\r\n\t\t\t\t\t\t\tvalue: this.item[n],\r\n\t\t\t\t\t\t\tunits: this.definitions[n].units,\r\n\t\t\t\t\t\t\tvalid_range: this.definitions[n].maxValue === this.definitions[n].minValue ? '' : `${this.definitions[n].minValue} to ${this.definitions[n].maxValue}`,\r\n\t\t\t\t\t\t\tdefault: this.defaults[n]\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {};\r\n\t\t\t\t\t\tvar fields = this.form.fields.waterBalance.concat(this.form.fields.surfaceRunoff).concat(this.form.fields.nutrientCycling).concat(this.form.fields.reaches);\r\n\t\t\t\t\t\tfor (var i = 0; i < fields.length; i++) {\r\n\t\t\t\t\t\t\tif (this.$v.item[fields[i]].$dirty || this.item[fields[i]] != this.defaults[fields[i]]) {\r\n\t\t\t\t\t\t\t\tdata[fields[i]] = Number(this.item[fields[i]]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.log(data);\r\n\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/general/bsn/${this.scenarioID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemod/${this.changes.modID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\n\t\t\tnextTab(position) {\r\n\t\t\t\tvar maxTabPos = this.numTabs - 1;\r\n\t\t\t\tthis.tabIndex += position;\r\n\r\n\t\t\t\tif (this.tabIndex > maxTabPos)\r\n\t\t\t\t\tthis.tabIndex = 0;\r\n\t\t\t\tif (this.tabIndex < 0)\r\n\t\t\t\t\tthis.tabIndex = maxTabPos;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditBsn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditBsn.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditBsn.vue?vue&type=template&id=2c5f4c7c&\"\nimport script from \"./EditBsn.vue?vue&type=script&lang=js&\"\nexport * from \"./EditBsn.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name === 'EditFerts')?_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Fertilizers\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):_c('div',[_c('p',[_vm._v(\" The fertilizer database summarizes the relative fractions of nitrogen and phosphorus pools in the different fertilizers. Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch17_input_fertdb.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on fertilizer inputs\")]),_vm._v(\". \")]),(_vm.hasChanges)?_c('p',[_vm._v(\" Fertilizers you have modified are \"),_c('span',{staticClass:\"table-info\"},[_vm._v(\"highlighted\")]),_vm._v(\". \")]):_vm._e(),_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.items,\"fields\":_vm.fields,\"striped\":\"\",\"hover\":\"\",\"per-page\":_vm.perPage,\"current-page\":_vm.currentPage,\"tbody-tr-class\":_vm.rowClass},scopedSlots:_vm._u([{key:\"cell(edit)\",fn:function(data){return [_c('b-link',{attrs:{\"to\":_vm.editUrl + data.item.id}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)]}}],null,false,758758611)})],1),_c('b-pagination',{attrs:{\"total-rows\":_vm.rows,\"per-page\":_vm.perPage,\"aria-controls\":\"fert-table\"},model:{value:(_vm.currentPage),callback:function ($$v) {_vm.currentPage=$$v},expression:\"currentPage\"}}),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.hasChanges)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete your fertilizer input data changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)]):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container v-if=\"$route.name === 'EditFerts'\" :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Fertilizers</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\n\t\t\t<div v-else>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tThe fertilizer database summarizes the relative fractions of nitrogen and phosphorus pools in the different fertilizers.\r\n\t\t\t\t\tRead the <a href=\"/content/docs/io/ch17_input_fertdb.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on fertilizer inputs</a>.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<p v-if=\"hasChanges\">\r\n\t\t\t\t\tFertilizers you have modified are <span class=\"table-info\">highlighted</span>.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t\t<b-table responsive class=\"mb-0\" :items=\"items\" :fields=\"fields\" striped hover :per-page=\"perPage\" :current-page=\"currentPage\" :tbody-tr-class=\"rowClass\">\r\n\t\t\t\t\t\t<template v-slot:cell(edit)=\"data\">\r\n\t\t\t\t\t\t\t<b-link :to=\"editUrl + data.item.id\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'edit']\" />\r\n\t\t\t\t\t\t\t</b-link>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-table>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<b-pagination v-model=\"currentPage\"\r\n\t\t\t\t\t\t\t  :total-rows=\"rows\"\r\n\t\t\t\t\t\t\t  :per-page=\"perPage\"\r\n\t\t\t\t\t\t\t  aria-controls=\"fert-table\">\r\n\t\t\t\t</b-pagination>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"hasChanges\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete your fertilizer input data changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</div>\t\t\t\r\n\t\t</page-authorization-container>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\r\n\texport default {\r\n\t\tname: 'EditFerts',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tfields: [\r\n\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t{ key: 'id', label: 'ID' },\r\n\t\t\t\t\t{ key: 'name', label: 'Name' },\r\n\t\t\t\t\t{ key: 'description', label: 'Description' },\r\n\t\t\t\t\t{ key: 'FMINN', label: 'Mineral N', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'FMINP', label: 'Mineral P', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'FORGN', label: 'Organic N', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'FORGP', label: 'Organic P', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'FNH3N', label: 'Mineral N applied as NH3 N', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t],\r\n\t\t\t\teditUrl: '',\r\n\t\t\t\tperPage: 20,\r\n\t\t\t\tcurrentPage: 1,\r\n\t\t\t\titems: [],\r\n\t\t\t\tfieldsData: [],\n\t\t\t\thasChanges: false\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\trows() {\r\n\t\t\t\treturn this.items.length\r\n\t\t\t},\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/general/ferts/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.items = response.data.items;\n\t\t\t\t\tthis.hasChanges = response.data.hasChanges;\r\n\t\t\t\t\tthis.editUrl = '/projects/' + this.projectID + '/scenarios/' + this.scenarioID + '/fert/';\r\n\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Fert`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\n\t\t\trowClass(item, type) {\r\n\t\t\t\tif (!item) return\r\n\t\t\t\tif (item.isModified) return 'table-info'\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditFerts.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditFerts.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditFerts.vue?vue&type=template&id=6508f747&\"\nimport script from \"./EditFerts.vue?vue&type=script&lang=js&\"\nexport * from \"./EditFerts.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Edit \"+_vm._s(_vm.defaults.FERTNAME)+\" (\"+_vm._s(_vm.defaults.FERTNM)+\")\")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"table-valign-m mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.ferts,\"fields\":_vm.fieldsHeading},scopedSlots:_vm._u([{key:\"cell(value)\",fn:function(data){return [_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}})]}}])})],1),_c('fixed-action-bar',[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.$anyDirty},nativeOn:{\"click\":function($event){return _vm.save.apply(null, arguments)}}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Edit {{defaults.FERTNAME}} ({{defaults.FERTNM}})</h2>\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t<b-table responsive class=\"table-valign-m mb-0\" :items=\"ferts\" :fields=\"fieldsHeading\">\r\n\t\t\t\t\t<template v-slot:cell(value)=\"data\">\r\n\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.item[data.item.variable].$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.item[data.item.variable])\"></b-form-input>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</b-table>\r\n\t\t\t</div>\r\n\r\n\t\t\t<fixed-action-bar>\r\n\t\t\t\t<save-button :saving=\"page.saving\" @click.native=\"save\" class=\"mr-2\" :disabled=\"!$v.$anyDirty\" />\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'EditFert',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tfertID: this.$route.params.fertID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\tdefinitions: {},\r\n\t\t\t\tdefaults: {},\r\n\t\t\t\titem: {},\r\n\t\t\t\tignoreFields: ['Dataset', 'DatasetID'],\r\n\t\t\t\tferts: [],\r\n\t\t\t\tfertFields: ['FMINN', 'FMINP', 'FORGN', 'FORGP', 'FNH3N'],\r\n\r\n\t\t\t\tfieldsHeading: [\r\n\t\t\t\t\t{ key: 'value', class: 'min-w-100 table-input-col' },\r\n\t\t\t\t\t{ key: 'units', class: 'min' },\r\n\t\t\t\t\t{ key: 'description', class: 'wrap' },\r\n\t\t\t\t\t'variable', 'default', 'valid_range'\r\n\t\t\t\t],\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations() {\r\n\t\t\tvar item = {};\r\n\t\t\tfor (var i = 0; i < this.fertFields.length; i++) {\r\n\t\t\t\titem[this.fertFields[i]] = { required };\r\n\t\t\t}\r\n\t\t\treturn { item: item };\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/general/fert/${this.scenarioID}/${this.fertID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.item = response.data.item;\r\n\t\t\t\t\tthis.defaults = response.data.default;\r\n\t\t\t\t\tthis.definitions = response.data.definitions;\r\n\t\t\t\t\tthis.log(this.$v);\r\n\r\n\t\t\t\t\tthis.ferts = [];\r\n\t\t\t\t\tfor (var i = 0; i < this.fertFields.length; i++) {\r\n\t\t\t\t\t\tvar n = this.fertFields[i];\r\n\t\t\t\t\t\tthis.ferts.push({\r\n\t\t\t\t\t\t\tvariable: n,\r\n\t\t\t\t\t\t\tdescription: this.definitions[n].description,\r\n\t\t\t\t\t\t\tvalue: this.item[n],\r\n\t\t\t\t\t\t\tunits: this.definitions[n].units,\r\n\t\t\t\t\t\t\tvalid_range: this.definitions[n].maxValue === this.definitions[n].minValue ? '' : `${this.definitions[n].minValue} to ${this.definitions[n].maxValue}`,\r\n\t\t\t\t\t\t\tdefault: this.defaults[n]\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {};\r\n\t\t\t\t\t\tfor (var i = 0; i < this.fertFields.length; i++) {\r\n\t\t\t\t\t\t\tif (this.$v.item[this.fertFields[i]].$dirty || this.item[this.fertFields[i]] != this.defaults[this.fertFields[i]]) {\r\n\t\t\t\t\t\t\t\tdata[this.fertFields[i]] = Number(this.item[this.fertFields[i]]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/general/fert/${this.scenarioID}/${this.fertID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditFert.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditFert.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditFert.vue?vue&type=template&id=7c390b28&\"\nimport script from \"./EditFert.vue?vue&type=script&lang=js&\"\nexport * from \"./EditFert.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name === 'EditUrbans')?_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Urban input data\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):_c('div',[_c('p',[_vm._v(\" The urban database summarizes variables used by the model to simulate different types of urban areas. Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch18_input_urbandb.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on urban inputs\")]),_vm._v(\". \")]),(_vm.hasChanges)?_c('p',[_vm._v(\" Urban you have modified are \"),_c('span',{staticClass:\"table-info\"},[_vm._v(\"highlighted\")]),_vm._v(\". \")]):_vm._e(),_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.items,\"fields\":_vm.fields,\"striped\":\"\",\"hover\":\"\",\"per-page\":_vm.perPage,\"current-page\":_vm.currentPage,\"tbody-tr-class\":_vm.rowClass},scopedSlots:_vm._u([{key:\"cell(edit)\",fn:function(data){return [_c('b-link',{attrs:{\"to\":_vm.editUrl + data.item.id}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)]}}],null,false,758758611)})],1),_c('b-pagination',{attrs:{\"total-rows\":_vm.rows,\"per-page\":_vm.perPage,\"aria-controls\":\"urban-table\"},model:{value:(_vm.currentPage),callback:function ($$v) {_vm.currentPage=$$v},expression:\"currentPage\"}}),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.hasChanges)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete your urban input data changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)]):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container v-if=\"$route.name === 'EditUrbans'\" :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Urban input data</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tThe urban database summarizes variables used by the model to simulate different types of urban areas.\r\n\t\t\t\t\tRead the <a href=\"/content/docs/io/ch18_input_urbandb.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on urban inputs</a>.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<p v-if=\"hasChanges\">\r\n\t\t\t\t\tUrban you have modified are <span class=\"table-info\">highlighted</span>.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t\t<b-table responsive class=\"mb-0\" :items=\"items\" :fields=\"fields\" striped hover :per-page=\"perPage\" :current-page=\"currentPage\" :tbody-tr-class=\"rowClass\">\r\n\t\t\t\t\t\t<template v-slot:cell(edit)=\"data\">\r\n\t\t\t\t\t\t\t<b-link :to=\"editUrl + data.item.id\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'edit']\" />\r\n\t\t\t\t\t\t\t</b-link>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-table>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<b-pagination v-model=\"currentPage\"\r\n\t\t\t\t\t\t\t  :total-rows=\"rows\"\r\n\t\t\t\t\t\t\t  :per-page=\"perPage\"\r\n\t\t\t\t\t\t\t  aria-controls=\"urban-table\">\r\n\t\t\t\t</b-pagination>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"hasChanges\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete your urban input data changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\r\n\texport default {\r\n\t\tname: 'EditUrbans',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tfields: [\r\n\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t{ key: 'id', label: 'ID' },\r\n\t\t\t\t\t{ key: 'name', label: 'Name' },\r\n\t\t\t\t\t{ key: 'description', label: 'Description' },\r\n\t\t\t\t\t{ key: 'FIMP',\tlabel: 'FIMP', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'FCIMP',\tlabel: 'FCIMP', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'CURBDEN',\tlabel: 'CURBDEN', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'URBCOEF',\tlabel: 'URBCOEF', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'DIRTMX',\tlabel: 'DIRTMX', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'THALF',\tlabel: 'THALF', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'TNCONC',\tlabel: 'TNCONC', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'TPCONC',\tlabel: 'TPCONC', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'TNO3CONC',\tlabel: 'TNO3CONC', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t\t{ key: 'URBCN2', label: 'URBCN2', formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(3)) } },\r\n\t\t\t\t],\r\n\t\t\t\teditUrl: '',\r\n\t\t\t\tperPage: 20,\r\n\t\t\t\tcurrentPage: 1,\r\n\t\t\t\titems: [],\r\n\t\t\t\tfieldsData: [],\r\n\t\t\t\thasChanges: false\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\trows() {\r\n\t\t\t\treturn this.items.length\r\n\t\t\t},\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/general/urbans/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.items = response.data.items;\r\n\t\t\t\t\tthis.hasChanges = response.data.hasChanges;\r\n\t\t\t\t\tthis.editUrl = '/projects/' + this.projectID + '/scenarios/' + this.scenarioID + '/urban/';\r\n\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Urban`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\trowClass(item, type) {\r\n\t\t\t\tif (!item) return\r\n\t\t\t\tif (item.isModified) return 'table-info'\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditUrbans.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditUrbans.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditUrbans.vue?vue&type=template&id=025290df&\"\nimport script from \"./EditUrbans.vue?vue&type=script&lang=js&\"\nexport * from \"./EditUrbans.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Edit \"+_vm._s(_vm.defaults.URBNAME)+\" (\"+_vm._s(_vm.defaults.URBFLNM)+\")\")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"table-valign-m mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.urbans,\"fields\":_vm.fieldsHeading},scopedSlots:_vm._u([{key:\"cell(value)\",fn:function(data){return [_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}})]}}])})],1),_c('fixed-action-bar',[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.$anyDirty},nativeOn:{\"click\":function($event){return _vm.save.apply(null, arguments)}}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Edit {{defaults.URBNAME}} ({{defaults.URBFLNM}})</h2>\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t<b-table responsive class=\"table-valign-m mb-0\" :items=\"urbans\" :fields=\"fieldsHeading\">\r\n\t\t\t\t\t<template v-slot:cell(value)=\"data\">\r\n\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.item[data.item.variable].$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.item[data.item.variable])\"></b-form-input>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</b-table>\r\n\t\t\t</div>\r\n\r\n\t\t\t<fixed-action-bar>\r\n\t\t\t\t<save-button :saving=\"page.saving\" @click.native=\"save\" class=\"mr-2\" :disabled=\"!$v.$anyDirty\" />\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'EditUrban',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\turbanID: this.$route.params.urbanID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\tdefinitions: {},\r\n\t\t\t\tdefaults: {},\r\n\t\t\t\titem: {},\r\n\t\t\t\tignoreFields: ['Dataset', 'DatasetID'],\r\n\t\t\t\turbans: [],\r\n\t\t\t\turbanFields: ['FIMP', 'FCIMP', 'CURBDEN', 'URBCOEF', 'DIRTMX','THALF', 'TNCONC', 'TPCONC', 'TNO3CONC', 'URBCN2'],\r\n\r\n\t\t\t\tfieldsHeading: [\r\n\t\t\t\t\t{ key: 'value', class: 'min-w-100 table-input-col' },\r\n\t\t\t\t\t{ key: 'units', class: 'min' },\r\n\t\t\t\t\t{ key: 'description', class: 'wrap' },\r\n\t\t\t\t\t'variable', 'default', 'valid_range'\r\n\t\t\t\t],\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations() {\r\n\t\t\tvar item = {};\r\n\t\t\tfor (var i = 0; i < this.urbanFields.length; i++) {\r\n\t\t\t\titem[this.urbanFields[i]] = { required };\r\n\t\t\t}\r\n\t\t\treturn { item: item };\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/general/urban/${this.scenarioID}/${this.urbanID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.item = response.data.item;\r\n\t\t\t\t\tthis.defaults = response.data.default;\r\n\t\t\t\t\tthis.definitions = response.data.definitions;\r\n\t\t\t\t\tthis.log(this.$v);\r\n\r\n\t\t\t\t\tthis.urbans = [];\r\n\t\t\t\t\tfor (var i = 0; i < this.urbanFields.length; i++) {\r\n\t\t\t\t\t\tvar n = this.urbanFields[i];\r\n\t\t\t\t\t\tthis.urbans.push({\r\n\t\t\t\t\t\t\tvariable: n,\r\n\t\t\t\t\t\t\tdescription: this.definitions[n].description,\r\n\t\t\t\t\t\t\tvalue: this.item[n],\r\n\t\t\t\t\t\t\tunits: this.definitions[n].units,\r\n\t\t\t\t\t\t\tvalid_range: this.definitions[n].maxValue === this.definitions[n].minValue ? '' : `${this.definitions[n].minValue} to ${this.definitions[n].maxValue}`,\r\n\t\t\t\t\t\t\tdefault: this.defaults[n]\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {};\r\n\t\t\t\t\t\tfor (var i = 0; i < this.urbanFields.length; i++) {\r\n\t\t\t\t\t\t\tif (this.$v.item[this.urbanFields[i]].$dirty || this.item[this.urbanFields[i]] != this.defaults[this.urbanFields[i]]) {\r\n\t\t\t\t\t\t\t\tdata[this.urbanFields[i]] = Number(this.item[this.urbanFields[i]]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/general/urban/${this.scenarioID}/${this.urbanID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditUrban.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditUrban.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditUrban.vue?vue&type=template&id=19bed742&\"\nimport script from \"./EditUrban.vue?vue&type=script&lang=js&\"\nexport * from \"./EditUrban.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Nutrient efficiency\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):_c('div',[_c('p',[_vm._v(\" The amount of fertilizer applied in auto fertilization is based on the amount of nitrogen removed at harvest. If you set nutrient efficiency value to 1.0, the model will apply enough fertilizer to replace the amount of nitrogen removed at harvest. If you enter a number greater than 1.0, the model will apply fertilizer to meet harvest removal plus an extra amount to make up for nitrogen losses due to surface runoff/leaching. If nutrient efficiency value is less than 1.0, the model will apply fertilizer at the specified fraction below the amount removed at harvest. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),(_vm.data.items.length < 1)?_c('div',[_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(\" Your project does not contain any \"),_c('span',{directives:[{name:\"b-popover\",rawName:\"v-b-popover.hover.bottom\",value:('Land uses utilizing nutrient efficiency: ' + _vm.data.autoEffLanduses.join(', ')),expression:\"'Land uses utilizing nutrient efficiency: ' + data.autoEffLanduses.join(', ')\",modifiers:{\"hover\":true,\"bottom\":true}}],staticClass:\"text-primary\",staticStyle:{\"text-decoration\":\"underline\",\"cursor\":\"pointer\"}},[_vm._v(\"land use\")]),_vm._v(\" that would be affected by the nutrient efficiency variable. \")]),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1):_c('div',[_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('p',[_c('strong',[_vm._v(\"Enter a new nutrient efficiency value (number ranging from 0 to 2). The default value is 0.\")])]),_c('table',{staticClass:\"table table-valign-m\"},[_c('thead',{staticClass:\"thead-light\"},[_c('tr',[_c('th',{staticStyle:{\"width\":\"150px\"}},[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"applyToAll\",\"type\":\"number\",\"step\":\"any\",\"min\":\"0\",\"max\":\"2\"},model:{value:(_vm.applyToAll),callback:function ($$v) {_vm.applyToAll=$$v},expression:\"applyToAll\"}})],1),_c('th',{attrs:{\"colspan\":\"2\"}},[_c('b-button',{attrs:{\"type\":\"button\"},on:{\"click\":_vm.setAll}},[_vm._v(\"Apply value to all\")])],1)])]),_c('tbody',_vm._l((_vm.data.items),function(item,i){return _c('tr',{key:i},[_c('td',{staticStyle:{\"width\":\"150px\"}},[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":item.name,\"state\":_vm.getValidState(_vm.$v.data.items.$each[i].value),\"type\":\"number\",\"step\":\"any\",\"min\":\"0\",\"max\":\"2\"},model:{value:(_vm.$v.data.items.$each[i].value.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.items.$each[i].value, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.items.$each[i].value.$model\"}})],1),_c('td',{staticClass:\"min\"},[_c('label',{staticClass:\"mb-0\",attrs:{\"for\":item.name}},[_vm._v(_vm._s(item.name))])]),_c('td',[_vm._v(\" \"+_vm._s(_vm.data.descriptions[item.name])+\" \")])])}),0)]),_c('fixed-action-bar',[_c('save-button',{staticClass:\"ml-2 mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.$anyDirty}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.data.changes.hasChanges)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete your nutrient efficiency changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Nutrient efficiency</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tThe amount of fertilizer applied in auto fertilization is based on the amount of nitrogen removed at harvest.\r\n\t\t\t\t\tIf you set nutrient efficiency value to 1.0, the model will apply enough fertilizer to replace the amount of nitrogen removed at harvest.\r\n\t\t\t\t\tIf you enter a number greater than 1.0, the model will apply fertilizer to meet harvest removal plus an extra amount to make up for nitrogen losses due to surface runoff/leaching.\r\n\t\t\t\t\tIf nutrient efficiency value is less than 1.0, the model will apply fertilizer at the specified fraction below the amount removed at harvest.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\n\n\t\t\t\t<div v-if=\"data.items.length < 1\">\r\n\t\t\t\t\t<b-alert show variant=\"info\">\r\n\t\t\t\t\t\tYour project does not contain any <span v-b-popover.hover.bottom=\"'Land uses utilizing nutrient efficiency: ' + data.autoEffLanduses.join(', ')\" class=\"text-primary\" style=\"text-decoration:underline;cursor:pointer\">land use</span>\n\t\t\t\t\t\tthat would be affected by the nutrient efficiency variable.\r\n\t\t\t\t\t</b-alert>\n\r\n\t\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-else>\r\n\t\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t<strong>Enter a new nutrient efficiency value (number ranging from 0 to 2). The default value is 0.</strong>\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<table class=\"table table-valign-m\">\n\t\t\t\t\t\t\t<thead class=\"thead-light\">\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<th style=\"width: 150px\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"applyToAll\" v-model=\"applyToAll\" type=\"number\" step=\"any\" min=\"0\" max=\"2\" class=\"max-w-150\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</th>\r\n\t\t\t\t\t\t\t\t\t<th colspan=\"2\">\r\n\t\t\t\t\t\t\t\t\t\t<b-button type=\"button\" @click=\"setAll\">Apply value to all</b-button>\r\n\t\t\t\t\t\t\t\t\t</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</thead>\n\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t<tr v-for=\"(item, i) in data.items\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<td style=\"width: 150px\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input :id=\"item.name\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t  v-model.trim=\"$v.data.items.$each[i].value.$model\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t  :state=\"getValidState($v.data.items.$each[i].value)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t  type=\"number\" step=\"any\" min=\"0\" max=\"2\" class=\"max-w-150\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td class=\"min\">\r\n\t\t\t\t\t\t\t\t\t\t<label :for=\"item.name\" class=\"mb-0\">{{item.name}}</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t{{data.descriptions[item.name]}}\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"ml-2 mr-2\" :disabled=\"!$v.$anyDirty\" />\r\n\t\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t\t\t<save-button v-if=\"data.changes.hasChanges\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t</b-form>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tAre you sure you want to delete your nutrient efficiency changes?\r\n\t\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, between } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'EditNutrientEfficiency',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\n\t\t\t\t\titems: [],\n\t\t\t\t\tdescriptions: {},\n\t\t\t\t\tchanges: {},\n\t\t\t\t\tautoEffLanduses: []\r\n\t\t\t\t},\n\t\t\t\tapplyToAll: 0\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tdata: {\n\t\t\t\titems: {\n\t\t\t\t\trequired,\r\n\t\t\t\t\t$each: {\n\t\t\t\t\t\tname: { required },\r\n\t\t\t\t\t\tvalue: { required, between: between(0, 2) }\r\n\t\t\t\t\t}\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/general/nutrientefficiency/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\n\n\t\t\t\t\tthis.log(this.$v);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\n\n\t\t\t\tthis.log(this.data.items);\n\t\t\t\tthis.log(this.$v);\r\n\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/general/nutrientefficiency/${this.scenarioID}`, this.data.items, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemod/${this.data.changes.modID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\n\t\t\tsetAll() {\n\t\t\t\tfor (var i = 0; i < this.data.items.length; i++) {\n\t\t\t\t\tthis.data.items[i].value = this.applyToAll;\r\n\t\t\t\t}\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditNutrientEfficiency.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditNutrientEfficiency.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditNutrientEfficiency.vue?vue&type=template&id=6df168c3&\"\nimport script from \"./EditNutrientEfficiency.vue?vue&type=script&lang=js&\"\nexport * from \"./EditNutrientEfficiency.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Land use update\")]),_c('p',[_vm._v(\" Land use update files allow HRU fraction updating during a simulation run. This is particularly useful to initialize conservation measures mid-simulation. After their initialization, the practices remain in effect for the remainder of the simulation. \")]),_c('p',[_vm._v(\" Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch37_input_lup.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on land use update\")]),_vm._v(\". Please note we accept CSV files instead of the .dat files described in the documentation. \")]),(_vm.data.iclus.isAvailable)?_c('div',[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Integrated Climate and Land-Use Scenarios (ICLUS)\")]),_c('p',[_vm._v(\" ICLUS (Integrated Climate and Land-Use Scenarios) Version 2.1.1 is a raster dataset of land use and population projections. To integrate this data into HAWQS projects, ICLUS data was reprojected and spatially resampled, and land use change between ICLUS and the land use rasters used in the development of HAWQS was calculated. Because HAWQS uses land use (among other datasets) to define HRUs (Hydrologic Resource Units) as fractions of each subbasin, land use changes could not be directly applied to the HRUs. Instead, land use change proportions were calculated and used to alter the existing fractions of land use classes in HAWQS. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.iclus.errors}}),_c('b-form-group',[_c('b-checkbox',{on:{\"change\":_vm.saveIclusSetting},model:{value:(_vm.data.iclus.isUsing),callback:function ($$v) {_vm.$set(_vm.data.iclus, \"isUsing\", $$v)},expression:\"data.iclus.isUsing\"}},[_vm._v(\" Use ICLUS files with your scenario? Uncheck to upload your own files or not use any land use update. \"),(_vm.page.iclus.saving)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\"}}):_vm._e()],1)],1)],1):_vm._e(),(!_vm.data.iclus.isUsing)?_c('div',[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Data formatting and uploading instructions\")]),_c('ol',[_c('li',[_c('a',{attrs:{\"href\":_vm.data.hrusCsvUrl}},[_vm._v(\"Download a CSV file of your project HRUs.\")]),(_vm.data.iclus.isAvailable)?_c('ul',[_c('li',[_vm._v(\" Note: The CSV above is the HAWQS default project HRUs consistent with the user selected HRU aggregation. To download the ICLUS HRU table, check the box above to use ICLUS, run your scenario with SWAT editor tables checked, and download. Then you can open and view the HRU table in the Access database associated with the scenario. \")])]):_vm._e()]),_c('li',[_vm._v(\"Edit the \"),_c('strong',[_vm._v(\"fraction\")]),_vm._v(\" column values as needed. Remember, the \"),_c('strong',[_vm._v(\"fraction must add up to 1 for each subbasin\")]),_vm._v(\".\")]),_c('li',[_vm._v(\" Save your changes to the CSV, and rename it to the data you want to start the update. Please name the file in the format yyyy-mm-dd.csv, e.g. if your date is January 3, 1965, name the file 1965-01-03.csv. \"),_c('ul',[_c('li',[_vm._v(\"Warning: be careful when saving the CSV to make sure the subbasin column stays intact. Sometimes Microsoft Excel trims and rounds the value resulting in an error.\")])])]),_c('li',[_vm._v(\"Copy the HRU CSV file and repeat this process for \"),_c('strong',[_vm._v(\"up to 25 dates/files\")]),_vm._v(\".\")]),_c('li',[_vm._v(\"Add your CSV files to a zip file and upload below.\")])]),(_vm.data.hasMods)?_c('div',[_c('hr',{staticClass:\"my-4\"}),_c('h3',{staticClass:\"my-3\"},[_vm._v(\"Existing uploaded data\")]),_c('p',[_vm._v(\" You have already uploaded land use update data for this scenario. Download it below. \")]),_c('p',[_c('a',{staticClass:\"btn btn-primary\",attrs:{\"href\":_vm.data.userDataUrl}},[_vm._v(\"Download\")])])]):_vm._e(),_c('hr',{staticClass:\"my-4\"}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Upload data\")]),_c('p',[_vm._v(\" Drag a zip file of CSV files into the space below. \"),(_vm.data.hasMods)?_c('strong',[_vm._v(\"Adding a new file below will replace all existing data.\")]):_vm._e()]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('vue-dropzone',{ref:\"addFile\",attrs:{\"id\":\"addFile\",\"options\":_vm.dropzoneOptions},on:{\"vdropzone-success\":_vm.fileUploaded,\"vdropzone-error\":_vm.uploadError}})],1)],1):_vm._e(),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.data.hasMods && !_vm.data.iclus.isUsing)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete your uploaded data? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Land use update</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tLand use update files allow HRU fraction updating during a simulation run.\r\n\t\t\t\tThis is particularly useful to initialize conservation measures mid-simulation. After their initialization, the practices remain in effect for the remainder of the simulation.\r\n\t\t\t</p>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch37_input_lup.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on land use update</a>.\r\n\t\t\t\tPlease note we accept CSV files instead of the .dat files described in the documentation.\r\n\t\t\t</p>\r\n\r\n\t\t\t<div v-if=\"data.iclus.isAvailable\">\r\n\t\t\t\t<h3 class=\"mb-3\">Integrated Climate and Land-Use Scenarios (ICLUS)</h3>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tICLUS (Integrated Climate and Land-Use Scenarios) Version 2.1.1 is a raster dataset of land use and population projections.\r\n\t\t\t\t\tTo integrate this data into HAWQS projects, ICLUS data was reprojected and spatially resampled, and land use change between ICLUS\r\n\t\t\t\t\tand the land use rasters used in the development of HAWQS was calculated. Because HAWQS uses land use (among other datasets) to define\r\n\t\t\t\t\tHRUs (Hydrologic Resource Units) as fractions of each subbasin, land use changes could not be directly applied to the HRUs.\r\n\t\t\t\t\tInstead, land use change proportions were calculated and used to alter the existing fractions of land use classes in HAWQS.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<error-list :errors=\"page.iclus.errors\"></error-list>\r\n\t\t\t\t<b-form-group>\r\n\t\t\t\t\t<b-checkbox v-model=\"data.iclus.isUsing\" @change=\"saveIclusSetting\">\r\n\t\t\t\t\t\tUse ICLUS files with your scenario? Uncheck to upload your own files or not use any land use update.\r\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'spinner']\" spin v-if=\"page.iclus.saving\" />\r\n\t\t\t\t\t</b-checkbox>\r\n\t\t\t\t</b-form-group>\r\n\t\t\t</div>\r\n\r\n\t\t\t<div v-if=\"!data.iclus.isUsing\">\r\n\t\t\t\t<h3 class=\"mb-3\">Data formatting and uploading instructions</h3>\r\n\t\t\t\t<ol>\r\n\t\t\t\t\t<li>\n\t\t\t\t\t\t<a :href=\"data.hrusCsvUrl\">Download a CSV file of your project HRUs.</a>\n\t\t\t\t\t\t<ul v-if=\"data.iclus.isAvailable\">\n\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\tNote: The CSV above is the HAWQS default project HRUs consistent with the user selected HRU aggregation. To download the ICLUS HRU table, check the box above to use ICLUS, run your scenario with SWAT editor tables checked, and download. Then you can open and view the HRU table in the Access database associated with the scenario.\r\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</li>\r\n\t\t\t\t\t<li>Edit the <strong>fraction</strong> column values as needed. Remember, the <strong>fraction must add up to 1 for each subbasin</strong>.</li>\r\n\t\t\t\t\t<li>\r\n\t\t\t\t\t\tSave your changes to the CSV, and rename it to the data you want to start the update. Please name the file in the format yyyy-mm-dd.csv, e.g. if your date is January 3, 1965, name the file 1965-01-03.csv.\r\n\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t<li>Warning: be careful when saving the CSV to make sure the subbasin column stays intact. Sometimes Microsoft Excel trims and rounds the value resulting in an error.</li>\r\n\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t</li>\r\n\t\t\t\t\t<li>Copy the HRU CSV file and repeat this process for <strong>up to 25 dates/files</strong>.</li>\r\n\t\t\t\t\t<li>Add your CSV files to a zip file and upload below.</li>\r\n\t\t\t\t</ol>\r\n\r\n\t\t\t\t<div v-if=\"data.hasMods\">\r\n\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t<h3 class=\"my-3\">Existing uploaded data</h3>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tYou have already uploaded land use update data for this scenario. Download it below.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\t<a :href=\"data.userDataUrl\" class=\"btn btn-primary\">Download</a>\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t<h3 class=\"mb-3\">Upload data</h3>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tDrag a zip file of CSV files into the space below. <strong v-if=\"data.hasMods\">Adding a new file below will replace all existing data.</strong>\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t<vue-dropzone ref=\"addFile\" id=\"addFile\" :options=\"dropzoneOptions\" @vdropzone-success=\"fileUploaded\" @vdropzone-error=\"uploadError\"></vue-dropzone>\r\n\t\t\t\t</b-form>\r\n\t\t\t</div>\n\r\n\t\t\t<fixed-action-bar>\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t<save-button v-if=\"data.hasMods && !data.iclus.isUsing\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete your uploaded data?\r\n\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport vue2Dropzone from 'vue2-dropzone';\r\n\timport 'vue2-dropzone/dist/vue2Dropzone.min.css';\r\n\r\n\texport default {\r\n\t\tname: 'EditLup',\r\n\t\tcomponents: {\r\n\t\t\tvueDropzone: vue2Dropzone\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tdropzoneOptions: {\r\n\t\t\t\t\turl: `/api/scenarios/general/lup/${this.$route.params.scenarioID}`,\r\n\t\t\t\t\theaders: this.getTokenHeaderPart(),\r\n\t\t\t\t\tacceptedFiles: '.zip'\r\n\t\t\t\t},\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\n\t\t\t\t\ticlus: {\n\t\t\t\t\t\tsaving: false,\n\t\t\t\t\t\terrors: []\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\thasMods: false,\r\n\t\t\t\t\tuserDataUrl: '',\r\n\t\t\t\t\thrusCsvUrl: '',\n\t\t\t\t\ticlus: {\n\t\t\t\t\t\tisAvailable: false,\n\t\t\t\t\t\tisUsing: false\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/general/lup/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Lup`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tasync fileUploaded(file, response) {\r\n\t\t\t\tthis.log(response);\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tawait this.get();\r\n\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t},\r\n\t\t\tuploadError(file, message, xhr) {\r\n\t\t\t\tthis.log(file);\r\n\t\t\t\tthis.log(xhr);\r\n\t\t\t\tthis.page.saveErrors.push(message);\r\n\t\t\t},\r\n\t\t\tasync saveIclusSetting() {\r\n\t\t\t\tthis.page.iclus.errors = [];\r\n\t\t\t\tthis.page.iclus.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.put(`scenarios/general/lupiclus/${this.scenarioID}`, { value: this.data.iclus.isUsing }, this.getTokenHeader());\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.iclus.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.iclus.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditLup.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditLup.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditLup.vue?vue&type=template&id=6fa8a28e&\"\nimport script from \"./EditLup.vue?vue&type=script&lang=js&\"\nexport * from \"./EditLup.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Calibration data\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):(_vm.data.calibrationOptions.length < 1)?_c('div',[(_vm.isNullOrEmpty(_vm.data.pageText))?_c('p',[_vm._v(\" There is no calibration data available for this watershed. Visit the \"),_c('router-link',{attrs:{\"to\":\"/help\"}},[_vm._v(\"documentation and support\")]),_vm._v(\" page to see which watersheds have been calibrated for \"+_vm._s(_vm.siteText.siteName)+\". \")],1):_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.data.pageText)}})]):_c('div',[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.data.pageText)}}),_c('p',[_vm._v(\" \"+_vm._s(_vm.siteText.siteName)+\" uses the following calibrations for this watershed by default. Toggle the input below to run your model with or without these calibrations. Please note that any customizations you make to these inputs will override the calibrations. Visit the \"),_c('router-link',{attrs:{\"to\":\"/help\"}},[_vm._v(\"documentation and support\")]),_vm._v(\" page for more information about the calibrated data. \")],1),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-group',{staticClass:\"bg-light py-3 px-2 mb-4 border\"},[_c('b-form-select',{attrs:{\"options\":_vm.data.calibrationOptions},on:{\"change\":_vm.refreshMap},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null}},[_vm._v(\"Do not use any calibration data for this scenario\")])]},proxy:true}]),model:{value:(_vm.data.customCalibrationID),callback:function ($$v) {_vm.$set(_vm.data, \"customCalibrationID\", $$v)},expression:\"data.customCalibrationID\"}})],1),_c('page-loading',{attrs:{\"loading\":_vm.loadingMap}}),(_vm.selectedCalibration !== null && !_vm.loadingMap)?_c('div',[_c('h4',{staticClass:\"mt-4 mb-2\"},[_vm._v(\"Calibration data for \"+_vm._s(_vm.selectedCalibration.name))]),_c('project-map',{attrs:{\"project-map\":_vm.selectedProjectMap,\"height\":\"300px\",\"show-layer-control\":\"\",\"show-extra-layers\":\"\"}}),_c('p',{staticClass:\"mt-2\"},[_vm._v(\" V = Value used\"),_c('br'),_vm._v(\" A = Amount to add to baseline value\"),_c('br'),_vm._v(\" % = Percentage of baseline, i.e. (1 + x) * (baseline value) \")]),_c('b-table-simple',{attrs:{\"responsive\":\"\",\"small\":\"\"}},[_c('b-thead',[_c('b-tr',[_c('b-th',[_vm._v(\"Table/Field\")]),_c('b-th',[_vm._v(\"Value\")]),_c('b-th',[_vm._v(\"Type\")])],1)],1),_vm._l((Object.keys(_vm.selectedCalibration.mods)),function(tbl,i){return _c('b-tbody',{key:i},[_c('b-tr',{staticClass:\"bg-light\"},[_c('b-td',{attrs:{\"colspan\":\"3\"}},[_c('strong',[_vm._v(_vm._s(tbl.toUpperCase()))])])],1),_vm._l((Object.keys(_vm.selectedCalibration.mods[tbl])),function(fld,j){return _c('b-tr',{key:j},[_c('b-td',[_c('span',{staticClass:\"px-3\"}),_vm._v(_vm._s(fld)+_vm._s(_vm.getIndexConditions(fld))+\" \"+_vm._s(_vm.getLanduseConditions(fld)))]),_c('b-td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.selectedCalibration.mods[tbl][fld],3)))]),_c('b-td',[_vm._v(_vm._s(_vm.getType(fld)))])],1)})],2)})],2),_c('p',[_c('em',[_vm._v(\"After running your scenario, calibration information can be found in the scenario zip file under Watershed/text/calibration_info.txt\")])])],1):_vm._e(),_c('fixed-action-bar',[_c('save-button',{staticClass:\"ml-2 mr-2\",attrs:{\"saving\":_vm.page.saving}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Calibration data</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\n\t\t\t<div v-else-if=\"data.calibrationOptions.length < 1\">\r\n\t\t\t\t<p v-if=\"isNullOrEmpty(data.pageText)\">\r\n\t\t\t\t\tThere is no calibration data available for this watershed.\r\n\t\t\t\t\tVisit the <router-link to=\"/help\">documentation and support</router-link> page to see which watersheds have been calibrated for {{siteText.siteName}}.\r\n\t\t\t\t</p>\r\n\t\t\t\t<div v-else v-html=\"data.pageText\"></div>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<div v-html=\"data.pageText\"></div>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t{{siteText.siteName}} uses the following calibrations for this watershed by default. Toggle the input below to run your model with or without\r\n\t\t\t\t\tthese calibrations. Please note that any customizations you make to these inputs will override the calibrations.\r\n\t\t\t\t\tVisit the <router-link to=\"/help\">documentation and support</router-link> page for more information\r\n\t\t\t\t\tabout the calibrated data.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t<b-form-group class=\"bg-light py-3 px-2 mb-4 border\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"data.customCalibrationID\" :options=\"data.calibrationOptions\" @change=\"refreshMap\">\r\n\t\t\t\t\t\t\t<template #first>\r\n\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\">Do not use any calibration data for this scenario</b-form-select-option>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<page-loading :loading=\"loadingMap\"></page-loading>\r\n\t\t\t\t\t<div v-if=\"selectedCalibration !== null && !loadingMap\">\r\n\t\t\t\t\t\t<h4 class=\"mt-4 mb-2\">Calibration data for {{ selectedCalibration.name }}</h4>\r\n\r\n\t\t\t\t\t\t<project-map :project-map=\"selectedProjectMap\" height=\"300px\" show-layer-control show-extra-layers></project-map>\r\n\r\n\t\t\t\t\t\t<p class=\"mt-2\">\r\n\t\t\t\t\t\t\tV = Value used<br />\r\n\t\t\t\t\t\t\tA = Amount to add to baseline value<br />\r\n\t\t\t\t\t\t\t% = Percentage of baseline, i.e. (1 + x) * (baseline value)\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<b-table-simple responsive small>\r\n\t\t\t\t\t\t\t<b-thead>\r\n\t\t\t\t\t\t\t\t<b-tr>\r\n\t\t\t\t\t\t\t\t\t<b-th>Table/Field</b-th>\r\n\t\t\t\t\t\t\t\t\t<b-th>Value</b-th>\r\n\t\t\t\t\t\t\t\t\t<b-th>Type</b-th>\r\n\t\t\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t\t\t</b-thead>\r\n\t\t\t\t\t\t\t<b-tbody v-for=\"(tbl, i) in Object.keys(selectedCalibration.mods)\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t<b-tr class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t\t<b-td colspan=\"3\"><strong>{{tbl.toUpperCase()}}</strong></b-td>\r\n\t\t\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t\t\t\t<b-tr v-for=\"(fld, j) in Object.keys(selectedCalibration.mods[tbl])\" :key=\"j\">\r\n\t\t\t\t\t\t\t\t\t<b-td><span class=\"px-3\"></span>{{ fld }}{{ getIndexConditions(fld) }} {{ getLanduseConditions(fld) }}</b-td>\r\n\t\t\t\t\t\t\t\t\t<b-td>{{ selectedCalibration.mods[tbl][fld] | number(3) }}</b-td>\r\n\t\t\t\t\t\t\t\t\t<b-td>{{ getType(fld) }}</b-td>\r\n\t\t\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t\t\t</b-tbody>\r\n\t\t\t\t\t\t</b-table-simple>\n\n\t\t\t\t\t\t<p><em>After running your scenario, calibration information can be found in the scenario zip file under Watershed/text/calibration_info.txt</em></p>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"ml-2 mr-2\" />\r\n\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t</b-form>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport ProjectMap from '@/components/ProjectMap';\r\n\r\n\texport default {\r\n\t\tname: 'EditCalibration',\r\n\t\tcomponents: {\r\n\t\t\tProjectMap\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\n\t\t\t\tdata: {\n\t\t\t\t\tignoreCalibration: false,\n\t\t\t\t\tcustomCalibrationID: null,\n\t\t\t\t\tcalibrationOptions: [],\n\t\t\t\t\tcalibrationData: {},\n\t\t\t\t\tpageText: null\r\n\t\t\t\t},\r\n\t\t\t\tprojectMap: {\n\t\t\t\t\twatershedBounds: [],\n\t\t\t\t\tconnections: [],\n\t\t\t\t\tgeoJsonUrls: {},\n\t\t\t\t\textraLayers: []\n\t\t\t\t},\n\t\t\t\tloadingMap: false\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\n\t\tcomputed: {\n\t\t\tuseCalibration: {\n\t\t\t\tget() {\n\t\t\t\t\treturn !this.data.ignoreCalibration;\n\t\t\t\t},\n\t\t\t\tset(newValue) {\n\t\t\t\t\tthis.data.ignoreCalibration = !newValue;\r\n\t\t\t\t}\r\n\t\t\t},\n\t\t\tselectedCalibration() {\n\t\t\t\tif (this.data.customCalibrationID === null) return null;\n\t\t\t\tif (this.data.customCalibrationID in this.data.calibrationData)\n\t\t\t\t\treturn this.data.calibrationData[this.data.customCalibrationID];\n\t\t\t\treturn null;\r\n\t\t\t},\n\t\t\tselectedProjectMap() {\n\t\t\t\tlet map = this.projectMap;\n\t\t\t\tmap.extraLayers = [];\n\t\t\t\tif (this.selectedCalibration !== null) {\n\t\t\t\t\tif (this.selectedCalibration.watersheds !== null && this.selectedCalibration.watersheds.geojson.features.length > 0)\n\t\t\t\t\t\tmap.extraLayers.push(this.selectedCalibration.watersheds);\n\t\t\t\t\tif (this.selectedCalibration.locationPoints.geojson.features.length > 0)\n\t\t\t\t\t\tmap.extraLayers.push(this.selectedCalibration.locationPoints);\r\n\t\t\t\t}\n\n\t\t\t\treturn map;\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/general/calibration/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\n\t\t\t\t\tthis.data = response.data;\n\n\t\t\t\t\tconst response2 = await this.$http.get(`projects/map/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.projectMap = response2.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar data = {\n\t\t\t\t\t\tignoreCalibration: this.data.customCalibrationID === null,\n\t\t\t\t\t\tcustomCalibrationID: this.data.customCalibrationID\n\t\t\t\t\t};\r\n\t\t\t\t\t\t\r\n\t\t\t\t\tconst response = await this.$http.post(`scenarios/general/calibration/${this.scenarioID}`, data, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\tgetType(fld) {\n\t\t\t\tif (this.selectedCalibration == null) return '';\n\t\t\t\telse {\n\t\t\t\t\tif (this.selectedCalibration.addColumns != null && this.selectedCalibration.addColumns.includes(fld)) return 'A';\n\t\t\t\t\telse if (this.selectedCalibration.percentColumns != null && this.selectedCalibration.percentColumns.includes(fld)) return '%';\n\t\t\t\t\telse return 'V';\n\t\t\t\t}\r\n\t\t\t},\n\t\t\tgetLanduseConditions(fld) {\n\t\t\t\tif (this.selectedCalibration == null) return '';\n\t\t\t\telse if (this.selectedCalibration.landuseConditions != null && (fld in this.selectedCalibration.landuseConditions)) {\n\t\t\t\t\treturn `(${this.selectedCalibration.landuseConditions[fld].join(', ')})`;\r\n\t\t\t\t}\n\t\t\t\treturn '';\r\n\t\t\t},\n\t\t\tgetIndexConditions(fld) {\n\t\t\t\tif (this.selectedCalibration == null) return '';\n\t\t\t\telse if (this.selectedCalibration.indexConditions != null && (fld in this.selectedCalibration.indexConditions)) {\n\t\t\t\t\treturn `(${this.selectedCalibration.indexConditions[fld].join('-')})`;\r\n\t\t\t\t}\n\t\t\t\treturn '';\r\n\t\t\t},\n\t\t\tasync refreshMap() {\n\t\t\t\tthis.loadingMap = true;\n\t\t\t\tawait this.sleep(500);\n\t\t\t\tthis.loadingMap = false;\r\n\t\t\t},\n\t\t\tsleep(ms) {\r\n\t\t\t\treturn new Promise(resolve => setTimeout(resolve, ms));\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditCalibration.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditCalibration.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditCalibration.vue?vue&type=template&id=8ae9554a&\"\nimport script from \"./EditCalibration.vue?vue&type=script&lang=js&\"\nexport * from \"./EditCalibration.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Weather generator\")]),_c('p',[_vm._v(\" Adjust weather generator (WGN) input data using the form below. Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch12_input_wgn.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on weather generator inputs\")]),_vm._v(\". \")]),_c('p',[_c('strong',[_vm._v(\"Increase or decrease the variables below by up to 100%.\")])]),_c('hr',{staticClass:\"my-4\"}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_vm._l((Object.keys(_vm.item)),function(o,i){return _c('div',{key:i},[_c('div',[_c('label',{attrs:{\"for\":o}},[_vm._v(_vm._s(o)+\": \"+_vm._s(_vm.descriptions[i]))])]),_c('b-row',{staticClass:\"align-items-center mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"lg\":\"5\",\"md\":\"9\",\"sm\":\"10\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"min\":_vm.options.min,\"max\":_vm.options.max},model:{value:(_vm.$v.item[o].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[o], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[o].$model\"}})],1),_c('b-col',{attrs:{\"lg\":\"2\",\"md\":\"3\",\"sm\":\"2\"}},[_c('b-input-group',{attrs:{\"append\":\"%\"}},[_c('b-form-input',{attrs:{\"id\":o,\"type\":\"number\",\"step\":\"any\",\"min\":_vm.options.min,\"max\":_vm.options.max,\"state\":_vm.getValidState(_vm.$v.item[o])},model:{value:(_vm.$v.item[o].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[o], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[o].$model\"}})],1),(!_vm.$v.item[o].required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.item[o].between)?_c('b-form-invalid-feedback',[_vm._v(\"Must be between \"+_vm._s(_vm.options.min)+\" and \"+_vm._s(_vm.options.max))]):_vm._e()],1)],1)],1)}),_c('hr',{staticClass:\"my-4\"}),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-and-months\":\"\"},on:{\"change\":_vm.hruSelectionChange}}),(_vm.mods.length > 0)?_c('scenario-mod-viewer',{attrs:{\"data\":_vm.mods,\"value-label\":\"Values\",\"value-is-object\":\"\"},on:{\"deleted\":_vm.modDeleted}}):_vm._e(),_c('fixed-action-bar',[_c('span',{attrs:{\"id\":\"save-button-tooltip\"}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection || !_vm.$v.$anyDirty}})],1),_c('b-tooltip',{attrs:{\"disabled\":_vm.validHruSelection,\"target\":\"save-button-tooltip\"}},[_vm._v(\" Select at least one subbasin, land use, soil, and slope. \")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.mods.length > 0)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1)],2),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete all weather generator changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[(!_vm.hideApplySelector)?_c('div',[_c('b-form-select',{on:{\"change\":function($event){return _vm.$emit('change', _vm.selection)}},model:{value:(_vm.selection.applyToAll),callback:function ($$v) {_vm.$set(_vm.selection, \"applyToAll\", $$v)},expression:\"selection.applyToAll\"}},[_c('b-form-select-option',{attrs:{\"value\":false}},[_vm._v(_vm._s(_vm.dropDownLabel)+\" selected \"+_vm._s(_vm.subbasinAndMonths ? 'subbasins and months' : (_vm.subbasinOnly ? 'subbasins' : 'HRUs')))]),_c('b-form-select-option',{attrs:{\"value\":true}},[_vm._v(_vm._s(_vm.dropDownLabel)+\" all \"+_vm._s(_vm.subbasinAndMonths ? 'subbasins and months' : (_vm.subbasinOnly ? 'subbasins' : 'HRUs')))])],1)],1):_vm._e(),(!_vm.selection.applyToAll)?_c('div',[_c('b-row',{staticClass:\"my-3\"},[_c('b-col',{attrs:{\"md\":\"8\"}},[_c('project-map',{attrs:{\"project-map\":_vm.projectMap,\"height\":\"307px\",\"highlight-selected\":\"\",\"select-multiple\":\"\",\"selected-subbasins\":_vm.selection.subbasins},on:{\"subbasin-click\":_vm.mapClick}})],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('div',{staticClass:\"checklist-header\"},[_c('b-form-checkbox',{on:{\"change\":_vm.toggleAllSubbasins},model:{value:(_vm.all.subbasins),callback:function ($$v) {_vm.$set(_vm.all, \"subbasins\", $$v)},expression:\"all.subbasins\"}},[_vm._v(\" Select subbasins \"),_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],staticClass:\"ml-1\",attrs:{\"title\":\"Click a subbasin on the map, or from the list below\"}},[_c('font-awesome-icon',{staticClass:\"text-info\",attrs:{\"icon\":\"info-circle\"}})],1)])],1),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selection.subbasins),callback:function ($$v) {_vm.$set(_vm.selection, \"subbasins\", $$v)},expression:\"selection.subbasins\"}},_vm._l((_vm.projectMap.connections),function(c,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":{ id: c.fromID, name: c.fromName }}},[_vm._v(_vm._s(c.fromName))])],1)}),0)],1)])],1),(_vm.loading.errors.length > 0)?_c('error-list',{attrs:{\"errors\":_vm.loading.errors}}):_c('b-row',[(_vm.subbasinAndMonths)?_c('b-col',{attrs:{\"md\":\"\"}},[(_vm.selection.subbasins.length > 0)?_c('div',[_c('div',{staticClass:\"checklist-header\"},[_c('b-form-checkbox',{on:{\"change\":_vm.toggleAllMonths},model:{value:(_vm.all.months),callback:function ($$v) {_vm.$set(_vm.all, \"months\", $$v)},expression:\"all.months\"}},[_vm._v(\" Select Months \")])],1),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selection.months),callback:function ($$v) {_vm.$set(_vm.selection, \"months\", $$v)},expression:\"selection.months\"}},_vm._l((_vm.options.months),function(o,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":o.value}},[_vm._v(_vm._s(o.text))])],1)}),0)],1)]):_vm._e()]):_vm._e(),_c('b-col',{attrs:{\"md\":\"\"}},[_c('page-loading',{attrs:{\"loading\":_vm.loading.landuse}}),(!_vm.loading.landuse && _vm.options.landuse.length > 0 )?_c('div',[_c('div',{staticClass:\"checklist-header\"},[_c('b-form-checkbox',{on:{\"change\":_vm.toggleAllLanduse},model:{value:(_vm.all.landuse),callback:function ($$v) {_vm.$set(_vm.all, \"landuse\", $$v)},expression:\"all.landuse\"}},[_vm._v(\" Select land use \")])],1),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selection.landuse),callback:function ($$v) {_vm.$set(_vm.selection, \"landuse\", $$v)},expression:\"selection.landuse\"}},_vm._l((_vm.options.landuse),function(o,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":o.name}},[_vm._v(_vm._s(o.name)+\" - \"+_vm._s(o.description))])],1)}),0)],1)]):_vm._e()],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('page-loading',{attrs:{\"loading\":_vm.loading.soils}}),(!_vm.loading.soils && _vm.options.soils.length > 0 && _vm.options.landuse.length > 0)?_c('div',[_c('div',{staticClass:\"checklist-header\"},[_c('b-form-checkbox',{on:{\"change\":_vm.toggleAllSoils},model:{value:(_vm.all.soils),callback:function ($$v) {_vm.$set(_vm.all, \"soils\", $$v)},expression:\"all.soils\"}},[_vm._v(\" Select soils \")])],1),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selection.soils),callback:function ($$v) {_vm.$set(_vm.selection, \"soils\", $$v)},expression:\"selection.soils\"}},_vm._l((_vm.options.soils),function(o,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":o}},[_vm._v(_vm._s(o))])],1)}),0)],1)]):_vm._e()],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('page-loading',{attrs:{\"loading\":_vm.loading.slopes}}),(!_vm.loading.slopes && _vm.options.slopes.length > 0 && _vm.options.soils.length > 0 && _vm.options.landuse.length > 0)?_c('div',[_c('div',{staticClass:\"checklist-header\"},[_c('b-form-checkbox',{on:{\"change\":_vm.toggleAllSlopes},model:{value:(_vm.all.slopes),callback:function ($$v) {_vm.$set(_vm.all, \"slopes\", $$v)},expression:\"all.slopes\"}},[_vm._v(\" Select slopes \")])],1),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selection.slopes),callback:function ($$v) {_vm.$set(_vm.selection, \"slopes\", $$v)},expression:\"selection.slopes\"}},_vm._l((_vm.options.slopes),function(o,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":o}},[_vm._v(_vm._s(o))])],1)}),0)],1)]):_vm._e()],1)],1)],1):_vm._e()])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<div v-if=\"!hideApplySelector\">\r\n\t\t\t\t<b-form-select v-model=\"selection.applyToAll\" @change=\"$emit('change', selection)\">\r\n\t\t\t\t\t<b-form-select-option :value=\"false\">{{dropDownLabel}} selected {{subbasinAndMonths ? 'subbasins and months' : (subbasinOnly ? 'subbasins' : 'HRUs')}}</b-form-select-option>\r\n\t\t\t\t\t<b-form-select-option :value=\"true\">{{dropDownLabel}} all {{subbasinAndMonths ? 'subbasins and months' : (subbasinOnly  ? 'subbasins' : 'HRUs')}}</b-form-select-option>\r\n\t\t\t\t</b-form-select>\r\n\t\t\t</div>\r\n\t\t\t<div v-if=\"!selection.applyToAll\">\r\n\t\t\t\t<b-row class=\"my-3\">\r\n\t\t\t\t\t<b-col md=\"8\">\r\n\t\t\t\t\t\t<project-map :project-map=\"projectMap\" height=\"307px\"\r\n\t\t\t\t\t\t\t\t\t highlight-selected select-multiple\r\n\t\t\t\t\t\t\t\t\t :selected-subbasins=\"selection.subbasins\"\r\n\t\t\t\t\t\t\t\t\t @subbasin-click=\"mapClick\"></project-map>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t<b-form-checkbox v-model=\"all.subbasins\" @change=\"toggleAllSubbasins\">\r\n\t\t\t\t\t\t\t\tSelect subbasins\r\n\t\t\t\t\t\t\t\t<span v-b-tooltip.hover.bottom title=\"Click a subbasin on the map, or from the list below\" class=\"ml-1\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon icon=\"info-circle\" class=\"text-info\" />\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"selection.subbasins\" stacked>\r\n\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(c, i) in projectMap.connections\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"{ id: c.fromID, name: c.fromName }\">{{c.fromName}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<error-list v-if=\"loading.errors.length > 0\" :errors=\"loading.errors\"></error-list>\r\n\t\t\t\t<b-row v-else>\r\n\t\t\t\t\t<b-col md v-if=\"subbasinAndMonths\">\r\n\t\t\t\t\t\t<div v-if=\"selection.subbasins.length > 0\">\r\n\t\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"all.months\" @change=\"toggleAllMonths\">\r\n\t\t\t\t\t\t\t\t\tSelect Months\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"selection.months\" stacked>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(o, i) in options.months\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"o.value\">{{o.text}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<page-loading :loading=\"loading.landuse\"></page-loading>\r\n\t\t\t\t\t\t<div v-if=\"!loading.landuse && options.landuse.length > 0 \">\r\n\t\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"all.landuse\" @change=\"toggleAllLanduse\">\r\n\t\t\t\t\t\t\t\t\tSelect land use\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"selection.landuse\" stacked>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(o, i) in options.landuse\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"o.name\">{{o.name}} - {{o.description}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<page-loading :loading=\"loading.soils\"></page-loading>\r\n\t\t\t\t\t\t<div v-if=\"!loading.soils && options.soils.length > 0 && options.landuse.length > 0\">\r\n\t\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"all.soils\" @change=\"toggleAllSoils\">\r\n\t\t\t\t\t\t\t\t\tSelect soils\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"selection.soils\" stacked>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(o, i) in options.soils\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"o\">{{o}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<page-loading :loading=\"loading.slopes\"></page-loading>\r\n\t\t\t\t\t\t<div v-if=\"!loading.slopes && options.slopes.length > 0 && options.soils.length > 0 && options.landuse.length > 0\">\r\n\t\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"all.slopes\" @change=\"toggleAllSlopes\">\r\n\t\t\t\t\t\t\t\t\tSelect slopes\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"selection.slopes\" stacked>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(o, i) in options.slopes\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"o\">{{o}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport ProjectMap from '@/components/ProjectMap';\r\n\r\n\texport default {\r\n\t\tname: 'HruSelector',\r\n\t\tcomponents: {\r\n\t\t\tProjectMap\r\n\t\t},\r\n\t\tprops: {\r\n\t\t\tprojectID: {\r\n\t\t\t\ttype: Number,\r\n\t\t\t\trequired: true\r\n\t\t\t},\r\n\t\t\tsubbasinOnly: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tsubbasinAndMonths: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tinitialSelection: {\r\n\t\t\t\ttype: Object,\r\n\t\t\t\tdefault: () => {\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\t\tsoils: [],\r\n\t\t\t\t\t\tslopes: [],\r\n\t\t\t\t\t\tmonths: [],\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\thideApplySelector: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\n\t\t\tdropDownLabel: {\n\t\t\t\ttype: String,\n\t\t\t\tdefault: 'Apply to'\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tprojectMap: {},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: [],\r\n\t\t\t\t\tmonths: [\r\n\t\t\t\t\t\t{ value: 1, text: 'January' },\r\n\t\t\t\t\t\t{ value: 2, text: 'February' },\r\n\t\t\t\t\t\t{ value: 3, text: 'March' },\r\n\t\t\t\t\t\t{ value: 4, text: 'April' },\r\n\t\t\t\t\t\t{ value: 5, text: 'May' },\r\n\t\t\t\t\t\t{ value: 6, text: 'June' },\r\n\t\t\t\t\t\t{ value: 7, text: 'July' },\r\n\t\t\t\t\t\t{ value: 8, text: 'August' },\r\n\t\t\t\t\t\t{ value: 9, text: 'September' },\r\n\t\t\t\t\t\t{ value: 10, text: 'October' },\r\n\t\t\t\t\t\t{ value: 11, text: 'November' },\r\n\t\t\t\t\t\t{ value: 12, text: 'December' }\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\tselection: {\r\n\t\t\t\t\tapplyToAll: false,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: [],\r\n\t\t\t\t\tmonths: []\r\n\t\t\t\t},\r\n\t\t\t\tall: {\r\n\t\t\t\t\tsubbasins: false,\r\n\t\t\t\t\tlanduse: false,\r\n\t\t\t\t\tsoils: false,\r\n\t\t\t\t\tslopes: false,\r\n\t\t\t\t\tmonths: false\r\n\t\t\t\t},\r\n\t\t\t\tloading: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tlanduse: false,\r\n\t\t\t\t\tsoils: false,\r\n\t\t\t\t\tslopes: false,\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`projects/map/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.projectMap = response.data;\r\n\r\n\t\t\t\t\tif (this.hideApplySelector) this.selection.applyToAll = false;\r\n\r\n\t\t\t\t\tawait this.initializeSelection(this.initialSelection);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getLanduse() {\r\n\t\t\t\tthis.loading.errors = [];\r\n\t\t\t\tthis.loading.landuse = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`hruselection/landuse/${this.projectID}`, this.selection.subbasins, this.getTokenHeader());\r\n\t\t\t\t\tthis.options.landuse = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.loading.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.loading.landuse = false;\r\n\t\t\t},\r\n\t\t\tasync getSoils() {\r\n\t\t\t\tthis.loading.errors = [];\r\n\t\t\t\tthis.loading.soils = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`hruselection/soils/${this.projectID}`, this.selection, this.getTokenHeader());\r\n\t\t\t\t\tthis.options.soils = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.loading.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.loading.soils = false;\r\n\t\t\t},\r\n\t\t\tasync getSlopes() {\r\n\t\t\t\tthis.loading.errors = [];\r\n\t\t\t\tthis.loading.slopes = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`hruselection/slopes/${this.projectID}`, this.selection, this.getTokenHeader());\r\n\t\t\t\t\tthis.options.slopes = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.loading.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.loading.slopes = false;\r\n\t\t\t},\r\n\t\t\tasync mapClick(selectedSubbasins) {\r\n\t\t\t\tthis.selection.subbasins = selectedSubbasins;\r\n\t\t\t},\r\n\t\t\tasync toggleAllSubbasins(checked) {\r\n\t\t\t\tthis.selection.subbasins = checked ? this.projectMap.connections.map(function (i) { return { id: i.fromID, name: i.fromName } }) : [];\r\n\t\t\t},\r\n\t\t\tasync toggleAllLanduse(checked) {\r\n\t\t\t\tthis.selection.landuse = checked ? this.options.landuse.map(function (i) { return i.name }) : [];\r\n\t\t\t},\r\n\t\t\tasync toggleAllSoils(checked) {\r\n\t\t\t\tthis.selection.soils = checked ? this.options.soils.slice() : [];\r\n\t\t\t},\r\n\t\t\tasync toggleAllSlopes(checked) {\r\n\t\t\t\tthis.selection.slopes = checked ? this.options.slopes.slice() : [];\r\n\t\t\t},\r\n\t\t\tasync toggleAllMonths(checked) {\r\n\t\t\t\tthis.selection.months = checked ? this.options.months.map(function (i) { return i.value }) : [];\r\n\t\t\t},\r\n\t\t\tasync initializeSelection(newVal) {\r\n\t\t\t\tthis.selection.subbasins = newVal.subbasins;\r\n\t\t\t\tawait this.getLanduse();\r\n\t\t\t\tthis.selection.landuse = newVal.landuse;\r\n\t\t\t\tawait this.getSoils();\r\n\t\t\t\tthis.selection.soils = newVal.soils;\r\n\t\t\t\tawait this.getSlopes();\r\n\t\t\t\tthis.selection.slopes = newVal.slopes;\r\n\t\t\t}\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\tasync selectedSubbasins() {\r\n\t\t\t\tif (!this.subbasinOnly && !this.subbasinAndMonths)\r\n\t\t\t\t\tawait this.getLanduse();\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\r\n\t\t\tasync selectedLanduse() {\r\n\t\t\t\tawait this.getSoils();\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\r\n\t\t\tasync selectedSoils() {\r\n\t\t\t\tawait this.getSlopes();\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\r\n\t\t\tselectedSlopes() {\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\r\n\t\t\tselectedMonths() {\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\r\n\t\t\tasync initialSelection(newVal, oldVal) {\r\n\t\t\t\tawait this.initializeSelection(newVal);\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tselectedSubbasins() {\r\n\t\t\t\treturn this.selection.subbasins;\r\n\t\t\t},\r\n\t\t\tselectedLanduse() {\r\n\t\t\t\treturn this.selection.landuse;\r\n\t\t\t},\r\n\t\t\tselectedSoils() {\r\n\t\t\t\treturn this.selection.soils;\r\n\t\t\t},\r\n\t\t\tselectedSlopes() {\r\n\t\t\t\treturn this.selection.slopes;\r\n\t\t\t},\r\n\t\t\tselectedMonths() {\r\n\t\t\t\treturn this.selection.months;\r\n\t\t\t},\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./HruSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./HruSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HruSelector.vue?vue&type=template&id=dee9dcd6&\"\nimport script from \"./HruSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./HruSelector.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('hr',{staticClass:\"my-4\"}),_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Saved modifications\")]),(_vm.data.length > 1)?_c('p',[_vm._v(\" Each row below is applied in order, starting from the top. Bottom settings may overwrite rows above. \")]):_vm._e(),_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.data,\"fields\":_vm.table.fields},scopedSlots:_vm._u([{key:\"cell(lastModifiedDate)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"date\")(data.item.lastModifiedDate))+\" \")]}},{key:\"cell(value)\",fn:function(data){return [(!_vm.valueIsObject)?_c('div',[_vm._v(_vm._s(data.item.value)+_vm._s(_vm.appendToValue))]):_c('div',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.showView(data.item)}}},[_vm._v(\"View\")])])]}},{key:\"cell(subbasins)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.subbasins.map(({ name }) => name)))+\" \")]}},{key:\"cell(landuses)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.landuses))+\" \")]}},{key:\"cell(soils)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.soils))+\" \")]}},{key:\"cell(slopes)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.slopes))+\" \")]}},{key:\"cell(delete)\",fn:function(data){return [_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.askDelete(data.item.id, 'this modification')}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1)]}},{key:\"cell(view)\",fn:function(data){return [_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('View'),expression:\"'View'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-primary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.showView(data.item)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)]}}])})],1),_c('b-modal',{attrs:{\"size\":_vm.isMgt2 ? 'xl' : 'lg',\"title\":\"Modification details\",\"scrollable\":\"\"},model:{value:(_vm.page.view.show),callback:function ($$v) {_vm.$set(_vm.page.view, \"show\", $$v)},expression:\"page.view.show\"}},[(!_vm.valueIsObject)?_c('p',[_c('strong',[_vm._v(_vm._s(_vm.valueLabel))]),_vm._v(\": \"+_vm._s(_vm.page.view.item.value)+_vm._s(_vm.appendToValue)+\" \")]):(_vm.isMgt2)?_c('div',[_c('mgt2-viewer',{attrs:{\"schedule-by-heat-units\":_vm.scheduleByHeatUnits,\"items\":_vm.page.view.item.value,\"lists\":_vm.mgt2Lists}})],1):_c('div',_vm._l((Object.keys(_vm.page.view.item.value)),function(k,i){return _c('p',{key:i},[_c('strong',[_vm._v(_vm._s(k)+\": \")]),(k === 'Months')?_c('span',[_c('br'),(_vm.page.view.item.value[k] < 1)?_c('span',[_vm._v(\"All\")]):_c('span',[_vm._v(_vm._s(_vm.toMonthNames(_vm.page.view.item.value[k])))])]):_c('span',[_vm._v(_vm._s(_vm.page.view.item.value[k]))])])}),0),_c('p',[_c('strong',[_vm._v(\"Subbasins:\")]),_c('br'),_vm._v(\" \"+_vm._s(_vm.writeArray(_vm.page.view.item.subbasins.map(({ name }) => name), 0))+\" \")]),_c('p',[_c('strong',[_vm._v(\"Land use:\")]),_c('br'),_vm._v(\" \"+_vm._s(_vm.writeArray(_vm.page.view.item.landuses, 0))+\" \")]),_c('p',[_c('strong',[_vm._v(\"Soils:\")]),_c('br'),_vm._v(\" \"+_vm._s(_vm.writeArray(_vm.page.view.item.soils, 0))+\" \")]),_c('p',[_c('strong',[_vm._v(\"Slopes:\")]),_c('br'),_vm._v(\" \"+_vm._s(_vm.writeArray(_vm.page.view.item.slopes, 0))+\" \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.view.show = false}}},[_vm._v(\"Ok\")])],1)]),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete \"),_c('strong',[_vm._v(_vm._s(_vm.page.delete.name))]),_vm._v(\"? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"table-responsive\"},[_c('table',{staticClass:\"table table-striped table-bordered\"},[_c('thead',[_c('tr',{staticClass:\"thead\"},[_c('th',[_vm._v(\"Year\")]),(_vm.scheduleByHeatUnits)?_c('th',[_vm._v(\"Op. #\")]):_vm._e(),(!_vm.scheduleByHeatUnits)?_c('th',[_vm._v(\"Month\")]):_vm._e(),(!_vm.scheduleByHeatUnits)?_c('th',[_vm._v(\"Day\")]):_vm._e(),_c('th',[_vm._v(\"Operation\")]),_c('th',[_vm._v(\"Crop\")]),(_vm.scheduleByHeatUnits)?_c('th',[_vm._v(\"Heat Units\")]):_vm._e()])]),_c('tbody',_vm._l((_vm.items),function(m,i){return _c('tr',{key:i},[_c('td',[_vm._v(_vm._s(m.YEAR))]),(_vm.scheduleByHeatUnits)?_c('td',[_vm._v(_vm._s(m.OP_NUM))]):_vm._e(),(!_vm.scheduleByHeatUnits)?_c('td',[_vm._v(_vm._s(m.MONTH))]):_vm._e(),(!_vm.scheduleByHeatUnits)?_c('td',[_vm._v(_vm._s(m.DAY))]):_vm._e(),_c('td',[_vm._v(\" \"+_vm._s(_vm.getTextFromList(_vm.lists.opList, m.MGT_OP))+\" \"),_c('div',{staticStyle:{\"margin-top\":\"1em\",\"font-size\":\"0.8em\"}},[(m.MGT_OP == 1)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" CURYR_MAT: \"+_vm._s(m.CURYR_MAT)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" HEATUNITS: \"+_vm._s(m.HEATUNITS)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" LAI_INIT: \"+_vm._s(m.LAI_INIT)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" BIO_INIT: \"+_vm._s(m.BIO_INIT)+\" kg/ha \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" HI_TARG: \"+_vm._s(m.HI_TARG)+\" (kg/ha)/(kg/ha) \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" BIO_TARG: \"+_vm._s(m.BIO_TARG)+\" metric tons/ha \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" CNOP: \"+_vm._s(m.CNOP)+\" \")])]):_vm._e(),(m.MGT_OP == 2)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_AMT: \"+_vm._s(m.IRR_AMT)+\" mm \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_SALT: \"+_vm._s(m.IRR_SALT)+\" mg/kg \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_EFM: \"+_vm._s(m.IRR_EFM)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_SQ: \"+_vm._s(m.IRR_SQ)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_SC: \"+_vm._s(m.IRR_SC)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_NO: \"+_vm._s(m.IRR_NO)+\" \")])]):_vm._e(),(m.MGT_OP == 3)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" FERT_ID: \"+_vm._s(_vm.getTextFromList(_vm.lists.fertList, m.FERT_ID))+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" FRT_KG: \"+_vm._s(m.FRT_KG)+\" kg/ha \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" FRT_SURFACE: \"+_vm._s(m.FRT_SURFACE)+\" \")])]):_vm._e(),(m.MGT_OP == 4)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" PEST_ID: \"+_vm._s(_vm.getTextFromList(_vm.lists.pestList, m.PEST_ID))+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" PST_KG: \"+_vm._s(m.PST_KG)+\" kg/ha \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" PST_DEP: \"+_vm._s(m.PST_DEP)+\" mm \")])]):_vm._e(),(m.MGT_OP == 5)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" CNOP: \"+_vm._s(m.CNOP)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" HI_OVR: \"+_vm._s(m.HI_OVR)+\" (kg/ha)/(kg/ha) \")])]):_vm._e(),(m.MGT_OP == 6)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" TILL_ID: \"+_vm._s(_vm.getTextFromList(_vm.lists.tillList, m.TILL_ID))+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" CNOP: \"+_vm._s(m.CNOP)+\" \")])]):_vm._e(),(m.MGT_OP == 7)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IHV_GBM: \"+_vm._s(m.IHV_GBM)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" HARVEFF: \"+_vm._s(m.HARVEFF)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" HI_OVR: \"+_vm._s(m.HI_OVR)+\" (kg/ha)/(kg/ha) \")])]):_vm._e(),(m.MGT_OP == 9)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" MANURE_ID: \"+_vm._s(_vm.getTextFromList(_vm.lists.manureList, m.MANURE_ID))+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" GRZ_DAYS: \"+_vm._s(m.GRZ_DAYS)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" BIO_EAT: \"+_vm._s(m.BIO_EAT)+\" (kg/ha)/day \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" BIO_TRMP: \"+_vm._s(m.BIO_TRMP)+\" (kg/ha)/day \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" MANURE_KG: \"+_vm._s(m.MANURE_KG)+\" (kg/ha)/day \")])]):_vm._e(),(m.MGT_OP == 10)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" WSTRS_ID: \"+_vm._s(m.WSTRS_ID)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_SCA: \"+_vm._s(m.IRR_SCA)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_NOA: \"+_vm._s(m.IRR_NOA)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" AUTO_WSTRS: \"+_vm._s(m.AUTO_WSTRS)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_EFF: \"+_vm._s(m.IRR_EFF)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_MX: \"+_vm._s(m.IRR_MX)+\" mm \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IRR_ASQ: \"+_vm._s(m.IRR_ASQ)+\" \")])]):_vm._e(),(m.MGT_OP == 11)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" AFERT_ID: \"+_vm._s(_vm.getTextFromList(_vm.lists.fertList, m.AFERT_ID))+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" AUTO_NSTRS: \"+_vm._s(m.AUTO_NSTRS)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" AUTO_NAPP: \"+_vm._s(m.AUTO_NAPP)+\" kg N/ha \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" AUTO_NYR: \"+_vm._s(m.AUTO_NYR)+\" kg N/ha \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" AUTO_EFF: \"+_vm._s(m.AUTO_EFF)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" AFRT_SURFACE: \"+_vm._s(m.AFRT_SURFACE)+\" \")])]):_vm._e(),(m.MGT_OP == 12)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" SWEEPEFF: \"+_vm._s(m.SWEEPEFF)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" FR_CURB: \"+_vm._s(m.FR_CURB)+\" \")])]):_vm._e(),(m.MGT_OP == 13)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IMP_TRIG: \"+_vm._s(m.IMP_TRIG)+\" \")])]):_vm._e(),(m.MGT_OP == 14)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" CFRT_ID: \"+_vm._s(_vm.getTextFromList(_vm.lists.fertList, m.CFRT_ID))+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" FERT_DAYS: \"+_vm._s(m.FERT_DAYS)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IFRT_FREQ: \"+_vm._s(m.IFRT_FREQ)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" CFRT_KG: \"+_vm._s(m.CFRT_KG)+\" kg/ha \")])]):_vm._e(),(m.MGT_OP == 15)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" CPST_ID: \"+_vm._s(_vm.getTextFromList(_vm.lists.pestList, m.CPST_ID))+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" PEST_DAYS: \"+_vm._s(m.FERT_DAYS)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" IPEST_FREQ: \"+_vm._s(m.IFRT_FREQ)+\" \")]),_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" CPST_KG: \"+_vm._s(m.CFRT_KG)+\" kg/ha \")])]):_vm._e(),(m.MGT_OP == 16)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_vm._v(\" BURN_FRLB: \"+_vm._s(m.BURN_FRLB)+\" \")])]):_vm._e()])]),_c('td',[_vm._v(_vm._s(_vm.getTextFromList(_vm.lists.plantList, m.PLANT_ID)))]),(_vm.scheduleByHeatUnits)?_c('td',[_vm._v(_vm._s(m.HUSC))]):_vm._e()])}),0)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div class=\"table-responsive\">\r\n\t\t<table class=\"table table-striped table-bordered\">\r\n\t\t\t<thead>\r\n\t\t\t\t<tr class=\"thead\">\r\n\t\t\t\t\t<th>Year</th>\r\n\t\t\t\t\t<th v-if=\"scheduleByHeatUnits\">Op. #</th>\r\n\t\t\t\t\t<th v-if=\"!scheduleByHeatUnits\">Month</th>\r\n\t\t\t\t\t<th v-if=\"!scheduleByHeatUnits\">Day</th>\r\n\t\t\t\t\t<th>Operation</th>\r\n\t\t\t\t\t<th>Crop</th>\r\n\t\t\t\t\t<th v-if=\"scheduleByHeatUnits\">Heat Units</th>\r\n\t\t\t\t</tr>\r\n\t\t\t</thead>\r\n\t\t\t<tbody>\r\n\t\t\t\t<tr v-for=\"(m, i) in items\" :key=\"i\">\r\n\t\t\t\t\t<td>{{ m.YEAR }}</td>\r\n\t\t\t\t\t<td v-if=\"scheduleByHeatUnits\">{{ m.OP_NUM }}</td>\r\n\t\t\t\t\t<td v-if=\"!scheduleByHeatUnits\">{{ m.MONTH }}</td>\r\n\t\t\t\t\t<td v-if=\"!scheduleByHeatUnits\">{{ m.DAY }}</td>\r\n\t\t\t\t\t<td>\r\n\t\t\t\t\t\t{{ getTextFromList(lists.opList, m.MGT_OP) }}\r\n\t\t\t\t\t\t<div style=\"margin-top:1em; font-size:0.8em;\">\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 1\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tCURYR_MAT: {{ m.CURYR_MAT }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tHEATUNITS: {{ m.HEATUNITS }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tLAI_INIT: {{ m.LAI_INIT }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tBIO_INIT: {{ m.BIO_INIT }} kg/ha\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tHI_TARG: {{ m.HI_TARG }} (kg/ha)/(kg/ha)\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tBIO_TARG: {{ m.BIO_TARG }} metric tons/ha\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tCNOP: {{ m.CNOP }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 2\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_AMT: {{ m.IRR_AMT }} mm\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_SALT: {{ m.IRR_SALT }} mg/kg\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_EFM: {{ m.IRR_EFM }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_SQ: {{ m.IRR_SQ }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_SC: {{ m.IRR_SC }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_NO: {{ m.IRR_NO }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 3\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tFERT_ID: {{ getTextFromList(lists.fertList, m.FERT_ID) }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tFRT_KG: {{ m.FRT_KG }} kg/ha\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tFRT_SURFACE: {{ m.FRT_SURFACE }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 4\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tPEST_ID: {{ getTextFromList(lists.pestList, m.PEST_ID) }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tPST_KG: {{ m.PST_KG }} kg/ha\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tPST_DEP: {{ m.PST_DEP }} mm\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 5\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tCNOP: {{ m.CNOP }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tHI_OVR: {{ m.HI_OVR }} (kg/ha)/(kg/ha)\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 6\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tTILL_ID: {{ getTextFromList(lists.tillList, m.TILL_ID) }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tCNOP: {{ m.CNOP }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 7\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIHV_GBM: {{ m.IHV_GBM }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tHARVEFF: {{ m.HARVEFF }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tHI_OVR: {{ m.HI_OVR }} (kg/ha)/(kg/ha)\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 9\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tMANURE_ID: {{ getTextFromList(lists.manureList, m.MANURE_ID) }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tGRZ_DAYS: {{ m.GRZ_DAYS }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tBIO_EAT: {{ m.BIO_EAT }} (kg/ha)/day\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tBIO_TRMP: {{ m.BIO_TRMP }} (kg/ha)/day\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tMANURE_KG: {{ m.MANURE_KG }} (kg/ha)/day\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 10\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tWSTRS_ID: {{ m.WSTRS_ID }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_SCA: {{ m.IRR_SCA }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_NOA: {{ m.IRR_NOA }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tAUTO_WSTRS: {{ m.AUTO_WSTRS }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_EFF: {{ m.IRR_EFF }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_MX: {{ m.IRR_MX }} mm\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIRR_ASQ: {{ m.IRR_ASQ }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 11\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tAFERT_ID: {{ getTextFromList(lists.fertList, m.AFERT_ID) }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tAUTO_NSTRS: {{ m.AUTO_NSTRS }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tAUTO_NAPP: {{ m.AUTO_NAPP }} kg N/ha\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tAUTO_NYR: {{ m.AUTO_NYR }} kg N/ha\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tAUTO_EFF: {{ m.AUTO_EFF }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tAFRT_SURFACE: {{ m.AFRT_SURFACE }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 12\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tSWEEPEFF: {{ m.SWEEPEFF }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tFR_CURB: {{ m.FR_CURB }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 13\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIMP_TRIG: {{ m.IMP_TRIG }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 14\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tCFRT_ID: {{ getTextFromList(lists.fertList, m.CFRT_ID) }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tFERT_DAYS: {{ m.FERT_DAYS }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIFRT_FREQ: {{ m.IFRT_FREQ }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tCFRT_KG: {{ m.CFRT_KG }} kg/ha\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 15\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tCPST_ID: {{ getTextFromList(lists.pestList, m.CPST_ID) }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tPEST_DAYS: {{ m.FERT_DAYS }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tIPEST_FREQ: {{ m.IFRT_FREQ }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tCPST_KG: {{ m.CFRT_KG }} kg/ha\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"m.MGT_OP == 16\" class=\"row\">\r\n\t\t\t\t\t\t\t\t<div class=\"col-md-4\">\r\n\t\t\t\t\t\t\t\t\tBURN_FRLB: {{ m.BURN_FRLB }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</td>\r\n\t\t\t\t\t<td>{{ getTextFromList(lists.plantList, m.PLANT_ID) }}</td>\r\n\t\t\t\t\t<td v-if=\"scheduleByHeatUnits\">{{ m.HUSC }}</td>\r\n\t\t\t\t</tr>\r\n\t\t\t</tbody>\r\n\t\t</table>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'Mgt2Viewer',\r\n\t\tprops: {\r\n\t\t\tscheduleByHeatUnits: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: true\r\n\t\t\t},\r\n\t\t\titems: {\n\t\t\t\ttype: Array,\r\n\t\t\t\tdefault: () => []\r\n\t\t\t},\r\n\t\t\tlists: {\n\t\t\t\ttype: Object,\r\n\t\t\t\tdefault: () => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tplantList: [],\r\n\t\t\t\t\t\tfertList: [],\r\n\t\t\t\t\t\tpestList: [],\r\n\t\t\t\t\t\ttillList: [],\r\n\t\t\t\t\t\tmanureList: [],\r\n\t\t\t\t\t\tscheduleOptions: [],\r\n\t\t\t\t\t\topList: [],\r\n\t\t\t\t\t\tirrscList: [],\r\n\t\t\t\t\t\tihvGbmList: [],\r\n\t\t\t\t\t\twstrsList: [],\r\n\t\t\t\t\t\timpTrigList: []\r\n\t\t\t\t\t};\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\n\t\tmethods: {\n\t\t\tgetTextFromList(list, value) {\n\t\t\t\tvar filtered = list.filter(function (el) { return el.value === value; });\r\n\t\t\t\tif (filtered.length > 0) return filtered[0].text;\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Mgt2Viewer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Mgt2Viewer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Mgt2Viewer.vue?vue&type=template&id=4b0e85ef&\"\nimport script from \"./Mgt2Viewer.vue?vue&type=script&lang=js&\"\nexport * from \"./Mgt2Viewer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<hr class=\"my-4\" />\r\n\t\t<h3 class=\"mb-3\">Saved modifications</h3>\r\n\r\n\t\t<p v-if=\"data.length > 1\">\r\n\t\t\tEach row below is applied in order, starting from the top. Bottom settings may overwrite rows above.\r\n\t\t</p>\r\n\r\n\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t<b-table responsive class=\"mb-0\" :items=\"data\" :fields=\"table.fields\">\r\n\t\t\t\t<template v-slot:cell(lastModifiedDate)=\"data\">\r\n\t\t\t\t\t{{data.item.lastModifiedDate | date}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(value)=\"data\">\r\n\t\t\t\t\t<div v-if=\"!valueIsObject\">{{data.item.value}}{{appendToValue}}</div>\r\n\t\t\t\t\t<div v-else><a href=\"#\" @click.prevent=\"showView(data.item)\">View</a></div>\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(subbasins)=\"data\">\r\n\t\t\t\t\t{{writeArray(data.item.subbasins.map(({ name }) => name))}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(landuses)=\"data\">\r\n\t\t\t\t\t{{writeArray(data.item.landuses)}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(soils)=\"data\">\r\n\t\t\t\t\t{{writeArray(data.item.soils)}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(slopes)=\"data\">\r\n\t\t\t\t\t{{writeArray(data.item.slopes)}}\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(delete)=\"data\">\r\n\t\t\t\t\t<button type=\"button\" class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDelete(data.item.id, 'this modification')\">\r\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t</button>\r\n\t\t\t\t</template>\r\n\t\t\t\t<template v-slot:cell(view)=\"data\">\r\n\t\t\t\t\t<button type=\"button\" class=\"plain text-primary\" v-b-tooltip.hover.right=\"'View'\" @click=\"showView(data.item)\">\r\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'edit']\" />\r\n\t\t\t\t\t</button>\r\n\t\t\t\t</template>\r\n\t\t\t</b-table>\r\n\t\t</div>\r\n\r\n\t\t<b-modal v-model=\"page.view.show\" :size=\"isMgt2 ? 'xl' : 'lg'\" title=\"Modification details\" scrollable>\r\n\t\t\t<p v-if=\"!valueIsObject\">\r\n\t\t\t\t<strong>{{valueLabel}}</strong>: {{page.view.item.value}}{{appendToValue}}\r\n\t\t\t</p>\r\n\t\t\t<div v-else-if=\"isMgt2\">\r\n\t\t\t\t<mgt2-viewer :schedule-by-heat-units=\"scheduleByHeatUnits\" :items=\"page.view.item.value\" :lists=\"mgt2Lists\"></mgt2-viewer>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<p v-for=\"(k, i) in Object.keys(page.view.item.value)\" :key=\"i\">\r\n\t\t\t\t\t<strong>{{k}}: </strong>\r\n\t\t\t\t\t<span v-if=\"k === 'Months'\">\r\n\t\t\t\t\t\t<br />\r\n\t\t\t\t\t\t<span v-if=\"page.view.item.value[k] < 1\">All</span>\r\n\t\t\t\t\t\t<span v-else>{{toMonthNames(page.view.item.value[k])}}</span>\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<span v-else>{{page.view.item.value[k]}}</span>\r\n\t\t\t\t</p>\r\n\t\t\t</div>\r\n\r\n\t\t\t<p>\r\n\t\t\t\t<strong>Subbasins:</strong><br />\r\n\t\t\t\t{{writeArray(page.view.item.subbasins.map(({ name }) => name), 0)}}\r\n\t\t\t</p>\r\n\t\t\t<p>\r\n\t\t\t\t<strong>Land use:</strong><br />\r\n\t\t\t\t{{writeArray(page.view.item.landuses, 0)}}\r\n\t\t\t</p>\r\n\t\t\t<p>\r\n\t\t\t\t<strong>Soils:</strong><br />\r\n\t\t\t\t{{writeArray(page.view.item.soils, 0)}}\r\n\t\t\t</p>\r\n\t\t\t<p>\r\n\t\t\t\t<strong>Slopes:</strong><br />\r\n\t\t\t\t{{writeArray(page.view.item.slopes, 0)}}\r\n\t\t\t</p>\r\n\r\n\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.view.show = false\">Ok</b-button>\r\n\t\t\t</div>\r\n\t\t</b-modal>\r\n\r\n\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tAre you sure you want to delete <strong>{{page.delete.name}}</strong>?\r\n\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t</p>\r\n\r\n\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t</div>\r\n\t\t</b-modal>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport Mgt2Viewer from '@/components/Mgt2Viewer';\r\n\r\n\texport default {\r\n\t\tname: 'ScenarioModViewer',\r\n\t\tcomponents: {\r\n\t\t\tMgt2Viewer\r\n\t\t},\r\n\t\tprops: {\r\n\t\t\tdata: {\r\n\t\t\t\ttype: Array,\r\n\t\t\t\trequired: true\r\n\t\t\t},\r\n\t\t\tvalueLabel: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\trequired: true\r\n\t\t\t},\r\n\t\t\tvalueIsObject: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tappendToValue: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t},\r\n\t\t\tisMgt2: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tmgt2Lists: {\r\n\t\t\t\ttype: Object,\r\n\t\t\t\tdefault: () => {\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tplantList: [],\r\n\t\t\t\t\t\tfertList: [],\r\n\t\t\t\t\t\tpestList: [],\r\n\t\t\t\t\t\ttillList: [],\r\n\t\t\t\t\t\tmanureList: [],\r\n\t\t\t\t\t\tscheduleOptions: [],\r\n\t\t\t\t\t\topList: [],\r\n\t\t\t\t\t\tirrscList: [],\r\n\t\t\t\t\t\tihvGbmList: [],\r\n\t\t\t\t\t\twstrsList: [],\r\n\t\t\t\t\t\timpTrigList: []\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\tid: undefined,\r\n\t\t\t\t\t\tname: '',\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tview: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\titem: {\r\n\t\t\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\t\t\tlanduses: [],\r\n\t\t\t\t\t\t\tsoils: [],\r\n\t\t\t\t\t\t\tslopes: [],\r\n\t\t\t\t\t\t\tvalue: {}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'view', label: '', class: 'min' },\r\n\t\t\t\t\t\t{ key: 'value', label: this.valueLabel, class: 'min' },\r\n\t\t\t\t\t\t{ key: 'subbasins' },\r\n\t\t\t\t\t\t{ key: 'landuses', label: 'Land use' },\r\n\t\t\t\t\t\t{ key: 'soils' },\r\n\t\t\t\t\t\t{ key: 'slopes' },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', label: 'Added' },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', class: 'min' }\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\tmonths: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\twriteArray(items, limit = 5) {\r\n\t\t\t\tif (items === null || items.length === 0) return 'All';\r\n\t\t\t\tif (limit === 0) limit = items.length;\r\n\t\t\t\tvar s = items.slice(0, limit).join(', ');\r\n\r\n\t\t\t\tif (items.length > limit) return s + ' (...)';\r\n\t\t\t\treturn s;\r\n\t\t\t},\r\n\t\t\taskDelete(id, name) {\r\n\t\t\t\tthis.page.delete.id = id;\r\n\t\t\t\tthis.page.delete.name = name;\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemod/${this.page.delete.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tthis.$emit('deleted', this.page.delete.id);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tshowView(item) {\r\n\t\t\t\tthis.page.view.show = true;\r\n\t\t\t\tthis.page.view.item = item;\r\n\t\t\t},\r\n\t\t\ttoMonthNames(item) {\r\n\t\t\t\tvar names = [];\r\n\t\t\t\tfor (var i = 0; i < item.length; i++) {\r\n\t\t\t\t\tnames.push(this.months[item[i] - 1]);\r\n\t\t\t\t}\r\n\t\t\t\treturn names.join(', ');\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tscheduleByHeatUnits() {\r\n\t\t\t\tif (this.page.view.item.value.length > 0) {\r\n\t\t\t\t\treturn this.page.view.item.value[0].DAY === 0;\r\n\t\t\t\t}\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioModViewer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScenarioModViewer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScenarioModViewer.vue?vue&type=template&id=56e0ee68&\"\nimport script from \"./ScenarioModViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./ScenarioModViewer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Weather generator</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tAdjust weather generator (WGN) input data using the form below.\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch12_input_wgn.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on weather generator inputs</a>.\r\n\t\t\t</p>\r\n\r\n\t\t\t<p>\r\n\t\t\t\t<strong>Increase or decrease the variables below by up to 100%.</strong>\r\n\t\t\t</p>\r\n\r\n\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<div v-for=\"(o, i) in Object.keys(item)\" :key=\"i\">\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<label :for=\"o\">{{o}}: {{descriptions[i]}}</label>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<b-row class=\"align-items-center mb-3\">\r\n\t\t\t\t\t\t<b-col lg=\"5\" md=\"9\" sm=\"10\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.item[o].$model\" type=\"range\" :min=\"options.min\" :max=\"options.max\"></b-form-input>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col lg=\"2\" md=\"3\" sm=\"2\">\r\n\t\t\t\t\t\t\t<b-input-group append=\"%\">\r\n\t\t\t\t\t\t\t\t<b-form-input :id=\"o\" v-model.trim=\"$v.item[o].$model\" type=\"number\" step=\"any\" :min=\"options.min\" :max=\"options.max\" :state=\"getValidState($v.item[o])\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-input-group>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.item[o].required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.item[o].between\">Must be between {{options.min}} and {{options.max}}</b-form-invalid-feedback>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" subbasin-and-months></hru-selector>\r\n\r\n\t\t\t\t<scenario-mod-viewer v-if=\"mods.length > 0\" @deleted=\"modDeleted\" :data=\"mods\" value-label=\"Values\" value-is-object></scenario-mod-viewer>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<span id=\"save-button-tooltip\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection || !$v.$anyDirty\" class=\"mr-2\" />\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<b-tooltip :disabled=\"validHruSelection\" target=\"save-button-tooltip\">\r\n\t\t\t\t\t\tSelect at least one subbasin, land use, soil, and slope.\r\n\t\t\t\t\t</b-tooltip>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t<save-button v-if=\"mods.length > 0\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete all weather generator changes?\r\n\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, between } from 'vuelidate/lib/validators';\r\n\timport HruSelector from '@/components/HruSelector';\r\n\timport ScenarioModViewer from '@/components/ScenarioModViewer';\r\n\r\n\texport default {\r\n\t\tname: 'EditWgn',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector, ScenarioModViewer\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tmin: -100,\r\n\t\t\t\t\tmax: 100\r\n\t\t\t\t},\r\n\t\t\t\thruSelection: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tmonths: []\r\n\t\t\t\t},\r\n\t\t\t\tdescriptions: [\r\n\t\t\t\t\t'Maximum 0.5 hour rainfall in entire period of record for month (mm H2O)',\r\n\t\t\t\t\t'Average daily maximum air temperature (ºC)',\r\n\t\t\t\t\t'Average daily minimum air temperature for month (ºC)',\r\n\t\t\t\t\t'Standard deviation for daily maximum air temperature in month (ºC)',\r\n\t\t\t\t\t'Standard deviation for daily minimum air temperature in month (ºC)',\r\n\t\t\t\t\t'Average total monthly precipitation (mm H2O)',\r\n\t\t\t\t\t'Standard deviation for daily precipitation in month (mm H2O/day)',\r\n\t\t\t\t\t'Skew coefficient for daily precipitation in month',\r\n\t\t\t\t\t'Probability of a wet day following a dry day in the month',\r\n\t\t\t\t\t'Probability of a wet day following a wet day in the month',\r\n\t\t\t\t\t'Average number of days of precipitation in month',\r\n\t\t\t\t\t'Average daily solar radiation for month (MJ/m2/day)',\r\n\t\t\t\t\t'Average daily dew point temperature for each month (ºC)',\r\n\t\t\t\t\t'Average daily wind speed in month (m/s)'\r\n\t\t\t\t],\r\n\t\t\t\titem: {\r\n\t\t\t\t\tRAINHHMX: 0,\r\n\t\t\t\t\tTMPMX: 0,\r\n\t\t\t\t\tTMPMN: 0,\r\n\t\t\t\t\tTMPSTDMX: 0,\r\n\t\t\t\t\tTMPSTDMN: 0,\r\n\t\t\t\t\tPCPMM: 0,\r\n\t\t\t\t\tPCPSTD: 0,\r\n\t\t\t\t\tPCPSKW: 0,\r\n\t\t\t\t\tPR_W1: 0,\r\n\t\t\t\t\tPR_W2: 0,\r\n\t\t\t\t\tPCPD: 0,\r\n\t\t\t\t\tSOLARAV: 0,\r\n\t\t\t\t\tDEWPT: 0,\r\n\t\t\t\t\tWNDAV: 0\r\n\t\t\t\t},\r\n\t\t\t\tmods: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations() {\r\n\t\t\tvar item = {};\r\n\t\t\tvar keys = Object.keys(this.item);\r\n\t\t\tfor (var i = 0; i < keys.length; i++) {\r\n\t\t\t\titem[keys[i]] = { required, between: between(-100, 100) };\r\n\t\t\t}\r\n\t\t\treturn { item: item };\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/getmods/${this.scenarioID}/Wgn`, this.getTokenHeader());\r\n\t\t\t\t\tthis.mods = response.data.mods;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar item = {};\r\n\t\t\t\t\t\tvar keys = Object.keys(this.item);\r\n\r\n\t\t\t\t\t\tfor (var i = 0; i < keys.length; i++) {\r\n\t\t\t\t\t\t\tif (this.$v.item[keys[i]] && (this.$v.item[keys[i]].$dirty)) {\r\n\t\t\t\t\t\t\t\titem[keys[i]] = Number(this.item[keys[i]]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\titem.Months = this.hruSelection.months;\r\n\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tapplyToAll: this.hruSelection.applyToAll,\r\n\t\t\t\t\t\t\tsubbasins: this.hruSelection.subbasins,\r\n\t\t\t\t\t\t\tmodificationObject: item\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tthis.log(data);\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/savemods/${this.scenarioID}/Wgn`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\r\n\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Wgn`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.hruSelection = selection;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.hruSelection.applyToAll ||\r\n\t\t\t\t\t(this.hruSelection.subbasins.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.months.length > 0);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditWgn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditWgn.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditWgn.vue?vue&type=template&id=ad5a12b2&\"\nimport script from \"./EditWgn.vue?vue&type=script&lang=js&\"\nexport * from \"./EditWgn.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Climate sensitivity/variability analysis\")]),_c('p',[_vm._v(\" Adjust monthly rainfall and temperature for each subbasin in your project. Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch05_input_sub.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on subbasin inputs\")]),_vm._v(\", see page 6 for climate sensitivity variables. \")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('div',[_c('label',{attrs:{\"for\":\"RFINC\"}},[_vm._v(\"Increase or decrease rainfall by up to 100%:\")])]),_c('b-row',{staticClass:\"align-items-center mb-2\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"lg\":\"5\",\"md\":\"9\",\"sm\":\"10\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"min\":_vm.options.rmin,\"max\":_vm.options.rmax},model:{value:(_vm.$v.RFINC.$model),callback:function ($$v) {_vm.$set(_vm.$v.RFINC, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.RFINC.$model\"}})],1),_c('b-col',{attrs:{\"lg\":\"2\",\"md\":\"3\",\"sm\":\"2\"}},[_c('b-input-group',{attrs:{\"append\":\"%\"}},[_c('b-form-input',{attrs:{\"id\":\"RFINC\",\"type\":\"number\",\"step\":\"any\",\"min\":_vm.options.rmin,\"max\":_vm.options.rmax,\"state\":_vm.getValidState(_vm.$v.RFINC)},model:{value:(_vm.$v.RFINC.$model),callback:function ($$v) {_vm.$set(_vm.$v.RFINC, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.RFINC.$model\"}})],1),(!_vm.$v.RFINC.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.RFINC.between)?_c('b-form-invalid-feedback',[_vm._v(\"Must be between \"+_vm._s(_vm.$v.RFINC.$params.between.rmin)+\" and \"+_vm._s(_vm.$v.RFINC.$params.between.rmax))]):_vm._e()],1)],1),_c('div',[_c('label',{attrs:{\"for\":\"TMPINC\"}},[_vm._v(\"Increase or decrease temperature by up to 20°C:\")])]),_c('b-row',{staticClass:\"align-items-center mb-4\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"lg\":\"5\",\"md\":\"9\",\"sm\":\"10\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"min\":_vm.options.tmin,\"max\":_vm.options.tmax},model:{value:(_vm.$v.TMPINC.$model),callback:function ($$v) {_vm.$set(_vm.$v.TMPINC, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.TMPINC.$model\"}})],1),_c('b-col',{attrs:{\"lg\":\"2\",\"md\":\"3\",\"sm\":\"2\"}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',[_vm._v(\"°C\")])]},proxy:true}])},[_c('b-form-input',{attrs:{\"id\":\"TMPINC\",\"type\":\"number\",\"step\":\"any\",\"min\":_vm.options.tmin,\"max\":_vm.options.tmax,\"state\":_vm.getValidState(_vm.$v.TMPINC)},model:{value:(_vm.$v.TMPINC.$model),callback:function ($$v) {_vm.$set(_vm.$v.TMPINC, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.TMPINC.$model\"}})],1),(!_vm.$v.TMPINC.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.TMPINC.between)?_c('b-form-invalid-feedback',[_vm._v(\"Must be between \"+_vm._s(_vm.$v.TMPINC.$params.between.tmin)+\" and \"+_vm._s(_vm.$v.TMPINC.$params.between.tmax))]):_vm._e()],1)],1),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-and-months\":\"\"},on:{\"change\":_vm.hruSelectionChange}}),(_vm.mods.length > 0)?_c('scenario-mod-viewer',{attrs:{\"data\":_vm.mods,\"value-label\":\"Values\",\"value-is-object\":\"\"},on:{\"deleted\":_vm.modDeleted}}):_vm._e(),_c('fixed-action-bar',[_c('span',{attrs:{\"id\":\"save-button-tooltip\"}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection || !_vm.$v.$anyDirty}})],1),_c('b-tooltip',{attrs:{\"disabled\":_vm.validHruSelection,\"target\":\"save-button-tooltip\"}},[_vm._v(\" Select at least one subbasin. \")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.mods.length > 0)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete all climate sensitivityr data changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Climate sensitivity/variability analysis</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tAdjust monthly rainfall and temperature for each subbasin in your project.\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch05_input_sub.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on subbasin inputs</a>,\r\n\t\t\t\tsee page 6 for climate sensitivity variables.\r\n\t\t\t</p>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<label for=\"RFINC\">Increase or decrease rainfall by up to 100%:</label>\r\n\t\t\t\t</div>\r\n\t\t\t\t<b-row class=\"align-items-center mb-2\">\r\n\t\t\t\t\t<b-col lg=\"5\" md=\"9\" sm=\"10\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.RFINC.$model\" type=\"range\" :min=\"options.rmin\" :max=\"options.rmax\"></b-form-input>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col lg=\"2\" md=\"3\" sm=\"2\">\r\n\t\t\t\t\t\t<b-input-group append=\"%\">\r\n\t\t\t\t\t\t\t<b-form-input id=\"RFINC\" v-model.trim=\"$v.RFINC.$model\" type=\"number\" step=\"any\" :min=\"options.rmin\" :max=\"options.rmax\" :state=\"getValidState($v.RFINC)\"></b-form-input>\r\n\t\t\t\t\t\t</b-input-group>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.RFINC.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.RFINC.between\">Must be between {{$v.RFINC.$params.between.rmin}} and {{$v.RFINC.$params.between.rmax}}</b-form-invalid-feedback>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<label for=\"TMPINC\">Increase or decrease temperature by up to 20°C:</label>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<b-row class=\"align-items-center mb-4\">\r\n\t\t\t\t\t<b-col lg=\"5\" md=\"9\" sm=\"10\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.TMPINC.$model\" type=\"range\" :min=\"options.tmin\" :max=\"options.tmax\"></b-form-input>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col lg=\"2\" md=\"3\" sm=\"2\">\r\n\t\t\t\t\t\t<b-input-group>\r\n\t\t\t\t\t\t\t<template v-slot:append>\r\n\t\t\t\t\t\t\t\t<b-input-group-text>&deg;C</b-input-group-text>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<b-form-input id=\"TMPINC\" v-model.trim=\"$v.TMPINC.$model\" type=\"number\" step=\"any\" :min=\"options.tmin\" :max=\"options.tmax\" :state=\"getValidState($v.TMPINC)\"></b-form-input>\r\n\t\t\t\t\t\t</b-input-group>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.TMPINC.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.TMPINC.between\">Must be between {{$v.TMPINC.$params.between.tmin}} and {{$v.TMPINC.$params.between.tmax}}</b-form-invalid-feedback>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" subbasin-and-months></hru-selector>\r\n\r\n\t\t\t\t<scenario-mod-viewer v-if=\"mods.length > 0\" @deleted=\"modDeleted\" :data=\"mods\" value-label=\"Values\" value-is-object></scenario-mod-viewer>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<span id=\"save-button-tooltip\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection || !$v.$anyDirty\" class=\"mr-2\" /> \r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<b-tooltip :disabled=\"validHruSelection\" target=\"save-button-tooltip\">\r\n\t\t\t\t\t\tSelect at least one subbasin.\r\n\t\t\t\t\t</b-tooltip>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"mods.length > 0\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete all climate sensitivityr data changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, between } from 'vuelidate/lib/validators';\r\n\timport HruSelector from '@/components/HruSelector';\r\n\timport ScenarioModViewer from '@/components/ScenarioModViewer';\r\n\r\n\texport default {\r\n\t\tname: 'EditClimateSensitivity',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector, ScenarioModViewer\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\trmin: -100,\r\n\t\t\t\t\trmax: 100,\r\n\t\t\t\t\ttmin: -20,\r\n\t\t\t\t\ttmax: 20,\r\n\t\t\t\t},\r\n\t\t\t\thruSelection: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tmonths: []\r\n\t\t\t\t},\r\n\t\t\t\tRFINC: 0,\r\n\t\t\t\tTMPINC: 0,\r\n\t\t\t\tmods: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tRFINC: { required, between: between(-100, 100) },\r\n\t\t\tTMPINC: { required, between: between(-20, 20) }\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/getmods/${this.scenarioID}/ClimateSensitivity`, this.getTokenHeader());\r\n\t\t\t\t\tthis.mods = response.data.mods;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tapplyToAll: this.hruSelection.applyToAll,\r\n\t\t\t\t\t\t\tsubbasins: this.hruSelection.subbasins,\r\n\t\t\t\t\t\t\tmodificationObject: {}\r\n\t\t\t\t\t\t};\r\n\r\n\t\t\t\t\t\tif (this.RFINC !== 0) data.modificationObject.RFINC = Number(this.RFINC);\r\n\t\t\t\t\t\tif (this.TMPINC !== 0) data.modificationObject.TMPINC = Number(this.TMPINC);\r\n\t\t\t\t\t\tdata.modificationObject.Months = this.hruSelection.months;\r\n\r\n\t\t\t\t\t\tthis.log(data);\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/savemods/${this.scenarioID}/ClimateSensitivity`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/ClimateSensitivity`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.hruSelection = selection;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.hruSelection.applyToAll ||\r\n\t\t\t\t\t(this.hruSelection.subbasins.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.months.length > 0);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditClimateSensitivity.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditClimateSensitivity.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditClimateSensitivity.vue?vue&type=template&id=8c25cbf2&\"\nimport script from \"./EditClimateSensitivity.vue?vue&type=script&lang=js&\"\nexport * from \"./EditClimateSensitivity.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"General management\")]),_c('p',[_vm._v(\" Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch20_input_mgt.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on MGT inputs\")]),_vm._v(\" for more information about management variables. \")]),(!_vm.page.showHruSelector)?_c('div',{staticClass:\"mb-4\"},[_c('p',{staticClass:\"mb-2\"},[_c('strong',[_vm._v(\"Selected HRU:\")]),_vm._v(\" \"+_vm._s(_vm.initialHru.subbasin.name)+\" / \"+_vm._s(_vm.initialHru.landuse)+\" / \"+_vm._s(_vm.initialHru.soil)+\" / \"+_vm._s(_vm.initialHru.slope)+\" \")]),_c('b-button',{on:{\"click\":function($event){_vm.page.showHruSelector = !_vm.page.showHruSelector}}},[_vm._v(\"Select another HRU\")])],1):_vm._e(),_c('b-collapse',{staticClass:\"mb-3\",model:{value:(_vm.page.showHruSelector),callback:function ($$v) {_vm.$set(_vm.page, \"showHruSelector\", $$v)},expression:\"page.showHruSelector\"}},[_c('p',[_c('strong',[_vm._v(\"Select an HRU to view management data and make changes. Changes may be extended to other HRUs in your project.\")])]),_c('single-hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id)},on:{\"change\":_vm.initialHruChange}},[(_vm.validInitialHru)?_c('p',[_c('save-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"saving\":_vm.page.loadingData,\"text\":\"Get data\"},nativeOn:{\"click\":function($event){return _vm.getMgt.apply(null, arguments)}}}),(_vm.page.showData)?_c('b-button',{attrs:{\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.showHruSelector = !_vm.page.showHruSelector}}},[_vm._v(\"Hide form\")]):_vm._e()],1):_vm._e()])],1),_c('error-list',{attrs:{\"errors\":_vm.page.loadingErrors}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[(_vm.page.showData)?_c('div',[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('div',{staticClass:\"table-responsive mb-4\"},[_c('table',{staticClass:\"table table-valign-m table-form border-bottom\"},[_c('thead',[_c('tr',{staticClass:\"thead\"},[_c('th',[_vm._v(\"Input Variable\")]),_c('th',[_vm._v(\"Value\")]),_c('th',[_vm._v(\"Default\")])])]),_c('tbody',[_c('tr',{staticClass:\"bg-light\"},[_c('th',{attrs:{\"colspan\":\"3\"}},[_vm._v(\"Initial Plant Growth\")])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"PLANT_ID\"}},[_vm._v(\"Initial land cover\")])]),_c('td',[_c('b-form-select',{attrs:{\"id\":\"PLANT_ID\",\"options\":_vm.form.plantList,\"state\":_vm.getValidState(_vm.$v.form.item.PLANT_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"No crop growing\")])]},proxy:true}],null,false,4285759278),model:{value:(_vm.$v.form.item.PLANT_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.PLANT_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.PLANT_ID.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.defaultPlantName))])]),(_vm.form.item.PLANT_ID > 0)?_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"LAI_INIT\"}},[_vm._v(\"LAI_INIT: Initial leaf area index\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"LAI_INIT\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.LAI_INIT)},model:{value:(_vm.$v.form.item.LAI_INIT.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.LAI_INIT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.LAI_INIT.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.LAI_INIT))])]):_vm._e(),(_vm.form.item.PLANT_ID > 0)?_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"BIO_INIT\"}},[_vm._v(\"BIO_INIT: Initial dry weight biomass\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"BIO_INIT\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.BIO_INIT)},model:{value:(_vm.$v.form.item.BIO_INIT.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.BIO_INIT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.BIO_INIT.$model\"}}),_c('span',[_vm._v(\"kg/ha\")])],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.BIO_INIT))])]):_vm._e(),(_vm.form.item.PLANT_ID > 0)?_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"PHU_PLT\"}},[_vm._v(\"PHU_PLT: Number of heat units to bring plant to maturity\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"PHU_PLT\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.PHU_PLT)},model:{value:(_vm.$v.form.item.PHU_PLT.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.PHU_PLT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.PHU_PLT.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.PHU_PLT))])]):_vm._e(),_c('tr',{staticClass:\"bg-light\"},[_c('th',{attrs:{\"colspan\":\"3\"}},[_vm._v(\"General Management\")])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"BIOMIX\"}},[_vm._v(\"BIOMIX: Biological mixing efficiency\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"BIOMIX\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.BIOMIX)},model:{value:(_vm.$v.form.item.BIOMIX.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.BIOMIX, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.BIOMIX.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.BIOMIX))])]),_c('tr',[_c('td',[_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],staticClass:\"mr-1\",attrs:{\"title\":\"Note: any adjustments to CN2 here will take precedence over changes made through the edit subbasin inputs -> curve numbers section.\"}},[_c('font-awesome-icon',{staticClass:\"text-info\",attrs:{\"icon\":\"info-circle\"}})],1),_c('label',{attrs:{\"for\":\"CN2\"}},[_vm._v(\"CN2: Initial SCS runoff curve number for moisture condition II\")])]),_c('td',[_c('b-form-select',{attrs:{\"id\":\"CurveNumberEditMethod\",\"options\":_vm.form.cnEditOptions,\"state\":_vm.getValidState(_vm.$v.form.item.CurveNumberEditMethod)},model:{value:(_vm.$v.form.item.CurveNumberEditMethod.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.CurveNumberEditMethod, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.CurveNumberEditMethod.$model\"}}),(_vm.form.item.CurveNumberEditMethod === 1)?_c('div',{staticClass:\"mt-2\"},[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"CN2\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.CN2)},model:{value:(_vm.$v.form.item.CN2.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.CN2, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.CN2.$model\"}})],1):_vm._e(),(_vm.form.item.CurveNumberEditMethod === 2)?_c('div',{staticClass:\"my-4 d-flex align-items-center\"},[_c('b-form-input',{staticStyle:{\"width\":\"200px\"},attrs:{\"type\":\"range\",\"min\":-10,\"max\":10},model:{value:(_vm.cn2PercentAdjust),callback:function ($$v) {_vm.cn2PercentAdjust=$$v},expression:\"cn2PercentAdjust\"}}),_c('span',[_vm._v(_vm._s(_vm.cn2PercentAdjust)+\"%\")])],1):_vm._e()],1),_c('td',[_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],staticClass:\"ml-1\",attrs:{\"title\":\"Note: the default CN2 shown here is adjusted based on the selected initial or urban land cover, if any\"}},[_c('font-awesome-icon',{staticClass:\"text-info\",attrs:{\"icon\":\"info-circle\"}})],1),_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.selectedDefaultCn2,3))+\" \")])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"USLE_P\"}},[_vm._v(\"USLE_P: USLE equation support practice factor\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"USLE_P\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.USLE_P)},model:{value:(_vm.$v.form.item.USLE_P.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.USLE_P, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.USLE_P.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.USLE_P))])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"BIO_MIN\"}},[_vm._v(\"BIO_MIN: Minimum biomass for grazing\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"BIO_MIN\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.BIO_MIN)},model:{value:(_vm.$v.form.item.BIO_MIN.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.BIO_MIN, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.BIO_MIN.$model\"}}),_c('span',[_vm._v(\"kg/ha\")])],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.BIO_MIN))])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"FILTERW\"}},[_vm._v(\"FILTERW: Width of edge-of-field filter strip\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"FILTERW\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.FILTERW)},model:{value:(_vm.$v.form.item.FILTERW.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.FILTERW, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.FILTERW.$model\"}}),_c('span',[_vm._v(\"m\")])],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.FILTERW))])]),_c('tr',{staticClass:\"bg-light\"},[_c('th',{attrs:{\"colspan\":\"3\"}},[_vm._v(\"Urban Management\")])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"URBLU\"}},[_vm._v(\"Urban land cover\")])]),_c('td',[_c('b-form-select',{attrs:{\"id\":\"URBLU\",\"options\":_vm.form.urbanList,\"state\":_vm.getValidState(_vm.$v.form.item.URBLU)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"No urban land use\")])]},proxy:true}],null,false,513733603),model:{value:(_vm.$v.form.item.URBLU.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.URBLU, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.URBLU.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.defaultUrbanName))])]),(_vm.form.item.URBLU > 0)?_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"IURBAN\"}},[_vm._v(\"Urban simulation method\")])]),_c('td',[_c('b-form-select',{attrs:{\"id\":\"IURBAN\",\"options\":_vm.form.iurbanList,\"state\":_vm.getValidState(_vm.$v.form.item.IURBAN)},model:{value:(_vm.$v.form.item.IURBAN.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.IURBAN, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.IURBAN.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.IURBAN))])]):_vm._e(),_c('tr',{staticClass:\"bg-light\"},[_c('th',{attrs:{\"colspan\":\"3\"}},[_vm._v(\"Irrigation Management\")])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"IRRSC\"}},[_vm._v(\"Irrigation source\")])]),_c('td',[_c('b-form-select',{attrs:{\"id\":\"IRRSC\",\"options\":_vm.form.irrscList,\"state\":_vm.getValidState(_vm.$v.form.item.IRRSC)},model:{value:(_vm.$v.form.item.IRRSC.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.IRRSC, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.IRRSC.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.IRRSC))])]),(_vm.form.item.IRRSC != 5 && _vm.form.item.IRRSC != 0)?_c('tr',[_c('td',{attrs:{\"colspan\":\"2\"}},[_c('single-hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-only\":\"\",\"initSubID\":_vm.form.item.IRRNO},on:{\"change\":_vm.setIRRNO}})],1),_c('td')]):_vm._e(),(_vm.form.item.IRRSC != 5 && _vm.form.item.IRRSC > 0)?_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"FLOWMIN\"}},[_vm._v(\"FLOWMIN: Minimum in-stream flow for irr diversions\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"FLOWMIN\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.FLOWMIN)},model:{value:(_vm.$v.form.item.FLOWMIN.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.FLOWMIN, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.FLOWMIN.$model\"}}),_c('span',[_vm._v(\"m\"),_c('sup',[_vm._v(\"3\")]),_vm._v(\"/s\")])],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.FLOWMIN))])]):_vm._e(),(_vm.form.item.IRRSC != 5 && _vm.form.item.IRRSC > 0)?_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"DIVMAX\"}},[_vm._v(\"DIVMAX: Maximum irrigation diversion from reach\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"DIVMAX\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.DIVMAX)},model:{value:(_vm.$v.form.item.DIVMAX.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.DIVMAX, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.DIVMAX.$model\"}}),_c('span',[_vm._v(\"+mm/-10\"),_c('sup',[_vm._v(\"4\")]),_vm._v(\"m\"),_c('sup',[_vm._v(\"3\")])])],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.DIVMAX))])]):_vm._e(),(_vm.form.item.IRRSC != 5 && _vm.form.item.IRRSC > 0)?_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"FLOWFR\"}},[_vm._v(\"FLOWFR: Fraction of flow allowed to be pulled for irrigation\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"FLOWFR\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.FLOWFR)},model:{value:(_vm.$v.form.item.FLOWFR.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.FLOWFR, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.FLOWFR.$model\"}})],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.FLOWFR))])]):_vm._e(),_c('tr',{staticClass:\"bg-light\"},[_c('th',{attrs:{\"colspan\":\"3\"}},[_vm._v(\"Tile Drain Management\")])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"DDRAIN\"}},[_vm._v(\"DDRAIN: Depth to subsurface tile drain\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"DDRAIN\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.DDRAIN)},model:{value:(_vm.$v.form.item.DDRAIN.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.DDRAIN, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.DDRAIN.$model\"}}),_c('span',[_vm._v(\"mm\")])],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.DDRAIN))])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"TDRAIN\"}},[_vm._v(\"TDRAIN: Time to drain soil to field capacity\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"TDRAIN\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.TDRAIN)},model:{value:(_vm.$v.form.item.TDRAIN.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.TDRAIN, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.TDRAIN.$model\"}}),_c('span',[_vm._v(\"hr\")])],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.TDRAIN))])]),_c('tr',[_c('td',[_c('label',{attrs:{\"for\":\"GDRAIN\"}},[_vm._v(\"GDRAIN: Drain tile lag time\")])]),_c('td',[_c('b-form-input',{staticClass:\"max-w-150\",attrs:{\"id\":\"GDRAIN\",\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.GDRAIN)},model:{value:(_vm.$v.form.item.GDRAIN.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.GDRAIN, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.GDRAIN.$model\"}}),_c('span',[_vm._v(\"hr\")])],1),_c('td',[_vm._v(_vm._s(_vm.form.defaults.GDRAIN))])])])])]),_c('h3',{staticClass:\"mt-5 mb-4\"},[_vm._v(\"Apply your changes\")]),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"initial-selection\":_vm.initialSelection},on:{\"change\":_vm.hruSelectionChange}})],1):_vm._e(),(_vm.mods.length > 0)?_c('scenario-mod-viewer',{attrs:{\"data\":_vm.mods,\"value-label\":\"Values\",\"value-is-object\":\"\"},on:{\"deleted\":_vm.modDeleted}}):_vm._e(),_c('fixed-action-bar',[_c('span',{attrs:{\"id\":\"save-button-tooltip\"}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection || !_vm.page.showData}})],1),_c('b-tooltip',{attrs:{\"disabled\":_vm.validHruSelection,\"target\":\"save-button-tooltip\"}},[_vm._v(\" Select at least one subbasin, land use, soil, and slope. \")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.mods.length > 0)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete all general management data changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('b-row',{staticClass:\"my-3\"},[_c('b-col',{attrs:{\"md\":_vm.subbasinOnly ? 12 : 6}},[_c('b-form-select',{staticClass:\"mb-3\",scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a subbasin from this list or click the map --\")])]},proxy:true}]),model:{value:(_vm.selection.subbasin),callback:function ($$v) {_vm.$set(_vm.selection, \"subbasin\", $$v)},expression:\"selection.subbasin\"}},_vm._l((_vm.projectMap.connections),function(c,i){return _c('option',{key:i,domProps:{\"value\":{ id: c.fromID, name: c.fromName }}},[_vm._v(\" \"+_vm._s(c.fromName)+\" \")])}),0),(!_vm.subbasinOnly)?_c('div',[(_vm.loading.errors.length > 0)?_c('error-list',{attrs:{\"errors\":_vm.loading.errors}}):_c('div',[_c('page-loading',{attrs:{\"loading\":_vm.loading.landuse}}),(!_vm.loading.landuse && _vm.options.landuse.length > 0)?_c('b-form-select',{staticClass:\"mb-3\",scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select land use --\")])]},proxy:true}],null,false,2730545905),model:{value:(_vm.selection.landuse),callback:function ($$v) {_vm.$set(_vm.selection, \"landuse\", $$v)},expression:\"selection.landuse\"}},_vm._l((_vm.options.landuse),function(o,i){return _c('option',{key:i,domProps:{\"value\":o.name}},[_vm._v(_vm._s(o.name)+\" - \"+_vm._s(o.description))])}),0):_vm._e(),_c('page-loading',{attrs:{\"loading\":_vm.loading.soils}}),(!_vm.loading.soils && _vm.options.soils.length > 0 && _vm.options.landuse.length > 0)?_c('b-form-select',{staticClass:\"mb-3\",scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select soil --\")])]},proxy:true}],null,false,2339938092),model:{value:(_vm.selection.soil),callback:function ($$v) {_vm.$set(_vm.selection, \"soil\", $$v)},expression:\"selection.soil\"}},_vm._l((_vm.options.soils),function(o,i){return _c('option',{key:i,domProps:{\"value\":o}},[_vm._v(_vm._s(o))])}),0):_vm._e(),_c('page-loading',{attrs:{\"loading\":_vm.loading.slopes}}),(!_vm.loading.slopes && _vm.options.slopes.length > 0 && _vm.options.soils.length > 0 && _vm.options.landuse.length > 0)?_c('b-form-select',{staticClass:\"mb-3\",scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select slope --\")])]},proxy:true}],null,false,3722793104),model:{value:(_vm.selection.slope),callback:function ($$v) {_vm.$set(_vm.selection, \"slope\", $$v)},expression:\"selection.slope\"}},_vm._l((_vm.options.slopes),function(o,i){return _c('option',{key:i,domProps:{\"value\":o}},[_vm._v(_vm._s(o))])}),0):_vm._e(),_vm._t(\"default\")],2)],1):_vm._e()],1),_c('b-col',{attrs:{\"md\":_vm.subbasinOnly ? 12 : 6}},[_c('project-map',{attrs:{\"project-map\":_vm.projectMap,\"height\":\"300px\",\"highlight-selected\":\"\",\"selected-subbasins\":_vm.selection.subbasin === null ? [] : [_vm.selection.subbasin]},on:{\"subbasin-click\":_vm.mapClick}})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\n\t\t\t<b-row class=\"my-3\">\r\n\t\t\t\t<b-col :md=\"subbasinOnly ? 12 : 6\">\r\n\t\t\t\t\t<b-form-select v-model=\"selection.subbasin\" class=\"mb-3\">\r\n\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a subbasin from this list or click the map --</option>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t<option v-for=\"(c, i) in projectMap.connections\" :key=\"i\" :value=\"{ id: c.fromID, name: c.fromName }\">\r\n\t\t\t\t\t\t\t{{c.fromName}}\r\n\t\t\t\t\t\t</option>\r\n\t\t\t\t\t</b-form-select>\r\n\n\t\t\t\t\t<div v-if=\"!subbasinOnly\">\r\n\t\t\t\t\t\t<error-list v-if=\"loading.errors.length > 0\" :errors=\"loading.errors\"></error-list>\r\n\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t<page-loading :loading=\"loading.landuse\"></page-loading>\r\n\t\t\t\t\t\t\t<b-form-select v-if=\"!loading.landuse && options.landuse.length > 0\" v-model=\"selection.landuse\" class=\"mb-3\">\r\n\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select land use --</option>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t<option v-for=\"(o, i) in options.landuse\" :key=\"i\" :value=\"o.name\">{{o.name}} - {{o.description}}</option>\r\n\t\t\t\t\t\t\t</b-form-select>\r\n\r\n\t\t\t\t\t\t\t<page-loading :loading=\"loading.soils\"></page-loading>\r\n\t\t\t\t\t\t\t<b-form-select v-if=\"!loading.soils && options.soils.length > 0 && options.landuse.length > 0\" v-model=\"selection.soil\" class=\"mb-3\">\r\n\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select soil --</option>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t<option v-for=\"(o, i) in options.soils\" :key=\"i\" :value=\"o\">{{o}}</option>\r\n\t\t\t\t\t\t\t</b-form-select>\r\n\r\n\t\t\t\t\t\t\t<page-loading :loading=\"loading.slopes\"></page-loading>\r\n\t\t\t\t\t\t\t<b-form-select v-if=\"!loading.slopes && options.slopes.length > 0 && options.soils.length > 0 && options.landuse.length > 0\" v-model=\"selection.slope\" class=\"mb-3\">\r\n\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select slope --</option>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t<option v-for=\"(o, i) in options.slopes\" :key=\"i\" :value=\"o\">{{o}}</option>\r\n\t\t\t\t\t\t\t</b-form-select>\r\n\r\n\t\t\t\t\t\t\t<slot></slot>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col :md=\"subbasinOnly ? 12 : 6\">\r\n\t\t\t\t\t<project-map :project-map=\"projectMap\" height=\"300px\"\r\n\t\t\t\t\t\t\t\t highlight-selected\r\n\t\t\t\t\t\t\t\t :selected-subbasins=\"selection.subbasin === null ? [] : [selection.subbasin]\"\r\n\t\t\t\t\t\t\t\t @subbasin-click=\"mapClick\"></project-map>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport ProjectMap from '@/components/ProjectMap';\r\n\r\n\texport default {\r\n\t\tname: 'HruSelector',\r\n\t\tcomponents: {\r\n\t\t\tProjectMap\r\n\t\t},\r\n\t\tprops: {\r\n\t\t\tprojectID: {\r\n\t\t\t\ttype: Number,\r\n\t\t\t\trequired: true\r\n\t\t\t},\r\n\t\t\tsubbasinOnly: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\n\t\t\tinitSubID: {\r\n\t\t\t\ttype: Number,\r\n\t\t\t\trequired: false,\n\t\t\t\tdefault: null\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tprojectMap: {},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: []\r\n\t\t\t\t},\r\n\t\t\t\tselection: {\r\n\t\t\t\t\tsubbasin: null,\r\n\t\t\t\t\tlanduse: null,\r\n\t\t\t\t\tsoil: null,\r\n\t\t\t\t\tslope: null\r\n\t\t\t\t},\r\n\t\t\t\tloading: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tlanduse: false,\r\n\t\t\t\t\tsoils: false,\r\n\t\t\t\t\tslopes: false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`projects/map/${this.projectID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.projectMap = response.data;\n\n\t\t\t\t\tif (this.initSubID !== null && this.initSubID !== 0) {\n\t\t\t\t\t\tvar value = this.initSubID;\n\t\t\t\t\t\tvar filtered = this.projectMap.connections.filter(function (el) { return el.fromID === value; });\n\t\t\t\t\t\tif (filtered.length > 0) this.selection.subbasin = { id: filtered[0].fromID, name: filtered[0].fromName };\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getLanduse() {\n\t\t\t\tif (!this.subbasinOnly) {\r\n\t\t\t\t\tthis.loading.errors = [];\r\n\t\t\t\t\tthis.loading.landuse = true;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`hruselection/landuse/${this.projectID}`, [this.selection.subbasin], this.getTokenHeader());\r\n\t\t\t\t\t\tthis.options.landuse = response.data;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.loading.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.loading.landuse = false;\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync getSoils() {\r\n\t\t\t\tthis.loading.errors = [];\r\n\t\t\t\tthis.loading.soils = true;\n\n\t\t\t\tvar model = {\n\t\t\t\t\tsubbasins: [this.selection.subbasin],\n\t\t\t\t\tlanduse: [this.selection.landuse]\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`hruselection/soils/${this.projectID}`, model, this.getTokenHeader());\r\n\t\t\t\t\tthis.options.soils = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.loading.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.loading.soils = false;\r\n\t\t\t},\r\n\t\t\tasync getSlopes() {\r\n\t\t\t\tthis.loading.errors = [];\r\n\t\t\t\tthis.loading.slopes = true;\n\n\t\t\t\tvar model = {\n\t\t\t\t\tsubbasins: [this.selection.subbasin],\n\t\t\t\t\tlanduse: [this.selection.landuse],\n\t\t\t\t\tsoils: [this.selection.soil]\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`hruselection/slopes/${this.projectID}`, model, this.getTokenHeader());\r\n\t\t\t\t\tthis.options.slopes = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.loading.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.loading.slopes = false;\r\n\t\t\t},\r\n\t\t\tasync mapClick(selectedSubbasins) {\n\t\t\t\tif (selectedSubbasins.length > 0)\r\n\t\t\t\t\tthis.selection.subbasin = selectedSubbasins[0];\n\t\t\t\telse\n\t\t\t\t\tthis.selection.subbasin = null;\r\n\t\t\t}\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\tasync selectedSubbasin() {\r\n\t\t\t\tawait this.getLanduse();\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\r\n\t\t\tasync selectedLanduse() {\r\n\t\t\t\tawait this.getSoils();\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\r\n\t\t\tasync selectedSoil() {\r\n\t\t\t\tawait this.getSlopes();\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\r\n\t\t\tselectedSlope() {\r\n\t\t\t\tthis.$emit('change', this.selection);\r\n\t\t\t},\n\t\t\t/*initSubID(newVal, oldVal) {\n\t\t\t\tthis.log('In watch: ' + newVal);\n\t\t\t\tif (newVal !== null && newVal !== 0) {\n\t\t\t\t\tvar value = newVal;\n\t\t\t\t\tthis.selection.subbasin = this.projectMap.connections.filter(function (el) { return el.fromID === value; });\r\n\t\t\t\t}\r\n\t\t\t}*/\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tselectedSubbasin() {\r\n\t\t\t\treturn this.selection.subbasin;\r\n\t\t\t},\r\n\t\t\tselectedLanduse() {\r\n\t\t\t\treturn this.selection.landuse;\r\n\t\t\t},\r\n\t\t\tselectedSoil() {\r\n\t\t\t\treturn this.selection.soil;\r\n\t\t\t},\r\n\t\t\tselectedSlope() {\r\n\t\t\t\treturn this.selection.slope;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SingleHruSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SingleHruSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SingleHruSelector.vue?vue&type=template&id=23c036c0&\"\nimport script from \"./SingleHruSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./SingleHruSelector.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">General management</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch20_input_mgt.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on MGT inputs</a> for more information about management variables.\r\n\t\t\t</p>\r\n\n\t\t\t<div v-if=\"!page.showHruSelector\" class=\"mb-4\">\n\t\t\t\t<p class=\"mb-2\">\r\n\t\t\t\t\t<strong>Selected HRU:</strong> {{initialHru.subbasin.name}} / {{initialHru.landuse}} / {{initialHru.soil}} / {{initialHru.slope}}\r\n\t\t\t\t</p>\r\n\t\t\t\t<b-button @click=\"page.showHruSelector = !page.showHruSelector\">Select another HRU</b-button>\n\t\t\t</div>\r\n\t\t\t<b-collapse v-model=\"page.showHruSelector\" class=\"mb-3\">\n\t\t\t\t<p>\r\n\t\t\t\t\t<strong>Select an HRU to view management data and make changes. Changes may be extended to other HRUs in your project.</strong>\r\n\t\t\t\t</p>\n\r\n\t\t\t\t<single-hru-selector :projectID=\"Number($route.params.id)\" @change=\"initialHruChange\">\n\t\t\t\t\t<p v-if=\"validInitialHru\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.loadingData\" @click.native=\"getMgt\" text=\"Get data\" class=\"mr-2\" />\r\n\t\t\t\t\t\t<b-button @click=\"page.showHruSelector = !page.showHruSelector\" v-if=\"page.showData\" variant=\"secondary\">Hide form</b-button>\r\n\t\t\t\t\t</p>\n\t\t\t\t</single-hru-selector>\n\t\t\t</b-collapse>\r\n\r\n\t\t\t<error-list :errors=\"page.loadingErrors\"></error-list>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<div v-if=\"page.showData\">\r\n\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t<div class=\"table-responsive mb-4\">\r\n\t\t\t\t\t\t<table class=\"table table-valign-m table-form border-bottom\">\r\n\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t<tr class=\"thead\">\r\n\t\t\t\t\t\t\t\t\t<th>Input Variable</th>\r\n\t\t\t\t\t\t\t\t\t<th>Value</th>\r\n\t\t\t\t\t\t\t\t\t<th>Default</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t<tr class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t\t<th colspan=\"3\">Initial Plant Growth</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"PLANT_ID\">Initial land cover</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select id=\"PLANT_ID\" v-model.trim=\"$v.form.item.PLANT_ID.$model\" :options=\"form.plantList\" :state=\"getValidState($v.form.item.PLANT_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">No crop growing</option>\r\n\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ defaultPlantName }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr v-if=\"form.item.PLANT_ID > 0\">\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"LAI_INIT\">LAI_INIT: Initial leaf area index</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"LAI_INIT\" v-model.trim=\"$v.form.item.LAI_INIT.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.LAI_INIT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.LAI_INIT }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr v-if=\"form.item.PLANT_ID > 0\">\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"BIO_INIT\">BIO_INIT: Initial dry weight biomass</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"BIO_INIT\" v-model.trim=\"$v.form.item.BIO_INIT.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.BIO_INIT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<span>kg/ha</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.BIO_INIT }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr v-if=\"form.item.PLANT_ID > 0\">\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"PHU_PLT\">PHU_PLT: Number of heat units to bring plant to maturity</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"PHU_PLT\" v-model.trim=\"$v.form.item.PHU_PLT.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.PHU_PLT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.PHU_PLT }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t\t\t<tr class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t\t<th colspan=\"3\">General Management</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"BIOMIX\">BIOMIX: Biological mixing efficiency</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"BIOMIX\" v-model.trim=\"$v.form.item.BIOMIX.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.BIOMIX)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.BIOMIX }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<span v-b-tooltip.hover.bottom title=\"Note: any adjustments to CN2 here will take precedence over changes made through the edit subbasin inputs -> curve numbers section.\" class=\"mr-1\">\r\n\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon icon=\"info-circle\" class=\"text-info\" />\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"CN2\">CN2: Initial SCS runoff curve number for moisture condition II</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select id=\"CurveNumberEditMethod\" v-model.trim=\"$v.form.item.CurveNumberEditMethod.$model\" :options=\"form.cnEditOptions\" :state=\"getValidState($v.form.item.CurveNumberEditMethod)\"></b-form-select>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<div v-if=\"form.item.CurveNumberEditMethod === 1\" class=\"mt-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"CN2\" v-model.trim=\"$v.form.item.CN2.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.CN2)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t<div v-if=\"form.item.CurveNumberEditMethod === 2\" class=\"my-4 d-flex align-items-center\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"cn2PercentAdjust\" type=\"range\" style=\"width:200px\" :min=\"-10\" :max=\"10\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t\t<span>{{cn2PercentAdjust}}%</span>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<span v-b-tooltip.hover.bottom title=\"Note: the default CN2 shown here is adjusted based on the selected initial or urban land cover, if any\" class=\"ml-1\">\r\n\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon icon=\"info-circle\" class=\"text-info\" />\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t{{ selectedDefaultCn2 | number(3) }}\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"USLE_P\">USLE_P: USLE equation support practice factor</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"USLE_P\" v-model.trim=\"$v.form.item.USLE_P.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.USLE_P)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.USLE_P }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"BIO_MIN\">BIO_MIN: Minimum biomass for grazing</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"BIO_MIN\" v-model.trim=\"$v.form.item.BIO_MIN.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.BIO_MIN)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<span>kg/ha</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.BIO_MIN }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"FILTERW\">FILTERW: Width of edge-of-field filter strip</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"FILTERW\" v-model.trim=\"$v.form.item.FILTERW.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.FILTERW)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<span>m</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.FILTERW }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t\t\t<tr class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t\t<th colspan=\"3\">Urban Management</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"URBLU\">Urban land cover</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select id=\"URBLU\" v-model.trim=\"$v.form.item.URBLU.$model\" :options=\"form.urbanList\" :state=\"getValidState($v.form.item.URBLU)\">\r\n\t\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">No urban land use</option>\r\n\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ defaultUrbanName }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr v-if=\"form.item.URBLU > 0\">\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"IURBAN\">Urban simulation method</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select id=\"IURBAN\" v-model.trim=\"$v.form.item.IURBAN.$model\" :options=\"form.iurbanList\" :state=\"getValidState($v.form.item.IURBAN)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.IURBAN }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t\t\t<tr class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t\t<th colspan=\"3\">Irrigation Management</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"IRRSC\">Irrigation source</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select id=\"IRRSC\" v-model.trim=\"$v.form.item.IRRSC.$model\" :options=\"form.irrscList\" :state=\"getValidState($v.form.item.IRRSC)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.IRRSC }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr v-if=\"form.item.IRRSC != 5 && form.item.IRRSC != 0\">\r\n\t\t\t\t\t\t\t\t\t<td colspan=\"2\">\r\n\t\t\t\t\t\t\t\t\t\t<single-hru-selector :projectID=\"Number($route.params.id)\" @change=\"setIRRNO\" subbasin-only :initSubID=\"form.item.IRRNO\"></single-hru-selector>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td></td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr v-if=\"form.item.IRRSC != 5 && form.item.IRRSC > 0\">\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"FLOWMIN\">FLOWMIN: Minimum in-stream flow for irr diversions</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"FLOWMIN\" v-model.trim=\"$v.form.item.FLOWMIN.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.FLOWMIN)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<span>m<sup>3</sup>/s</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.FLOWMIN }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr v-if=\"form.item.IRRSC != 5 && form.item.IRRSC > 0\">\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"DIVMAX\">DIVMAX: Maximum irrigation diversion from reach</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"DIVMAX\" v-model.trim=\"$v.form.item.DIVMAX.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.DIVMAX)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<span>+mm/-10<sup>4</sup>m<sup>3</sup></span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.DIVMAX }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr v-if=\"form.item.IRRSC != 5 && form.item.IRRSC > 0\">\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"FLOWFR\">FLOWFR: Fraction of flow allowed to be pulled for irrigation</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"FLOWFR\" v-model.trim=\"$v.form.item.FLOWFR.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.FLOWFR)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.FLOWFR }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\r\n\t\t\t\t\t\t\t\t<tr class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t\t<th colspan=\"3\">Tile Drain Management</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"DDRAIN\">DDRAIN: Depth to subsurface tile drain</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"DDRAIN\" v-model.trim=\"$v.form.item.DDRAIN.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.DDRAIN)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<span>mm</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.DDRAIN }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"TDRAIN\">TDRAIN: Time to drain soil to field capacity</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"TDRAIN\" v-model.trim=\"$v.form.item.TDRAIN.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.TDRAIN)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<span>hr</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.TDRAIN }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<label for=\"GDRAIN\">GDRAIN: Drain tile lag time</label>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input id=\"GDRAIN\" v-model.trim=\"$v.form.item.GDRAIN.$model\" class=\"max-w-150\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.GDRAIN)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<span>hr</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{ form.defaults.GDRAIN }}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<h3 class=\"mt-5 mb-4\">Apply your changes</h3>\r\n\t\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" :initial-selection=\"initialSelection\"></hru-selector>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<scenario-mod-viewer v-if=\"mods.length > 0\" @deleted=\"modDeleted\" :data=\"mods\" value-label=\"Values\" value-is-object></scenario-mod-viewer>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<span id=\"save-button-tooltip\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection || !page.showData\" class=\"mr-2\" />\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<b-tooltip :disabled=\"validHruSelection\" target=\"save-button-tooltip\">\r\n\t\t\t\t\t\tSelect at least one subbasin, land use, soil, and slope.\r\n\t\t\t\t\t</b-tooltip>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"mods.length > 0\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete all general management data changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, requiredIf } from 'vuelidate/lib/validators';\r\n\timport SingleHruSelector from '@/components/SingleHruSelector';\r\n\timport HruSelector from '@/components/HruSelector';\r\n\timport ScenarioModViewer from '@/components/ScenarioModViewer';\r\n\r\n\texport default {\r\n\t\tname: 'EditMgtGeneral',\r\n\t\tcomponents: {\r\n\t\t\tSingleHruSelector, HruSelector, ScenarioModViewer\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tloadingErrors: [],\r\n\t\t\t\t\tloadingData: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tshowData: false,\n\t\t\t\t\tshowHruSelector: true,\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tform: {\n\t\t\t\t\tcnEditOptions: [],\n\t\t\t\t\tirrscList: [],\n\t\t\t\t\tiurbanList: [],\n\t\t\t\t\tplantList: [],\n\t\t\t\t\turbanList: [],\n\t\t\t\t\tdefaults: {},\n\t\t\t\t\titem: {}\n\t\t\t\t},\n\t\t\t\tcn2PercentAdjust: 0,\r\n\t\t\t\tinitialHru: {\r\n\t\t\t\t\tsubbasin: null,\r\n\t\t\t\t\tlanduse: null,\r\n\t\t\t\t\tsoil: null,\r\n\t\t\t\t\tslope: null\r\n\t\t\t\t},\r\n\t\t\t\thruSelection: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: []\r\n\t\t\t\t},\r\n\t\t\t\tmods: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\n\t\t\t\titem: {\n\t\t\t\t\tIGRO: { required },\r\n\t\t\t\t\tPLANT_ID: { required },\r\n\t\t\t\t\tLAI_INIT: { required: requiredIf(function(){ return this.form.item.PLANT_ID > 0; }) },\r\n\t\t\t\t\tBIO_INIT: { required: requiredIf(function(){ return this.form.item.PLANT_ID > 0; }) },\r\n\t\t\t\t\tPHU_PLT: { required: requiredIf(function(){ return this.form.item.PLANT_ID > 0; }) },\r\n\t\t\t\t\tBIOMIX: { required },\r\n\t\t\t\t\tCN2: { required },\r\n\t\t\t\t\tUSLE_P: { required },\r\n\t\t\t\t\tBIO_MIN: { required },\r\n\t\t\t\t\tFILTERW: { required },\r\n\t\t\t\t\tIURBAN: { required },\r\n\t\t\t\t\tURBLU: { required },\r\n\t\t\t\t\tIRRSC: { required },\r\n\t\t\t\t\tIRRNO: { required },\r\n\t\t\t\t\tFLOWMIN: { required },\r\n\t\t\t\t\tDIVMAX: { required },\r\n\t\t\t\t\tFLOWFR: { required },\r\n\t\t\t\t\tDDRAIN: { required },\r\n\t\t\t\t\tTDRAIN: { required },\r\n\t\t\t\t\tGDRAIN: { required },\r\n\t\t\t\t\tNROT: { required },\r\n\t\t\t\t\tHUSC: { required },\r\n\t\t\t\t\tISCROP: { required },\r\n\t\t\t\t\tCN_SLOPE: { required },\r\n\t\t\t\t\tHYD_GRP: { },\n\t\t\t\t\tCurveNumberEditMethod: { required }\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/getmods/${this.scenarioID}/Mgt1`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.mods = response.data.mods;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getMgt() {\r\n\t\t\t\tthis.page.loadingErrors = [];\r\n\t\t\t\tthis.page.loadingData = true;\r\n\t\t\t\tthis.page.showData = false;\r\n\n\t\t\t\tif (!this.validInitialHru) {\r\n\t\t\t\t\tthis.page.loadingErrors.push('Please select an HRU and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get(`scenarios/mgt/general/${this.scenarioID}/${this.initialHru.subbasin.name}/${this.initialHru.landuse}/${this.initialHru.soil}/${this.initialHru.slope}`, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.form = response.data;\n\t\t\t\t\t\tthis.page.showData = true;\n\t\t\t\t\t\tthis.page.showHruSelector = false;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.loadingErrors = this.logError(error);\r\n\t\t\t\t\t}\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loadingData = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\n\t\t\t\t\tthis.log(this.$v);\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\n\t\t\t\t\t\tvar item = {};\n\t\t\t\t\t\tvar keys = Object.keys(this.form.item);\r\n\t\t\t\t\t\tfor (var i = 0; i < keys.length; i++) {\r\n\t\t\t\t\t\t\tif (this.$v.form.item[keys[i]] && (this.$v.form.item[keys[i]].$dirty || this.form.item[keys[i]] != this.form.defaults[keys[i]])) {\n\t\t\t\t\t\t\t\tif (keys[i] === 'CN2') {\n\t\t\t\t\t\t\t\t\tif (this.form.item.CurveNumberEditMethod === 1)\n\t\t\t\t\t\t\t\t\t\titem[keys[i]] = Number(this.form.item[keys[i]]);\n\t\t\t\t\t\t\t\t\telse if (this.form.item.CurveNumberEditMethod === 2)\n\t\t\t\t\t\t\t\t\t\titem['CN2Adjust'] = Number(this.cn2PercentAdjust);\r\n\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\titem[keys[i]] = Number(this.form.item[keys[i]]);\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\n\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tapplyToAll: this.hruSelection.applyToAll,\n\t\t\t\t\t\t\tsubbasins: this.hruSelection.subbasins,\r\n\t\t\t\t\t\t\tlanduses: this.hruSelection.landuse,\r\n\t\t\t\t\t\t\tsoils: this.hruSelection.soils,\r\n\t\t\t\t\t\t\tslopes: this.hruSelection.slopes,\r\n\t\t\t\t\t\t\tmodificationObject: item\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tthis.log(data);\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/savemods/${this.scenarioID}/Mgt1`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Mgt1`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\tinitialHruChange(selection) {\r\n\t\t\t\tthis.initialHru = selection;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.hruSelection = selection;\r\n\t\t\t},\n\t\t\tsetIRRNO(selection) {\n\t\t\t\tif (selection.subbasin !== null)\n\t\t\t\t\tthis.form.item.IRRNO = selection.subbasin.id;\r\n\t\t\t},\n\t\t\tfindInList(list, value, propToReturn='text') {\n\t\t\t\tif (value === 0) return 'None';\n\t\t\t\tvar filtered = list.filter(function (el) { return el.value === value; });\n\t\t\t\tif (filtered.length > 0) {\n\t\t\t\t\treturn filtered[0][propToReturn];\r\n\t\t\t\t}\n\t\t\t\treturn value;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidInitialHru() {\r\n\t\t\t\treturn this.initialHru.subbasin !== null &&\r\n\t\t\t\t\t\tthis.initialHru.landuse !== null &&\r\n\t\t\t\t\t\tthis.initialHru.soil !== null &&\r\n\t\t\t\t\t\tthis.initialHru.slope !== null;\r\n\t\t\t},\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.hruSelection.applyToAll ||\r\n\t\t\t\t\t(this.hruSelection.subbasins.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.landuse.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.soils.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.slopes.length > 0);\r\n\t\t\t},\n\t\t\tdefaultPlantName() {\n\t\t\t\treturn this.findInList(this.form.plantList, this.form.defaults.PLANT_ID);\r\n\t\t\t},\n\t\t\tdefaultUrbanName() {\n\t\t\t\treturn this.findInList(this.form.urbanList, this.form.defaults.URBLU);\r\n\t\t\t},\n\t\t\tselectedDefaultCn2() {\n\t\t\t\tif (this.form.item.PLANT_ID > 0) {\n\t\t\t\t\treturn this.findInList(this.form.plantList, this.form.item.PLANT_ID, 'cn2');\r\n\t\t\t\t} else if (this.form.item.URBLU > 0) {\n\t\t\t\t\treturn this.findInList(this.form.urbanList, this.form.item.URBLU, 'cn2');\r\n\t\t\t\t}\n\n\t\t\t\treturn this.form.defaults.CN2;\r\n\t\t\t},\n\t\t\tinitialSelection() {\n\t\t\t\treturn {\n\t\t\t\t\tsubbasins: [this.initialHru.subbasin],\n\t\t\t\t\tlanduse: [this.initialHru.landuse],\n\t\t\t\t\tsoils: [this.initialHru.soil],\n\t\t\t\t\tslopes: [this.initialHru.slope]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditMgtGeneral.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditMgtGeneral.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditMgtGeneral.vue?vue&type=template&id=22010896&\"\nimport script from \"./EditMgtGeneral.vue?vue&type=script&lang=js&\"\nexport * from \"./EditMgtGeneral.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Operations management\")]),_c('p',[_vm._v(\" Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch20_input_mgt.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on MGT inputs\")]),_vm._v(\" for more information about management variables. \")]),(!_vm.page.showHruSelector)?_c('div',{staticClass:\"mb-4\"},[_c('p',{staticClass:\"mb-2\"},[_c('strong',[_vm._v(\"Selected HRU:\")]),_vm._v(\" \"+_vm._s(_vm.initialHruName)+\" \")]),_c('b-button',{on:{\"click\":function($event){_vm.page.showHruSelector = !_vm.page.showHruSelector}}},[_vm._v(\"Select another HRU\")])],1):_vm._e(),_c('b-collapse',{staticClass:\"mb-3\",model:{value:(_vm.page.showHruSelector),callback:function ($$v) {_vm.$set(_vm.page, \"showHruSelector\", $$v)},expression:\"page.showHruSelector\"}},[_c('p',[_c('strong',[_vm._v(\"Select an HRU to view management data and make changes. Changes may be extended to other HRUs in your project.\")])]),_c('single-hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id)},on:{\"change\":_vm.initialHruChange}},[(_vm.validInitialHru)?_c('p',[_c('save-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"saving\":_vm.page.loadingData,\"text\":\"Get data\"},nativeOn:{\"click\":function($event){return _vm.getMgt.apply(null, arguments)}}}),(_vm.page.showData)?_c('b-button',{attrs:{\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.showHruSelector = !_vm.page.showHruSelector}}},[_vm._v(\"Hide form\")]):_vm._e()],1):_vm._e()])],1),_c('error-list',{attrs:{\"errors\":_vm.page.loadingErrors}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[(_vm.page.showData)?_c('div',[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('h3',{staticClass:\"mb-4\"},[_vm._v(\"Scheduling\")]),_c('p',[_vm._v(\" Operations may be scheduled by date or heat units. Heat unit scheduling is explained in \"),_c('a',{attrs:{\"href\":\"/content/docs/theory/Land-Cover-and-Plant.pdf\",\"target\":\"_blank\"}},[_vm._v(\"Chapter 5:1 of the theoretical documentation\")]),_vm._v(\". Use the buttons below to toggle scheduling for all operations in this HRU. \")]),_c('b-form-group',[_c('b-form-radio-group',{attrs:{\"buttons\":\"\",\"button-variant\":\"outline-primary\",\"options\":_vm.options.scheduleOptions},model:{value:(_vm.options.scheduleByHeatUnits),callback:function ($$v) {_vm.$set(_vm.options, \"scheduleByHeatUnits\", $$v)},expression:\"options.scheduleByHeatUnits\"}})],1),_c('h3',{staticClass:\"mb-4\"},[_vm._v(\"Operations\")]),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.form.item.length < 1}},[_vm._v(\" This HRU does not have any operations. \")]),(_vm.form.item.length > 0)?_c('div',{staticClass:\"table-responsive mb-4\"},[_c('table',{staticClass:\"table table-striped table-bordered table-valign-m table-form\"},[_c('thead',[_c('tr',{staticClass:\"thead\"},[_c('th',{staticClass:\"text-center\"},[_vm._v(\"Edit\")]),_c('th',[_vm._v(\"Year\")]),(_vm.options.scheduleByHeatUnits)?_c('th',[_vm._v(\"Op. #\")]):_vm._e(),(_vm.options.scheduleByHeatUnits)?_c('th',[_vm._v(\"Heat Units\")]):_vm._e(),(!_vm.options.scheduleByHeatUnits)?_c('th',[_vm._v(\"Month\")]):_vm._e(),(!_vm.options.scheduleByHeatUnits)?_c('th',[_vm._v(\"Day\")]):_vm._e(),_c('th',[_vm._v(\"Operation\")]),_c('th',[_vm._v(\"Crop\")]),_c('th',{staticClass:\"text-center\"},[_vm._v(\"Remove\")])])]),_c('tbody',_vm._l((_vm.orderedItems),function(m,i){return _c('tr',{key:i},[_c('td',{staticClass:\"text-center\"},[_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Modify this operation'),expression:\"'Modify this operation'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-primary\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.showOp(m)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)]),_c('td',[(_vm.options.isSorting)?_c('span',[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.item.$each[i].YEAR)},model:{value:(_vm.$v.form.item.$each[i].YEAR.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.$each[i].YEAR, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.$each[i].YEAR.$model\"}})],1):_vm._e(),(!_vm.options.isSorting)?_c('span',[_vm._v(\" \"+_vm._s(m.YEAR)+\" \")]):_vm._e()]),(_vm.options.scheduleByHeatUnits)?_c('td',[(_vm.options.isSorting)?_c('span',[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.item.$each[i].OP_NUM)},model:{value:(_vm.$v.form.item.$each[i].OP_NUM.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.$each[i].OP_NUM, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.$each[i].OP_NUM.$model\"}})],1):_vm._e(),(!_vm.options.isSorting)?_c('span',[_vm._v(\" \"+_vm._s(m.OP_NUM)+\" \")]):_vm._e()]):_vm._e(),(_vm.options.scheduleByHeatUnits)?_c('td',[(_vm.options.isSorting)?_c('span',[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.item.$each[i].HUSC)},model:{value:(_vm.$v.form.item.$each[i].HUSC.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.$each[i].HUSC, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.$each[i].HUSC.$model\"}})],1):_vm._e(),(!_vm.options.isSorting)?_c('span',[_vm._v(\" \"+_vm._s(m.HUSC)+\" \")]):_vm._e()]):_vm._e(),(!_vm.options.scheduleByHeatUnits)?_c('td',[(_vm.options.isSorting)?_c('span',[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.item.$each[i].MONTH),\"min\":\"1\",\"max\":\"12\"},model:{value:(_vm.$v.form.item.$each[i].MONTH.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.$each[i].MONTH, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.$each[i].MONTH.$model\"}})],1):_vm._e(),(!_vm.options.isSorting)?_c('span',[_vm._v(\" \"+_vm._s(m.MONTH)+\" \")]):_vm._e()]):_vm._e(),(!_vm.options.scheduleByHeatUnits)?_c('td',[(_vm.options.isSorting)?_c('span',[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.item.$each[i].DAY),\"min\":\"1\",\"max\":\"31\"},model:{value:(_vm.$v.form.item.$each[i].DAY.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.item.$each[i].DAY, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.item.$each[i].DAY.$model\"}})],1):_vm._e(),(!_vm.options.isSorting)?_c('span',[_vm._v(\" \"+_vm._s(m.DAY)+\" \")]):_vm._e()]):_vm._e(),_c('td',[_vm._v(_vm._s(_vm.getTextFromList(_vm.form.opList, m.MGT_OP)))]),_c('td',[_vm._v(_vm._s(_vm.getTextFromList(_vm.form.plantList, m.PLANT_ID)))]),_c('td',{staticClass:\"text-center\"},[_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.askDeleteOp(m)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1)])])}),0)])]):_vm._e(),_c('b-modal',{attrs:{\"size\":\"xl\",\"title\":\"Edit operation\",\"scrollable\":\"\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.op.view.show),callback:function ($$v) {_vm.$set(_vm.page.op.view, \"show\", $$v)},expression:\"page.op.view.show\"}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":\"Year of rotation\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.editItem.YEAR)},model:{value:(_vm.$v.editItem.YEAR.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.YEAR, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.YEAR.$model\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[(_vm.options.scheduleByHeatUnits)?_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Operation number\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.editItem.OP_NUM)},model:{value:(_vm.$v.editItem.OP_NUM.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.OP_NUM, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.OP_NUM.$model\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Heat unit scheduling\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.HUSC)},model:{value:(_vm.$v.editItem.HUSC.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.HUSC, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.HUSC.$model\"}})],1)],1)],1):_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Month\"}},[_c('b-form-select',{attrs:{\"options\":_vm.options.monthsList,\"state\":_vm.getValidState(_vm.$v.editItem.MONTH)},model:{value:(_vm.$v.editItem.MONTH.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.MONTH, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.MONTH.$model\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Day\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"min\":\"1\",\"max\":\"31\",\"state\":_vm.getValidState(_vm.$v.editItem.DAY)},model:{value:(_vm.$v.editItem.DAY.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.DAY, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.DAY.$model\"}})],1)],1)],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Operation\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.opList,\"state\":_vm.getValidState(_vm.$v.editItem.MGT_OP)},model:{value:(_vm.$v.editItem.MGT_OP.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.MGT_OP, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.MGT_OP.$model\"}})],1),(_vm.editItem.MGT_OP === 1)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"Crop\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.plantList,\"state\":_vm.getValidState(_vm.$v.editItem.PLANT_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":0}},[_vm._v(\"-- Select crop --\")])]},proxy:true}],null,false,1176237907),model:{value:(_vm.$v.editItem.PLANT_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.PLANT_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.PLANT_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"CURYR_MAT: Current age of trees (years)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.CURYR_MAT)},model:{value:(_vm.$v.editItem.CURYR_MAT.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.CURYR_MAT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.CURYR_MAT.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"HEATUNITS: Total heat units for cover/plant to reach maturity\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.HEATUNITS)},model:{value:(_vm.$v.editItem.HEATUNITS.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.HEATUNITS, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.HEATUNITS.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"LAI_INIT: Initial leaf area index\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.LAI_INIT)},model:{value:(_vm.$v.editItem.LAI_INIT.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.LAI_INIT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.LAI_INIT.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"BIO_INIT: Initial dry weight biomass (kg/ha)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.BIO_INIT)},model:{value:(_vm.$v.editItem.BIO_INIT.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.BIO_INIT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.BIO_INIT.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"HI_TARG: Harvest index target ((kg/ha)/(kg/ha))\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.HI_TARG)},model:{value:(_vm.$v.editItem.HI_TARG.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.HI_TARG, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.HI_TARG.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"BIO_TARG: Biomass (dry weight) target (metric tons/ha)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.BIO_TARG)},model:{value:(_vm.$v.editItem.BIO_TARG.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.BIO_TARG, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.BIO_TARG.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"CNOP: SCS runoff curve number for moisture condition II\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.CNOP)},model:{value:(_vm.$v.editItem.CNOP.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.CNOP, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.CNOP.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 2)?_c('b-row',[_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_AMT: Depth of irrigation water applied on HRU (mm)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.IRR_AMT)},model:{value:(_vm.$v.editItem.IRR_AMT.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_AMT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_AMT.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_SALT: Concentration of salt in irrigation (mg/kg)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.IRR_SALT)},model:{value:(_vm.$v.editItem.IRR_SALT.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_SALT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_SALT.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_EFM: Irrigation efficiency (0-1)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"min\":\"0\",\"max\":\"1\",\"state\":_vm.getValidState(_vm.$v.editItem.IRR_EFM)},model:{value:(_vm.$v.editItem.IRR_EFM.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_EFM, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_EFM.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_SQ: Surface runoff ratio (0-1)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"min\":\"0\",\"max\":\"1\",\"state\":_vm.getValidState(_vm.$v.editItem.IRR_SQ)},model:{value:(_vm.$v.editItem.IRR_SQ.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_SQ, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_SQ.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_SC: Irrigation source code\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.irrscList,\"state\":_vm.getValidState(_vm.$v.editItem.IRR_SC)},model:{value:(_vm.$v.editItem.IRR_SC.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_SC, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_SC.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('p',[_vm._v(\"IRR_NO: Irrigation source location\")]),_c('single-hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-only\":\"\",\"initSubID\":_vm.getSubbasinId(_vm.editItem.IRR_NO)},on:{\"change\":_vm.setIRRNO}})],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 3)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"Fertilizer\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.fertList,\"state\":_vm.getValidState(_vm.$v.editItem.FERT_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"-- Select fertilizer --\")])]},proxy:true}],null,false,2497298112),model:{value:(_vm.$v.editItem.FERT_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.FERT_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.FERT_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"FRT_KG: Amount of fertilizer applied to HRU (kg/ha)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.FRT_KG)},model:{value:(_vm.$v.editItem.FRT_KG.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.FRT_KG, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.FRT_KG.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"FRT_SURFACE: Fraction of fertilizer applied to top 10mm of soil\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.FRT_SURFACE)},model:{value:(_vm.$v.editItem.FRT_SURFACE.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.FRT_SURFACE, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.FRT_SURFACE.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 4)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"Pesticide\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.pestList,\"state\":_vm.getValidState(_vm.$v.editItem.PEST_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"-- Select pesticide --\")])]},proxy:true}],null,false,3849812212),model:{value:(_vm.$v.editItem.PEST_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.PEST_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.PEST_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"PST_KG: Amount of pesticide applied to HRU (kg/ha)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.PST_KG)},model:{value:(_vm.$v.editItem.PST_KG.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.PST_KG, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.PST_KG.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"PST_DEP: Depth of pesticide incorporation in the soil (mm)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.PST_DEP)},model:{value:(_vm.$v.editItem.PST_DEP.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.PST_DEP, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.PST_DEP.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 5)?_c('b-row',[_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"CNOP: SCS runoff curve number for moisture condition II\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.CNOP)},model:{value:(_vm.$v.editItem.CNOP.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.CNOP, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.CNOP.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"HI_OVR: Harvest index override ((kg/ha)/(kg/ha))\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.HI_OVR)},model:{value:(_vm.$v.editItem.HI_OVR.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.HI_OVR, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.HI_OVR.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 6)?_c('b-row',[_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"Tillage implement code\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.tillList,\"state\":_vm.getValidState(_vm.$v.editItem.TILLAGE_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"-- Select tillage --\")])]},proxy:true}],null,false,3378449018),model:{value:(_vm.$v.editItem.TILLAGE_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.TILLAGE_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.TILLAGE_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"CNOP: SCS runoff curve number for moisture condition II\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.CNOP)},model:{value:(_vm.$v.editItem.CNOP.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.CNOP, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.CNOP.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 7)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IHV_GBM: Grain or biomass harvest code\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.ihvGbmList,\"state\":_vm.getValidState(_vm.$v.editItem.IHV_GBM)},model:{value:(_vm.$v.editItem.IHV_GBM.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IHV_GBM, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IHV_GBM.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"HARVEFF: Harvest efficiency\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.HARVEFF)},model:{value:(_vm.$v.editItem.HARVEFF.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.HARVEFF, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.HARVEFF.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"HI_OVR: Harvest index override ((kg/ha)/(kg/ha))\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.HI_OVR)},model:{value:(_vm.$v.editItem.HI_OVR.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.HI_OVR, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.HI_OVR.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 9)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"Manure\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.manureList,\"state\":_vm.getValidState(_vm.$v.editItem.MANURE_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"-- Select manure --\")])]},proxy:true}],null,false,1723176068),model:{value:(_vm.$v.editItem.MANURE_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.MANURE_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.MANURE_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"GRZ_DAYS: Number of consecutive days grazing takes place in the HRU\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.GRZ_DAYS)},model:{value:(_vm.$v.editItem.GRZ_DAYS.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.GRZ_DAYS, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.GRZ_DAYS.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"BIO_EAT: Dry weight of biomass consumed daily ((kg/ha)/day)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.BIO_EAT)},model:{value:(_vm.$v.editItem.BIO_EAT.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.BIO_EAT, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.BIO_EAT.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"BIO_TRMP: Dry weight of biomass trampled daily ((kg/ha)/day)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.BIO_TRMP)},model:{value:(_vm.$v.editItem.BIO_TRMP.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.BIO_TRMP, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.BIO_TRMP.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"MANURE_KG: Dry weight of manure deposited daily ((kg/ha)/day)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.MANURE_KG)},model:{value:(_vm.$v.editItem.MANURE_KG.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.MANURE_KG, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.MANURE_KG.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 10)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"WSTRS_ID: Water stress identifier\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.wstrsList,\"state\":_vm.getValidState(_vm.$v.editItem.WSTRS_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"-- Select identifier --\")])]},proxy:true}],null,false,3884738695),model:{value:(_vm.$v.editItem.WSTRS_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.WSTRS_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.WSTRS_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_SCA: Auto irrigation source code\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.irrscList,\"state\":_vm.getValidState(_vm.$v.editItem.IRR_SCA)},model:{value:(_vm.$v.editItem.IRR_SCA.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_SCA, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_SCA.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('p',[_vm._v(\"IRR_NOA: Auto irrigation source location\")]),_c('single-hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-only\":\"\",\"initSubID\":_vm.getSubbasinId(_vm.editItem.IRR_NOA)},on:{\"change\":_vm.setIRR_NOA}})],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"AUTO_WSTRS: Water stress threshold that triggers irrigation\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.AUTO_WSTRS)},model:{value:(_vm.$v.editItem.AUTO_WSTRS.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.AUTO_WSTRS, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.AUTO_WSTRS.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_EFF: Irrigation efficiency\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.IRR_EFF)},model:{value:(_vm.$v.editItem.IRR_EFF.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_EFF, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_EFF.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_MX: Amount of irrigation water applied each time auto irrigation is triggered (mm)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.IRR_MX)},model:{value:(_vm.$v.editItem.IRR_MX.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_MX, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_MX.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IRR_ASQ: Surface runoff ratio (0-1)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"min\":\"0\",\"max\":\"1\",\"state\":_vm.getValidState(_vm.$v.editItem.IRR_ASQ)},model:{value:(_vm.$v.editItem.IRR_ASQ.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IRR_ASQ, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IRR_ASQ.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 11)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"AFERT_ID: Fertilizer\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.fertList,\"state\":_vm.getValidState(_vm.$v.editItem.AFERT_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"-- Select fertilizer --\")])]},proxy:true}],null,false,2497298112),model:{value:(_vm.$v.editItem.AFERT_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.AFERT_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.AFERT_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"AUTO_NSTRS: Nitrogen stress factor of cover/plant that triggers fertilization (0-1)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"min\":\"0\",\"max\":\"1\",\"state\":_vm.getValidState(_vm.$v.editItem.AUTO_NSTRS)},model:{value:(_vm.$v.editItem.AUTO_NSTRS.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.AUTO_NSTRS, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.AUTO_NSTRS.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"AUTO_NAPP: Maximum amount of mineral N allowed in any one application (kg N/ha)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.AUTO_NAPP)},model:{value:(_vm.$v.editItem.AUTO_NAPP.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.AUTO_NAPP, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.AUTO_NAPP.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"AUTO_NYR: Maximum amount of mineral N allowed to be applied in any one year (kg N/ha)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.AUTO_NYR)},model:{value:(_vm.$v.editItem.AUTO_NYR.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.AUTO_NYR, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.AUTO_NYR.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"AUTO_EFF: Application efficiency\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.AUTO_EFF)},model:{value:(_vm.$v.editItem.AUTO_EFF.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.AUTO_EFF, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.AUTO_EFF.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"AFRT_SURFACE: Fraction of fertilizer applied to top 10mm of soil\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"min\":\"0\",\"max\":\"1\",\"state\":_vm.getValidState(_vm.$v.editItem.AFRT_SURFACE)},model:{value:(_vm.$v.editItem.AFRT_SURFACE.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.AFRT_SURFACE, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.AFRT_SURFACE.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 12)?_c('b-row',[_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"SWEEPEFF: Removal efficiency of sweeping operation\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.SWEEPEFF)},model:{value:(_vm.$v.editItem.SWEEPEFF.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.SWEEPEFF, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.SWEEPEFF.$model\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"FR_CURB: Fraction of curb length available for sweeping\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"min\":\"0\",\"max\":\"1\",\"state\":_vm.getValidState(_vm.$v.editItem.FR_CURB)},model:{value:(_vm.$v.editItem.FR_CURB.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.FR_CURB, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.FR_CURB.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 13)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IMP_TRIG: Release/impound action code\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.impTrigList,\"state\":_vm.getValidState(_vm.$v.editItem.IMP_TRIG)},model:{value:(_vm.$v.editItem.IMP_TRIG.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IMP_TRIG, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IMP_TRIG.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 14)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"CFRT_ID: Fertilizer\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.fertList,\"state\":_vm.getValidState(_vm.$v.editItem.CFRT_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"-- Select fertilizer --\")])]},proxy:true}],null,false,2497298112),model:{value:(_vm.$v.editItem.CFRT_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.CFRT_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.CFRT_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"FERT_DAYS: Duration or length of period (days) the continuous fertilizer operation takes place in the HRU\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.FERT_DAYS)},model:{value:(_vm.$v.editItem.FERT_DAYS.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.FERT_DAYS, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.FERT_DAYS.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IFRT_FREQ: Application frequency (days)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.IFRT_FREQ)},model:{value:(_vm.$v.editItem.IFRT_FREQ.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IFRT_FREQ, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IFRT_FREQ.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"CFRT_KG: Amount of fertilizer/manure applied to ground in each application (kg/ha)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.CFRT_KG)},model:{value:(_vm.$v.editItem.CFRT_KG.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.CFRT_KG, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.CFRT_KG.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 15)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"CPST_ID: Pesticide\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.pestList,\"state\":_vm.getValidState(_vm.$v.editItem.CPST_ID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":0}},[_vm._v(\"-- Select pesticide --\")])]},proxy:true}],null,false,3849812212),model:{value:(_vm.$v.editItem.CPST_ID.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.CPST_ID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.CPST_ID.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"PEST_DAYS: Number of days continuous pesticide will be simulated\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.PEST_DAYS)},model:{value:(_vm.$v.editItem.PEST_DAYS.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.PEST_DAYS, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.PEST_DAYS.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"IPEST_FREQ: Number of days between applications\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.IPEST_FREQ)},model:{value:(_vm.$v.editItem.IPEST_FREQ.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.IPEST_FREQ, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.IPEST_FREQ.$model\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"CPST_KG: Amount of pesticide applied to HRU on a given day (kg/ha)\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.CPST_KG)},model:{value:(_vm.$v.editItem.CPST_KG.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.CPST_KG, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.CPST_KG.$model\"}})],1)],1)],1):_vm._e(),(_vm.editItem.MGT_OP === 16)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":\"BURN_FRLB: Fraction of biomass, plant nitrogen and phosphorus, surface residue, soil surface organic nitrogen and phosphorus that remains after a burn\"}},[_c('b-form-input',{staticClass:\"number\",attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.editItem.BURN_FRLB)},model:{value:(_vm.$v.editItem.BURN_FRLB.$model),callback:function ($$v) {_vm.$set(_vm.$v.editItem.BURN_FRLB, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.editItem.BURN_FRLB.$model\"}})],1)],1)],1):_vm._e(),_c('b-alert',{staticClass:\"my-3\",attrs:{\"variant\":\"warning\",\"show\":_vm.$v.editItem.$anyError}},[_vm._v(\" Please make sure no fields are left blank before continuing. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\",\"disabled\":_vm.$v.editItem.$anyError},on:{\"click\":function($event){_vm.page.op.view.show = false}}},[_vm._v(\"Ok\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.op.delete.show),callback:function ($$v) {_vm.$set(_vm.page.op.delete, \"show\", $$v)},expression:\"page.op.delete.show\"}},[_c('p',[_vm._v(\" Are you sure you want to remove the operation from the schedule? \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":false,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDeleteOp.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.op.delete.show = false}}},[_vm._v(\"Cancel\")])],1)]),(!_vm.options.isSorting)?_c('div',[_c('b-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":_vm.addOp}},[_vm._v(\"Add an operation\")]),(_vm.form.item.length > 0)?_c('b-button',{staticClass:\"mr-2 border\",attrs:{\"type\":\"button\",\"variant\":\"light\"},on:{\"click\":function($event){_vm.options.isSorting = true}}},[_vm._v(\"Sort operations\")]):_vm._e(),(_vm.form.item.length > 0)?_c('b-button',{staticClass:\"mr-2 border\",attrs:{\"type\":\"button\",\"variant\":\"light\"},on:{\"click\":function($event){_vm.page.showDefaults = true}}},[_vm._v(\"View default operations\")]):_vm._e(),_c('b-button',{staticClass:\"mr-2 border\",attrs:{\"type\":\"button\",\"variant\":\"light\"},on:{\"click\":function($event){_vm.page.importExport.show = true}}},[_vm._v(\"Import/export operations\")])],1):_vm._e(),(_vm.form.item.length > 0)?_c('div',[(_vm.options.isSorting && _vm.options.scheduleByHeatUnits)?_c('p',[_vm._v(\" Operations are sorted by year, then operation number, then heat units. Enter new values as needed then click the button below when done and the table will re-sort. \")]):_vm._e(),(_vm.options.isSorting && !_vm.options.scheduleByHeatUnits)?_c('p',[_vm._v(\" Operations are sorted by year, then month and day. Enter new values as needed then click the button below when done and the table will re-sort. \")]):_vm._e(),(_vm.options.isSorting)?_c('div',[_c('b-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":function($event){_vm.options.isSorting = false}}},[_vm._v(\"Done sorting operations\")])],1):_vm._e(),_c('b-alert',{staticClass:\"mt-3\",attrs:{\"variant\":\"warning\",\"show\":_vm.options.scheduleByHeatUnits && _vm.hasEmptyHeatUnits()}},[_vm._v(\" Heat units cannot be zero if scheduling by heat units. Please edit the value for all rows before continuing. \")]),_c('b-alert',{staticClass:\"mt-3\",attrs:{\"variant\":\"warning\",\"show\":!_vm.options.scheduleByHeatUnits && _vm.hasEmptyDate()}},[_vm._v(\" Month/day cannot be zero if scheduling by date. Please edit the value for all rows before continuing. \")])],1):_vm._e(),_c('h3',{staticClass:\"mt-5 mb-4\"},[_vm._v(\"Apply your changes\")]),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"initial-selection\":_vm.initialSelection},on:{\"change\":_vm.hruSelectionChange}})],1):_vm._e(),(_vm.mods.length > 0)?_c('scenario-mod-viewer',{attrs:{\"data\":_vm.mods,\"value-label\":\"Values\",\"value-is-object\":\"\",\"is-mgt2\":\"\",\"mgt2Lists\":_vm.listsObject},on:{\"deleted\":_vm.modDeleted}}):_vm._e(),_c('fixed-action-bar',[_c('span',{attrs:{\"id\":\"save-button-tooltip\"}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection || !_vm.page.showData}})],1),_c('b-tooltip',{attrs:{\"disabled\":_vm.validHruSelection,\"target\":\"save-button-tooltip\"}},[_vm._v(\" Select at least one subbasin, land use, soil, and slope. \")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.mods.length > 0)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete all management operations changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"xl\",\"title\":`Default management operations for ${_vm.initialHruName}`,\"scrollable\":\"\"},model:{value:(_vm.page.showDefaults),callback:function ($$v) {_vm.$set(_vm.page, \"showDefaults\", $$v)},expression:\"page.showDefaults\"}},[_c('mgt2-viewer',{attrs:{\"schedule-by-heat-units\":_vm.options.scheduleByHeatUnits,\"items\":_vm.form.defaults,\"lists\":_vm.listsObject}}),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.showDefaults = false}}},[_vm._v(\"Ok\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"lg\",\"title\":\"Import/export operation schedule\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.importExport.show),callback:function ($$v) {_vm.$set(_vm.page.importExport, \"show\", $$v)},expression:\"page.importExport.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.importExport.errors}}),_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-3\"},model:{value:(_vm.page.importExport.tabIndex),callback:function ($$v) {_vm.$set(_vm.page.importExport, \"tabIndex\", $$v)},expression:\"page.importExport.tabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Export\"}},[_c('p',[_vm._v(\" Export your management operation schedule to a CSV file, edit offline, then import for use in any HRUs as needed. Before exporting, be sure to save any changes first. \")]),_c('p',[_vm._v(\" The CSV file will contain columns for every variable in the management operations table. If the variable is not relevant for your operation, please leave it with a 0 value. Refer to the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch20_input_mgt.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on MGT inputs\")]),_vm._v(\" for documentation on management variables. \")])]),_c('b-tab',{attrs:{\"title\":\"Import\"}},[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":!_vm.page.importExport.uploaded}},[_vm._v(\" Note: uploading a CSV file will replace your schedule of operations listed on this page. However, changes won't be saved automatically. After uploading, close this window and save. \")]),_c('p',[_vm._v(\"Choose your file (.csv)\")]),_c('vue-dropzone',{ref:\"addFile\",attrs:{\"id\":\"addFile\",\"options\":_vm.dropzoneOptions},on:{\"vdropzone-success\":_vm.fileUploaded,\"vdropzone-error\":_vm.uploadError}}),_c('b-alert',{staticClass:\"mt-3\",attrs:{\"variant\":\"success\",\"show\":_vm.page.importExport.uploaded}},[_vm._v(\" Your file has been loaded. Remember to apply and save your changes after closing this window. \")])],1)],1),(_vm.page.importExport.isExport)?_c('div'):_vm._e(),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[(_vm.page.importExport.tabIndex === 0 && !_vm.page.importExport.uploaded)?_c('span',[_c('a',{staticClass:\"btn btn-success\",attrs:{\"href\":`/api/exports/mgtoperations/${_vm.scenarioID}/${_vm.initialHruUrl}?access_token=${_vm.localStorageToken}`}},[_vm._v(\"Export to CSV\")]),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.importExport.tabIndex = 1}}},[_vm._v(\"Import\")])],1):_vm._e(),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.importExport.show = false}}},[_vm._v(_vm._s(_vm.page.importExport.uploaded ? 'Close' : 'Cancel'))])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Operations management</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch20_input_mgt.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on MGT inputs</a> for more information about management variables.\r\n\t\t\t</p>\r\n\r\n\t\t\t<div v-if=\"!page.showHruSelector\" class=\"mb-4\">\r\n\t\t\t\t<p class=\"mb-2\">\r\n\t\t\t\t\t<strong>Selected HRU:</strong> {{initialHruName}}\r\n\t\t\t\t</p>\r\n\t\t\t\t<b-button @click=\"page.showHruSelector = !page.showHruSelector\">Select another HRU</b-button>\r\n\t\t\t</div>\r\n\t\t\t<b-collapse v-model=\"page.showHruSelector\" class=\"mb-3\">\r\n\t\t\t\t<p>\r\n\t\t\t\t\t<strong>Select an HRU to view management data and make changes. Changes may be extended to other HRUs in your project.</strong>\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<single-hru-selector :projectID=\"Number($route.params.id)\" @change=\"initialHruChange\">\r\n\t\t\t\t\t<p v-if=\"validInitialHru\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.loadingData\" @click.native=\"getMgt\" text=\"Get data\" class=\"mr-2\" />\r\n\t\t\t\t\t\t<b-button @click=\"page.showHruSelector = !page.showHruSelector\" v-if=\"page.showData\" variant=\"secondary\">Hide form</b-button>\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</single-hru-selector>\r\n\t\t\t</b-collapse>\r\n\r\n\t\t\t<error-list :errors=\"page.loadingErrors\"></error-list>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<div v-if=\"page.showData\">\r\n\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t<h3 class=\"mb-4\">Scheduling</h3>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tOperations may be scheduled by date or heat units. Heat unit scheduling is explained in\r\n\t\t\t\t\t\t<a href=\"/content/docs/theory/Land-Cover-and-Plant.pdf\" target=\"_blank\">Chapter 5:1 of the theoretical documentation</a>.\r\n\t\t\t\t\t\tUse the buttons below to toggle scheduling for all operations in this HRU.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<b-form-group>\r\n\t\t\t\t\t\t<b-form-radio-group buttons button-variant=\"outline-primary\"\r\n\t\t\t\t\t\t\t\t\t\t\tv-model=\"options.scheduleByHeatUnits\"\r\n\t\t\t\t\t\t\t\t\t\t\t:options=\"options.scheduleOptions\"></b-form-radio-group>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<h3 class=\"mb-4\">Operations</h3>\r\n\r\n\t\t\t\t\t<b-alert variant=\"info\" :show=\"form.item.length < 1\">\r\n\t\t\t\t\t\tThis HRU does not have any operations.\r\n\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t<div class=\"table-responsive mb-4\" v-if=\"form.item.length > 0\">\r\n\t\t\t\t\t\t<table class=\"table table-striped table-bordered table-valign-m table-form\">\r\n\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t<tr class=\"thead\">\r\n\t\t\t\t\t\t\t\t\t<th class=\"text-center\">Edit</th>\r\n\t\t\t\t\t\t\t\t\t<th>Year</th>\r\n\t\t\t\t\t\t\t\t\t<th v-if=\"options.scheduleByHeatUnits\">Op. #</th>\r\n\t\t\t\t\t\t\t\t\t<th v-if=\"options.scheduleByHeatUnits\">Heat Units</th>\r\n\t\t\t\t\t\t\t\t\t<th v-if=\"!options.scheduleByHeatUnits\">Month</th>\r\n\t\t\t\t\t\t\t\t\t<th v-if=\"!options.scheduleByHeatUnits\">Day</th>\r\n\t\t\t\t\t\t\t\t\t<th>Operation</th>\r\n\t\t\t\t\t\t\t\t\t<th>Crop</th>\r\n\t\t\t\t\t\t\t\t\t<th class=\"text-center\">Remove</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t<tr v-for=\"(m, i) in orderedItems\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<td class=\"text-center\">\r\n\t\t\t\t\t\t\t\t\t\t<button type=\"button\" class=\"plain text-primary\" v-b-tooltip.hover.right=\"'Modify this operation'\" @click=\"showOp(m)\">\r\n\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'edit']\" />\r\n\t\t\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.item.$each[i].YEAR.$model\" class=\"number\" type=\"number\" :state=\"getValidState($v.form.item.$each[i].YEAR)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"!options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t{{ m.YEAR }}\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td v-if=\"options.scheduleByHeatUnits\">\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.item.$each[i].OP_NUM.$model\" class=\"number\" type=\"number\" :state=\"getValidState($v.form.item.$each[i].OP_NUM)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"!options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t{{ m.OP_NUM }}\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td v-if=\"options.scheduleByHeatUnits\">\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.item.$each[i].HUSC.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.item.$each[i].HUSC)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"!options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t{{ m.HUSC }}\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td v-if=\"!options.scheduleByHeatUnits\">\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.item.$each[i].MONTH.$model\" class=\"number\" type=\"number\" :state=\"getValidState($v.form.item.$each[i].MONTH)\" min=\"1\" max=\"12\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"!options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t{{ m.MONTH }}\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td v-if=\"!options.scheduleByHeatUnits\">\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.item.$each[i].DAY.$model\" class=\"number\" type=\"number\" :state=\"getValidState($v.form.item.$each[i].DAY)\" min=\"1\" max=\"31\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t<span v-if=\"!options.isSorting\">\r\n\t\t\t\t\t\t\t\t\t\t\t{{ m.DAY }}\r\n\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{getTextFromList(form.opList, m.MGT_OP)}}</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{getTextFromList(form.plantList, m.PLANT_ID)}}</td>\r\n\t\t\t\t\t\t\t\t\t<td class=\"text-center\">\r\n\t\t\t\t\t\t\t\t\t\t<button type=\"button\" class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDeleteOp(m)\">\r\n\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.op.view.show\" size=\"xl\" title=\"Edit operation\" scrollable no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t<b-col md=\"4\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Year of rotation\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.YEAR.$model\" class=\"number\" type=\"number\" :state=\"getValidState($v.editItem.YEAR)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t<b-row v-if=\"options.scheduleByHeatUnits\">\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"Operation number\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.OP_NUM.$model\" class=\"number\" type=\"number\" :state=\"getValidState($v.editItem.OP_NUM)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"Heat unit scheduling\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.HUSC.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.HUSC)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t\t<b-row v-else>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"Month\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.MONTH.$model\" :options=\"options.monthsList\" :state=\"getValidState($v.editItem.MONTH)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"Day\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.DAY.$model\" class=\"number\" type=\"number\" min=\"1\" max=\"31\" :state=\"getValidState($v.editItem.DAY)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Operation\">\r\n\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.MGT_OP.$model\" :options=\"form.opList\" :state=\"getValidState($v.editItem.MGT_OP)\"></b-form-select>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 1\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Crop\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.PLANT_ID.$model\" :options=\"form.plantList\" :state=\"getValidState($v.editItem.PLANT_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template #first>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"0\">-- Select crop --</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"CURYR_MAT: Current age of trees (years)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.CURYR_MAT.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.CURYR_MAT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"HEATUNITS: Total heat units for cover/plant to reach maturity\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.HEATUNITS.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.HEATUNITS)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"LAI_INIT: Initial leaf area index\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.LAI_INIT.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.LAI_INIT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"BIO_INIT: Initial dry weight biomass (kg/ha)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.BIO_INIT.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.BIO_INIT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"HI_TARG: Harvest index target ((kg/ha)/(kg/ha))\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.HI_TARG.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.HI_TARG)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"BIO_TARG: Biomass (dry weight) target (metric tons/ha)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.BIO_TARG.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.BIO_TARG)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"CNOP: SCS runoff curve number for moisture condition II\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.CNOP.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.CNOP)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 2\">\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_AMT: Depth of irrigation water applied on HRU (mm)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IRR_AMT.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.IRR_AMT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_SALT: Concentration of salt in irrigation (mg/kg)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IRR_SALT.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.IRR_SALT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_EFM: Irrigation efficiency (0-1)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IRR_EFM.$model\" class=\"number\" type=\"number\" step=\"any\" min=\"0\" max=\"1\" :state=\"getValidState($v.editItem.IRR_EFM)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_SQ: Surface runoff ratio (0-1)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IRR_SQ.$model\" class=\"number\" type=\"number\" step=\"any\" min=\"0\" max=\"1\" :state=\"getValidState($v.editItem.IRR_SQ)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_SC: Irrigation source code\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.IRR_SC.$model\" :options=\"form.irrscList\" :state=\"getValidState($v.editItem.IRR_SC)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<p>IRR_NO: Irrigation source location</p>\r\n\t\t\t\t\t\t\t\t<single-hru-selector :projectID=\"Number($route.params.id)\" @change=\"setIRRNO\" subbasin-only :initSubID=\"getSubbasinId(editItem.IRR_NO)\"></single-hru-selector>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 3\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Fertilizer\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.FERT_ID.$model\" :options=\"form.fertList\" :state=\"getValidState($v.editItem.FERT_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">-- Select fertilizer --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"FRT_KG: Amount of fertilizer applied to HRU (kg/ha)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.FRT_KG.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.FRT_KG)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"FRT_SURFACE: Fraction of fertilizer applied to top 10mm of soil\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.FRT_SURFACE.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.FRT_SURFACE)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 4\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Pesticide\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.PEST_ID.$model\" :options=\"form.pestList\" :state=\"getValidState($v.editItem.PEST_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">-- Select pesticide --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"PST_KG: Amount of pesticide applied to HRU (kg/ha)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.PST_KG.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.PST_KG)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"PST_DEP: Depth of pesticide incorporation in the soil (mm)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.PST_DEP.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.PST_DEP)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 5\">\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"CNOP: SCS runoff curve number for moisture condition II\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.CNOP.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.CNOP)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"HI_OVR: Harvest index override ((kg/ha)/(kg/ha))\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.HI_OVR.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.HI_OVR)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 6\">\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Tillage implement code\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.TILLAGE_ID.$model\" :options=\"form.tillList\" :state=\"getValidState($v.editItem.TILLAGE_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">-- Select tillage --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"CNOP: SCS runoff curve number for moisture condition II\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.CNOP.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.CNOP)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 7\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IHV_GBM: Grain or biomass harvest code\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.IHV_GBM.$model\" :options=\"form.ihvGbmList\" :state=\"getValidState($v.editItem.IHV_GBM)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"HARVEFF: Harvest efficiency\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.HARVEFF.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.HARVEFF)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"HI_OVR: Harvest index override ((kg/ha)/(kg/ha))\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.HI_OVR.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.HI_OVR)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 9\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Manure\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.MANURE_ID.$model\" :options=\"form.manureList\" :state=\"getValidState($v.editItem.MANURE_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">-- Select manure --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"GRZ_DAYS: Number of consecutive days grazing takes place in the HRU\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.GRZ_DAYS.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.GRZ_DAYS)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"BIO_EAT: Dry weight of biomass consumed daily ((kg/ha)/day)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.BIO_EAT.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.BIO_EAT)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"BIO_TRMP: Dry weight of biomass trampled daily ((kg/ha)/day)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.BIO_TRMP.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.BIO_TRMP)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"MANURE_KG: Dry weight of manure deposited daily ((kg/ha)/day)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.MANURE_KG.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.MANURE_KG)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 10\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"WSTRS_ID: Water stress identifier\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.WSTRS_ID.$model\" :options=\"form.wstrsList\" :state=\"getValidState($v.editItem.WSTRS_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">-- Select identifier --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_SCA: Auto irrigation source code\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.IRR_SCA.$model\" :options=\"form.irrscList\" :state=\"getValidState($v.editItem.IRR_SCA)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<p>IRR_NOA: Auto irrigation source location</p>\r\n\t\t\t\t\t\t\t\t<single-hru-selector :projectID=\"Number($route.params.id)\" @change=\"setIRR_NOA\" subbasin-only :initSubID=\"getSubbasinId(editItem.IRR_NOA)\"></single-hru-selector>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"AUTO_WSTRS: Water stress threshold that triggers irrigation\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.AUTO_WSTRS.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.AUTO_WSTRS)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_EFF: Irrigation efficiency\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IRR_EFF.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.IRR_EFF)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_MX: Amount of irrigation water applied each time auto irrigation is triggered (mm)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IRR_MX.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.IRR_MX)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IRR_ASQ: Surface runoff ratio (0-1)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IRR_ASQ.$model\" class=\"number\" type=\"number\" step=\"any\" min=\"0\" max=\"1\" :state=\"getValidState($v.editItem.IRR_ASQ)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 11\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"AFERT_ID: Fertilizer\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.AFERT_ID.$model\" :options=\"form.fertList\" :state=\"getValidState($v.editItem.AFERT_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">-- Select fertilizer --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"AUTO_NSTRS: Nitrogen stress factor of cover/plant that triggers fertilization (0-1)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.AUTO_NSTRS.$model\" class=\"number\" type=\"number\" step=\"any\" min=\"0\" max=\"1\" :state=\"getValidState($v.editItem.AUTO_NSTRS)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"AUTO_NAPP: Maximum amount of mineral N allowed in any one application (kg N/ha)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.AUTO_NAPP.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.AUTO_NAPP)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"AUTO_NYR: Maximum amount of mineral N allowed to be applied in any one year (kg N/ha)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.AUTO_NYR.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.AUTO_NYR)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"AUTO_EFF: Application efficiency\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.AUTO_EFF.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.AUTO_EFF)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"AFRT_SURFACE: Fraction of fertilizer applied to top 10mm of soil\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.AFRT_SURFACE.$model\" class=\"number\" type=\"number\" step=\"any\" min=\"0\" max=\"1\" :state=\"getValidState($v.editItem.AFRT_SURFACE)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 12\">\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"SWEEPEFF: Removal efficiency of sweeping operation\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.SWEEPEFF.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.SWEEPEFF)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col lg=\"6\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"FR_CURB: Fraction of curb length available for sweeping\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.FR_CURB.$model\" class=\"number\" type=\"number\" step=\"any\" min=\"0\" max=\"1\" :state=\"getValidState($v.editItem.FR_CURB)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 13\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IMP_TRIG: Release/impound action code\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.IMP_TRIG.$model\" :options=\"form.impTrigList\" :state=\"getValidState($v.editItem.IMP_TRIG)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 14\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"CFRT_ID: Fertilizer\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.CFRT_ID.$model\" :options=\"form.fertList\" :state=\"getValidState($v.editItem.CFRT_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">-- Select fertilizer --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"FERT_DAYS: Duration or length of period (days) the continuous fertilizer operation takes place in the HRU\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.FERT_DAYS.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.FERT_DAYS)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IFRT_FREQ: Application frequency (days)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IFRT_FREQ.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.IFRT_FREQ)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"CFRT_KG: Amount of fertilizer/manure applied to ground in each application (kg/ha)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.CFRT_KG.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.CFRT_KG)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 15\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"CPST_ID: Pesticide\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.editItem.CPST_ID.$model\" :options=\"form.pestList\" :state=\"getValidState($v.editItem.CPST_ID)\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"0\">-- Select pesticide --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"PEST_DAYS: Number of days continuous pesticide will be simulated\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.PEST_DAYS.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.PEST_DAYS)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"IPEST_FREQ: Number of days between applications\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.IPEST_FREQ.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.IPEST_FREQ)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"CPST_KG: Amount of pesticide applied to HRU on a given day (kg/ha)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.CPST_KG.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.CPST_KG)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row v-if=\"editItem.MGT_OP === 16\">\r\n\t\t\t\t\t\t\t<b-col cols=\"12\">\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"BURN_FRLB: Fraction of biomass, plant nitrogen and phosphorus, surface residue, soil surface organic nitrogen and phosphorus that remains after a burn\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.editItem.BURN_FRLB.$model\" class=\"number\" type=\"number\" step=\"any\" :state=\"getValidState($v.editItem.BURN_FRLB)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-alert variant=\"warning\" class=\"my-3\" :show=\"$v.editItem.$anyError\">\r\n\t\t\t\t\t\t\tPlease make sure no fields are left blank before continuing.\r\n\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.op.view.show = false\" class=\"ml-1\" :disabled=\"$v.editItem.$anyError\">Ok</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.op.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tAre you sure you want to remove the operation from the schedule?\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button type=\"button\" :saving=\"false\" @click.native=\"confirmDeleteOp\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.op.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t<div v-if=\"!options.isSorting\">\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"primary\" class=\"mr-2\" @click=\"addOp\">Add an operation</b-button>\r\n\t\t\t\t\t\t<b-button v-if=\"form.item.length > 0\" type=\"button\" variant=\"light\" class=\"mr-2 border\" @click=\"options.isSorting = true\">Sort operations</b-button>\r\n\t\t\t\t\t\t<b-button v-if=\"form.item.length > 0\" type=\"button\" variant=\"light\" class=\"mr-2 border\" @click=\"page.showDefaults = true\">View default operations</b-button>\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"light\" class=\"mr-2 border\" @click=\"page.importExport.show = true\">Import/export operations</b-button>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div v-if=\"form.item.length > 0\">\r\n\t\t\t\t\t\t<p v-if=\"options.isSorting && options.scheduleByHeatUnits\">\r\n\t\t\t\t\t\t\tOperations are sorted by year, then operation number, then heat units. Enter new values as needed then click the button below when done and the table will re-sort.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<p v-if=\"options.isSorting && !options.scheduleByHeatUnits\">\r\n\t\t\t\t\t\t\tOperations are sorted by year, then month and day. Enter new values as needed then click the button below when done and the table will re-sort.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div v-if=\"options.isSorting\">\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"primary\" class=\"mr-2\" @click=\"options.isSorting = false\">Done sorting operations</b-button>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<b-alert variant=\"warning\" class=\"mt-3\" :show=\"options.scheduleByHeatUnits && hasEmptyHeatUnits()\">\r\n\t\t\t\t\t\t\tHeat units cannot be zero if scheduling by heat units. Please edit the value for all rows before continuing.\r\n\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t<b-alert variant=\"warning\" class=\"mt-3\" :show=\"!options.scheduleByHeatUnits && hasEmptyDate()\">\r\n\t\t\t\t\t\t\tMonth/day cannot be zero if scheduling by date. Please edit the value for all rows before continuing.\r\n\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<h3 class=\"mt-5 mb-4\">Apply your changes</h3>\r\n\t\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" :initial-selection=\"initialSelection\"></hru-selector>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<scenario-mod-viewer v-if=\"mods.length > 0\" @deleted=\"modDeleted\" :data=\"mods\" value-label=\"Values\" value-is-object\r\n\t\t\t\t\t\t\t\t\t is-mgt2 :mgt2Lists=\"listsObject\"></scenario-mod-viewer>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<span id=\"save-button-tooltip\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection || !page.showData\" class=\"mr-2\" />\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<b-tooltip :disabled=\"validHruSelection\" target=\"save-button-tooltip\">\r\n\t\t\t\t\t\tSelect at least one subbasin, land use, soil, and slope.\r\n\t\t\t\t\t</b-tooltip>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"mods.length > 0\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete all management operations changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.showDefaults\" size=\"xl\" :title=\"`Default management operations for ${initialHruName}`\" scrollable>\r\n\t\t\t\t\t<mgt2-viewer :schedule-by-heat-units=\"options.scheduleByHeatUnits\" :items=\"form.defaults\" :lists=\"listsObject\"></mgt2-viewer>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.showDefaults = false\" class=\"ml-1\">Ok</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.importExport.show\" size=\"lg\" title=\"Import/export operation schedule\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.importExport.errors\"></error-list>\r\n\r\n\t\t\t\t\t<b-tabs content-class=\"mt-3\" v-model=\"page.importExport.tabIndex\" class=\"page-nav-tabs\">\r\n\t\t\t\t\t\t<b-tab title=\"Export\">\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tExport your management operation schedule to a CSV file, edit offline, then import for use in any HRUs as needed.\r\n\t\t\t\t\t\t\t\tBefore exporting, be sure to save any changes first.\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tThe CSV file will contain columns for every variable in the management operations table.\r\n\t\t\t\t\t\t\t\tIf the variable is not relevant for your operation, please leave it with a 0 value.\r\n\t\t\t\t\t\t\t\tRefer to the <a href=\"/content/docs/io/ch20_input_mgt.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on MGT inputs</a> for documentation on management variables.\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t<b-tab title=\"Import\">\r\n\t\t\t\t\t\t\t<b-alert variant=\"info\" :show=\"!page.importExport.uploaded\">\r\n\t\t\t\t\t\t\t\tNote: uploading a CSV file will replace your schedule of operations listed on this page.\r\n\t\t\t\t\t\t\t\tHowever, changes won't be saved automatically. After uploading, close this window and save.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t<p>Choose your file (.csv)</p>\r\n\t\t\t\t\t\t\t<vue-dropzone ref=\"addFile\" id=\"addFile\" :options=\"dropzoneOptions\" @vdropzone-success=\"fileUploaded\" @vdropzone-error=\"uploadError\"></vue-dropzone>\r\n\r\n\t\t\t\t\t\t\t<b-alert variant=\"success\" :show=\"page.importExport.uploaded\" class=\"mt-3\">\r\n\t\t\t\t\t\t\t\tYour file has been loaded. Remember to apply and save your changes after closing this window.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t</b-tabs>\r\n\t\t\t\t\t<div v-if=\"page.importExport.isExport\">\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<span v-if=\"page.importExport.tabIndex === 0 && !page.importExport.uploaded\">\r\n\t\t\t\t\t\t\t<a :href=\"`/api/exports/mgtoperations/${scenarioID}/${initialHruUrl}?access_token=${localStorageToken}`\" class=\"btn btn-success\">Export to CSV</a>\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.importExport.tabIndex = 1\" class=\"ml-1\">Import</b-button>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.importExport.show = false\" class=\"ml-1\">{{page.importExport.uploaded ? 'Close' : 'Cancel'}}</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, between } from 'vuelidate/lib/validators';\r\n\timport SingleHruSelector from '@/components/SingleHruSelector';\r\n\timport HruSelector from '@/components/HruSelector';\r\n\timport ScenarioModViewer from '@/components/ScenarioModViewer';\r\n\timport Mgt2Viewer from '@/components/Mgt2Viewer';\r\n\timport _ from 'lodash';\r\n\timport vue2Dropzone from 'vue2-dropzone';\r\n\timport 'vue2-dropzone/dist/vue2Dropzone.min.css';\r\n\r\n\texport default {\r\n\t\tname: 'EditMgtOperations',\r\n\t\tcomponents: {\r\n\t\t\tSingleHruSelector, HruSelector, ScenarioModViewer, Mgt2Viewer, vueDropzone: vue2Dropzone\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tloadingErrors: [],\r\n\t\t\t\t\tloadingData: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tshowData: false,\r\n\t\t\t\t\tshowHruSelector: true,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\timportExport: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tuploaded: false,\r\n\t\t\t\t\t\ttabIndex: 0\r\n\t\t\t\t\t},\r\n\t\t\t\t\top: {\r\n\t\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\t\titem: {}\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tview: {\r\n\t\t\t\t\t\t\tshow: false\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tshowDefaults: false\r\n\t\t\t\t},\r\n\t\t\t\tdropzoneOptions: {\r\n\t\t\t\t\turl: '/api/scenarios/mgt/operationsupload',\r\n\t\t\t\t\theaders: this.getTokenHeaderPart(),\r\n\t\t\t\t\tacceptedFiles: '.csv',\n\t\t\t\t\ttimeout: 300000\r\n\t\t\t\t},\r\n\t\t\t\teditItem: {},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tdefaults: [],\r\n\t\t\t\t\titem: [],\r\n\t\t\t\t\tplantList: [],\r\n\t\t\t\t\tfertList: [],\r\n\t\t\t\t\tpestList: [],\r\n\t\t\t\t\ttillList: [],\r\n\t\t\t\t\tmanureList: [],\r\n\t\t\t\t\tscheduleOptions: [],\r\n\t\t\t\t\topList: [],\r\n\t\t\t\t\tirrscList: [],\r\n\t\t\t\t\tihvGbmList: [],\r\n\t\t\t\t\twstrsList: [],\r\n\t\t\t\t\timpTrigList: []\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tscheduleByHeatUnits: true,\r\n\t\t\t\t\tscheduleOptions: [\r\n\t\t\t\t\t\t{ text: 'Schedule by heat units', value: true },\r\n\t\t\t\t\t\t{ text: 'Schedule by date', value: false }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tisSorting: false,\r\n\t\t\t\t\tmonthsList: [\r\n\t\t\t\t\t\t{ value: 1, text: 'January' },\r\n\t\t\t\t\t\t{ value: 2, text: 'February' },\r\n\t\t\t\t\t\t{ value: 3, text: 'March' },\r\n\t\t\t\t\t\t{ value: 4, text: 'April' },\r\n\t\t\t\t\t\t{ value: 5, text: 'May' },\r\n\t\t\t\t\t\t{ value: 6, text: 'June' },\r\n\t\t\t\t\t\t{ value: 7, text: 'July' },\r\n\t\t\t\t\t\t{ value: 8, text: 'August' },\r\n\t\t\t\t\t\t{ value: 9, text: 'September' },\r\n\t\t\t\t\t\t{ value: 10, text: 'October' },\r\n\t\t\t\t\t\t{ value: 11, text: 'November' },\r\n\t\t\t\t\t\t{ value: 12, text: 'December' }\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\tinitialHru: {\r\n\t\t\t\t\tsubbasin: null,\r\n\t\t\t\t\tlanduse: null,\r\n\t\t\t\t\tsoil: null,\r\n\t\t\t\t\tslope: null\r\n\t\t\t\t},\r\n\t\t\t\thruSelection: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: []\r\n\t\t\t\t},\r\n\t\t\t\tmods: [],\n\t\t\t\tprojectConnections: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\titem: {\r\n\t\t\t\t\trequired,\r\n\t\t\t\t\t$each: {\r\n\t\t\t\t\t\tYEAR: { required },\r\n\t\t\t\t\t\tMONTH: { required, between: between(0, 12) },\r\n\t\t\t\t\t\tDAY: { required, between: between(0, 31) },\r\n\t\t\t\t\t\tHUSC: { required },\r\n\t\t\t\t\t\tOP_NUM: { required }\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\teditItem: {\r\n\t\t\t\tYEAR: { required },\r\n\t\t\t\tMONTH: { required, between: between(0, 12) },\r\n\t\t\t\tDAY: { required, between: between(0, 31) },\r\n\t\t\t\tHUSC: { required },\r\n\t\t\t\tMGT_OP: { required },\r\n\t\t\t\tHEATUNITS: { required },\r\n\t\t\t\tPLANT_ID: { required },\r\n\t\t\t\tCURYR_MAT: { required },\r\n\t\t\t\tLAI_INIT: { required },\r\n\t\t\t\tBIO_INIT: { required },\r\n\t\t\t\tHI_TARG: { required },\r\n\t\t\t\tBIO_TARG: { required },\r\n\t\t\t\tCNOP: { required },\r\n\t\t\t\tIRR_AMT: { required },\r\n\t\t\t\tFERT_ID: { required },\r\n\t\t\t\tFRT_KG: { required },\r\n\t\t\t\tFRT_SURFACE: { required },\r\n\t\t\t\tPEST_ID: { required },\r\n\t\t\t\tPST_KG: { required },\r\n\t\t\t\tTILLAGE_ID: { required },\r\n\t\t\t\tHARVEFF: { required },\r\n\t\t\t\tHI_OVR: { required },\r\n\t\t\t\tGRZ_DAYS: { required },\r\n\t\t\t\tMANURE_ID: { required },\r\n\t\t\t\tBIO_EAT: { required },\r\n\t\t\t\tBIO_TRMP: { required },\r\n\t\t\t\tMANURE_KG: { required },\r\n\t\t\t\tWSTRS_ID: { required },\r\n\t\t\t\tAUTO_WSTRS: { required },\r\n\t\t\t\tAFERT_ID: { required },\r\n\t\t\t\tAUTO_NSTRS: { required },\r\n\t\t\t\tAUTO_NAPP: { required },\r\n\t\t\t\tAUTO_NYR: { required },\r\n\t\t\t\tAUTO_EFF: { required },\r\n\t\t\t\tAFRT_SURFACE: { required },\r\n\t\t\t\tSWEEPEFF: { required },\r\n\t\t\t\tFR_CURB: { required },\r\n\t\t\t\tIMP_TRIG: { required },\r\n\t\t\t\tFERT_DAYS: { required },\r\n\t\t\t\tCFRT_ID: { required },\r\n\t\t\t\tIFRT_FREQ: { required },\r\n\t\t\t\tCFRT_KG: { required },\r\n\t\t\t\tPST_DEP: { required },\r\n\t\t\t\tIHV_GBM: { required },\r\n\t\t\t\tIRR_SALT: { required },\r\n\t\t\t\tIRR_EFM: { required },\r\n\t\t\t\tIRR_SQ: { required },\r\n\t\t\t\tIRR_EFF: { required },\r\n\t\t\t\tIRR_MX: { required },\r\n\t\t\t\tIRR_ASQ: { required },\r\n\t\t\t\tCPST_ID: { required },\r\n\t\t\t\tPEST_DAYS: { required },\r\n\t\t\t\tIPEST_FREQ: { required },\r\n\t\t\t\tCPST_KG: { required },\r\n\t\t\t\tBURN_FRLB: { required },\r\n\t\t\t\tOP_NUM: { required },\r\n\t\t\t\tIRR_SC: { required },\r\n\t\t\t\tIRR_NO: { required },\r\n\t\t\t\tIRR_SCA: { required },\r\n\t\t\t\tIRR_NOA: { required }\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/mgt/operationslists/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.mods = response.data.mods;\r\n\t\t\t\t\tthis.form = {\r\n\t\t\t\t\t\tdefaults: this.form.defaults,\r\n\t\t\t\t\t\titem: this.form.item,\r\n\t\t\t\t\t\tplantList: response.data.plantList,\r\n\t\t\t\t\t\tfertList:  response.data.fertList,\r\n\t\t\t\t\t\tpestList:  response.data.pestList,\r\n\t\t\t\t\t\ttillList:  response.data.tillList,\r\n\t\t\t\t\t\tmanureList:  response.data.manureList,\r\n\t\t\t\t\t\tscheduleOptions:  response.data.scheduleOptions,\r\n\t\t\t\t\t\topList:  response.data.opList,\r\n\t\t\t\t\t\tirrscList:  response.data.irrscList,\r\n\t\t\t\t\t\tihvGbmList:  response.data.ihvGbmList,\r\n\t\t\t\t\t\twstrsList:  response.data.wstrsList,\r\n\t\t\t\t\t\timpTrigList:  response.data.impTrigList\r\n\t\t\t\t\t}\n\n\t\t\t\t\tconst response2 = await this.$http.get(`projects/map/${this.projectID}`, this.getTokenHeader());\n\t\t\t\t\tthis.projectConnections = response2.data.connections;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getMgt() {\r\n\t\t\t\tthis.page.loadingErrors = [];\r\n\t\t\t\tthis.page.loadingData = true;\r\n\t\t\t\tthis.page.showData = false;\r\n\r\n\t\t\t\tif (!this.validInitialHru) {\r\n\t\t\t\t\tthis.page.loadingErrors.push('Please select an HRU and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get(`scenarios/mgt/operations/${this.scenarioID}/${this.initialHru.subbasin.name}/${this.initialHru.landuse}/${this.initialHru.soil}/${this.initialHru.slope}`, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.form.defaults = response.data.defaults;\r\n\t\t\t\t\t\tthis.form.item = response.data.item;\r\n\r\n\t\t\t\t\t\tif (this.form.item.length > 0) {\r\n\t\t\t\t\t\t\tthis.options.scheduleByHeatUnits = this.form.item[0].DAY === 0;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tthis.page.showData = true;\r\n\t\t\t\t\t\tthis.page.showHruSelector = false;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.loadingErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loadingData = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\t/*if (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please make sure all fields are completed for each operation and try again.');\r\n\t\t\t\t}*/\r\n\t\t\t\tif (this.options.scheduleByHeatUnits && this.hasEmptyHeatUnits()) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Heat units cannot be zero if scheduling by heat units. Please edit the value for all rows before continuing.');\r\n\t\t\t\t} else if (!this.options.scheduleByHeatUnits && this.hasEmptyDate()) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Month/day cannot be zero if scheduling by date. Please edit the value for all rows before continuing.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tfor (var i = 0; i < this.orderedItems.length; i++) {\r\n\t\t\t\t\t\tvar item = this.form.item[i];\r\n\t\t\t\t\t\tif (this.options.scheduleByHeatUnits) {\r\n\t\t\t\t\t\t\titem.DAY = 0;\r\n\t\t\t\t\t\t\titem.MONTH = 0;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\titem.HUSC = 0;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\titem.OP_NUM = i + 1;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tapplyToAll: this.hruSelection.applyToAll,\r\n\t\t\t\t\t\tsubbasins: this.hruSelection.subbasins,\r\n\t\t\t\t\t\tlanduses: this.hruSelection.landuse,\r\n\t\t\t\t\t\tsoils: this.hruSelection.soils,\r\n\t\t\t\t\t\tslopes: this.hruSelection.slopes,\r\n\t\t\t\t\t\tmodificationObject: this.form.item\r\n\t\t\t\t\t};\r\n\t\t\t\t\tthis.log(data);\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/savemods/${this.scenarioID}/Mgt2`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Mgt2`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\tinitialHruChange(selection) {\r\n\t\t\t\tthis.initialHru = selection;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.hruSelection = selection;\r\n\t\t\t},\r\n\t\t\tgetTextFromList(list, value) {\r\n\t\t\t\tvar filtered = list.filter(function (el) { return el.value === value; });\r\n\t\t\t\tif (filtered.length > 0) return filtered[0].text;\r\n\t\t\t\treturn '';\r\n\t\t\t},\r\n\t\t\taddOp() {\r\n\t\t\t\tvar item = {\r\n\t\t\t\t\tYEAR: this.form.item.length > 0 ? this.form.item[this.form.item.length-1].YEAR : 1,\r\n\t\t\t\t\tMONTH: this.options.scheduleByHeatUnits ? 0 : 1,\r\n\t\t\t\t\tDAY: this.options.scheduleByHeatUnits ? 0 : 1,\r\n\t\t\t\t\tHUSC: this.options.scheduleByHeatUnits ? 0.15 : 0,\r\n\t\t\t\t\tOP_NUM: this.form.item.length + 1,\r\n\t\t\t\t\tMGT_OP: 1,\r\n\t\t\t\t\tHEATUNITS: 0,\r\n\t\t\t\t\tPLANT_ID: 0,\r\n\t\t\t\t\tCURYR_MAT: 0,\r\n\t\t\t\t\tLAI_INIT: 0,\r\n\t\t\t\t\tBIO_INIT: 0,\r\n\t\t\t\t\tHI_TARG: 0,\r\n\t\t\t\t\tBIO_TARG: 0,\r\n\t\t\t\t\tCNOP: 0,\r\n\t\t\t\t\tIRR_AMT: 0,\r\n\t\t\t\t\tFERT_ID: 0,\r\n\t\t\t\t\tFRT_KG: 0,\r\n\t\t\t\t\tFRT_SURFACE: 0,\r\n\t\t\t\t\tPEST_ID: 0,\r\n\t\t\t\t\tPST_KG: 0,\r\n\t\t\t\t\tTILLAGE_ID: 0,\r\n\t\t\t\t\tHARVEFF: 0,\r\n\t\t\t\t\tHI_OVR: 0,\r\n\t\t\t\t\tGRZ_DAYS: 0,\r\n\t\t\t\t\tMANURE_ID: 0,\r\n\t\t\t\t\tBIO_EAT: 0,\r\n\t\t\t\t\tBIO_TRMP: 0,\r\n\t\t\t\t\tMANURE_KG: 0,\r\n\t\t\t\t\tWSTRS_ID: 0,\r\n\t\t\t\t\tAUTO_WSTRS: 0,\r\n\t\t\t\t\tAFERT_ID: 0,\r\n\t\t\t\t\tAUTO_NSTRS: 0,\r\n\t\t\t\t\tAUTO_NAPP: 0,\r\n\t\t\t\t\tAUTO_NYR: 0,\r\n\t\t\t\t\tAUTO_EFF: 0,\r\n\t\t\t\t\tAFRT_SURFACE: 0,\r\n\t\t\t\t\tSWEEPEFF: 0,\r\n\t\t\t\t\tFR_CURB: 0,\r\n\t\t\t\t\tIMP_TRIG: 0,\r\n\t\t\t\t\tFERT_DAYS: 0,\r\n\t\t\t\t\tCFRT_ID: 0,\r\n\t\t\t\t\tIFRT_FREQ: 0,\r\n\t\t\t\t\tCFRT_KG: 0,\r\n\t\t\t\t\tPST_DEP: 0,\r\n\t\t\t\t\tIHV_GBM: 0,\r\n\t\t\t\t\tIRR_SALT: 0,\r\n\t\t\t\t\tIRR_EFM: 0,\r\n\t\t\t\t\tIRR_SQ: 0,\r\n\t\t\t\t\tIRR_EFF: 0,\r\n\t\t\t\t\tIRR_MX: 0,\r\n\t\t\t\t\tIRR_ASQ: 0,\r\n\t\t\t\t\tCPST_ID: 0,\r\n\t\t\t\t\tPEST_DAYS: 0,\r\n\t\t\t\t\tIPEST_FREQ: 0,\r\n\t\t\t\t\tCPST_KG: 0,\r\n\t\t\t\t\tBURN_FRLB: 0,\r\n\t\t\t\t\tIRR_SC: 0,\r\n\t\t\t\t\tIRR_NO: 0,\r\n\t\t\t\t\tIRR_SCA: 0,\r\n\t\t\t\t\tIRR_NOA: 0\r\n\t\t\t\t};\r\n\t\t\t\tthis.form.item.push(item);\r\n\t\t\t\tthis.page.op.view.show = true;\r\n\t\t\t\tthis.editItem = item;\r\n\t\t\t},\r\n\t\t\tshowOp(item) {\r\n\t\t\t\tthis.page.op.view.show = true;\r\n\t\t\t\tthis.editItem = item;\r\n\t\t\t},\r\n\t\t\taskDeleteOp(item) {\r\n\t\t\t\tthis.page.op.delete.show = true;\r\n\t\t\t\tthis.page.op.delete.item = item;\r\n\t\t\t},\r\n\t\t\tconfirmDeleteOp() {\r\n\t\t\t\tvar item = this.page.op.delete.item;\r\n\t\t\t\tthis.form.item = this.form.item.filter(function (el) { return el != item; });\r\n\t\t\t\tthis.page.op.delete.show = false;\r\n\t\t\t\tthis.page.op.delete.item = {};\r\n\t\t\t},\r\n\t\t\thasEmptyHeatUnits() {\r\n\t\t\t\tvar nohu = this.form.item.filter(function (el) { return el.HUSC === 0; });\r\n\t\t\t\treturn nohu.length > 0;\r\n\t\t\t},\r\n\t\t\thasEmptyDate() {\r\n\t\t\t\tvar nodate = this.form.item.filter(function (el) { return el.MONTH === 0 || el.DAY === 0; });\r\n\t\t\t\treturn nodate.length > 0;\r\n\t\t\t},\r\n\t\t\tsetIRRNO(selection) {\r\n\t\t\t\tif (selection.subbasin !== null)\r\n\t\t\t\t\tthis.editItem.IRR_NO = this.getSubbasinIndex(selection.subbasin.id);\r\n\t\t\t},\r\n\t\t\tsetIRR_NOA(selection) {\r\n\t\t\t\tif (selection.subbasin !== null)\r\n\t\t\t\t\tthis.editItem.IRR_NOA = this.getSubbasinIndex(selection.subbasin.id);\r\n\t\t\t},\n\t\t\tgetSubbasinIndex(id) {\n\t\t\t\tlet matches = this.projectConnections.filter(function (el) { return el.fromID === id });\n\t\t\t\tif (matches.length > 0) {\n\t\t\t\t\treturn matches[0].fromIndex;\r\n\t\t\t\t}\n\t\t\t\treturn 1;\r\n\t\t\t},\n\t\t\tgetSubbasinId(index) {\n\t\t\t\tlet matches = this.projectConnections.filter(function (el) { return el.fromIndex === index });\n\t\t\t\tif (matches.length > 0) {\n\t\t\t\t\treturn matches[0].fromID;\r\n\t\t\t\t}\n\t\t\t\treturn null;\r\n\t\t\t},\r\n\t\t\tfileUploaded(file, response) {\r\n\t\t\t\tthis.log(response);\r\n\t\t\t\tthis.form.item = response;\r\n\t\t\t\tif (this.form.item.length > 0) {\r\n\t\t\t\t\tthis.options.scheduleByHeatUnits = this.form.item[0].DAY === 0;\r\n\t\t\t\t}\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tthis.page.importExport.uploaded = true;\r\n\t\t\t\tthis.page.importExport.errors = [];\r\n\t\t\t},\r\n\t\t\tuploadError(file, message, xhr) {\r\n\t\t\t\tthis.log(file);\r\n\t\t\t\tthis.log(xhr);\r\n\t\t\t\tthis.page.importExport.errors = [];\r\n\t\t\t\tthis.page.importExport.errors.push(message);\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidInitialHru() {\r\n\t\t\t\treturn this.initialHru.subbasin !== null &&\r\n\t\t\t\t\t\tthis.initialHru.landuse !== null &&\r\n\t\t\t\t\t\tthis.initialHru.soil !== null &&\r\n\t\t\t\t\t\tthis.initialHru.slope !== null;\r\n\t\t\t},\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.hruSelection.applyToAll ||\r\n\t\t\t\t\t(this.hruSelection.subbasins.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.landuse.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.soils.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.slopes.length > 0);\r\n\t\t\t},\r\n\t\t\tinitialSelection() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tsubbasins: [this.initialHru.subbasin],\r\n\t\t\t\t\tlanduse: [this.initialHru.landuse],\r\n\t\t\t\t\tsoils: [this.initialHru.soil],\r\n\t\t\t\t\tslopes: [this.initialHru.slope]\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\torderedItems() {\r\n\t\t\t\tvar sortArray = ['YEAR', 'MONTH', 'DAY', 'OP_NUM', 'HUSC'];\r\n\t\t\t\tif (this.options.scheduleByHeatUnits) {\r\n\t\t\t\t\tsortArray = ['YEAR', 'HUSC', 'OP_NUM', 'MONTH', 'DAY'];\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn _.orderBy(this.form.item, sortArray);\r\n\t\t\t},\r\n\t\t\tinitialHruName() {\r\n\t\t\t\tif (this.initialHru.subbasin !== null)\r\n\t\t\t\t\treturn `${this.initialHru.subbasin.name} / ${this.initialHru.landuse} / ${this.initialHru.soil} / ${this.initialHru.slope}`;\r\n\t\t\t\treturn '';\r\n\t\t\t},\r\n\t\t\tinitialHruUrl() {\r\n\t\t\t\tif (this.initialHru.subbasin !== null)\r\n\t\t\t\t\treturn `${this.initialHru.subbasin.name}/${this.initialHru.landuse}/${this.initialHru.soil}/${this.initialHru.slope}`;\r\n\t\t\t\treturn '';\r\n\t\t\t},\r\n\t\t\tlistsObject() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tplantList: this.form.plantList,\r\n\t\t\t\t\tfertList:  this.form.fertList,\r\n\t\t\t\t\tpestList:  this.form.pestList,\r\n\t\t\t\t\ttillList:  this.form.tillList,\r\n\t\t\t\t\tmanureList:  this.form.manureList,\r\n\t\t\t\t\tscheduleOptions:  this.form.scheduleOptions,\r\n\t\t\t\t\topList:  this.form.opList,\r\n\t\t\t\t\tirrscList:  this.form.irrscList,\r\n\t\t\t\t\tihvGbmList:  this.form.ihvGbmList,\r\n\t\t\t\t\twstrsList:  this.form.wstrsList,\r\n\t\t\t\t\timpTrigList:  this.form.impTrigList\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditMgtOperations.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditMgtOperations.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditMgtOperations.vue?vue&type=template&id=69ee0568&\"\nimport script from \"./EditMgtOperations.vue?vue&type=script&lang=js&\"\nexport * from \"./EditMgtOperations.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Curve number\")]),_c('p',[_vm._v(\" The SCS curve number is a function of the soil's permeability, land use and antecedent soil water conditions. Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch20_input_mgt.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on MGT inputs\")]),_vm._v(\", pages 4-6, for more information about curve numbers (CN2). \")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('div',[_c('label',{attrs:{\"for\":\"cn2\"}},[_vm._v(\"Increase or decrease curve number by up to 10%\")])]),_c('b-row',{staticClass:\"align-items-center mb-4\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"lg\":\"5\",\"md\":\"9\",\"sm\":\"10\"}},[_c('b-form-input',{attrs:{\"type\":\"range\",\"min\":_vm.options.min,\"max\":_vm.options.max},model:{value:(_vm.cn2),callback:function ($$v) {_vm.cn2=$$v},expression:\"cn2\"}})],1),_c('b-col',{attrs:{\"lg\":\"2\",\"md\":\"3\",\"sm\":\"2\"}},[_c('b-input-group',{attrs:{\"append\":\"%\"}},[_c('b-form-input',{attrs:{\"id\":\"cn2\",\"type\":\"number\",\"step\":\"any\",\"min\":_vm.options.min,\"max\":_vm.options.max,\"state\":_vm.getValidState(_vm.$v.cn2)},model:{value:(_vm.cn2),callback:function ($$v) {_vm.cn2=$$v},expression:\"cn2\"}})],1),(!_vm.$v.cn2.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.cn2.between)?_c('b-form-invalid-feedback',[_vm._v(\"Must be between \"+_vm._s(_vm.$v.cn2.$params.between.min)+\" and \"+_vm._s(_vm.$v.cn2.$params.between.max))]):_vm._e()],1)],1),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id)},on:{\"change\":_vm.hruSelectionChange}}),(_vm.mods.length > 0)?_c('scenario-mod-viewer',{attrs:{\"data\":_vm.mods,\"value-label\":\"CN2\",\"append-to-value\":\"%\"},on:{\"deleted\":_vm.modDeleted}}):_vm._e(),_c('fixed-action-bar',[_c('span',{attrs:{\"id\":\"save-button-tooltip\"}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection}})],1),_c('b-tooltip',{attrs:{\"disabled\":_vm.validHruSelection,\"target\":\"save-button-tooltip\"}},[_vm._v(\" Select at least one subbasin, land use, soil, and slope. \")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.mods.length > 0)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete all curve number data changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Curve number</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tThe SCS curve number is a function of the soil's permeability, land use and antecedent soil water conditions.\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch20_input_mgt.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on MGT inputs</a>,\r\n\t\t\t\tpages 4-6, for more information about curve numbers (CN2).\r\n\t\t\t</p>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<div>\r\n\t\t\t\t\t<label for=\"cn2\">Increase or decrease curve number by up to 10%</label>\r\n\t\t\t\t</div>\r\n\t\t\t\t<b-row class=\"align-items-center mb-4\">\r\n\t\t\t\t\t<b-col lg=\"5\" md=\"9\" sm=\"10\" class=\"d-flex align-items-center\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"cn2\" type=\"range\" :min=\"options.min\" :max=\"options.max\"></b-form-input>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col lg=\"2\" md=\"3\" sm=\"2\">\r\n\t\t\t\t\t\t<b-input-group append=\"%\">\r\n\t\t\t\t\t\t\t<b-form-input id=\"cn2\" v-model=\"cn2\" type=\"number\" step=\"any\" :min=\"options.min\" :max=\"options.max\" :state=\"getValidState($v.cn2)\"></b-form-input>\r\n\t\t\t\t\t\t</b-input-group>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.cn2.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.cn2.between\">Must be between {{$v.cn2.$params.between.min}} and {{$v.cn2.$params.between.max}}</b-form-invalid-feedback>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\"></hru-selector>\r\n\r\n\t\t\t\t<scenario-mod-viewer v-if=\"mods.length > 0\" @deleted=\"modDeleted\" :data=\"mods\" value-label=\"CN2\" append-to-value=\"%\"></scenario-mod-viewer>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<span id=\"save-button-tooltip\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection\" class=\"mr-2\" />\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<b-tooltip :disabled=\"validHruSelection\" target=\"save-button-tooltip\">\r\n\t\t\t\t\t\tSelect at least one subbasin, land use, soil, and slope.\r\n\t\t\t\t\t</b-tooltip>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"mods.length > 0\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete all curve number data changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\t\t\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, between } from 'vuelidate/lib/validators';\r\n\timport HruSelector from '@/components/HruSelector';\r\n\timport ScenarioModViewer from '@/components/ScenarioModViewer';\r\n\r\n\texport default {\r\n\t\tname: 'EditCurveNumber',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector, ScenarioModViewer\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tmin: -10,\r\n\t\t\t\t\tmax: 10\r\n\t\t\t\t},\r\n\t\t\t\thruSelection: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: []\r\n\t\t\t\t},\r\n\t\t\t\tcn2: 0,\r\n\t\t\t\tmods: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tcn2: { required, between: between(-10, 10) }\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/subbasin/cn2/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.mods = response.data.mods;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else if (this.cn2 === 0) {\r\n\t\t\t\t\tthis.page.saveErrors.push('A value of zero will result in no change. Please enter a number greater or less than 10.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tapplyToAll: this.hruSelection.applyToAll,\r\n\t\t\t\t\t\t\tsubbasins: this.hruSelection.subbasins,\r\n\t\t\t\t\t\t\tlanduses: this.hruSelection.landuse,\r\n\t\t\t\t\t\t\tsoils: this.hruSelection.soils,\r\n\t\t\t\t\t\t\tslopes: this.hruSelection.slopes,\r\n\t\t\t\t\t\t\tmodificationObject: {\r\n\t\t\t\t\t\t\t\tvalue: Number(this.cn2)\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/subbasin/save/${this.scenarioID}/Cn2Percent`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Cn2Percent`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.hruSelection = selection;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.hruSelection.applyToAll ||\r\n\t\t\t\t\t(this.hruSelection.subbasins.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.landuse.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.soils.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.slopes.length > 0);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditCurveNumber.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditCurveNumber.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditCurveNumber.vue?vue&type=template&id=68132620&\"\nimport script from \"./EditCurveNumber.vue?vue&type=script&lang=js&\"\nexport * from \"./EditCurveNumber.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Sediment routing method\")]),_c('p',[_vm._v(\" Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch25_input_rte.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on main channel inputs\")]),_vm._v(\", page 9 for sediment routing methods (CH_EQN). \")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form-group',[_c('b-form-select',{attrs:{\"options\":_vm.options,\"state\":_vm.getValidState(_vm.$v.chEqn)},model:{value:(_vm.$v.chEqn.$model),callback:function ($$v) {_vm.$set(_vm.$v.chEqn, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.chEqn.$model\"}})],1),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-only\":\"\"},on:{\"change\":_vm.hruSelectionChange}}),(_vm.mods.length > 0)?_c('scenario-mod-viewer',{attrs:{\"data\":_vm.mods,\"value-label\":\"CH_EQN\"},on:{\"deleted\":_vm.modDeleted}}):_vm._e(),_c('fixed-action-bar',[_c('span',{attrs:{\"id\":\"save-button-tooltip\"}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection || !_vm.$v.$anyDirty}})],1),_c('b-tooltip',{attrs:{\"disabled\":_vm.validHruSelection,\"target\":\"save-button-tooltip\"}},[_vm._v(\" Select at least one subbasin. \")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.mods.length > 0)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete all curve number data changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Sediment routing method</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch25_input_rte.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on main channel inputs</a>, page 9 for sediment routing methods (CH_EQN).\r\n\t\t\t</p>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<b-form-group>\n\t\t\t\t\t<b-form-select v-model.trim=\"$v.chEqn.$model\" :options=\"options\" :state=\"getValidState($v.chEqn)\"></b-form-select>\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" subbasin-only></hru-selector>\r\n\r\n\t\t\t\t<scenario-mod-viewer v-if=\"mods.length > 0\" @deleted=\"modDeleted\" :data=\"mods\" value-label=\"CH_EQN\"></scenario-mod-viewer>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<span id=\"save-button-tooltip\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection || !$v.$anyDirty\" class=\"mr-2\" />\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<b-tooltip :disabled=\"validHruSelection\" target=\"save-button-tooltip\">\r\n\t\t\t\t\t\tSelect at least one subbasin.\r\n\t\t\t\t\t</b-tooltip>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"mods.length > 0\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete all curve number data changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\timport HruSelector from '@/components/HruSelector';\r\n\timport ScenarioModViewer from '@/components/ScenarioModViewer';\r\n\r\n\texport default {\r\n\t\tname: 'EditSedimentRouting',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector, ScenarioModViewer\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: [\n\t\t\t\t\t{ value: 0, text: '0 - Simplified Bagnold Equation (Default)' },\n\t\t\t\t\t{ value: 1, text: '1 - Simplified Bagnold Equation by each particle size' },\n\t\t\t\t\t{ value: 2, text: '2 - Kodatie model' },\n\t\t\t\t\t{ value: 3, text: '3 - Molinas and Wu model' },\n\t\t\t\t\t{ value: 4, text: '4 - Yang sand and gravel model' }\n\t\t\t\t],\r\n\t\t\t\thruSelection: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: []\r\n\t\t\t\t},\r\n\t\t\t\tchEqn: 0,\r\n\t\t\t\tmods: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tchEqn: { required }\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/subbasin/sedimentrouting/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.mods = response.data.mods;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tapplyToAll: this.hruSelection.applyToAll,\r\n\t\t\t\t\t\t\tsubbasins: this.hruSelection.subbasins,\r\n\t\t\t\t\t\t\tlanduses: this.hruSelection.landuse,\r\n\t\t\t\t\t\t\tsoils: this.hruSelection.soils,\r\n\t\t\t\t\t\t\tslopes: this.hruSelection.slopes,\r\n\t\t\t\t\t\t\tmodificationObject: {\r\n\t\t\t\t\t\t\t\tvalue: this.chEqn\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/subbasin/save/${this.scenarioID}/RteChEqn`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/RteChEqn`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.hruSelection = selection;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.hruSelection.applyToAll ||\r\n\t\t\t\t\t(this.hruSelection.subbasins.length > 0);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditSedimentRouting.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditSedimentRouting.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditSedimentRouting.vue?vue&type=template&id=5d84e5af&\"\nimport script from \"./EditSedimentRouting.vue?vue&type=script&lang=js&\"\nexport * from \"./EditSedimentRouting.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Point source\")]),_c('p',[_vm._v(\" SWAT directly simulates the loading of water, sediment and other constituents off of land areas in the watershed. To simulate the loading of water and pollutants from sources not associated with a land area (e.g. sewage treatment plants, regional groundwater recharge, etc.), SWAT allows point source information to be read in at any point along the channel network. The point source loadings may be summarized on a daily, monthly, yearly, or constant basis. \")]),_c('p',[_vm._v(\" Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch31_input_meas.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on measured inputs\")]),_vm._v(\". Please note we accept CSV files instead of spaced .dat files described in the documentation. \")]),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.pageText)}}),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Sample data\")]),_c('p',[_vm._v(\" Please format your files like the samples below. Note: you will need to match the dates to your scenario simulation dates. The files below are only an example. \")]),_c('ul',[_c('li',[_c('a',{attrs:{\"href\":_vm.data.sampleFiles.constant}},[_vm._v(\"Constant\")]),_vm._v(\" (default values)\")]),_c('li',[_c('a',{attrs:{\"href\":_vm.data.sampleFiles.daily}},[_vm._v(\"Daily sample\")])]),_c('li',[_c('a',{attrs:{\"href\":_vm.data.sampleFiles.monthly}},[_vm._v(\"Monthly sample\")])]),_c('li',[_c('a',{attrs:{\"href\":_vm.data.sampleFiles.yearly}},[_vm._v(\"Yearly sample\")])])])]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Uploading guidelines\")]),_c('ul',[_c('li',[_vm._v(\"You may mix types; for example, you can have one subbasin with constant data, another two with daily, and one with monthly.\")]),_c('li',[_vm._v(\"Do not upload more than one type per subbasin.\")]),_c('li',[_vm._v(\"You do not need to upload data for all subbasins in your project.\")]),_c('li',[_vm._v(\"Keep the file names as shown in the samples.\")])])])],1),(_vm.data.hasMods)?_c('div',[_c('hr',{staticClass:\"my-4\"}),_c('h3',{staticClass:\"my-3\"},[_vm._v(\"Existing uploaded data\")]),_c('p',[_vm._v(\" You have already uploaded custom point source data for this scenario. Download it below. \")]),_c('p',[_c('a',{staticClass:\"btn btn-primary\",attrs:{\"href\":_vm.data.userDataUrl}},[_vm._v(\"Download\")])])]):_vm._e(),_c('hr',{staticClass:\"my-4\"}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Upload data\")]),_c('p',[_vm._v(\" Drag a zip file of CSV files into the space below. For daily, monthly, and yearly point source data, you will have one file for each subbasin in your project. For constant point source data, you will have a single CSV file containing data for each subbasin on a separate row. \")]),(_vm.data.hasMods)?_c('p',[_c('strong',[_vm._v(\"Adding a new file below will replace all existing data.\")])]):_vm._e(),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('vue-dropzone',{ref:\"addFile\",attrs:{\"id\":\"addFile\",\"options\":_vm.dropzoneOptions},on:{\"vdropzone-success\":_vm.fileUploaded,\"vdropzone-error\":_vm.uploadError}}),_c('fixed-action-bar',[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.data.hasMods)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete your uploaded data? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Point source</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tSWAT directly simulates the loading of water, sediment and other constituents off of land areas in the watershed.\r\n\t\t\t\tTo simulate the loading of water and pollutants from sources not associated with a land area (e.g. sewage treatment plants, regional groundwater recharge, etc.),\r\n\t\t\t\tSWAT allows point source information to be read in at any point along the channel network. The point source loadings may be summarized on a daily, monthly, yearly, or constant basis.\r\n\t\t\t</p>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch31_input_meas.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on measured inputs</a>.\r\n\t\t\t\tPlease note we accept CSV files instead of spaced .dat files described in the documentation.\r\n\t\t\t</p>\r\n\r\n\t\t\t<div v-html=\"pageText\"></div>\r\n\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<h3 class=\"mb-3\">Sample data</h3>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tPlease format your files like the samples below. Note: you will need to match the dates to your scenario simulation dates. The files below are only an example.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t<li><a :href=\"data.sampleFiles.constant\">Constant</a> (default values)</li>\r\n\t\t\t\t\t\t<li><a :href=\"data.sampleFiles.daily\">Daily sample</a></li>\r\n\t\t\t\t\t\t<li><a :href=\"data.sampleFiles.monthly\">Monthly sample</a></li>\r\n\t\t\t\t\t\t<li><a :href=\"data.sampleFiles.yearly\">Yearly sample</a></li>\r\n\t\t\t\t\t</ul>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<h3 class=\"mb-3\">Uploading guidelines</h3>\r\n\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t<li>You may mix types; for example, you can have one subbasin with constant data, another two with daily, and one with monthly.</li>\r\n\t\t\t\t\t\t<li>Do not upload more than one type per subbasin.</li>\r\n\t\t\t\t\t\t<li>You do not need to upload data for all subbasins in your project.</li>\r\n\t\t\t\t\t\t<li>Keep the file names as shown in the samples.</li>\r\n\t\t\t\t\t</ul>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\r\n\t\t\t<div v-if=\"data.hasMods\">\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t<h3 class=\"my-3\">Existing uploaded data</h3>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tYou have already uploaded custom point source data for this scenario. Download it below.\r\n\t\t\t\t</p>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t<a :href=\"data.userDataUrl\" class=\"btn btn-primary\">Download</a>\r\n\t\t\t\t</p>\r\n\t\t\t</div>\r\n\r\n\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<h3 class=\"mb-3\">Upload data</h3>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tDrag a zip file of CSV files into the space below.\r\n\t\t\t\t\tFor daily, monthly, and yearly point source data, you will have one file for each subbasin in your project.\r\n\t\t\t\t\tFor constant point source data, you will have a single CSV file containing data for each subbasin on a separate row.\r\n\t\t\t\t</p>\r\n\t\t\t\t<p v-if=\"data.hasMods\">\r\n\t\t\t\t\t<strong>Adding a new file below will replace all existing data.</strong>\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<vue-dropzone ref=\"addFile\" id=\"addFile\" :options=\"dropzoneOptions\" @vdropzone-success=\"fileUploaded\" @vdropzone-error=\"uploadError\"></vue-dropzone>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"data.hasMods\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete your uploaded data?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\n\timport vue2Dropzone from 'vue2-dropzone';\r\n\timport 'vue2-dropzone/dist/vue2Dropzone.min.css';\r\n\r\n\texport default {\r\n\t\tname: 'EditPointSource',\r\n\t\tcomponents: {\r\n\t\t\tvueDropzone: vue2Dropzone\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tdropzoneOptions: {\r\n\t\t\t\t\turl: `/api/scenarios/subbasin/pointsource/${this.$route.params.scenarioID}`,\n\t\t\t\t\theaders: this.getTokenHeaderPart(),\r\n\t\t\t\t\tacceptedFiles: '.zip',\n\t\t\t\t\ttimeout: 300000\r\n\t\t\t\t},\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\n\t\t\t\tdata: {\n\t\t\t\t\thasMods: false,\n\t\t\t\t\tuserDataUrl: '',\n\t\t\t\t\tsampleFiles: {\n\t\t\t\t\t\tconstant: '',\n\t\t\t\t\t\tdaily: '',\n\t\t\t\t\t\tmonthly: '',\n\t\t\t\t\t\tyearly: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t},\n\t\t\t\tpageText: null\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/subbasin/pointsource/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\n\n\t\t\t\t\tconst response2 = await this.$http.get(`datasets/websitetextpage/PointSource`);\n\t\t\t\t\tthis.pageText = response2.data.text;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Ptsrc`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tasync fileUploaded(file, response) {\n\t\t\t\tthis.log(response);\n\t\t\t\tthis.page.saveErrors = [];\n\t\t\t\tawait this.get();\r\n\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t},\n\t\t\tuploadError(file, message, xhr) {\n\t\t\t\tthis.log(file);\n\t\t\t\tthis.log(xhr);\n\t\t\t\tthis.page.saveErrors.push(message);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditPointSource.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditPointSource.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditPointSource.vue?vue&type=template&id=7541c91c&\"\nimport script from \"./EditPointSource.vue?vue&type=script&lang=js&\"\nexport * from \"./EditPointSource.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',[_vm._v(\"Pothole Variables\")]),_c('p',[_vm._v(\" Read the \"),_c('a',{attrs:{\"href\":\"/content/docs/io/ch19_input_hru.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT2012 IO documentation chapter on HRU inputs\")]),_vm._v(\", see pages 5, 9, and 10 for pothole variables. \")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('div',{staticClass:\"table-responsive mb-3\"},[_c('b-table',{staticClass:\"table-valign-m mb-0\",attrs:{\"responsive\":\"\",\"items\":_vm.pothole,\"fields\":_vm.fieldsHeading},scopedSlots:_vm._u([{key:\"cell(value)\",fn:function(data){return [_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.item[data.item.variable])},model:{value:(_vm.$v.item[data.item.variable].$model),callback:function ($$v) {_vm.$set(_vm.$v.item[data.item.variable], \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.item[data.item.variable].$model\"}})]}}])})],1),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id)},on:{\"change\":_vm.hruSelectionChange}}),(_vm.mods.length > 0)?_c('scenario-mod-viewer',{attrs:{\"data\":_vm.mods,\"value-label\":\"Values\",\"value-is-object\":\"\"},on:{\"deleted\":_vm.modDeleted}}):_vm._e(),_c('fixed-action-bar',[_c('span',{attrs:{\"id\":\"save-button-tooltip\"}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection || !_vm.$v.$anyDirty}})],1),_c('b-tooltip',{attrs:{\"disabled\":_vm.validHruSelection,\"target\":\"save-button-tooltip\"}},[_vm._v(\" Select at least one subbasin, land use, soil, and slope. \")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.mods.length > 0)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete all pothole variable changes? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2>Pothole Variables</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tRead the <a href=\"/content/docs/io/ch19_input_hru.pdf\" target=\"_blank\">SWAT2012 IO documentation chapter on HRU inputs</a>, see pages 5, 9, and 10 for pothole variables.\r\n\t\t\t</p>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<div class=\"table-responsive mb-3\">\r\n\t\t\t\t\t<b-table responsive class=\"table-valign-m mb-0\" :items=\"pothole\" :fields=\"fieldsHeading\">\r\n\t\t\t\t\t\t<template v-slot:cell(value)=\"data\">\r\n\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.item[data.item.variable].$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.item[data.item.variable])\"></b-form-input>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-table>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\"></hru-selector>\r\n\t\t\t\t<scenario-mod-viewer v-if=\"mods.length > 0\" @deleted=\"modDeleted\" :data=\"mods\" value-label=\"Values\" value-is-object></scenario-mod-viewer>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<span id=\"save-button-tooltip\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection || !$v.$anyDirty\" class=\"mr-2\" />\r\n\t\t\t\t\t</span>\r\n\t\t\t\t\t<b-tooltip :disabled=\"validHruSelection\" target=\"save-button-tooltip\">\r\n\t\t\t\t\t\tSelect at least one subbasin, land use, soil, and slope.\r\n\t\t\t\t\t</b-tooltip>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<save-button v-if=\"mods.length > 0\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete all pothole variable changes?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</b-form>\t\t\t\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, between } from 'vuelidate/lib/validators';\r\n\timport HruSelector from '@/components/HruSelector';\r\n\timport ScenarioModViewer from '@/components/ScenarioModViewer';\r\n\r\n\texport default {\r\n\t\tname: 'EditPotholes',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector, ScenarioModViewer\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tmin: -10,\r\n\t\t\t\t\tmax: 10\r\n\t\t\t\t},\r\n\t\t\t\thruSelection: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: []\r\n\t\t\t\t},\r\n\t\t\t\tfieldsHeading: [\r\n\t\t\t\t\t{ key: 'value', class: 'min-w-100 table-input-col' },\r\n\t\t\t\t\t{ key: 'units', class: 'min' },\r\n\t\t\t\t\t{ key: 'description', class: 'wrap' },\r\n\t\t\t\t\t'variable', 'valid_range'\r\n\t\t\t\t],\r\n\t\t\t\tpotholesFields: ['POT_FR', 'POT_TILE', 'POT_VOLX', 'POT_VOL', 'SED_CON', 'ORGN_CON', 'ORGP_CON', 'SOLN_CON', 'SOLP_CON'],\r\n\t\t\t\tdescription: [\r\n\t\t\t\t\t'Fraction of HRU area that drains into pothole',\r\n\t\t\t\t\t'Average daily outflow to main channel from tile flow if drainage tiles are installed in the pothole',\r\n\t\t\t\t\t'Maximum volume of water stored in the pothole',\r\n\t\t\t\t\t'Initial volume of water stored in the pothole',\r\n\t\t\t\t\t'Sediment concentration in runoff, after urban BMP is applied',\r\n\t\t\t\t\t'Organic nitrogen concentration in runoff, after urban BMP is applied',\r\n\t\t\t\t\t'Organic phosphorus concentration in runoff, after urban BMP is applied',\r\n\t\t\t\t\t'Soluble nitrogen concentration in runoff, after urban BMP is applied',\r\n\t\t\t\t\t'Soluble phosphorus concentration in runoff, after urban BMP is applied'\r\n\t\t\t\t],\r\n\t\t\t\tunits: ['', 'mm', 'mm', 'mm', 'ppm', 'ppm', 'ppm', 'ppm', 'ppm'],\r\n\t\t\t\tvalid_range: ['0 to 1', '0 to 100', '0 to 100', '0 to 100', '0 to 5000', '0 to 100', '0 to 50', '0 to 10', '0 to 3'],\r\n\t\t\t\tpothole: [],\r\n\t\t\t\titem: {},\r\n\t\t\t\tmods: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations() {\r\n\t\t\tvar item = {};\r\n\t\t\tfor (var i = 0; i < this.potholesFields.length; i++) {\r\n\t\t\t\titem[this.potholesFields[i]] = { required };\r\n\t\t\t}\r\n\t\t\treturn { item: item };\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/subbasin/potholes/${this.scenarioID}/`, this.getTokenHeader());\r\n\t\t\t\t\tthis.mods = response.data.mods;\r\n\r\n\t\t\t\t\tthis.pothole = [];\r\n\t\t\t\t\tfor (var i = 0; i < this.potholesFields.length; i++) {\r\n\t\t\t\t\t\tvar n = this.potholesFields[i];\r\n\t\t\t\t\t\tthis.pothole.push({\r\n\t\t\t\t\t\t\tvariable: n,\r\n\t\t\t\t\t\t\tdescription: this.description[i],\r\n\t\t\t\t\t\t\tunits: this.units[i],\r\n\t\t\t\t\t\t\tvalid_range: this.valid_range[i]\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t\tthis.item[n] = 0;\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.log(this.$v);\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar item = {};\r\n\t\t\t\t\t\tvar keys = Object.keys(this.potholesFields);\r\n\r\n\t\t\t\t\t\tfor (var i = 0; i < keys.length; i++) {\r\n\t\t\t\t\t\t\tif (this.$v.item[this.potholesFields[i]] && (this.$v.item[this.potholesFields[i]].$dirty)) {\r\n\t\t\t\t\t\t\t\titem[this.potholesFields[i]] = Number(this.item[this.potholesFields[i]]);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.log(item);\r\n\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tapplyToAll: this.hruSelection.applyToAll,\r\n\t\t\t\t\t\t\tsubbasins: this.hruSelection.subbasins,\r\n\t\t\t\t\t\t\tlanduses: this.hruSelection.landuse,\r\n\t\t\t\t\t\t\tsoils: this.hruSelection.soils,\r\n\t\t\t\t\t\t\tslopes: this.hruSelection.slopes,\r\n\t\t\t\t\t\t\tmodificationObject: item\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/subbasin/save/${this.scenarioID}/Potholes`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\r\n\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/Potholes`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.hruSelection = selection;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.hruSelection.applyToAll ||\r\n\t\t\t\t\t(this.hruSelection.subbasins.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.landuse.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.soils.length > 0 &&\r\n\t\t\t\t\t\tthis.hruSelection.slopes.length > 0);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditPotholes.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditPotholes.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditPotholes.vue?vue&type=template&id=1bef222d&\"\nimport script from \"./EditPotholes.vue?vue&type=script&lang=js&\"\nexport * from \"./EditPotholes.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"HRU variables to print\")]),_c('p',[_vm._v(\" Select up to \"),_c('strong',[_vm._v(\"20\")]),_vm._v(\" HRU variables to print in your model output. Due to the potential size of HRU output, only 20 may be selected per scenario run. \")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":_vm.selected.length > 20}},[_vm._v(\" Please select only 20 variables at most. \")]),_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":_vm.selected.length < 1}},[_vm._v(\" Please select at least one variable. \")]),_c('div',{staticClass:\"checklist-expanded\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}},_vm._l((_vm.options),function(o,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":o.name}},[_vm._v(_vm._s(o.name)+\" \"+_vm._s(_vm.isNullOrEmpty(o.description) ? '' : `- ${o.description}`))])],1)}),0)],1),_c('fixed-action-bar',[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":_vm.selected.length < 1 || _vm.selected.length > 20}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),_c('div',{staticClass:\"ml-3\"},[_vm._v(\"(\"+_vm._s(_vm.selected.length)+\"/20 selected)\")]),(_vm.selected.length > 20)?_c('div',{staticClass:\"ml-3 text-danger\"},[_c('font-awesome-icon',{staticClass:\"icon mr-1 text-warning\",attrs:{\"icon\":['fas', 'exclamation-triangle']}}),_vm._v(\" Please select only 20 variables at most. \")],1):_vm._e(),(_vm.hasMods)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Changes\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to revert to the default printed HRU variables? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">HRU variables to print</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tSelect up to <strong>20</strong> HRU variables to print in your model output. Due to the potential size of HRU output, only 20 may be selected per scenario run.\r\n\t\t\t</p>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<b-alert variant=\"warning\" :show=\"selected.length > 20\">\r\n\t\t\t\t\tPlease select only 20 variables at most.\r\n\t\t\t\t</b-alert>\r\n\t\t\t\t<b-alert variant=\"warning\" :show=\"selected.length < 1\">\r\n\t\t\t\t\tPlease select at least one variable.\r\n\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t<div class=\"checklist-expanded\">\r\n\t\t\t\t\t<b-form-checkbox-group v-model=\"selected\" stacked>\r\n\t\t\t\t\t\t<div class=\"item\" v-for=\"(o, i) in options\" :key=\"i\">\r\n\t\t\t\t\t\t\t<b-form-checkbox :value=\"o.name\">{{o.name}} {{isNullOrEmpty(o.description) ? '' : `- ${o.description}`}}</b-form-checkbox>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"selected.length < 1 || selected.length > 20\" class=\"mr-2\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\n\n\t\t\t\t\t<div class=\"ml-3\">({{selected.length}}/20 selected)</div>\n\n\t\t\t\t\t<div v-if=\"selected.length > 20\" class=\"ml-3 text-danger\">\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" class=\"icon mr-1 text-warning\" />\r\n\t\t\t\t\t\tPlease select only 20 variables at most.\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<save-button v-if=\"hasMods\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Changes\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to revert to the default printed HRU variables?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'EditHruVars',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: [],\r\n\t\t\t\thasMods: false,\n\t\t\t\tselected: [],\n\t\t\t\tdefaultSelection: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/print/hruvars/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.hasMods = response.data.hasMods;\r\n\t\t\t\t\tthis.options = response.data.options;\r\n\t\t\t\t\tthis.selected = response.data.selected;\r\n\t\t\t\t\tthis.defaultSelection = response.data.defaultSelection;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\t\tmodificationObject: this.selected\r\n\t\t\t\t\t};\r\n\t\t\t\t\tconst response = await this.$http.post(`scenarios/savemods/${this.scenarioID}/HruVars`, data, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/HruVars`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditHruVars.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditHruVars.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditHruVars.vue?vue&type=template&id=7892ec04&\"\nimport script from \"./EditHruVars.vue?vue&type=script&lang=js&\"\nexport * from \"./EditHruVars.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"HRUs to print\")]),(_vm.hasMods)?_c('div',[_c('p',[_vm._v(\" Your selected HRUs for this scenario are shown in the table below. To modify the HRUs printed in this scenario, click the button below to remove the current selections. \")]),_c('p',[(_vm.hasMods)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.delete.saving,\"type\":\"button\",\"variant\":\"danger\",\"text\":\"Remove Selection\",\"title\":\"Remove your changes and revert to the defaults\"},nativeOn:{\"click\":function($event){return _vm.askDelete.apply(null, arguments)}}}):_vm._e()],1),_c('b-table',{ref:\"hruTable\",attrs:{\"responsive\":\"\",\"striped\":\"\",\"hover\":\"\",\"items\":_vm.mods,\"fields\":_vm.table.fields.slice(1)}})],1):_vm._e(),(!_vm.hasMods)?_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('p',[_vm._v(\" Select up to \"),_c('strong',[_vm._v(\"20\")]),_vm._v(\" HRUs print in your model output. Due to the potential size of HRU output, only 20 may be selected per scenario run. By default only the first HRU is printed. To print all HRUs in your project, download your scenario, modify the file.cio, and run offline. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),(!_vm.page.showHruSelector)?_c('div',{staticClass:\"mb-4\"},[_c('b-button',{on:{\"click\":function($event){_vm.page.showHruSelector = true; _vm.page.showResults = false}}},[_vm._v(\"Change HRU Filter\")])],1):_vm._e(),_c('b-collapse',{staticClass:\"mb-3\",model:{value:(_vm.page.showHruSelector),callback:function ($$v) {_vm.$set(_vm.page, \"showHruSelector\", $$v)},expression:\"page.showHruSelector\"}},[_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"hide-apply-selector\":\"\"},on:{\"change\":_vm.hruSelectionChange}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.page.showResults),expression:\"page.showResults\"}]},[_c('h3',{staticClass:\"mb-4\"},[_vm._v(\"Matching HRUs\")]),_c('p',[_vm._v(\" Check a row in the table below to toggle its selection. You may select up to 20 HRUs. \")]),_c('b-table',{ref:\"hruTable\",attrs:{\"responsive\":\"\",\"striped\":\"\",\"hover\":\"\",\"items\":_vm.hrus,\"fields\":_vm.table.fields,\"tbody-tr-class\":_vm.rowClass},scopedSlots:_vm._u([{key:\"cell(isChecked)\",fn:function(data){return [_c('b-form-checkbox',{attrs:{\"value\":data.item.id},model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}})]}}],null,false,1297666179)})],1),_c('fixed-action-bar',[(!_vm.page.showResults)?_c('div',[_c('span',{attrs:{\"id\":\"save-button-tooltip\"}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection,\"text\":\"Get Matching HRUs\",\"type\":\"button\"},nativeOn:{\"click\":function($event){return _vm.getHrus.apply(null, arguments)}}})],1),_c('b-tooltip',{attrs:{\"disabled\":_vm.validHruSelection,\"target\":\"save-button-tooltip\"}},[_vm._v(\" Select at least one subbasin. \")]),(_vm.hrus.length > 0)?_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.showHruSelector = false; _vm.page.showResults = true}}},[_vm._v(\"Hide form\")]):_vm._e()],1):_vm._e(),(_vm.page.showResults)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":_vm.selected.length < 1 || _vm.selected.length > 20}}):_vm._e(),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.page.showResults)?_c('div',{staticClass:\"ml-3\"},[_vm._v(\"(\"+_vm._s(_vm.selected.length)+\"/20 selected)\")]):_vm._e(),(_vm.selected.length > 20)?_c('div',{staticClass:\"ml-3 text-danger\"},[_c('font-awesome-icon',{staticClass:\"icon mr-1 text-warning\",attrs:{\"icon\":['fas', 'exclamation-triangle']}}),_vm._v(\" Please select only 20 HRUs at most. \")],1):_vm._e()],1)],1):_vm._e(),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to remove your changes and print only the first HRU (default)? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">HRUs to print</h2>\t\t\t\n\n\t\t\t<div v-if=\"hasMods\">\n\t\t\t\t<p>\n\t\t\t\t\tYour selected HRUs for this scenario are shown in the table below.\n\t\t\t\t\tTo modify the HRUs printed in this scenario, click the button below to remove the current selections.\n\t\t\t\t</p>\n\t\t\t\t<p>\r\n\t\t\t\t\t<save-button v-if=\"hasMods\" :saving=\"page.delete.saving\" type=\"button\"\r\n\t\t\t\t\t\t\t\t variant=\"danger\" text=\"Remove Selection\"\r\n\t\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Remove your changes and revert to the defaults\"\r\n\t\t\t\t\t\t\t\t @click.native=\"askDelete\" class=\"ml-auto\" />\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<b-table ref=\"hruTable\" responsive striped hover :items=\"mods\" :fields=\"table.fields.slice(1)\"></b-table>\r\n\t\t\t</div>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\" v-if=\"!hasMods\">\n\t\t\t\t<p>\r\n\t\t\t\t\tSelect up to <strong>20</strong> HRUs print in your model output. Due to the potential size of HRU output, only 20 may be selected per scenario run.\r\n\t\t\t\t\tBy default only the first HRU is printed. To print all HRUs in your project, download your scenario, modify the file.cio, and run offline.\r\n\t\t\t\t</p>\n\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<div v-if=\"!page.showHruSelector\" class=\"mb-4\">\r\n\t\t\t\t\t<b-button @click=\"page.showHruSelector = true; page.showResults = false\">Change HRU Filter</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<b-collapse v-model=\"page.showHruSelector\" class=\"mb-3\">\r\n\t\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" hide-apply-selector></hru-selector>\r\n\t\t\t\t</b-collapse>\r\n\r\n\t\t\t\t<div v-show=\"page.showResults\">\r\n\t\t\t\t\t<h3 class=\"mb-4\">Matching HRUs</h3>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tCheck a row in the table below to toggle its selection. You may select up to 20 HRUs.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<b-table ref=\"hruTable\" responsive striped hover :items=\"hrus\" :fields=\"table.fields\" :tbody-tr-class=\"rowClass\">\r\n\t\t\t\t\t\t<template v-slot:cell(isChecked)=\"data\">\r\n\t\t\t\t\t\t\t<b-form-checkbox v-model=\"selected\" :value=\"data.item.id\"></b-form-checkbox>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-table>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<fixed-action-bar>\r\n\t\t\t\t\t<div v-if=\"!page.showResults\">\r\n\t\t\t\t\t\t<span id=\"save-button-tooltip\">\r\n\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection\" class=\"mr-2\" text=\"Get Matching HRUs\" type=\"button\" @click.native=\"getHrus\" />\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<b-tooltip :disabled=\"validHruSelection\" target=\"save-button-tooltip\">\r\n\t\t\t\t\t\t\tSelect at least one subbasin.\r\n\t\t\t\t\t\t</b-tooltip>\r\n\r\n\t\t\t\t\t\t<b-button v-if=\"hrus.length > 0\" @click=\"page.showHruSelector = false; page.showResults = true\" variant=\"secondary\" class=\"mr-2\">Hide form</b-button>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<save-button v-if=\"page.showResults\" :saving=\"page.saving\" :disabled=\"selected.length < 1 || selected.length > 20\" class=\"mr-2\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<div v-if=\"page.showResults\" class=\"ml-3\">({{selected.length}}/20 selected)</div>\r\n\r\n\t\t\t\t\t<div v-if=\"selected.length > 20\" class=\"ml-3 text-danger\">\r\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" class=\"icon mr-1 text-warning\" />\r\n\t\t\t\t\t\tPlease select only 20 HRUs at most.\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to remove your changes and print only the first HRU (default)?\r\n\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport HruSelector from '@/components/HruSelector';\r\n\r\n\texport default {\r\n\t\tname: 'EditHruPrint',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\n\t\t\t\t\tshowResults: false,\n\t\t\t\t\tshowHruSelector: true\r\n\t\t\t\t},\r\n\t\t\t\thruSelection: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: []\r\n\t\t\t\t},\r\n\t\t\t\thasMods: false,\n\t\t\t\tmods: [],\n\t\t\t\thrus: [],\n\t\t\t\tselected: [],\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\n\t\t\t\t\t\t{ key: 'isChecked', label: '' },\r\n\t\t\t\t\t\t{ key: 'subbasin', sortable: true },\r\n\t\t\t\t\t\t{ key: 'landuse', sortable: true },\r\n\t\t\t\t\t\t{ key: 'soil', sortable: true },\r\n\t\t\t\t\t\t{ key: 'slopeClass', sortable: true },\r\n\t\t\t\t\t\t{ key: 'slope', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(5)) } },\r\n\t\t\t\t\t\t{ key: 'slopeLength', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t{ key: 'area', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t{ key: 'fraction', sortable: true, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(5)) } }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tperPage: 50,\n\t\t\t\t\tcurrentPage: 1\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.projectID = this.$route.params.id;\r\n\t\t\t\tthis.scenarioID = this.$route.params.scenarioID;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\n\n\t\t\t\tthis.hrus = [];\n\t\t\t\tthis.selected = [];\n\t\t\t\tthis.page.showResults = false;\n\t\t\t\tthis.page.showHruSelector = true;\n\t\t\t\tthis.hruSelection = {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\r\n\t\t\t\t\tlanduse: [],\r\n\t\t\t\t\tsoils: [],\r\n\t\t\t\t\tslopes: []\r\n\t\t\t\t};\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/print/hruprint/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.hasMods = response.data.hasMods;\r\n\t\t\t\t\tthis.mods = response.data.selected;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\n\t\t\tasync getHrus() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`hruselection/matching/${this.projectID}`, this.hruSelection, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.hrus = response.data;\n\t\t\t\t\tthis.selectRows(this.hrus);\n\t\t\t\t\tthis.page.showResults = true;\n\t\t\t\t\tthis.page.showHruSelector = false;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\t\tmodificationObject: this.selected\r\n\t\t\t\t\t};\r\n\t\t\t\t\tconst response = await this.$http.post(`scenarios/savemods/${this.scenarioID}/HruPrint`, data, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync modDeleted(id) {\r\n\t\t\t\tawait this.get();\r\n\t\t\t},\r\n\t\t\taskDelete() {\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`scenarios/deletemodtype/${this.scenarioID}/HruPrint`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.hruSelection = selection;\r\n\t\t\t},\n\t\t\tselectRows(items) {\n\t\t\t\tthis.selected = [];\n\t\t\t\tfor (var i = 0; i < items.slice(0, 20).length; i++) {\n\t\t\t\t\tthis.selected.push(items[i].id);\r\n\t\t\t\t}\n\t\t\t\tthis.log(this.selected);\r\n\t\t\t},\n\t\t\trowClass(item, type) {\r\n\t\t\t\tif (!item) return\r\n\t\t\t\tif (this.selected.includes(item.id)) return 'table-info'\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.hruSelection.applyToAll ||\r\n\t\t\t\t\t(this.hruSelection.subbasins.length > 0);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditHruPrint.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditHruPrint.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EditHruPrint.vue?vue&type=template&id=0940f443&\"\nimport script from \"./EditHruPrint.vue?vue&type=script&lang=js&\"\nexport * from \"./EditHruPrint.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Output Maps\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):(_vm.options.noOutputProcessing)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"Output processing was skipped for this scenario run. Please re-run your scenario without the \\\"skip output processing\\\" box checked to use this feature.\")])],1):_c('div',[_c('b-row',[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.selection.outputType)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.outputTypes.types,\"state\":_vm.getValidState(_vm.$v.selection.outputType)},on:{\"change\":function($event){_vm.selection.parameter = null}},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select an output type --\")])]},proxy:true}]),model:{value:(_vm.selection.outputType),callback:function ($$v) {_vm.$set(_vm.selection, \"outputType\", $$v)},expression:\"selection.outputType\"}})],1),_c('b-form-group',{attrs:{\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.selection.statistic)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.statistics,\"state\":_vm.getValidState(_vm.$v.selection.statistic)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a statistic --\")])]},proxy:true}]),model:{value:(_vm.selection.statistic),callback:function ($$v) {_vm.$set(_vm.selection, \"statistic\", $$v)},expression:\"selection.statistic\"}})],1),(!_vm.isNullOrEmpty(_vm.selection.outputType))?_c('b-form-group',{attrs:{\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.selection.parameter)}},[_c('b-form-select',{attrs:{\"state\":_vm.getValidState(_vm.$v.selection.parameter)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a parameter --\")])]},proxy:true}],null,false,3123090781),model:{value:(_vm.selection.parameter),callback:function ($$v) {_vm.$set(_vm.selection, \"parameter\", $$v)},expression:\"selection.parameter\"}},_vm._l((_vm.options.outputTypes.parameters[_vm.selection.outputType]),function(o,i){return _c('option',{key:i,domProps:{\"value\":o.variable}},[_vm._v(\" \"+_vm._s(o.variable)+\" - \"+_vm._s(o.description)+\" \")])}),0)],1):_vm._e(),(!_vm.isNullOrEmpty(_vm.selection.outputType))?_c('b-form-group',{attrs:{\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.selection.units)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.outputTypes.units,\"state\":_vm.getValidState(_vm.$v.selection.units)},model:{value:(_vm.selection.units),callback:function ($$v) {_vm.$set(_vm.selection, \"units\", $$v)},expression:\"selection.units\"}}),_c('small',{staticClass:\"text-muted\"},[_vm._v(\"Set the default units displayed from your \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"account settings\")])],1)],1):_vm._e(),(_vm.options.scenarios.length > 0)?_c('div',{staticClass:\"my-3\"},[_c('div',{staticClass:\"checklist-header\"},[_vm._v(\" Select up to \"+_vm._s(_vm.page.maxToCompare)+\" other scenarios for output comparison (optional) \")]),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selection.compareScenarios),callback:function ($$v) {_vm.$set(_vm.selection, \"compareScenarios\", $$v)},expression:\"selection.compareScenarios\"}},_vm._l((_vm.options.scenarios),function(o,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":o.value}},[_vm._v(_vm._s(o.text))])],1)}),0)],1)]):_vm._e(),_c('b-alert',{attrs:{\"show\":_vm.selection.compareScenarios.length > _vm.page.maxToCompare,\"variant\":\"warning\"}},[_vm._v(\" You may only compare to up to \"+_vm._s(_vm.page.maxToCompare)+\" scenarios at a time. Please modify your selection. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('div',{staticClass:\"mt-4 mb-3\"},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"text\":\"Get Map\",\"disabled\":_vm.isNullOrEmpty(_vm.selection.parameter) || _vm.selection.compareScenarios.length > _vm.page.maxToCompare}}),(_vm.maps.scenarioMaps.length > 0)?_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.editColors.show = true}}},[_vm._v(\"Change Colors\")]):_vm._e()],1)],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('project-map',{attrs:{\"project-map\":_vm.options.map,\"height\":\"300px\"}})],1)],1),_c('b-row',{staticClass:\"my-3\"},_vm._l((_vm.maps.scenarioMaps),function(map,i){return _c('b-col',{key:i,attrs:{\"md\":\"6\"}},[_c('div',{staticClass:\"my-3\"},[_c('highcharts',{staticClass:\"map\",attrs:{\"constructor-type\":'mapChart',\"options\":map}})],1)])}),1),_c('b-modal',{attrs:{\"size\":\"lg\",\"title\":\"Change map colors\"},model:{value:(_vm.page.editColors.show),callback:function ($$v) {_vm.$set(_vm.page.editColors, \"show\", $$v)},expression:\"page.editColors.show\"}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"8\"}},[_c('b-form-group',{attrs:{\"label\":\"Choose how to display colors on the map\"}},[_c('b-form-radio-group',{model:{value:(_vm.outMapColors.useDataClasses),callback:function ($$v) {_vm.$set(_vm.outMapColors, \"useDataClasses\", $$v)},expression:\"outMapColors.useDataClasses\"}},[_c('b-form-radio',{attrs:{\"value\":false}},[_vm._v(\"Gradient\")]),_c('b-form-radio',{attrs:{\"value\":true}},[_vm._v(\"Defined ranges (advanced)\")])],1)],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"md\":\"\"}},[_c('b-form-checkbox',{attrs:{\"switch\":\"\"},model:{value:(_vm.outMapColors.showLabels),callback:function ($$v) {_vm.$set(_vm.outMapColors, \"showLabels\", $$v)},expression:\"outMapColors.showLabels\"}},[_vm._v(\"Show labels\")])],1)],1),(!_vm.outMapColors.useDataClasses)?_c('div',[_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Minimum value color\"}},[_c('b-form-input',{attrs:{\"type\":\"color\"},model:{value:(_vm.outMapColors.min),callback:function ($$v) {_vm.$set(_vm.outMapColors, \"min\", $$v)},expression:\"outMapColors.min\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Median value color\"}},[_c('b-form-input',{attrs:{\"type\":\"color\"},model:{value:(_vm.outMapColors.mid),callback:function ($$v) {_vm.$set(_vm.outMapColors, \"mid\", $$v)},expression:\"outMapColors.mid\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Maximum value color\"}},[_c('b-form-input',{attrs:{\"type\":\"color\"},model:{value:(_vm.outMapColors.max),callback:function ($$v) {_vm.$set(_vm.outMapColors, \"max\", $$v)},expression:\"outMapColors.max\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Stream color\"}},[_c('b-form-input',{attrs:{\"type\":\"color\"},model:{value:(_vm.maps.riverSeries.nullColor),callback:function ($$v) {_vm.$set(_vm.maps.riverSeries, \"nullColor\", $$v)},expression:\"maps.riverSeries.nullColor\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-button',{attrs:{\"variant\":\"light\",\"typeof\":\"button\"},on:{\"click\":_vm.reverseColors}},[_vm._v(\"Reverse min/max colors\")])],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Color axis scale\"}},[_c('b-form-select',{model:{value:(_vm.outMapColors.scale),callback:function ($$v) {_vm.$set(_vm.outMapColors, \"scale\", $$v)},expression:\"outMapColors.scale\"}},[_c('option',[_vm._v(\"linear\")]),_c('option',[_vm._v(\"logarithmic\")])])],1)],1)],1)],1):_c('div',[_c('p',[_vm._v(\" Set a specific color for a range of values (from value x to value y). You will need to come back and adjust these values if you change the parameter being mapped. \")]),_c('table',{staticClass:\"table border-bottom table-sm mb-2\"},[_c('thead',[_c('tr',{staticClass:\"bg-light\"},[_c('th',[_vm._v(\"From\")]),_c('th',[_vm._v(\"To\")]),_c('th',[_vm._v(\"Color\")]),_c('th')])]),_c('tbody',_vm._l((_vm.outMapColors.dataClasses),function(dc,i){return _c('tr',{key:i},[_c('td',[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\"},model:{value:(dc.from),callback:function ($$v) {_vm.$set(dc, \"from\", $$v)},expression:\"dc.from\"}})],1),_c('td',[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\"},model:{value:(dc.to),callback:function ($$v) {_vm.$set(dc, \"to\", $$v)},expression:\"dc.to\"}})],1),_c('td',[_c('b-form-input',{attrs:{\"type\":\"color\"},model:{value:(dc.color),callback:function ($$v) {_vm.$set(dc, \"color\", $$v)},expression:\"dc.color\"}})],1),_c('td',[_c('font-awesome-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"text-danger pointer\",attrs:{\"icon\":['fas', 'times']},on:{\"click\":function($event){return _vm.removeColorDataClass(dc)}}})],1)])}),0)]),_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":_vm.addColorDataClass}},[_vm._v(\"Add Range\")])],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":false,\"text\":\"Ok\"},nativeOn:{\"click\":function($event){_vm.drawMaps(); _vm.page.editColors.show = false}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.editColors.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Output Maps</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"options.noOutputProcessing\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>Output processing was skipped for this scenario run. Please re-run your scenario without the \"skip output processing\" box checked to use this feature.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col md=\"6\">\r\n\t\t\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t\t\t<b-form-group :invalid-feedback=\"requiredFeedback($v.selection.outputType)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.outputType\" :options=\"options.outputTypes.types\" :state=\"getValidState($v.selection.outputType)\" @change=\"selection.parameter = null\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select an output type --</option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<b-form-group :invalid-feedback=\"requiredFeedback($v.selection.statistic)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.statistic\" :options=\"options.statistics\" :state=\"getValidState($v.selection.statistic)\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a statistic --</option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<b-form-group v-if=\"!isNullOrEmpty(selection.outputType)\" :invalid-feedback=\"requiredFeedback($v.selection.parameter)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.parameter\" :state=\"getValidState($v.selection.parameter)\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a parameter --</option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t<option v-for=\"(o, i) in options.outputTypes.parameters[selection.outputType]\" :key=\"i\" :value=\"o.variable\">\r\n\t\t\t\t\t\t\t\t\t\t{{o.variable}} - {{o.description}}\r\n\t\t\t\t\t\t\t\t\t</option>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<b-form-group v-if=\"!isNullOrEmpty(selection.outputType)\" :invalid-feedback=\"requiredFeedback($v.selection.units)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.units\" :options=\"options.outputTypes.units\" :state=\"getValidState($v.selection.units)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t<small class=\"text-muted\">Set the default units displayed from your <router-link to=\"/account\">account settings</router-link></small>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"options.scenarios.length > 0\" class=\"my-3\">\r\n\t\t\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t\t\tSelect up to {{page.maxToCompare}} other scenarios for output comparison (optional)\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"selection.compareScenarios\" stacked>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(o, i) in options.scenarios\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"o.value\">{{o.text}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<b-alert :show=\"selection.compareScenarios.length > page.maxToCompare\" variant=\"warning\">\r\n\t\t\t\t\t\t\t\tYou may only compare to up to {{page.maxToCompare}} scenarios at a time. Please modify your selection.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t\t\t\t\t<div class=\"mt-4 mb-3\">\r\n\t\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" text=\"Get Map\" :disabled=\"isNullOrEmpty(selection.parameter) || selection.compareScenarios.length > page.maxToCompare\" />\r\n\t\t\t\t\t\t\t\t<b-button v-if=\"maps.scenarioMaps.length > 0\" type=\"button\" variant=\"secondary\" @click=\"page.editColors.show = true\">Change Colors</b-button>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<project-map :project-map=\"options.map\" height=\"300px\"></project-map>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<b-row class=\"my-3\">\r\n\t\t\t\t\t<b-col md=\"6\" v-for=\"(map, i) in maps.scenarioMaps\" :key=\"i\">\r\n\t\t\t\t\t\t<div class=\"my-3\">\r\n\t\t\t\t\t\t\t<highcharts :constructor-type=\"'mapChart'\" :options=\"map\" class=\"map\"></highcharts>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.editColors.show\" size=\"lg\" title=\"Change map colors\">\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md=\"8\">\r\n\t\t\t\t\t\t\t<b-form-group label=\"Choose how to display colors on the map\">\r\n\t\t\t\t\t\t\t\t<b-form-radio-group v-model=\"outMapColors.useDataClasses\">\r\n\t\t\t\t\t\t\t\t\t<b-form-radio :value=\"false\">Gradient</b-form-radio>\r\n\t\t\t\t\t\t\t\t\t<b-form-radio :value=\"true\">Defined ranges (advanced)</b-form-radio>\r\n\t\t\t\t\t\t\t\t</b-form-radio-group>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md class=\"text-right\">\r\n\t\t\t\t\t\t\t<b-form-checkbox v-model=\"outMapColors.showLabels\" switch>Show labels</b-form-checkbox>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<div v-if=\"!outMapColors.useDataClasses\">\r\n\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Minimum value color\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input type=\"color\" v-model=\"outMapColors.min\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Median value color\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input type=\"color\" v-model=\"outMapColors.mid\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Maximum value color\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input type=\"color\" v-model=\"outMapColors.max\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Stream color\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input type=\"color\" v-model=\"maps.riverSeries.nullColor\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t<b-button @click=\"reverseColors\" variant=\"light\" typeof=\"button\">Reverse min/max colors</b-button>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Color axis scale\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"outMapColors.scale\">\r\n\t\t\t\t\t\t\t\t\t\t<option>linear</option>\r\n\t\t\t\t\t\t\t\t\t\t<option>logarithmic</option>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tSet a specific color for a range of values (from value x to value y). You will need to come back and adjust these values if you change the parameter being mapped.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<table class=\"table border-bottom table-sm mb-2\">\r\n\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t<tr class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t\t<th>From</th>\r\n\t\t\t\t\t\t\t\t\t<th>To</th>\r\n\t\t\t\t\t\t\t\t\t<th>Color</th>\r\n\t\t\t\t\t\t\t\t\t<th></th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t<tr v-for=\"(dc, i) in outMapColors.dataClasses\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<td><b-form-input type=\"number\" v-model=\"dc.from\" step=\"any\"></b-form-input></td>\r\n\t\t\t\t\t\t\t\t\t<td><b-form-input type=\"number\" v-model=\"dc.to\" step=\"any\"></b-form-input></td>\r\n\t\t\t\t\t\t\t\t\t<td><b-form-input type=\"color\" v-model=\"dc.color\"></b-form-input></td>\r\n\t\t\t\t\t\t\t\t\t<td><font-awesome-icon :icon=\"['fas', 'times']\" class=\"text-danger pointer\" @click=\"removeColorDataClass(dc)\" v-b-tooltip.hover.right=\"'Delete'\" /></td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"primary\" @click=\"addColorDataClass\">Add Range</b-button>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"false\" @click.native=\"drawMaps(); page.editColors.show = false\" text=\"Ok\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.editColors.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\timport ProjectMap from '@/components/ProjectMap';\r\n\r\n\texport default {\r\n\t\tname: 'OutputMaps',\r\n\t\tcomponents: {\r\n\t\t\tProjectMap\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tmaxToCompare: 3,\r\n\t\t\t\t\teditColors: {\r\n\t\t\t\t\t\tshow: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\toutputTypes: {\r\n\t\t\t\t\t\ttypes: [],\r\n\t\t\t\t\t\tparameters: [],\r\n\t\t\t\t\t\tunits: []\r\n\t\t\t\t\t},\r\n\t\t\t\t\tscenarios: [],\r\n\t\t\t\t\tstatistics: [],\r\n\t\t\t\t\tmap: {},\n\t\t\t\t\tnoOutputProcessing: false\r\n\t\t\t\t},\r\n\t\t\t\tgeojson: {\r\n\t\t\t\t\tsubbasins: {},\r\n\t\t\t\t\tstreams: {}\r\n\t\t\t\t},\r\n\t\t\t\toutMapColors: {\r\n\t\t\t\t\tmin: '#e6ebf5',\r\n\t\t\t\t\tmid: '#266eff',\r\n\t\t\t\t\tmax: '#003399',\r\n\t\t\t\t\thover: '#70dbe5',\r\n\t\t\t\t\tscale: 'linear',\n\t\t\t\t\tshowLabels: false,\n\t\t\t\t\tuseDataClasses: false,\n\t\t\t\t\tdataClasses: [\n\t\t\t\t\t\t{ from: 0, to: 100, color: '#00b721' },\n\t\t\t\t\t\t{ from: 100, to: 200, color: '#f28730' },\n\t\t\t\t\t\t{ from: 200, to: 300, color: '#c40f0f' }\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\tselection: {\r\n\t\t\t\t\tstatistic: null,\r\n\t\t\t\t\toutputType: null,\r\n\t\t\t\t\tparameter: null,\r\n\t\t\t\t\tcompareScenarios: [],\r\n\t\t\t\t\tunits: 0\r\n\t\t\t\t},\r\n\t\t\t\tmaps: {\r\n\t\t\t\t\triverSeries: {\r\n\t\t\t\t\t\tname: 'Streams',\r\n\t\t\t\t\t\ttype: 'mapline',\r\n\t\t\t\t\t\tmapData: null,\r\n\t\t\t\t\t\tnullColor: '#7cb5ec'\r\n\t\t\t\t\t},\r\n\t\t\t\t\tscenarioMaps: []\r\n\t\t\t\t},\r\n\t\t\t\tresponseData: {\r\n\t\t\t\t\tscenarioMaps: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tselection: {\r\n\t\t\t\tstatistic: { required },\r\n\t\t\t\toutputType: { required },\r\n\t\t\t\tparameter: { required },\r\n\t\t\t\tunits: { required }\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/output/mapoptions/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.options = response.data;\r\n\t\t\t\t\tthis.selection.units = this.options.outputTypes.defaultUnits;\r\n\r\n\t\t\t\t\tconst subsResponse = await this.$httpRoot.get(this.options.map.geoJsonUrls.subbasins);\r\n\t\t\t\t\tconst streamsResponse = await this.$httpRoot.get(this.options.map.geoJsonUrls.streams);\r\n\t\t\t\t\tthis.geojson.subbasins = subsResponse.data;\r\n\t\t\t\t\tthis.geojson.streams = streamsResponse.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please complete the form.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.log(this.selection);\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/output/map/${this.scenarioID}`, this.selection, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.responseData = response.data;\r\n\t\t\t\t\t\tthis.drawMaps(true);\r\n\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\treverseColors() {\r\n\t\t\t\tvar max = this.outMapColors.max;\r\n\t\t\t\tthis.outMapColors.max = this.outMapColors.min;\r\n\t\t\t\tthis.outMapColors.min = max;\r\n\t\t\t},\r\n\t\t\tgetColorAxis(map, initialize = false) {\r\n\t\t\t\tif (initialize && (map.maxValue - map.minValue) >= 10000 && map.minValue > 0) {\r\n\t\t\t\t\tthis.outMapColors.scale = 'logarithmic';\r\n\t\t\t\t}\r\n\n\t\t\t\tif (this.outMapColors.useDataClasses && this.outMapColors.dataClasses.length > 0) {\n\t\t\t\t\tthis.log('use data class');\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\tdataClasses: this.outMapColors.dataClasses\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\n\t\t\t\t\tthis.log('use gradient');\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\ttype: !map.allowLogAxis ? 'linear' : this.outMapColors.scale,\r\n\t\t\t\t\t\tallowNegativeLog: true,\r\n\t\t\t\t\t\tminColor: this.outMapColors.min,\r\n\t\t\t\t\t\tmaxColor: this.outMapColors.max,\r\n\t\t\t\t\t\tstops: [\r\n\t\t\t\t\t\t\t[0, this.outMapColors.min],\r\n\t\t\t\t\t\t\t[0.5, this.outMapColors.mid],\r\n\t\t\t\t\t\t\t[1, this.outMapColors.max]\r\n\t\t\t\t\t\t]\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t},\n\t\t\tupdateMaps() {\n\t\t\t\tlet self = this;\n\t\t\t\tthis.$nextTick(() => {\n\t\t\t\t\tself.drawMaps();\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tdrawMaps(initialize = false) {\r\n\t\t\t\tthis.maps.riverSeries.mapData = this.geojson.streams;\r\n\r\n\t\t\t\tthis.maps.scenarioMaps = [];\n\t\t\t\tthis.$nextTick(() => {\n\t\t\t\t\tfor (var i = 0; i < this.responseData.scenarioMaps.length; i++) {\r\n\t\t\t\t\t\tlet map = this.responseData.scenarioMaps[i];\n\t\t\t\t\t\tlet newMap = {\r\n\t\t\t\t\t\t\ttitle: { text: map.mapTitle },\r\n\t\t\t\t\t\t\tlegend: {\r\n\t\t\t\t\t\t\t\ttitle: {\r\n\t\t\t\t\t\t\t\t\ttext: map.legendTitle\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tcolorAxis: this.getColorAxis(map, initialize),\r\n\t\t\t\t\t\t\txAxis: {\r\n\t\t\t\t\t\t\t\tmin: map.xAxisMin,\r\n\t\t\t\t\t\t\t\tmax: map.xAxisMax\r\n\t\t\t\t\t\t\t},\r\n\r\n\t\t\t\t\t\t\tyAxis: {\r\n\t\t\t\t\t\t\t\tmin: map.yAxisMin,\r\n\t\t\t\t\t\t\t\tmax: map.yAxisMax\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tmapNavigation: {\r\n\t\t\t\t\t\t\t\tenabled: true\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tseries: [{\r\n\t\t\t\t\t\t\t\tdata: map.mapData,\r\n\t\t\t\t\t\t\t\tmapData: this.geojson.subbasins,\r\n\t\t\t\t\t\t\t\tjoinBy: ['name', 'code'],\r\n\t\t\t\t\t\t\t\tname: map.mapDataValuesName,\r\n\t\t\t\t\t\t\t\tstates: {\r\n\t\t\t\t\t\t\t\t\thover: {\r\n\t\t\t\t\t\t\t\t\t\tcolor: this.outMapColors.hover\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\tdataLabels: {\r\n\t\t\t\t\t\t\t\t\tenabled: this.outMapColors.showLabels,\r\n\t\t\t\t\t\t\t\t\tformat: '{point.properties.name}'\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\ttooltip: {\r\n\t\t\t\t\t\t\t\t\tpointFormat: '{point.code}: {point.value:.2f} ' + map.units\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}, this.maps.riverSeries]\r\n\t\t\t\t\t\t};\n\t\t\t\t\t\tthis.log(newMap);\r\n\t\t\t\t\t\tthis.maps.scenarioMaps.push(newMap);\n\t\t\t\t\t\t//this.log(this.maps.scenarioMaps);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\t\r\n\t\t\t},\n\t\t\taddColorDataClass() {\n\t\t\t\tthis.outMapColors.dataClasses.push({ from: 0, to: 0, color: '#008cc4' });\r\n\t\t\t},\r\n\t\t\tremoveColorDataClass(element) {\r\n\t\t\t\tthis.outMapColors.dataClasses.splice(this.outMapColors.dataClasses.indexOf(element), 1);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputMaps.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputMaps.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OutputMaps.vue?vue&type=template&id=59f345ed&\"\nimport script from \"./OutputMaps.vue?vue&type=script&lang=js&\"\nexport * from \"./OutputMaps.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Output Charts\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):(_vm.options.noOutputProcessing)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"Output processing was skipped for this scenario run. Please re-run your scenario without the \\\"skip output processing\\\" box checked to use this feature.\")])],1):_c('div',[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.options.printSetting !== 'daily'}},[_vm._v(\" Some statistics may be limited because this scenario ran in \"+_vm._s(_vm.options.printSetting)+\" mode. \")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.selection.outputType)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.outputTypes.types,\"state\":_vm.getValidState(_vm.$v.selection.outputType)},on:{\"change\":_vm.outputTypeChg},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null,\"disabled\":\"\"}},[_vm._v(\"-- Select an output type --\")])]},proxy:true}]),model:{value:(_vm.selection.outputType),callback:function ($$v) {_vm.$set(_vm.selection, \"outputType\", $$v)},expression:\"selection.outputType\"}})],1),_c('b-form-group',{attrs:{\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.selection.statistic)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.statistics,\"state\":_vm.getValidState(_vm.$v.selection.statistic)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null,\"disabled\":\"\"}},[_vm._v(\"-- Select a statistic --\")])]},proxy:true}]),model:{value:(_vm.selection.statistic),callback:function ($$v) {_vm.$set(_vm.selection, \"statistic\", $$v)},expression:\"selection.statistic\"}})],1),_c('b-form-select',{staticClass:\"mb-3\",attrs:{\"state\":_vm.getValidState(_vm.$v.selection.subbasin)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null,\"disabled\":\"\"}},[_vm._v(\"-- Select a subbasin from this list or click the map below --\")])]},proxy:true}]),model:{value:(_vm.selection.subbasin),callback:function ($$v) {_vm.$set(_vm.selection, \"subbasin\", $$v)},expression:\"selection.subbasin\"}},_vm._l((_vm.options.map.connections),function(c,i){return _c('b-form-select-option',{key:i,attrs:{\"value\":{ id: c.fromID, name: c.fromName }}},[_vm._v(\" \"+_vm._s(c.fromName)+\" \")])}),1),(_vm.selection.outputType === 'OutputHru' && _vm.selection.subbasin !== null)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":!_vm.subbasinHasHrus}},[_vm._v(\" You have not printed output for any HRUs in the selected subbasin. All available HRUs are in the list below, or select another subbasin to filter. \")]),_c('b-form-select',{staticClass:\"mb-3\",attrs:{\"state\":_vm.getValidState(_vm.$v.selection.hru)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null,\"disabled\":\"\"}},[_vm._v(\"-- Select an HRU --\")])]},proxy:true}],null,false,4119500816),model:{value:(_vm.selection.hru),callback:function ($$v) {_vm.$set(_vm.selection, \"hru\", $$v)},expression:\"selection.hru\"}},_vm._l((_vm.filteredHrus),function(h,i){return _c('b-form-select-option',{key:i,attrs:{\"value\":h.id}},[_vm._v(\" \"+_vm._s(h.subbasin)+\" / \"+_vm._s(h.landuse)+\" / \"+_vm._s(h.soil)+\" / \"+_vm._s(h.slopeClass)+\" \")])}),1)],1):_vm._e(),_c('project-map',{attrs:{\"project-map\":_vm.options.map,\"height\":\"300px\",\"highlight-selected\":\"\",\"selected-subbasins\":_vm.selection.subbasin === null ? [] : [_vm.selection.subbasin]},on:{\"subbasin-click\":_vm.mapClick}}),_c('error-list',{staticClass:\"mt-3\",attrs:{\"errors\":_vm.page.saveErrors}}),_c('div',{staticClass:\"mt-4 mb-3\"},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"text\":\"Get Chart\",\"disabled\":_vm.selection.parameters.length < 1 || _vm.selection.compareScenarios.length > _vm.page.maxToCompare}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[(!_vm.isNullOrEmpty(_vm.selection.outputType))?_c('div',{staticClass:\"mb-4\"},[_c('div',{staticClass:\"checklist-header\"},[_vm._v(\" Select parameters to chart \")]),_c('div',{staticClass:\"checklist\",staticStyle:{\"max-height\":\"200px\"}},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selection.parameters),callback:function ($$v) {_vm.$set(_vm.selection, \"parameters\", $$v)},expression:\"selection.parameters\"}},_vm._l((_vm.options.outputTypes.parameters[_vm.selection.outputType]),function(o,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":o.variable},on:{\"change\":function($event){return _vm.checkYAxis(o.variable)}}},[_vm._v(_vm._s(o.variable)+\" - \"+_vm._s(o.description))]),(_vm.selection.parameters.includes(o.variable))?_c('div',{staticClass:\"ml-4 mt-1 mb-2 form-inline\"},[(_vm.selection.statistic !== 'boxplot')?_c('b-form-select',{staticClass:\"mr-1\",attrs:{\"size\":\"sm\"},model:{value:(_vm.chartSelection.types[o.variable]),callback:function ($$v) {_vm.$set(_vm.chartSelection.types, o.variable, $$v)},expression:\"chartSelection.types[o.variable]\"}},[_c('b-form-select-option',{attrs:{\"value\":\"line\"}},[_vm._v(\"Line\")]),_c('b-form-select-option',{attrs:{\"value\":\"area\"}},[_vm._v(\"Area\")]),_c('b-form-select-option',{attrs:{\"value\":\"scatter\"}},[_vm._v(\"Scatter\")]),_c('b-form-select-option',{attrs:{\"value\":\"column\"}},[_vm._v(\"Column\")]),_c('b-form-select-option',{attrs:{\"value\":\"spline\"}},[_vm._v(\"Spline\")])],1):_vm._e(),_c('b-form-select',{staticClass:\"mr-1\",attrs:{\"size\":\"sm\"},model:{value:(_vm.chartSelection.yAxis[o.variable]),callback:function ($$v) {_vm.$set(_vm.chartSelection.yAxis, o.variable, $$v)},expression:\"chartSelection.yAxis[o.variable]\"}},[_c('b-form-select-option',{attrs:{\"value\":true}},[_vm._v(\"Add y-axis\")]),_c('b-form-select-option',{attrs:{\"value\":false}},[_vm._v(\"No y-axis\")])],1)],1):_vm._e()],1)}),0)],1),_c('b-form-group',{staticClass:\"mt-3\",attrs:{\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.selection.units)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.outputTypes.units,\"state\":_vm.getValidState(_vm.$v.selection.units)},model:{value:(_vm.selection.units),callback:function ($$v) {_vm.$set(_vm.selection, \"units\", $$v)},expression:\"selection.units\"}}),_c('small',{staticClass:\"text-muted\"},[_vm._v(\"Set the default units displayed from your \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"account settings\")])],1)],1)],1):_vm._e(),(_vm.options.scenarios.length > 0)?_c('div',{staticClass:\"mb-3\"},[_c('div',{staticClass:\"checklist-header\"},[_vm._v(\" Select up to \"+_vm._s(_vm.page.maxToCompare)+\" other scenarios for output comparison (optional) \")]),_c('div',{staticClass:\"checklist\",staticStyle:{\"max-height\":\"200px\"}},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.selection.compareScenarios),callback:function ($$v) {_vm.$set(_vm.selection, \"compareScenarios\", $$v)},expression:\"selection.compareScenarios\"}},_vm._l((_vm.options.scenarios),function(o,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":o.value}},[_vm._v(_vm._s(o.text))])],1)}),0)],1),_c('b-alert',{staticClass:\"mt-2\",attrs:{\"variant\":\"info\",\"show\":_vm.selection.outputType === 'OutputHru'}},[_vm._v(\" Note: compared scenarios must have printed the same HRUs otherwise they will not display in the chart. \")])],1):_vm._e(),_c('b-alert',{attrs:{\"show\":_vm.selection.compareScenarios.length > _vm.page.maxToCompare,\"variant\":\"warning\"}},[_vm._v(\" You may only compare to up to \"+_vm._s(_vm.page.maxToCompare)+\" scenarios at a time. Please modify your selection. \")])],1)],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.page.showChart),expression:\"page.showChart\"}],staticClass:\"my-4\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.responseStatistic === 'boxplot'),expression:\"responseStatistic === 'boxplot'\"}]},[_c('highcharts',{attrs:{\"options\":_vm.boxChartOptions,\"updateArgs\":_vm.updateArgs}})],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.responseStatistic !== 'boxplot'),expression:\"responseStatistic !== 'boxplot'\"}]},[_c('highcharts',{attrs:{\"options\":_vm.chartOptions,\"updateArgs\":_vm.updateArgs}})],1),_c('b-form',{staticClass:\"mt-3\",attrs:{\"inline\":\"\"}},[_c('label',{staticClass:\"mr-2\",attrs:{\"for\":\"yAxisType\"}},[_vm._v(\"Change y-axis scale\")]),_c('b-form-select',{attrs:{\"id\":\"yAxisType\"},model:{value:(_vm.yAxisType),callback:function ($$v) {_vm.yAxisType=$$v},expression:\"yAxisType\"}},[_c('option',{attrs:{\"value\":\"linear\"}},[_vm._v(\"linear\")]),_c('option',{attrs:{\"value\":\"logarithmic\"}},[_vm._v(\"logarithmic\")])])],1)],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Output Charts</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"options.noOutputProcessing\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>Output processing was skipped for this scenario run. Please re-run your scenario without the \"skip output processing\" box checked to use this feature.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-alert variant=\"info\" :show=\"options.printSetting !== 'daily'\">\r\n\t\t\t\t\tSome statistics may be limited because this scenario ran in {{options.printSetting}} mode.\r\n\t\t\t\t</b-alert>\r\n\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md=\"6\">\r\n\t\t\t\t\t\t\t<b-form-group :invalid-feedback=\"requiredFeedback($v.selection.outputType)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.outputType\" :options=\"options.outputTypes.types\" :state=\"getValidState($v.selection.outputType)\" @change=\"outputTypeChg\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\" disabled>-- Select an output type --</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<b-form-group :invalid-feedback=\"requiredFeedback($v.selection.statistic)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.statistic\" :options=\"options.statistics\" :state=\"getValidState($v.selection.statistic)\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\" disabled>-- Select a statistic --</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-select v-model=\"selection.subbasin\" :state=\"getValidState($v.selection.subbasin)\" class=\"mb-3\">\r\n\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\" disabled>-- Select a subbasin from this list or click the map below --</b-form-select-option>\r\n\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t<b-form-select-option v-for=\"(c, i) in options.map.connections\" :key=\"i\" :value=\"{ id: c.fromID, name: c.fromName }\">\r\n\t\t\t\t\t\t\t\t\t{{c.fromName}}\r\n\t\t\t\t\t\t\t\t</b-form-select-option>\r\n\t\t\t\t\t\t\t</b-form-select>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"selection.outputType === 'OutputHru' && selection.subbasin !== null\">\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"warning\" :show=\"!subbasinHasHrus\">\r\n\t\t\t\t\t\t\t\t\tYou have not printed output for any HRUs in the selected subbasin.\r\n\t\t\t\t\t\t\t\t\tAll available HRUs are in the list below, or select another subbasin to filter.\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.hru\" :state=\"getValidState($v.selection.hru)\" class=\"mb-3\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\" disabled>-- Select an HRU --</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t<b-form-select-option v-for=\"(h, i) in filteredHrus\" :key=\"i\" :value=\"h.id\">\r\n\t\t\t\t\t\t\t\t\t\t{{h.subbasin}} / {{h.landuse}} / {{h.soil}} / {{h.slopeClass}}\r\n\t\t\t\t\t\t\t\t\t</b-form-select-option>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<project-map :project-map=\"options.map\" height=\"300px\"\r\n\t\t\t\t\t\t\t\t\t\t highlight-selected\r\n\t\t\t\t\t\t\t\t\t\t :selected-subbasins=\"selection.subbasin === null ? [] : [selection.subbasin]\"\r\n\t\t\t\t\t\t\t\t\t\t @subbasin-click=\"mapClick\"></project-map>\r\n\r\n\t\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\" class=\"mt-3\"></error-list>\r\n\r\n\t\t\t\t\t\t\t<div class=\"mt-4 mb-3\">\r\n\t\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" text=\"Get Chart\" :disabled=\"selection.parameters.length < 1 || selection.compareScenarios.length > page.maxToCompare\" />\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<div v-if=\"!isNullOrEmpty(selection.outputType)\" class=\"mb-4\">\r\n\t\t\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t\t\tSelect parameters to chart\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"checklist\" style=\"max-height:200px\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"selection.parameters\" stacked>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(o, i) in options.outputTypes.parameters[selection.outputType]\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"o.variable\" @change=\"checkYAxis(o.variable)\">{{o.variable}} - {{o.description}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t\t\t<div v-if=\"selection.parameters.includes(o.variable)\" class=\"ml-4 mt-1 mb-2 form-inline\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"chartSelection.types[o.variable]\" size=\"sm\" class=\"mr-1\" v-if=\"selection.statistic !== 'boxplot'\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select-option value=\"line\">Line</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select-option value=\"area\">Area</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select-option value=\"scatter\">Scatter</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select-option value=\"column\">Column</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select-option value=\"spline\">Spline</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"chartSelection.yAxis[o.variable]\" size=\"sm\" class=\"mr-1\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"true\">Add y-axis</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"false\">No y-axis</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group :invalid-feedback=\"requiredFeedback($v.selection.units)\" class=\"mt-3\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.units\" :options=\"options.outputTypes.units\" :state=\"getValidState($v.selection.units)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t<small class=\"text-muted\">Set the default units displayed from your <router-link to=\"/account\">account settings</router-link></small>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"options.scenarios.length > 0\" class=\"mb-3\">\r\n\t\t\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t\t\tSelect up to {{page.maxToCompare}} other scenarios for output comparison (optional)\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"checklist\" style=\"max-height:200px\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"selection.compareScenarios\" stacked>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(o, i) in options.scenarios\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"o.value\">{{o.text}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"info\" :show=\"selection.outputType === 'OutputHru'\" class=\"mt-2\">\r\n\t\t\t\t\t\t\t\t\tNote: compared scenarios must have printed the same HRUs otherwise they will not display in the chart.\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<b-alert :show=\"selection.compareScenarios.length > page.maxToCompare\" variant=\"warning\">\r\n\t\t\t\t\t\t\t\tYou may only compare to up to {{page.maxToCompare}} scenarios at a time. Please modify your selection.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<div class=\"my-4\" v-show=\"page.showChart\">\r\n\t\t\t\t\t\t<div v-show=\"responseStatistic === 'boxplot'\">\r\n\t\t\t\t\t\t\t<highcharts :options=\"boxChartOptions\" :updateArgs=\"updateArgs\"></highcharts>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-show=\"responseStatistic !== 'boxplot'\">\r\n\t\t\t\t\t\t\t<highcharts :options=\"chartOptions\" :updateArgs=\"updateArgs\"></highcharts>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<b-form inline class=\"mt-3\">\r\n\t\t\t\t\t\t\t<label for=\"yAxisType\" class=\"mr-2\">Change y-axis scale</label>\r\n\t\t\t\t\t\t\t<b-form-select v-model=\"yAxisType\" id=\"yAxisType\">\r\n\t\t\t\t\t\t\t\t<option value=\"linear\">linear</option>\r\n\t\t\t\t\t\t\t\t<option value=\"logarithmic\">logarithmic</option>\r\n\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-form>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, requiredIf } from 'vuelidate/lib/validators';\r\n\timport ProjectMap from '@/components/ProjectMap';\r\n\r\n\texport default {\r\n\t\tname: 'OutputCharts',\r\n\t\tcomponents: {\r\n\t\t\tProjectMap\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tmaxToCompare: 3,\r\n\t\t\t\t\tshowChart: false\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\toutputTypes: {\r\n\t\t\t\t\t\ttypes: [],\r\n\t\t\t\t\t\tparameters: [],\r\n\t\t\t\t\t\tunits: []\r\n\t\t\t\t\t},\r\n\t\t\t\t\tscenarios: [],\r\n\t\t\t\t\tstatistics: [],\r\n\t\t\t\t\tmap: {},\n\t\t\t\t\tnoOutputProcessing: false\r\n\t\t\t\t},\r\n\t\t\t\tselection: {\r\n\t\t\t\t\tsubbasin: null,\r\n\t\t\t\t\tstatistic: null,\r\n\t\t\t\t\toutputType: null,\r\n\t\t\t\t\tparameters: [],\r\n\t\t\t\t\tcompareScenarios: [],\r\n\t\t\t\t\thru: null,\r\n\t\t\t\t\tunits: 0\r\n\t\t\t\t},\r\n\t\t\t\tchartSelection: {\r\n\t\t\t\t\ttypes: {},\r\n\t\t\t\t\tyAxis: {}\r\n\t\t\t\t},\r\n\t\t\t\tresponseData: {},\r\n\t\t\t\tchartOptions: {},\r\n\t\t\t\tboxChartOptions: {},\n\t\t\t\tresponseStatistic: null,\r\n\t\t\t\tyAxisType: 'linear',\r\n\t\t\t\tupdateArgs: [true, true, { duration: 1000 }]\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tselection: {\r\n\t\t\t\tsubbasin: { required },\r\n\t\t\t\tstatistic: { required },\r\n\t\t\t\toutputType: { required },\r\n\t\t\t\tparameters: { required },\r\n\t\t\t\tunits: { required },\r\n\t\t\t\thru: { required: requiredIf(function(){ return this.selection.outputType === 'OutputHru'; }) }\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/output/chartoptions/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.options = response.data;\r\n\t\t\t\t\tthis.selection.units = this.options.outputTypes.defaultUnits;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.page.showChart = false;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please complete the form.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.log(this.selection);\r\n\r\n\t\t\t\t\tvar chartTypes = [];\r\n\t\t\t\t\tvar yAxis = [];\r\n\t\t\t\t\tfor (var i = 0; i < this.selection.parameters.length; i++) {\r\n\t\t\t\t\t\tvar p = this.selection.parameters[i];\r\n\t\t\t\t\t\tchartTypes.push(this.chartSelection.types[p]);\r\n\t\t\t\t\t\tyAxis.push(this.chartSelection.yAxis[p]);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.selection.chartTypes = chartTypes;\r\n\t\t\t\t\tthis.selection.yAxis = yAxis;\r\n\r\n\t\t\t\t\tthis.chartOptions = {};\n\t\t\t\t\tthis.boxChartOptions = {};\r\n\t\t\t\t\tthis.yAxisType = 'linear';\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/output/chart/${this.scenarioID}`, this.selection, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.responseData = response.data;\n\t\t\t\t\t\tthis.responseStatistic = this.selection.statistic;\n\t\t\t\t\t\tif (this.responseStatistic === 'boxplot') this.drawBoxChart();\r\n\t\t\t\t\t\telse this.drawChart();\r\n\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t\tthis.page.showChart = true;\r\n\t\t\t},\r\n\t\t\tasync mapClick(selectedSubbasins) {\r\n\t\t\t\tif (selectedSubbasins.length > 0)\r\n\t\t\t\t\tthis.selection.subbasin = selectedSubbasins[0];\r\n\t\t\t\telse\r\n\t\t\t\t\tthis.selection.subbasin = null;\r\n\t\t\t},\r\n\t\t\toutputTypeChg() {\r\n\t\t\t\tthis.selection.parameters = [];\r\n\t\t\t\tthis.chartSelection.types = {};\r\n\t\t\t\tfor (var i = 0; i < this.options.outputTypes.parameters[this.selection.outputType].length; i++) {\r\n\t\t\t\t\tvar p = this.options.outputTypes.parameters[this.selection.outputType][i];\r\n\t\t\t\t\tthis.chartSelection.types[p.variable] = \"line\";\r\n\t\t\t\t\tthis.chartSelection.yAxis[p.variable] = false;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tcheckYAxis(variable) {\r\n\t\t\t\tif (this.selection.parameters.length < 1) {\r\n\t\t\t\t\tthis.chartSelection.yAxis[variable] = true;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tdrawChart() {\r\n\t\t\t\tlet xAxis = this.responseData.xAxis;\r\n\t\t\t\tlet chartDef = { zoomType: 'x' };\r\n\r\n\t\t\t\tthis.chartOptions = {\r\n\t\t\t\t\tchart: chartDef,\r\n\t\t\t\t\ttitle: { text: this.responseData.title },\r\n\t\t\t\t\txAxis: xAxis,\r\n\t\t\t\t\tyAxis: this.responseData.yAxis,\r\n\t\t\t\t\tseries: this.responseData.series,\r\n\t\t\t\t\tplotOptions: {\r\n\t\t\t\t\t\tseries: { turboThreshold: 0 }\r\n\t\t\t\t\t},\r\n\t\t\t\t\texporting: {\r\n\t\t\t\t\t\tcsv: { dateFormat: '%Y-%m-%d' }\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t\tthis.log(this.chartOptions);\r\n\t\t\t},\r\n\t\t\tdrawBoxChart() {\r\n\t\t\t\tlet xAxis = [{ categories: this.responseData.xAxisCategories, type: 'category' }];\r\n\t\t\t\tlet chartDef = { type: 'boxplot', zoomType: 'x' };\r\n\r\n\t\t\t\tthis.boxChartOptions = {\r\n\t\t\t\t\tchart: chartDef,\r\n\t\t\t\t\ttitle: { text: this.responseData.title },\r\n\t\t\t\t\txAxis: xAxis,\r\n\t\t\t\t\tyAxis: this.responseData.yAxis,\r\n\t\t\t\t\tseries: this.responseData.series,\r\n\t\t\t\t\tplotOptions: {\r\n\t\t\t\t\t\tseries: { turboThreshold: 0 }\r\n\t\t\t\t\t},\r\n\t\t\t\t\texporting: {\r\n\t\t\t\t\t\tcsv: { dateFormat: '%Y-%m-%d' }\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t\tthis.log(this.boxChartOptions);\r\n\t\t\t},\r\n\t\t\tgetFilteredHrus() {\r\n\t\t\t\tif (this.selection.subbasin !== null) {\r\n\t\t\t\t\tvar value = this.selection.subbasin.id;\r\n\t\t\t\t\treturn this.options.printedHrus.filter(function (el) { return el.subbasinID === value; });\r\n\t\t\t\t}\r\n\t\t\t\treturn [];\r\n\t\t\t}\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\tyAxisType(newValue) {\r\n\t\t\t\tif (this.boxChartOptions && this.selection.statistic === 'boxplot') {\r\n\t\t\t\t\tlet newYAxis = [];\r\n\t\t\t\t\tfor (let i = 0; i < this.boxChartOptions.yAxis.length; i++) {\r\n\t\t\t\t\t\tnewYAxis.push({\r\n\t\t\t\t\t\t\ttype: newValue,\r\n\t\t\t\t\t\t\tallowNegativeLog: true,\r\n\t\t\t\t\t\t\ttitle: this.boxChartOptions.yAxis[i].title,\r\n\t\t\t\t\t\t\tlabels: this.boxChartOptions.yAxis[i].labels,\r\n\t\t\t\t\t\t\topposite: this.boxChartOptions.yAxis[i].opposite\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.boxChartOptions.yAxis = newYAxis;\r\n\t\t\t\t}\n\t\t\t\telse if (this.chartOptions) {\r\n\t\t\t\t\tlet newYAxis = [];\r\n\t\t\t\t\tfor (let i = 0; i < this.chartOptions.yAxis.length; i++) {\r\n\t\t\t\t\t\tnewYAxis.push({\r\n\t\t\t\t\t\t\ttype: newValue,\r\n\t\t\t\t\t\t\tallowNegativeLog: true,\r\n\t\t\t\t\t\t\ttitle: this.chartOptions.yAxis[i].title,\r\n\t\t\t\t\t\t\tlabels: this.chartOptions.yAxis[i].labels,\r\n\t\t\t\t\t\t\topposite: this.chartOptions.yAxis[i].opposite\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.chartOptions.yAxis = newYAxis;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tfilteredHrus() {\r\n\t\t\t\tvar filtered = this.getFilteredHrus();\r\n\t\t\t\tif (filtered.length > 0) return filtered;\r\n\t\t\t\treturn this.options.printedHrus;\r\n\t\t\t},\r\n\t\t\tsubbasinHasHrus() {\r\n\t\t\t\treturn this.getFilteredHrus().length > 0\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputCharts.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputCharts.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OutputCharts.vue?vue&type=template&id=69baeed1&\"\nimport script from \"./OutputCharts.vue?vue&type=script&lang=js&\"\nexport * from \"./OutputCharts.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"SWAT Check\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):(_vm.options.noOutputProcessing)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"Output processing was skipped for this scenario run. Please re-run your scenario without the \\\"skip output processing\\\" box checked to use this feature.\")])],1):_c('div',[_c('p',[_vm._v(\" SWAT Check reads model output from a SWAT project and performs many simple checks to identify potential model problems. The intended purpose of this program is to identify model problems early in the modeling process. Hidden model problems often result in the need to recalibrate or regenerate a model, resulting in an avoidable waste of time. This program is designed to compare a variety of SWAT outputs to nominal ranges based on the judgment of model developers. A warning does not necessarily indicate a problem; the purpose is to bring attention to unusual predictions. This software also provides a visual representation of various model outputs to aid novice users. \"),_c('a',{attrs:{\"href\":\"http://swat.tamu.edu/media/57020/j1-3-white.pdf\",\"target\":\"_blank\"}},[_vm._v(\"Read more about SWAT Check.\")])]),_c('b-alert',{attrs:{\"variant\":\"info\"}},[_vm._v(\" Please note: currently SWAT Check is only available for the entire watershed, regardless of what subbasin you select below. This is a work in progress. \")]),(false && !_vm.page.showForm)?_c('div',[_c('b-button',{on:{\"click\":function($event){_vm.page.showForm = !_vm.page.showForm}}},[_vm._v(\"Select another subbasin and re-run\")])],1):_vm._e(),_c('b-collapse',{model:{value:(_vm.page.showForm),callback:function ($$v) {_vm.$set(_vm.page, \"showForm\", $$v)},expression:\"page.showForm\"}},[_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('div',{staticStyle:{\"display\":\"none\"}},[_c('b-form-group',{attrs:{\"label\":\"Run SWAT Check on the entire watershed, or select a subbasin from the list or map below\"}},[_c('b-form-select',{scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{domProps:{\"value\":null}},[_vm._v(\"Entire watershed\")])]},proxy:true}]),model:{value:(_vm.selection.subbasin),callback:function ($$v) {_vm.$set(_vm.selection, \"subbasin\", $$v)},expression:\"selection.subbasin\"}},_vm._l((_vm.options.map.connections),function(c,i){return _c('option',{key:i,domProps:{\"value\":{ id: c.fromID, name: c.fromName }}},[_vm._v(\" \"+_vm._s(c.fromName)+\" \")])}),0)],1),_c('project-map',{attrs:{\"project-map\":_vm.options.map,\"height\":\"300px\",\"highlight-selected\":\"\",\"selected-subbasins\":_vm.selection.subbasin === null ? [] : [_vm.selection.subbasin]},on:{\"subbasin-click\":_vm.mapClick}})],1),_c('error-list',{staticClass:\"mt-3\",attrs:{\"errors\":_vm.page.saveErrors}}),_c('div',{staticClass:\"mt-4 mb-3\"},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"text\":\"Run SWAT Check\"}}),(_vm.page.showResults)?_c('b-button',{attrs:{\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.showForm = !_vm.page.showForm}}},[_vm._v(\"Hide form\")]):_vm._e()],1)],1)],1),(_vm.page.showResults)?_c('div',[_c('h3',{staticClass:\"mt-4 mb-3\"},[_vm._v(_vm._s(false ? _vm.resultsName : '')+\" Results\")]),_c('div',{staticClass:\"position-relative\"},[_c('div',{staticClass:\"position-absolute bg-white p-1\",staticStyle:{\"right\":\"0\"}},[_c('b-button',{staticClass:\"border mr-1\",attrs:{\"size\":\"sm\",\"variant\":\"light\",\"title\":\"Scroll tabs left\"},on:{\"click\":function($event){return _vm.scrollLeft(100)}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-left\"}})],1),_c('b-button',{staticClass:\"border\",attrs:{\"size\":\"sm\",\"variant\":\"light\",\"title\":\"Scroll tabs right\"},on:{\"click\":function($event){return _vm.scrollRight(100)}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-right\"}})],1)],1),_c('b-tabs',{staticClass:\"page-nav-tabs tabs-scroll\",attrs:{\"content-class\":\"mt-4\"},model:{value:(_vm.page.tabIndex),callback:function ($$v) {_vm.$set(_vm.page, \"tabIndex\", $$v)},expression:\"page.tabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Simulation Details\"}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('table',{staticClass:\"table table-striped\"},[_c('tr',[_c('th',[_vm._v(\"Version\")]),_c('td',[_vm._v(_vm._s(_vm.data.setup.swatVersion))])]),_c('tr',[_c('th',[_vm._v(\"Simulation Length (yrs)\")]),_c('td',[_vm._v(_vm._s(_vm.data.setup.simulationLength))])]),_c('tr',[_c('th',[_vm._v(\"Warm-up (yrs)\")]),_c('td',[_vm._v(_vm._s(_vm.data.setup.warmUp))])]),_c('tr',[_c('th',[_vm._v(\"HRUs\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.setup.hrus,0)))])]),_c('tr',[_c('th',[_vm._v(\"Subbasins\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.setup.subbasins,0)))])])])]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('table',{staticClass:\"table table-striped\"},[_c('tr',[_c('th',[_vm._v(\"Output Timestep\")]),_c('td',[_vm._v(_vm._s(_vm.data.setup.outputTimestep))])]),_c('tr',[_c('th',[_vm._v(\"Precipitation Method\")]),_c('td',[_vm._v(_vm._s(_vm.data.setup.precipMethod))])]),_c('tr',[_c('th',[_vm._v(\"Watershed Area (km\"),_c('sup',[_vm._v(\"2\")]),_vm._v(\")\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.setup.watershedArea,2)))])])])])],1)],1),_c('b-tab',{attrs:{\"title\":\"Hydrology\"}},[_c('p',[_vm._v(\" Realistic hydrology is the foundation of any model. Pay particular attention to evapotranspiration, baseflow and surface runoff ratios. Baseflow/streamflow ratios for the US are provided by the USGS, these data are accessible via the button below. The ranges specified here are general guidelines only, and may not apply to your simulation area. \")]),_c('b-modal',{attrs:{\"scrollable\":\"\",\"size\":\"lg\",\"title\":\"Average monthly basin values\"},model:{value:(_vm.modals.hydrology.monthlyBasinValues),callback:function ($$v) {_vm.$set(_vm.modals.hydrology, \"monthlyBasinValues\", $$v)},expression:\"modals.hydrology.monthlyBasinValues\"}},[_c('div',{staticClass:\"table-responsive\"},[_c('table',{staticClass:\"table table-sm table-striped nowrap-headers\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Mon\")]),_c('th',[_vm._v(\"Rain (MM)\")]),_c('th',[_vm._v(\"Snow Fall (MM)\")]),_c('th',[_vm._v(\"SURF Q (MM)\")]),_c('th',[_vm._v(\"LAT Q (MM)\")]),_c('th',[_vm._v(\"Water Yield (MM)\")]),_c('th',[_vm._v(\"ET (MM)\")]),_c('th',[_vm._v(\"Sed. Yield (T/HA)\")]),_c('th',[_vm._v(\"PET (MM)\")])])]),_c('tbody',_vm._l((_vm.data.hydrology.monthlyBasinValues),function(m,i){return _c('tr',{key:i},[_c('td',[_vm._v(_vm._s(m.mon))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.rain,2)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.snowFall,2)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.surfQ,2)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.latQ,2)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.waterYield,2)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.et,2)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.sedYield,2)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.pet,2)))])])}),0)])]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":function($event){_vm.modals.hydrology.monthlyBasinValues = false}}},[_vm._v(\"Close\")])],1)]),_c('b-modal',{attrs:{\"scrollable\":\"\",\"size\":\"lg\",\"title\":\"Fraction of streamflow derived from baseflow\"},model:{value:(_vm.modals.hydrology.baseflowMap),callback:function ($$v) {_vm.$set(_vm.modals.hydrology, \"baseflowMap\", $$v)},expression:\"modals.hydrology.baseflowMap\"}},[_c('p',[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":`${_vm.publicPath}images/swat-check/Baseflow_Map.png`,\"alt\":\"Baseflow_Map.png\"}})]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":function($event){_vm.modals.hydrology.baseflowMap = false}}},[_vm._v(\"Close\")])],1)]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('p',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.modals.hydrology.monthlyBasinValues = true}}},[_vm._v(\"View average monthly basin values.\")]),_c('br'),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.modals.hydrology.baseflowMap = true}}},[_vm._v(\"View US baseflow map.\")])]),(_vm.data.hydrology.warnings.length > 0)?_c('div',[_c('h5',[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.hydrology.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e()]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('h5',[_vm._v(\"Water Balance Ratios\")]),_c('table',{staticClass:\"table table-striped\"},[_c('tr',[_c('th',[_vm._v(\"Streamflow/Precip\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.streamflowPrecipitation,3)))])]),_c('tr',[_c('th',[_vm._v(\"Baseflow/Total Flow\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.baseflowTotalFlow,3)))])]),_c('tr',[_c('th',[_vm._v(\"Surface Runoff/Total Flow\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.surfaceRunoffTotalFlow,3)))])]),_c('tr',[_c('th',[_vm._v(\"Perc/Precip\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.percolationPrecipitation,3)))])]),_c('tr',[_c('th',[_vm._v(\"Deep Recharge/Precip\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.deepRechargePrecipitation,3)))])]),_c('tr',[_c('th',[_vm._v(\"ET/Precipitation\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.etPrecipitation,3)))])])])])],1),_c('div',{staticClass:\"picture-holder\",attrs:{\"id\":\"hydrology\"}},[_c('span',{attrs:{\"id\":\"pet\"}},[_vm._v(\"PET\"),_c('br'),_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.pet,3)))]),_c('span',{attrs:{\"id\":\"et\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.et,3)))]),_c('span',{attrs:{\"id\":\"precip\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.precipitation,3)))]),_c('span',{attrs:{\"id\":\"cn\"}},[_vm._v(\"Average Curve Number\"),_c('br'),_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.averageCN,3)))]),_c('span',{attrs:{\"id\":\"surfacerunoff\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.surfaceRunoff,3)))]),_c('span',{attrs:{\"id\":\"lateralflow\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.lateralFlow,3)))]),_c('span',{attrs:{\"id\":\"returnflow\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.returnFlow,3)))]),_c('span',{attrs:{\"id\":\"perc\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.percolation,3)))]),_c('span',{attrs:{\"id\":\"revap\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.revap,3)))]),_c('span',{attrs:{\"id\":\"recharge\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.hydrology.recharge,3)))]),_c('span',{attrs:{\"id\":\"hydrology-units\"}},[_vm._v(\"All Units mm\")])])],1),_c('b-tab',{attrs:{\"title\":\"Sediment\"}},[_c('p',[_vm._v(\" Sediment loss form the landscape is dependent upon many factors. Sediment overestimation in SWAT is most commonly due to inadequate biomass production. This often occurs on specific land uses. If your maximum upland sediment yield is excessive, use the landuse summary tab to identify the problem land use. \")]),_c('p',[_vm._v(\" SWAT also modifies sediments to account for in-stream deposition and erosion of stream banks and channels. Often there is little or no measured data to differentiate between upland sediment and in-stream sediment changes. Streams may be either a net source of sediment, or a sink. In-stream sediment modification is impacted by physical channel characteristic’s (slope, width, depth, channel cover, and substrate characteristics) and the quantity of sediment and flow from upstream. \")]),(_vm.data.sediment.warnings.length > 0)?_c('div',[_c('h5',{staticClass:\"mt-3\"},[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.sediment.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e(),_c('div',{staticClass:\"picture-holder\",attrs:{\"id\":\"sediment\"}},[_c('span',{attrs:{\"id\":\"maxupland\"}},[_vm._v(\"Maximum Upland Sediment Yield\"),_c('br'),_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.data.sediment.maxUplandSedimentYield,3))+\" Mg/ha\")]),_c('span',{attrs:{\"id\":\"surfacerunoffsed\"}},[_vm._v(\"Surface Runoff\"),_c('br'),_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.data.sediment.surfaceRunoff,3))+\" mm/yr\")]),_c('span',{attrs:{\"id\":\"avgupland\"}},[_vm._v(\"Average Upland Sediment Yield\"),_c('br'),_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.data.sediment.avgUplandSedimentYield,3))+\" Mg/ha\")]),_c('span',{attrs:{\"id\":\"inletsed\"}},[_vm._v(\"Inlet/Point Sources Sediment\"),_c('br'),_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.data.sediment.inletSediment,3))+\" Mg/year\")]),_c('span',{attrs:{\"id\":\"instreamsed\"}},[_vm._v(\"Instream Sediment Change\"),_c('br'),_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.data.sediment.inStreamSedimentChange,3))+\" Mg/ha\")])])]),_c('b-tab',{attrs:{\"title\":\"Nitrogen Cycle\"}},[_c('p',[_vm._v(\" The nitrogen cycle is key to biomass production, which in turn impacts ET and sediment yield. The nitrogen cycle is complex, it is generally not possible to validate these routines outside a research setting. Of particular importance are the total applied nitrogen fertilizer and losses due to plant uptake, and volatilization and denitrification. Soils contain a large amount of organic nitrogen in the form of organic matter. Large changes in initial and final nitrogen contents (in particular organic n) may indicate under or over fertilization during the simulation. \")]),_c('div',{staticClass:\"picture-holder\",attrs:{\"id\":\"ncycle\"}},[_c('span',{attrs:{\"id\":\"initno3\"}},[_vm._v(\" Initial NO\"),_c('sub',[_vm._v(\"3\")]),_vm._v(\": \"+_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.initialNO3,3))),_c('br'),_vm._v(\" Final NO\"),_c('sub',[_vm._v(\"3\")]),_vm._v(\": \"+_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.finalNO3,3))+\" \")]),_c('span',{attrs:{\"id\":\"volatilization\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.volatilization,3)))]),_c('span',{attrs:{\"id\":\"denit\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.denitrification,3)))]),_c('span',{attrs:{\"id\":\"inorgnh4\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.nH4InOrgNFertilizer,3)))]),_c('span',{attrs:{\"id\":\"inorgno3\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.nO3InOrgNFertilizer,3)))]),_c('span',{attrs:{\"id\":\"nplantuptake\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.plantUptake,3)))]),_c('span',{attrs:{\"id\":\"nitrification\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.nitrification,3)))]),_c('span',{attrs:{\"id\":\"nmineralization\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.mineralization,3)))]),_c('span',{attrs:{\"id\":\"initorgn\"}},[_vm._v(\" Initial Org N: \"+_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.initialOrgN,3))),_c('br'),_vm._v(\" Final Org N: \"+_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.finalOrgN,3))+\" \")]),_c('span',{attrs:{\"id\":\"orgn\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.orgNFertilizer,3)))]),_c('span',{attrs:{\"id\":\"activetostable\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.activeToStableOrgN,3)))]),_c('span',{attrs:{\"id\":\"nresidue\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.residueMineralization,3)))]),_c('span',{attrs:{\"id\":\"totaln\"}},[_vm._v(\"Total Fertilizer N: \"+_vm._s(_vm._f(\"number\")(_vm.data.nitrogenCycle.totalFertilizerN,3)))]),_c('span',{attrs:{\"id\":\"ncycle-units\"}},[_vm._v(\"All units kg/ha\")])]),(_vm.data.nitrogenCycle.warnings.length > 0)?_c('div',[_c('h5',{staticClass:\"mt-3\"},[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.nitrogenCycle.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e()]),_c('b-tab',{attrs:{\"title\":\"Phosphorus Cycle\"}},[_c('p',[_vm._v(\" The phosphorus cycle is of particular interest in watersheds with significant animal manure application. Soils contain a large reservoir of both mineral and organic phosphorus. Large increases in mineral phosphorus content during the simulation often result from overfertilization with either commercial or manure phosphorus sources. This also means that phosphorus concentrations in runoff also increase during the simulation period. Plant uptake is the dominant loss pathway for soil phosphorus under most conditions. \")]),_c('div',{staticClass:\"picture-holder\",attrs:{\"id\":\"pcycle\"}},[_c('span',{attrs:{\"id\":\"minp\"}},[_vm._v(\" Initial Min P: \"+_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.initialMinP,3))),_c('br'),_vm._v(\" Final Min P: \"+_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.finalMinP,3))+\" \")]),_c('span',{attrs:{\"id\":\"orgp\"}},[_vm._v(\" Initial Org P: \"+_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.initialOrgP,3))),_c('br'),_vm._v(\" Final Org P: \"+_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.finalOrgP,3))+\" \")]),_c('span',{attrs:{\"id\":\"totalp\"}},[_vm._v(\"Total Fertilizer P: \"+_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.totalFertilizerP,3)))]),_c('span',{attrs:{\"id\":\"inorgp\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.inOrgPFertilizer,3)))]),_c('span',{attrs:{\"id\":\"pplantuptake\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.plantUptake,3)))]),_c('span',{attrs:{\"id\":\"pstableactive\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.stableActive,3)))]),_c('span',{attrs:{\"id\":\"pactivesol\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.activeSolution,3)))]),_c('span',{attrs:{\"id\":\"pmineralization\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.mineralization,3)))]),_c('span',{attrs:{\"id\":\"orgpfert\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.orgPFertilizer,3)))]),_c('span',{attrs:{\"id\":\"presidue\"}},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.phosphorusCycle.residueMineralization,3)))]),_c('span',{attrs:{\"id\":\"pcycle-units\"}},[_vm._v(\"All units kg/ha\")])]),(_vm.data.phosphorusCycle.warnings.length > 0)?_c('div',[_c('h5',{staticClass:\"mt-3\"},[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.phosphorusCycle.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e()]),_c('b-tab',{attrs:{\"title\":\"Plant Growth\"}},[_c('p',[_vm._v(\" Proper plant growth is key to accurate runoff and sediment predictions. Problems in plant growth are often related to excessive stress due to temperature or the lack of water/nutrients. The data presented here are basin averages, and may not reflect problems with individual land uses. Carefully review the land use summary tab. \")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('table',{staticClass:\"table table-striped\"},[_c('tr',[_c('th',[_vm._v(\"Temperature Stress Days\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.tempStressDays,3)))])]),_c('tr',[_c('th',[_vm._v(\"Water Stress Days\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.waterStressDays,3)))])]),_c('tr',[_c('th',[_vm._v(\"Nitrogen Stress Days\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.nStressDays,3)))])]),_c('tr',[_c('th',[_vm._v(\"Phosphorus Stress Days\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.pStressDays,3)))])])]),(_vm.data.plantGrowth.warnings.length > 0)?_c('div',[_c('h5',[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.plantGrowth.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e()]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('div',{staticClass:\"picture-holder\",attrs:{\"id\":\"plantgrowth\"}},[_c('span',{attrs:{\"id\":\"plantavg\"}},[_vm._v(\" Average Biomass: \"+_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.avgBiomass,3))+\" Mg/ha\"),_c('br'),_vm._v(\" Average Yield: \"+_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.avgYield,3))+\" Mg/ha \")]),_c('span',{attrs:{\"id\":\"npremoved\"}},[_vm._v(\" N Removed in Yield: \"+_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.nRemoved,3))+\" kg/ha\"),_c('br'),_vm._v(\" P Removed in Yield: \"+_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.pRemoved,3))+\" kg/ha \")]),_c('span',{attrs:{\"id\":\"totalnp\"}},[_vm._v(\" Total Fertilizer N: \"+_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.totalFertilizerN,3))+\" kg/ha\"),_c('br'),_vm._v(\" Total Fertilizer P: \"+_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.totalFertilizerP,3))+\" kg/ha \")]),_c('span',{attrs:{\"id\":\"plantuptakenp\"}},[_vm._v(\" Plant Uptake N: \"+_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.plantUptakeN,3))+\" kg/ha\"),_c('br'),_vm._v(\" Plant Uptake P: \"+_vm._s(_vm._f(\"number\")(_vm.data.plantGrowth.plantUptakeP,3))+\" kg/ha \")])])])],1)],1),_c('b-tab',{attrs:{\"title\":\"Landscape Nutrient Losses\"}},[_c('p',[_vm._v(\" Nutrient losses are a critical aspect of many studies. The data presented here are losses from the landscape surface, which is delivered to reaches. These are basin averages. The link below contains a summary of edge of field nutrient losses from monitoring studies by individual crops. These data can be compared to SWAT predictions to verify the appropriate magnitude of predicted losses. \")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('h5',[_vm._v(\"Nitrogen Losses (kg/ha)\")]),_c('table',{staticClass:\"table table-striped table-definitions\"},[_c('tr',[_c('th',[_vm._v(\"Total N Loss\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.nLosses.totalLoss,3)))])]),_c('tr',[_c('th',[_vm._v(\"Organic N\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.nLosses.orgN,3)))])]),_c('tr',[_c('th',[_vm._v(\"Nitrate Surface Runoff\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.nLosses.surfaceRunoff,3)))])]),_c('tr',[_c('th',[_vm._v(\"Nitrate Leached\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.nLosses.leached,3)))])]),_c('tr',[_c('th',[_vm._v(\"Nitrate Lateral Flow\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.nLosses.lateralFlow,3)))])]),_c('tr',[_c('th',[_vm._v(\"Nitrate Groundwater Yield\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.nLosses.groundwaterYield,3)))])]),_c('tr',[_c('th',[_vm._v(\"Solubility Ratio in Runoff\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.nLosses.solubilityRatio,3)))])])])]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('h5',[_vm._v(\"Phosphorus Losses (kg/ha)\")]),_c('table',{staticClass:\"table table-striped table-definitions\"},[_c('tr',[_c('th',[_vm._v(\"Total P Loss\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.pLosses.totalLoss,3)))])]),_c('tr',[_c('th',[_vm._v(\"Organic P\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.pLosses.orgP,3)))])]),_c('tr',[_c('th',[_vm._v(\"Soluble P Surface Runoff\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.pLosses.surfaceRunoff,3)))])]),_c('tr',[_c('th',[_vm._v(\"Solubility Ratio in Runoff\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.landscapeNutrientLosses.pLosses.solubilityRatio,3)))])])])])],1),(_vm.data.landscapeNutrientLosses.warnings.length > 0)?_c('div',[_c('h5',[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.landscapeNutrientLosses.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e(),_c('h5',[_vm._v(\"Measured Nutrient Losses by Crop and Tillage\")]),_c('p',[_vm._v(\" From Harmel, D., et al. 2006 Compilation of Measured Nutrient Load Data for Agricultural Land Uses in the United States. \"),_c('em',[_vm._v(\"Journal of the American Water Resources Association\")]),_vm._v(\" 42(5):1163-1178. \")]),_c('p',[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":`${_vm.publicPath}images/swat-check/nut_croptype2.png`,\"alt\":\"nut_croptype2.png\"}})]),_c('p',[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":`${_vm.publicPath}images/swat-check/nut_croptype3.png`,\"alt\":\"nut_croptype3.png\"}})])],1),_c('b-tab',{attrs:{\"title\":\"Land Use Summary\"}},[_c('p',[_vm._v(\" Model errors are often isolated to a particular land use type. If the land use is relatively minor, these issues may go unnoticed at the basin outlet during calibration. Often, these minor land uses are the focus of scenario development, and errors become apparent after the investment of much calibration effort. \")]),_c('h5',[_vm._v(\"Summary by Reported Land Use\")]),_c('p',[_vm._v(\" This table contains a few important predictions summarized by land use. These should be reviewed carefully. \")]),_c('div',{staticClass:\"table-responsive\"},[_c('table',{staticClass:\"table table-striped table-sm\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"LULC\")]),_c('th',[_vm._v(\"AREA km2\")]),_c('th',[_vm._v(\"CN\")]),_c('th',[_vm._v(\"AWC mm\")]),_c('th',[_vm._v(\"USLE_LS\")]),_c('th',[_vm._v(\"IRR mm\")]),_c('th',[_vm._v(\"PREC mm\")]),_c('th',[_vm._v(\"SURQ mm\")]),_c('th',[_vm._v(\"GWQ mm\")]),_c('th',[_vm._v(\"ET mm\")]),_c('th',[_vm._v(\"SED th\")]),_c('th',[_vm._v(\"NO3 kgh\")]),_c('th',[_vm._v(\"ORGN kgh\")]),_c('th',[_vm._v(\"BIOM th\")]),_c('th',[_vm._v(\"YLD th\")])])]),_c('tbody',_vm._l((_vm.data.landUseSummary.landUseRows),function(m,i){return _c('tr',{key:i},[_c('td',[_vm._v(_vm._s(m.landUse))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.area,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.cn,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.awc,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.uslE_LS,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.irr,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.prec,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.surq,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.gwq,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.et,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.sed,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.nO3,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.orgn,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.biom,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.yld,3)))])])}),0)])]),(_vm.data.landUseSummary.warnings.length > 0)?_c('div',[_c('h5',[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.landUseSummary.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e(),(_vm.data.landUseSummary.hruLevelWarnings.length > 0)?_c('div',[_c('h5',[_vm._v(\"HRU Level Warnings\")]),_c('p',[_vm._v(\" These are provided only to help isolate problem HRUs within a particular land use. We do not recommend that these be used during routine checking of model output. \")]),_c('ul',_vm._l((_vm.data.landUseSummary.hruLevelWarnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e()]),_c('b-tab',{attrs:{\"title\":\"Instream Processes\"}},[_c('p',[_vm._v(\" In-stream processes may have a large impact on sediment and nutrient loads. It is difficult to gage appropriate values for these outputs. In-stream sediment change can be either positive or negative. Typically streams are a net sink for nutrients. Channel geomorphology can provide some guidance as to the net contribution of in-stream processes. \")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[(_vm.data.instreamProcesses.warnings.length > 0)?_c('div',[_c('h5',[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.instreamProcesses.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e(),_c('h5',[_vm._v(\"Detailed Reach Report - Delivery ratio of segment (%)\")]),_c('b-table',{attrs:{\"striped\":\"\",\"hover\":\"\",\"small\":\"\",\"items\":_vm.data.instreamProcesses.reaches,\"fields\":[{ key: 'id', label: 'RCH#'}, 'sediment', 'phosphorus', 'nitrogen']},scopedSlots:_vm._u([{key:\"cell(sediment)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")(data.item.sediment,3))+\" \")]}},{key:\"cell(phosphorus)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")(data.item.phosphorus,3))+\" \")]}},{key:\"cell(nitrogen)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"number\")(data.item.nitrogen,3))+\" \")]}}],null,false,1980312139)})],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('h5',[_vm._v(\"Sediment Budget\")]),_c('table',{staticClass:\"table table-striped table-definitions instream\"},[_c('tr',[_c('th',[_vm._v(\"Upland Sediment Yield\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.uplandSedimentYield,3)))]),_c('td',[_vm._v(\"Mg/ha\")])]),_c('tr',[_c('th',[_vm._v(\"Instream Sediment Change\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.instreamSedimentChange,3)))]),_c('td',[_vm._v(\"Mg/ha\")])]),_c('tr',[_c('th',[_vm._v(\"Channel Erosion\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.channelErosion,3)))]),_c('td',[_vm._v(\"%\")])]),_c('tr',[_c('th',[_vm._v(\"Channel Deposition\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.channelDeposition,3)))]),_c('td',[_vm._v(\"%\")])])]),_c('h5',[_vm._v(\"Instream Nutrient Modification\")]),_c('table',{staticClass:\"table table-striped table-definitions instream\"},[_c('tr',[_c('th',[_vm._v(\"Total Nitrogen\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.totalN,3)))]),_c('td',[_vm._v(\"%\")])]),_c('tr',[_c('th',[_vm._v(\"Total Phosphorus\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.totalP,3)))]),_c('td',[_vm._v(\"%\")])])]),_c('h5',[_vm._v(\"Instream Water Budget\")]),_c('table',{staticClass:\"table table-striped table-definitions instream\"},[_c('tr',[_c('th',[_vm._v(\"Total Streamflow Losses\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.totalStreamflowLosses,3)))]),_c('td',[_vm._v(\"%\")])]),_c('tr',[_c('th',[_vm._v(\"Evaporation Loss\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.evaporationLoss,3)))]),_c('td',[_vm._v(\"%\")])]),_c('tr',[_c('th',[_vm._v(\"Seepage Loss\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.instreamProcesses.seepageLoss,3)))]),_c('td',[_vm._v(\"%\")])])])])],1)],1),_c('b-tab',{attrs:{\"title\":\"Point Sources\"}},[_c('p',[_vm._v(\" Point sources constantly discharge pollutants to streams. These are an optional feature in SWAT. These summaries are presented so that the relative contribution of these sources can be verified. Point sources contributions are so varied that there is no reasonable range which can be applied to all basins. \")]),(_vm.data.pointSources.warnings.length > 0)?_c('div',[_c('h5',[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.pointSources.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e(),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('h5',[_vm._v(\"Total Subbasin Load\")]),_c('table',{staticClass:\"table table-striped table-definitions\"},[_c('tr',[_c('th',[_vm._v(\"Flow\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.subbasinLoad.flow,3)))]),_c('td',[_vm._v(\"cms\")])]),_c('tr',[_c('th',[_vm._v(\"Sediment\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.subbasinLoad.sediment,3)))]),_c('td',[_vm._v(\"Mg/yr\")])]),_c('tr',[_c('th',[_vm._v(\"Nitrogen\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.subbasinLoad.nitrogen,3)))]),_c('td',[_vm._v(\"kg/yr\")])]),_c('tr',[_c('th',[_vm._v(\"Phosphorus\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.subbasinLoad.phosphorus,3)))]),_c('td',[_vm._v(\"kg/yr\")])])])]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('h5',[_vm._v(\"Total Point Source + Inlet Load\")]),_c('table',{staticClass:\"table table-striped table-definitions\"},[_c('tr',[_c('th',[_vm._v(\"Flow\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.pointSourceInletLoad.flow,3)))]),_c('td',[_vm._v(\"cms\")])]),_c('tr',[_c('th',[_vm._v(\"Sediment\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.pointSourceInletLoad.sediment,3)))]),_c('td',[_vm._v(\"Mg/yr\")])]),_c('tr',[_c('th',[_vm._v(\"Nitrogen\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.pointSourceInletLoad.nitrogen,3)))]),_c('td',[_vm._v(\"kg/yr\")])]),_c('tr',[_c('th',[_vm._v(\"Phosphorus\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.pointSourceInletLoad.phosphorus,3)))]),_c('td',[_vm._v(\"kg/yr\")])])])]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('h5',[_vm._v(\"Load from Inlet + PS (%)\")]),_c('table',{staticClass:\"table table-striped table-definitions\"},[_c('tr',[_c('th',[_vm._v(\"Flow\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.fromInletAndPointSource.flow,3)))]),_c('td',[_vm._v(\"%\")])]),_c('tr',[_c('th',[_vm._v(\"Sediment\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.fromInletAndPointSource.sediment,3)))]),_c('td',[_vm._v(\"%\")])]),_c('tr',[_c('th',[_vm._v(\"Nitrogen\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.fromInletAndPointSource.nitrogen,3)))]),_c('td',[_vm._v(\"%\")])]),_c('tr',[_c('th',[_vm._v(\"Phosphorus\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.pointSources.fromInletAndPointSource.phosphorus,3)))]),_c('td',[_vm._v(\"%\")])])])])],1)],1),_c('b-tab',{attrs:{\"title\":\"Reservoirs\"}},[_c('p',[_vm._v(\" Reservoirs are an option feature in SWAT. The hydrology of basins with large reservoirs may be completely dominated by reservoir processes and release rates. The data presented below is an average of all reservoirs; \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.modals.reservoirs.table = true}}},[_vm._v(\"see data for individual reservoirs\")]),_vm._v(\". The statistics presented here are designed to identify common reservoir issues. The use of user specified release rate may cause a reservoir to grow continuously or run completely dry. These common issues can be detected via the final/initial volume ratio and fraction of period empty statistics below. \")]),_c('b-modal',{attrs:{\"scrollable\":\"\",\"size\":\"lg\",\"title\":\"Detailed Reservoir Performance Output\"},model:{value:(_vm.modals.reservoirs.table),callback:function ($$v) {_vm.$set(_vm.modals.reservoirs, \"table\", $$v)},expression:\"modals.reservoirs.table\"}},[_c('div',{staticClass:\"table-responsive\"},[_c('table',{staticClass:\"table table-striped\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"RES#\")]),_c('th',[_vm._v(\"Sediment\")]),_c('th',[_vm._v(\"Phosphorus\")]),_c('th',[_vm._v(\"Nitrogen\")]),_c('th',[_vm._v(\"Vol. Ratio\")]),_c('th',[_vm._v(\"Fraction Empty\")]),_c('th',[_vm._v(\"Seepage\")]),_c('th',[_vm._v(\"Evap. Loss\")])])]),_c('tbody',_vm._l((_vm.data.reservoirs.reservoirRows),function(m,i){return _c('tr',{key:i},[_c('td',[_vm._v(_vm._s(m.id))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.sediment,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.phosphorus,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.nitrogen,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.volumeRatio,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.fractionEmpty,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.seepage,3)))]),_c('td',[_vm._v(_vm._s(_vm._f(\"number\")(m.evapLoss,3)))])])}),0)])]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":function($event){_vm.modals.reservoirs.table = false}}},[_vm._v(\"Close\")])],1)]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"4\"}},[_c('h5',[_vm._v(\"Average Trapping Efficiency (%)\")]),_c('table',{staticClass:\"table table-striped table-definitions\"},[_c('tr',[_c('th',[_vm._v(\"Sediment\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgTrappingEfficiencies.sediment,3)))])]),_c('tr',[_c('th',[_vm._v(\"Nitrogen\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgTrappingEfficiencies.nitrogen,3)))])]),_c('tr',[_c('th',[_vm._v(\"Phosphorus\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgTrappingEfficiencies.phosphorus,3)))])])]),_c('h5',[_vm._v(\"Average Water Loss (%)\")]),_c('table',{staticClass:\"table table-striped table-definitions\"},[_c('tr',[_c('th',[_vm._v(\"Total Removed + Losses\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgWaterLosses.totalRemoved,3)))])]),_c('tr',[_c('th',[_vm._v(\"Evaporation\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgWaterLosses.evaporation,3)))])]),_c('tr',[_c('th',[_vm._v(\"Seepage\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgWaterLosses.seepage,3)))])])]),_c('h5',[_vm._v(\"Average Reservoir Trends\")]),_c('table',{staticClass:\"table table-striped table-definitions\"},[_c('tr',[_c('th',[_vm._v(\"Number of Reservoirs\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgReservoirTrends.numberReservoirs,3)))])]),_c('tr',[_c('th',[_vm._v(\"Final/Initial Volume (Max)\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgReservoirTrends.maxVolume,3)))])]),_c('tr',[_c('th',[_vm._v(\"Final/Initial Volume (Min)\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgReservoirTrends.minVolume,3)))])]),_c('tr',[_c('th',[_vm._v(\"Fraction of Period Empty (Max)\")]),_c('td',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.reservoirs.avgReservoirTrends.fractionEmpty,3)))])])])]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('p',[_c('img',{staticClass:\"img-fluid\",attrs:{\"src\":`${_vm.publicPath}images/swat-check/res.jpg`,\"alt\":\"res image\"}})]),(_vm.data.reservoirs.warnings.length > 0)?_c('div',[_c('h3',[_vm._v(\"Messages and Warnings\")]),_c('ul',_vm._l((_vm.data.reservoirs.warnings),function(warning,i){return _c('li',{key:i},[_vm._v(_vm._s(warning))])}),0)]):_vm._e()])],1)],1)],1)],1),_c('fixed-action-bar',{attrs:{\"cols\":10,\"offset\":2,\"cols-lg\":10,\"offset-lg\":2}},[_c('b-button',{staticClass:\"border mr-2\",attrs:{\"variant\":\"light\",\"disabled\":_vm.page.tabIndex == 0,\"title\":\"Previous tab\"},on:{\"click\":function($event){return _vm.nextTab(-1)}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-left\"}})],1),_c('b-button',{staticClass:\"border mr-2\",attrs:{\"variant\":\"light\",\"disabled\":_vm.page.tabIndex == _vm.page.numTabs - 1,\"title\":\"Next tab\"},on:{\"click\":function($event){return _vm.nextTab(1)}}},[_c('font-awesome-icon',{attrs:{\"icon\":\"chevron-right\"}})],1)],1)],1):_vm._e()],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">SWAT Check</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"options.noOutputProcessing\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>Output processing was skipped for this scenario run. Please re-run your scenario without the \"skip output processing\" box checked to use this feature.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tSWAT Check reads model output from a SWAT project and performs many simple checks to identify potential model problems.\r\n\t\t\t\t\tThe intended purpose of this program is to identify model problems early in the modeling process. Hidden model problems\r\n\t\t\t\t\toften result in the need to recalibrate or regenerate a model, resulting in an avoidable waste of time. This program is\r\n\t\t\t\t\tdesigned to compare a variety of SWAT outputs to nominal ranges based on the judgment of model developers. A warning does\r\n\t\t\t\t\tnot necessarily indicate a problem; the purpose is to bring attention to unusual predictions. This software also provides\r\n\t\t\t\t\ta visual representation of various model outputs to aid novice users.\r\n\t\t\t\t\t<a href=\"http://swat.tamu.edu/media/57020/j1-3-white.pdf\" target=\"_blank\">Read more about SWAT Check.</a>\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<b-alert variant=\"info\">\r\n\t\t\t\t\tPlease note: currently SWAT Check is only available for the entire watershed, regardless of what subbasin you select below.\r\n\t\t\t\t\tThis is a work in progress.\r\n\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t<div v-if=\"false && !page.showForm\">\r\n\t\t\t\t\t<b-button @click=\"page.showForm = !page.showForm\">Select another subbasin and re-run</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t\t<b-collapse v-model=\"page.showForm\">\r\n\t\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t\t<div style=\"display:none\">\r\n\t\t\t\t\t\t\t<b-form-group label=\"Run SWAT Check on the entire watershed, or select a subbasin from the list or map below\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"selection.subbasin\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<option :value=\"null\">Entire watershed</option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t<option v-for=\"(c, i) in options.map.connections\" :key=\"i\" :value=\"{ id: c.fromID, name: c.fromName }\">\r\n\t\t\t\t\t\t\t\t\t\t{{c.fromName}}\r\n\t\t\t\t\t\t\t\t\t</option>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<project-map :project-map=\"options.map\" height=\"300px\"\r\n\t\t\t\t\t\t\t\t\t\t highlight-selected\r\n\t\t\t\t\t\t\t\t\t\t :selected-subbasins=\"selection.subbasin === null ? [] : [selection.subbasin]\"\r\n\t\t\t\t\t\t\t\t\t\t @subbasin-click=\"mapClick\"></project-map>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\" class=\"mt-3\"></error-list>\r\n\r\n\t\t\t\t\t\t<div class=\"mt-4 mb-3\">\r\n\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" text=\"Run SWAT Check\" />\r\n\t\t\t\t\t\t\t<b-button @click=\"page.showForm = !page.showForm\" v-if=\"page.showResults\" variant=\"secondary\">Hide form</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-form>\r\n\t\t\t\t</b-collapse>\r\n\r\n\t\t\t\t<div v-if=\"page.showResults\">\r\n\t\t\t\t\t<h3 class=\"mt-4 mb-3\">{{false ? resultsName : ''}} Results</h3>\r\n\r\n\t\t\t\t\t<div class=\"position-relative\">\r\n\t\t\t\t\t\t<div style=\"right:0\" class=\"position-absolute bg-white p-1\">\r\n\t\t\t\t\t\t\t<b-button size=\"sm\" variant=\"light\" @click=\"scrollLeft(100)\" class=\"border mr-1\" title=\"Scroll tabs left\"><font-awesome-icon icon=\"chevron-left\" /></b-button>\r\n\t\t\t\t\t\t\t<b-button size=\"sm\" variant=\"light\" @click=\"scrollRight(100)\" class=\"border\" title=\"Scroll tabs right\"><font-awesome-icon icon=\"chevron-right\" /></b-button>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<b-tabs v-model=\"page.tabIndex\" content-class=\"mt-4\" class=\"page-nav-tabs tabs-scroll\">\r\n\t\t\t\t\t\t\t<b-tab title=\"Simulation Details\">\r\n\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Version</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.setup.swatVersion}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Simulation Length (yrs)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.setup.simulationLength}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Warm-up (yrs)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.setup.warmUp}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>HRUs</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.setup.hrus | number(0)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Subbasins</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.setup.subbasins | number(0)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Output Timestep</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.setup.outputTimestep}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Precipitation Method</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.setup.precipMethod}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Watershed Area (km<sup>2</sup>)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.setup.watershedArea | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Hydrology\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tRealistic hydrology is the foundation of any model.  Pay particular attention to evapotranspiration, baseflow and surface runoff ratios.\r\n\t\t\t\t\t\t\t\t\tBaseflow/streamflow ratios for the US are provided by the USGS, these data are accessible via the button below.\r\n\t\t\t\t\t\t\t\t\tThe ranges specified here are general guidelines only, and may not apply to your simulation area.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<b-modal v-model=\"modals.hydrology.monthlyBasinValues\" scrollable size=\"lg\" title=\"Average monthly basin values\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"table-responsive\">\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-sm table-striped nowrap-headers\">\r\n\t\t\t\t\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Mon</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Rain (MM)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Snow Fall (MM)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>SURF Q (MM)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>LAT Q (MM)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Water Yield (MM)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>ET (MM)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Sed. Yield (T/HA)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>PET (MM)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr v-for=\"(m, i) in data.hydrology.monthlyBasinValues\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.mon}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.rain | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.snowFall | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.surfQ | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.latQ | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.waterYield | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.et | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.sedYield | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.pet | number(2)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"primary\" @click=\"modals.hydrology.monthlyBasinValues = false\">Close</b-button>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t\t\t\t<b-modal v-model=\"modals.hydrology.baseflowMap\" scrollable size=\"lg\" title=\"Fraction of streamflow derived from baseflow\">\r\n\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t<img class=\"img-fluid\" :src=\"`${publicPath}images/swat-check/Baseflow_Map.png`\" alt=\"Baseflow_Map.png\" />\r\n\t\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"primary\" @click=\"modals.hydrology.baseflowMap = false\">Close</b-button>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#\" @click.prevent=\"modals.hydrology.monthlyBasinValues = true\">View average monthly basin values.</a><br />\r\n\t\t\t\t\t\t\t\t\t\t\t<a href=\"#\" @click.prevent=\"modals.hydrology.baseflowMap = true\">View US baseflow map.</a>\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t<div v-if=\"data.hydrology.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t\t\t<h5>Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.hydrology.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<h5>Water Balance Ratios</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Streamflow/Precip</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.hydrology.streamflowPrecipitation | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Baseflow/Total Flow</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.hydrology.baseflowTotalFlow | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Surface Runoff/Total Flow</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.hydrology.surfaceRunoffTotalFlow | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Perc/Precip</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.hydrology.percolationPrecipitation | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Deep Recharge/Precip</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.hydrology.deepRechargePrecipitation | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>ET/Precipitation</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.hydrology.etPrecipitation | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t<div id=\"hydrology\" class=\"picture-holder\">\r\n\t\t\t\t\t\t\t\t\t<span id=\"pet\">PET<br />{{data.hydrology.pet | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"et\">{{data.hydrology.et | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"precip\">{{data.hydrology.precipitation | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"cn\">Average Curve Number<br />{{data.hydrology.averageCN | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"surfacerunoff\">{{data.hydrology.surfaceRunoff | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"lateralflow\">{{data.hydrology.lateralFlow | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"returnflow\">{{data.hydrology.returnFlow | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"perc\">{{data.hydrology.percolation | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"revap\">{{data.hydrology.revap | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"recharge\">{{data.hydrology.recharge | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"hydrology-units\">All Units mm</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Sediment\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tSediment loss form the landscape is dependent upon many factors.  Sediment overestimation in SWAT is most commonly due to inadequate biomass production.  This often occurs on specific land uses.  If your maximum upland sediment yield is excessive, use the landuse summary tab to identify the problem land use.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tSWAT also modifies sediments to account for in-stream deposition and erosion of stream banks and channels.  Often there is little or no measured data to differentiate between upland sediment and in-stream sediment changes. Streams may be either a net source of sediment, or a sink.  In-stream sediment modification is impacted by physical channel characteristic’s (slope, width, depth, channel cover, and substrate characteristics) and the quantity of sediment and flow from upstream.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.sediment.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<h5 class=\"mt-3\">Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.sediment.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<div id=\"sediment\" class=\"picture-holder\">\r\n\t\t\t\t\t\t\t\t\t<span id=\"maxupland\">Maximum Upland Sediment Yield<br /> {{data.sediment.maxUplandSedimentYield | number(3)}} Mg/ha</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"surfacerunoffsed\">Surface Runoff<br /> {{data.sediment.surfaceRunoff | number(3)}} mm/yr</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"avgupland\">Average Upland Sediment Yield<br /> {{data.sediment.avgUplandSedimentYield | number(3)}} Mg/ha</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"inletsed\">Inlet/Point Sources Sediment<br /> {{data.sediment.inletSediment | number(3)}} Mg/year</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"instreamsed\">Instream Sediment Change<br /> {{data.sediment.inStreamSedimentChange | number(3)}} Mg/ha</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Nitrogen Cycle\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tThe nitrogen cycle is key to biomass production, which in turn impacts ET and sediment yield.\r\n\t\t\t\t\t\t\t\t\tThe nitrogen cycle is complex, it is generally not possible to validate these routines outside a research setting.\r\n\t\t\t\t\t\t\t\t\tOf particular importance are the total applied nitrogen fertilizer and losses due to plant uptake, and volatilization and denitrification.\r\n\t\t\t\t\t\t\t\t\tSoils contain a large amount of organic nitrogen in the form of organic matter.  Large changes in initial and final nitrogen contents\r\n\t\t\t\t\t\t\t\t\t(in particular organic n) may indicate under or over fertilization during the simulation.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<div id=\"ncycle\" class=\"picture-holder\">\r\n\t\t\t\t\t\t\t\t\t<span id=\"initno3\">\r\n\t\t\t\t\t\t\t\t\t\tInitial NO<sub>3</sub>: {{data.nitrogenCycle.initialNO3 | number(3)}}<br />\r\n\t\t\t\t\t\t\t\t\t\tFinal NO<sub>3</sub>: {{data.nitrogenCycle.finalNO3 | number(3)}}\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"volatilization\">{{data.nitrogenCycle.volatilization | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"denit\">{{data.nitrogenCycle.denitrification | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"inorgnh4\">{{data.nitrogenCycle.nH4InOrgNFertilizer | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"inorgno3\">{{data.nitrogenCycle.nO3InOrgNFertilizer | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"nplantuptake\">{{data.nitrogenCycle.plantUptake | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"nitrification\">{{data.nitrogenCycle.nitrification | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"nmineralization\">{{data.nitrogenCycle.mineralization | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"initorgn\">\r\n\t\t\t\t\t\t\t\t\t\tInitial Org N: {{data.nitrogenCycle.initialOrgN | number(3)}}<br />\r\n\t\t\t\t\t\t\t\t\t\tFinal Org N: {{data.nitrogenCycle.finalOrgN | number(3)}}\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"orgn\">{{data.nitrogenCycle.orgNFertilizer | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"activetostable\">{{data.nitrogenCycle.activeToStableOrgN | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"nresidue\">{{data.nitrogenCycle.residueMineralization | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"totaln\">Total Fertilizer N: {{data.nitrogenCycle.totalFertilizerN | number(3)}}</span>\r\n\r\n\t\t\t\t\t\t\t\t\t<span id=\"ncycle-units\">All units kg/ha</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.nitrogenCycle.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<h5 class=\"mt-3\">Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.nitrogenCycle.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Phosphorus Cycle\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tThe phosphorus cycle is of particular interest in watersheds with significant animal manure application.\r\n\t\t\t\t\t\t\t\t\tSoils contain a large reservoir of both mineral and organic phosphorus.  Large increases in mineral phosphorus\r\n\t\t\t\t\t\t\t\t\tcontent during the simulation often result from overfertilization with either commercial or manure phosphorus sources.\r\n\t\t\t\t\t\t\t\t\tThis also means that phosphorus concentrations in runoff also increase during the simulation period.\r\n\t\t\t\t\t\t\t\t\tPlant uptake is the dominant loss pathway for soil phosphorus under most conditions.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<div id=\"pcycle\" class=\"picture-holder\">\r\n\t\t\t\t\t\t\t\t\t<span id=\"minp\">\r\n\t\t\t\t\t\t\t\t\t\tInitial Min P: {{data.phosphorusCycle.initialMinP | number(3)}}<br />\r\n\t\t\t\t\t\t\t\t\t\tFinal Min P: {{data.phosphorusCycle.finalMinP | number(3)}}\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"orgp\">\r\n\t\t\t\t\t\t\t\t\t\tInitial Org P: {{data.phosphorusCycle.initialOrgP | number(3)}}<br />\r\n\t\t\t\t\t\t\t\t\t\tFinal Org P: {{data.phosphorusCycle.finalOrgP | number(3)}}\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"totalp\">Total Fertilizer P: {{data.phosphorusCycle.totalFertilizerP | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"inorgp\">{{data.phosphorusCycle.inOrgPFertilizer | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"pplantuptake\">{{data.phosphorusCycle.plantUptake | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"pstableactive\">{{data.phosphorusCycle.stableActive | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"pactivesol\">{{data.phosphorusCycle.activeSolution | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"pmineralization\">{{data.phosphorusCycle.mineralization | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"orgpfert\">{{data.phosphorusCycle.orgPFertilizer | number(3)}}</span>\r\n\t\t\t\t\t\t\t\t\t<span id=\"presidue\">{{data.phosphorusCycle.residueMineralization | number(3)}}</span>\r\n\r\n\t\t\t\t\t\t\t\t\t<span id=\"pcycle-units\">All units kg/ha</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.phosphorusCycle.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<h5 class=\"mt-3\">Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.phosphorusCycle.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Plant Growth\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tProper plant growth is key to accurate runoff and sediment predictions.  Problems in plant growth are often related to excessive\r\n\t\t\t\t\t\t\t\t\tstress due to temperature or the lack of water/nutrients.  The data presented here are basin averages, and may not reflect problems\r\n\t\t\t\t\t\t\t\t\twith individual land uses.  Carefully review the land use summary tab.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Temperature Stress Days</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.plantGrowth.tempStressDays | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Water Stress Days</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.plantGrowth.waterStressDays | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrogen Stress Days</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.plantGrowth.nStressDays | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Phosphorus Stress Days</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.plantGrowth.pStressDays | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<div v-if=\"data.plantGrowth.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t\t\t<h5>Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.plantGrowth.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<div id=\"plantgrowth\" class=\"picture-holder\">\r\n\t\t\t\t\t\t\t\t\t\t\t<span id=\"plantavg\">\r\n\t\t\t\t\t\t\t\t\t\t\t\tAverage Biomass: {{data.plantGrowth.avgBiomass | number(3)}} Mg/ha<br />\r\n\t\t\t\t\t\t\t\t\t\t\t\tAverage Yield: {{data.plantGrowth.avgYield | number(3)}} Mg/ha\r\n\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t<span id=\"npremoved\">\r\n\t\t\t\t\t\t\t\t\t\t\t\tN Removed in Yield: {{data.plantGrowth.nRemoved | number(3)}} kg/ha<br />\r\n\t\t\t\t\t\t\t\t\t\t\t\tP Removed in Yield: {{data.plantGrowth.pRemoved | number(3)}} kg/ha\r\n\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t<span id=\"totalnp\">\r\n\t\t\t\t\t\t\t\t\t\t\t\tTotal Fertilizer N: {{data.plantGrowth.totalFertilizerN | number(3)}} kg/ha<br />\r\n\t\t\t\t\t\t\t\t\t\t\t\tTotal Fertilizer P: {{data.plantGrowth.totalFertilizerP | number(3)}} kg/ha\r\n\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t<span id=\"plantuptakenp\">\r\n\t\t\t\t\t\t\t\t\t\t\t\tPlant Uptake N: {{data.plantGrowth.plantUptakeN | number(3)}} kg/ha<br />\r\n\t\t\t\t\t\t\t\t\t\t\t\tPlant Uptake P: {{data.plantGrowth.plantUptakeP | number(3)}} kg/ha\r\n\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Landscape Nutrient Losses\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tNutrient losses are a critical aspect of many studies.  The data presented here are losses from the landscape surface, which is delivered to reaches.\r\n\t\t\t\t\t\t\t\t\tThese are basin averages. The link below contains a summary of edge of field nutrient losses from monitoring studies by individual crops.\r\n\t\t\t\t\t\t\t\t\tThese data can be compared to SWAT predictions to verify the appropriate magnitude of predicted losses.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<h5>Nitrogen Losses (kg/ha)</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Total N Loss</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.nLosses.totalLoss | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Organic N</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.nLosses.orgN | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrate Surface Runoff</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.nLosses.surfaceRunoff | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrate Leached</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.nLosses.leached | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrate Lateral Flow</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.nLosses.lateralFlow | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrate Groundwater Yield</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.nLosses.groundwaterYield | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Solubility Ratio in Runoff</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.nLosses.solubilityRatio | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<h5>Phosphorus Losses (kg/ha)</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Total P Loss</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.pLosses.totalLoss | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Organic P</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.pLosses.orgP | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Soluble P Surface Runoff</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.pLosses.surfaceRunoff | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Solubility Ratio in Runoff</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.landscapeNutrientLosses.pLosses.solubilityRatio | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.landscapeNutrientLosses.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<h5>Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.landscapeNutrientLosses.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<h5>Measured Nutrient Losses by Crop and Tillage</h5>\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tFrom Harmel, D., et al.  2006 Compilation of Measured Nutrient Load Data for Agricultural Land Uses in the United States. <em>Journal of the American Water Resources Association</em> 42(5):1163-1178.\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t<img class=\"img-fluid\" :src=\"`${publicPath}images/swat-check/nut_croptype2.png`\" alt=\"nut_croptype2.png\" />\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t<img class=\"img-fluid\" :src=\"`${publicPath}images/swat-check/nut_croptype3.png`\" alt=\"nut_croptype3.png\" />\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Land Use Summary\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tModel errors are often isolated to a particular land use type.  If the land use is relatively minor, these issues\r\n\t\t\t\t\t\t\t\t\tmay go unnoticed at the basin outlet during calibration.  Often, these minor land uses are the focus of scenario\r\n\t\t\t\t\t\t\t\t\tdevelopment, and errors become apparent after the investment of much calibration effort.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<h5>Summary by Reported Land Use</h5>\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tThis table contains a few important predictions summarized by land use.  These should be reviewed carefully.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<div class=\"table-responsive\">\r\n\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-sm\">\r\n\t\t\t\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>LULC</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>AREA km2</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>CN</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>AWC mm</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>USLE_LS</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>IRR mm</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>PREC mm</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>SURQ mm</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>GWQ mm</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>ET mm</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>SED th</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>NO3 kgh</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>ORGN kgh</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>BIOM th</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>YLD th</th>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr v-for=\"(m, i) in data.landUseSummary.landUseRows\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.landUse}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.area |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.cn |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.awc |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.uslE_LS |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.irr |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.prec |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.surq |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.gwq |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.et |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.sed |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.nO3 |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.orgn |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.biom |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.yld |number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.landUseSummary.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<h5>Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.landUseSummary.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.landUseSummary.hruLevelWarnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<h5>HRU Level Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\tThese are provided only to help isolate problem HRUs within a particular land use.\r\n\t\t\t\t\t\t\t\t\t\tWe do not recommend that these be used during routine checking of model output.\r\n\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.landUseSummary.hruLevelWarnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Instream Processes\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tIn-stream processes may have a large impact on sediment and nutrient loads.  It is difficult to gage appropriate values for these outputs.\r\n\t\t\t\t\t\t\t\t\tIn-stream sediment change can be either positive or negative.  Typically streams are a net sink for nutrients.\r\n\t\t\t\t\t\t\t\t\tChannel geomorphology can provide some guidance as to the net contribution of in-stream processes.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<div v-if=\"data.instreamProcesses.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t\t\t<h5>Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.instreamProcesses.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<h5>Detailed Reach Report - Delivery ratio of segment (%)</h5>\r\n\t\t\t\t\t\t\t\t\t\t<b-table striped hover small :items=\"data.instreamProcesses.reaches\" :fields=\"[{ key: 'id', label: 'RCH#'}, 'sediment', 'phosphorus', 'nitrogen']\">\r\n\t\t\t\t\t\t\t\t\t\t\t<template v-slot:cell(sediment)=\"data\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{data.item.sediment | number(3)}}\r\n\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t\t<template v-slot:cell(phosphorus)=\"data\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{data.item.phosphorus | number(3)}}\r\n\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t\t<template v-slot:cell(nitrogen)=\"data\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{data.item.nitrogen | number(3)}}\r\n\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<h5>Sediment Budget</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions instream\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Upland Sediment Yield</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.uplandSedimentYield | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>Mg/ha</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Instream Sediment Change</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.instreamSedimentChange | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>Mg/ha</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Channel Erosion</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.channelErosion | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Channel Deposition</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.channelDeposition | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<h5>Instream Nutrient Modification</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions instream\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Total Nitrogen</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.totalN | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Total Phosphorus</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.totalP | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<h5>Instream Water Budget</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions instream\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Total Streamflow Losses</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.totalStreamflowLosses | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Evaporation Loss</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.evaporationLoss | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Seepage Loss</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.instreamProcesses.seepageLoss | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Point Sources\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tPoint sources constantly discharge pollutants to streams.  These are an optional feature in SWAT.\r\n\t\t\t\t\t\t\t\t\tThese summaries are presented so that the relative contribution of these sources can be verified.\r\n\t\t\t\t\t\t\t\t\tPoint sources contributions are so varied that there is no reasonable range which can be applied to all basins.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.pointSources.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<h5>Messages and Warnings</h5>\r\n\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.pointSources.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<h5>Total Subbasin Load</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Flow</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.subbasinLoad.flow | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>cms</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Sediment</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.subbasinLoad.sediment | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>Mg/yr</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrogen</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.subbasinLoad.nitrogen | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>kg/yr</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Phosphorus</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.subbasinLoad.phosphorus | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>kg/yr</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<h5>Total Point Source + Inlet Load</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Flow</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.pointSourceInletLoad.flow | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>cms</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Sediment</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.pointSourceInletLoad.sediment | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>Mg/yr</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrogen</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.pointSourceInletLoad.nitrogen | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>kg/yr</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Phosphorus</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.pointSourceInletLoad.phosphorus | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>kg/yr</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<h5>Load from Inlet + PS (%)</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Flow</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.fromInletAndPointSource.flow | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Sediment</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.fromInletAndPointSource.sediment | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrogen</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.fromInletAndPointSource.nitrogen | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Phosphorus</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>{{data.pointSources.fromInletAndPointSource.phosphorus | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td>%</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t\t<b-tab title=\"Reservoirs\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tReservoirs are an option feature in SWAT.   The hydrology of basins with large reservoirs may be completely dominated by reservoir processes and release rates.\r\n\t\t\t\t\t\t\t\t\tThe data presented below is an average of all reservoirs; <a href=\"#\" @click.prevent=\"modals.reservoirs.table = true\">see data for individual reservoirs</a>.\r\n\t\t\t\t\t\t\t\t\tThe statistics presented here are designed to identify common reservoir issues.   The use of user specified release rate may cause a reservoir to\r\n\t\t\t\t\t\t\t\t\tgrow continuously or run completely dry.  These common issues can be detected via the final/initial volume ratio and fraction of period empty statistics below.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<b-modal v-model=\"modals.reservoirs.table\" scrollable size=\"lg\" title=\"Detailed Reservoir Performance Output\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"table-responsive\">\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped\">\r\n\t\t\t\t\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>RES#</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Sediment</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Phosphorus</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrogen</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Vol. Ratio</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Fraction Empty</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Seepage</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<th>Evap. Loss</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr v-for=\"(m, i) in data.reservoirs.reservoirRows\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.id}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.sediment | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.phosphorus | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.nitrogen | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.volumeRatio | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.fractionEmpty | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.seepage | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td>{{m.evapLoss | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"primary\" @click=\"modals.reservoirs.table = false\">Close</b-button>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t<b-col md=\"4\">\r\n\t\t\t\t\t\t\t\t\t\t<h5>Average Trapping Efficiency (%)</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Sediment</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgTrappingEfficiencies.sediment | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Nitrogen</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgTrappingEfficiencies.nitrogen | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Phosphorus</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgTrappingEfficiencies.phosphorus | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<h5>Average Water Loss (%)</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Total Removed + Losses</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgWaterLosses.totalRemoved | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Evaporation</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgWaterLosses.evaporation | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Seepage</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgWaterLosses.seepage | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<h5>Average Reservoir Trends</h5>\r\n\t\t\t\t\t\t\t\t\t\t<table class=\"table table-striped table-definitions\">\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Number of Reservoirs</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgReservoirTrends.numberReservoirs | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Final/Initial Volume (Max)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgReservoirTrends.maxVolume | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Final/Initial Volume (Min)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgReservoirTrends.minVolume | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<th>Fraction of Period Empty (Max)</th>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<td class=\"text-right\">{{data.reservoirs.avgReservoirTrends.fractionEmpty | number(3)}}</td>\r\n\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\t<img class=\"img-fluid\" :src=\"`${publicPath}images/swat-check/res.jpg`\" alt=\"res image\" />\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<div v-if=\"data.reservoirs.warnings.length > 0\">\r\n\t\t\t\t\t\t\t\t\t\t\t<h3>Messages and Warnings</h3>\r\n\t\t\t\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<li v-for=\"(warning, i) in data.reservoirs.warnings\" :key=\"i\">{{warning}}</li>\r\n\t\t\t\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t\t</b-tabs>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<fixed-action-bar :cols=\"10\" :offset=\"2\" :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t\t<b-button variant=\"light\" @click=\"nextTab(-1)\" class=\"border mr-2\" :disabled=\"page.tabIndex == 0\" title=\"Previous tab\"><font-awesome-icon icon=\"chevron-left\" /></b-button>\r\n\t\t\t\t\t\t<b-button variant=\"light\" @click=\"nextTab(1)\" class=\"border mr-2\" :disabled=\"page.tabIndex == page.numTabs - 1\" title=\"Next tab\"><font-awesome-icon icon=\"chevron-right\" /></b-button>\r\n\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport ProjectMap from '@/components/ProjectMap';\r\n\r\n\texport default {\r\n\t\tname: 'OutputCheck',\r\n\t\tcomponents: {\r\n\t\t\tProjectMap\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpublicPath: process.env.BASE_URL,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tshowResults: false,\r\n\t\t\t\t\tshowForm: true,\r\n\t\t\t\t\ttabIndex: 0,\r\n\t\t\t\t\tnumTabs: 11\r\n\t\t\t\t},\r\n\t\t\t\tselection: {\r\n\t\t\t\t\tsubbasin: null\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tscenarios: [],\r\n\t\t\t\t\tmap: {},\r\n\t\t\t\t\tnoOutputProcessing: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {},\r\n\t\t\t\tresultsName: '',\r\n\t\t\t\tmodals: {\r\n\t\t\t\t\thydrology: {\r\n\t\t\t\t\t\tmonthlyBasinValues: false,\r\n\t\t\t\t\t\tbaseflowMap: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\treservoirs: {\r\n\t\t\t\t\t\ttable: false\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/output/swatcheckoptions/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.options = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.page.showResults = false;\r\n\r\n\t\t\t\tvar subID = 0;\r\n\t\t\t\tif (this.selection.subbasin !== null) {\r\n\t\t\t\t\tsubID = this.selection.subbasin.id\r\n\t\t\t\t}\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/output/swatcheck/${this.scenarioID}/${subID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t\tthis.resultsName = this.selection.subbasin === null ? 'Entire Watershed' : this.selection.subbasin.name;\r\n\t\t\t\t\tthis.page.tabIndex = 0;\r\n\t\t\t\t\tthis.page.showResults = true;\r\n\t\t\t\t\tthis.page.showForm = false;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync mapClick(selectedSubbasins) {\r\n\t\t\t\tif (selectedSubbasins.length > 0)\r\n\t\t\t\t\tthis.selection.subbasin = selectedSubbasins[0];\r\n\t\t\t\telse\r\n\t\t\t\t\tthis.selection.subbasin = null;\r\n\t\t\t},\r\n\t\t\tscrollLeft(amount = 100) {\r\n\t\t\t\tlet content = document.querySelector(\".nav-tabs\");\r\n\t\t\t\tcontent.scrollLeft -= amount;\r\n\t\t\t},\r\n\t\t\tscrollRight(amount = 100) {\r\n\t\t\t\tlet content = document.querySelector(\".nav-tabs\");\r\n\t\t\t\tcontent.scrollLeft += amount;\r\n\t\t\t},\r\n\t\t\tnextTab(position) {\r\n\t\t\t\tvar maxTabPos = this.page.numTabs - 1;\r\n\t\t\t\tthis.page.tabIndex += position;\r\n\r\n\t\t\t\tif (this.page.tabIndex > maxTabPos)\r\n\t\t\t\t\tthis.page.tabIndex = 0;\r\n\t\t\t\tif (this.page.tabIndex < 0)\r\n\t\t\t\t\tthis.page.tabIndex = maxTabPos;\r\n\r\n\t\t\t\tif (this.page.tabIndex > maxTabPos / 2)\r\n\t\t\t\t\tthis.scrollRight(1000);\r\n\t\t\t\telse if (this.page.tabIndex < maxTabPos / 2)\r\n\t\t\t\t\tthis.scrollLeft(1000);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style>\r\n\ttable.instream td {\r\n\t\twidth: 1%;\r\n\t\twhite-space: nowrap;\r\n\t\ttext-align: right;\t\r\n\t}\r\n\r\n\ttable.instream th {\r\n\t\twidth: 85%;\r\n\t}\r\n\r\n\t.picture-holder {\r\n\t\tbackground: no-repeat 0 0;\r\n\t\tfont-size: 0.8em;\r\n\t\tline-height: 1.4em;\r\n\t\tmargin: 0 auto;\r\n\t\tposition: relative;\r\n\t}\r\n\r\n\t.picture-holder span {\r\n\t\tbackground: #fff;\r\n\t\tfont-weight: bold;\r\n\t\tpadding: 0 2px;\r\n\t\tposition: absolute;\r\n\t\ttext-align: center;\r\n\t}\r\n\r\n\t#hydrology {\r\n\t\tbackground-image: url(~@/assets/swat-check/hydro.png);\r\n\t\theight: 491px;\r\n\t\twidth: 650px;\r\n\t}\r\n\r\n\t#hydrology #et {\r\n\t\ttop: 65px;\r\n\t\tleft: 130px;\r\n\t}\r\n\r\n\t#hydrology #pet {\r\n\t\ttop: 45px;\r\n\t\tleft: 0px;\r\n\t}\r\n\r\n\t#hydrology #precip {\r\n\t\ttop: 110px;\r\n\t\tleft: 410px;\r\n\t}\r\n\r\n\t#hydrology #cn {\r\n\t\ttop: 160px;\r\n\t\tleft: 500px;\r\n\t}\r\n\r\n\t#hydrology #surfacerunoff {\r\n\t\ttop: 275px;\r\n\t\tleft: 545px;\r\n\t}\r\n\r\n\t#hydrology #lateralflow {\r\n\t\ttop: 315px;\r\n\t\tleft: 450px;\r\n\t}\r\n\r\n\t#hydrology #returnflow {\r\n\t\ttop: 355px;\r\n\t\tleft: 480px;\r\n\t}\r\n\r\n\t#hydrology #perc {\r\n\t\ttop: 350px;\r\n\t\tleft: 320px;\r\n\t}\r\n\r\n\t#hydrology #revap {\r\n\t\ttop: 350px;\r\n\t\tleft: 150px;\r\n\t}\r\n\r\n\t#hydrology #recharge {\r\n\t\ttop: 445px;\r\n\t\tleft: 320px;\r\n\t}\r\n\r\n\t#hydrology #hydrology-units {\r\n\t\tbottom: 5px;\r\n\t\tright: 5px;\r\n\t}\r\n\r\n\t#sediment {\r\n\t\tbackground-image: url(~@/assets/swat-check/WatershedDisplay.jpg);\r\n\t\theight: 396px;\r\n\t\twidth: 628px;\r\n\t}\r\n\r\n\t#sediment #maxupland {\r\n\t\ttop: 25px;\r\n\t\tleft: 400px;\r\n\t}\r\n\r\n\t#sediment #surfacerunoffsed {\r\n\t\ttop: 70px;\r\n\t\tleft: 150px;\r\n\t}\r\n\r\n\t#sediment #avgupland {\r\n\t\ttop: 130px;\r\n\t\tleft: 30px;\r\n\t}\r\n\r\n\t#sediment #inletsed {\r\n\t\ttop: 220px;\r\n\t\tleft: 125px;\r\n\t}\r\n\r\n\t#sediment #instreamsed {\r\n\t\ttop: 220px;\r\n\t\tleft: 370px;\r\n\t}\r\n\r\n\t#ncycle {\r\n\t\tbackground-image: url(~@/assets/swat-check/ncycle.png);\r\n\t\theight: 362px;\r\n\t\twidth: 800px;\r\n\t}\r\n\r\n\t#ncycle #initno3 {\r\n\t\ttop: 5px;\r\n\t\tleft: 5px;\r\n\t}\r\n\r\n\t#ncycle #volatilization {\r\n\t\ttop: 115px;\r\n\t\tleft: 70px;\r\n\t}\r\n\r\n\t#ncycle #denit {\r\n\t\ttop: 115px;\r\n\t\tleft: 200px;\r\n\t}\r\n\r\n\t#ncycle #inorgnh4 {\r\n\t\ttop: 160px;\r\n\t\tleft: 85px;\r\n\t}\r\n\r\n\t#ncycle #inorgno3 {\r\n\t\ttop: 160px;\r\n\t\tleft: 210px;\r\n\t}\r\n\r\n\t#ncycle #nplantuptake {\r\n\t\ttop: 200px;\r\n\t\tleft: 240px;\r\n\t}\r\n\r\n\t#ncycle #nitrification {\r\n\t\ttop: 240px;\r\n\t\tleft: 115px;\r\n\t}\r\n\r\n\t#ncycle #nmineralization {\r\n\t\ttop: 240px;\r\n\t\tleft: 300px;\r\n\t}\r\n\r\n\t#ncycle #totaln {\r\n\t\ttop: 320px;\r\n\t\tleft: 30px;\r\n\t}\r\n\r\n\t#ncycle #initorgn {\r\n\t\ttop: 5px;\r\n\t\tleft: 405px;\r\n\t}\r\n\r\n\t#ncycle #orgn {\r\n\t\ttop: 135px;\r\n\t\tleft: 445px;\r\n\t}\r\n\r\n\t#ncycle #activetostable {\r\n\t\ttop: 225px;\r\n\t\tleft: 520px;\r\n\t}\r\n\r\n\t#ncycle #nresidue {\r\n\t\ttop: 315px;\r\n\t\tleft: 660px;\r\n\t}\r\n\r\n\t#ncycle #ncycle-units {\r\n\t\ttop: 5px;\r\n\t\tright: 5px;\r\n\t}\r\n\r\n\t#pcycle {\r\n\t\tbackground-image: url(~@/assets/swat-check/pcycle.png);\r\n\t\theight: 362px;\r\n\t\twidth: 800px;\r\n\t}\r\n\r\n\t#pcycle #minp {\r\n\t\ttop: 5px;\r\n\t\tleft: 5px;\r\n\t}\r\n\r\n\t#pcycle #orgp {\r\n\t\ttop: 5px;\r\n\t\tleft: 405px;\r\n\t}\r\n\r\n\t#pcycle #totalp {\r\n\t\ttop: 65px;\r\n\t\tleft: 30px;\r\n\t}\r\n\r\n\t#pcycle #inorgp {\r\n\t\ttop: 110px;\r\n\t\tleft: 305px;\r\n\t}\r\n\r\n\t#pcycle #pplantuptake {\r\n\t\ttop: 150px;\r\n\t\tleft: 215px;\r\n\t}\r\n\r\n\t#pcycle #pstableactive {\r\n\t\ttop: 220px;\r\n\t\tleft: 90px;\r\n\t}\r\n\r\n\t#pcycle #pactivesol {\r\n\t\ttop: 220px;\r\n\t\tleft: 205px;\r\n\t}\r\n\r\n\t#pcycle #pmineralization {\r\n\t\ttop: 255px;\r\n\t\tleft: 340px;\r\n\t}\r\n\r\n\t#pcycle #orgpfert {\r\n\t\ttop: 180px;\r\n\t\tleft: 480px;\r\n\t}\r\n\r\n\t#pcycle #presidue {\r\n\t\ttop: 315px;\r\n\t\tleft: 660px;\r\n\t}\r\n\r\n\t#pcycle #pcycle-units {\r\n\t\ttop: 5px;\r\n\t\tright: 5px;\r\n\t}\r\n\r\n\t#plantgrowth {\r\n\t\tbackground-image: url(~@/assets/swat-check/plant.png);\r\n\t\theight: 458px;\r\n\t\twidth: 450px;\r\n\t}\r\n\r\n\t#plantgrowth span {\r\n\t\ttext-align: right;\r\n\t}\r\n\r\n\t#plantgrowth #plantavg {\r\n\t\ttop: 5px;\r\n\t\tleft: 5px;\r\n\t}\r\n\r\n\t#plantgrowth #npremoved {\r\n\t\ttop: 50px;\r\n\t\tleft: 230px;\r\n\t}\r\n\r\n\t#plantgrowth #totalnp {\r\n\t\ttop: 220px;\r\n\t\tleft: 270px;\r\n\t}\r\n\r\n\t#plantgrowth #plantuptakenp {\r\n\t\tbottom: 10px;\r\n\t\tleft: 260px;\r\n\t}\r\n</style>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputCheck.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputCheck.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OutputCheck.vue?vue&type=template&id=45b5ec8e&\"\nimport script from \"./OutputCheck.vue?vue&type=script&lang=js&\"\nexport * from \"./OutputCheck.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OutputCheck.vue?vue&type=style&index=0&id=45b5ec8e&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"CE-QUAL-W2 File Generation\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):(!_vm.siteSettings.includeCeQual)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"This feature is not enabled. Please contact an administrator if you are expecting it to be available.\")])],1):(_vm.data.noOutputProcessing)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"Output processing was skipped for this scenario run. Please re-run your scenario without the \\\"skip output processing\\\" box checked to use this feature.\")])],1):_c('div',[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.data.printSetting !== 'daily'}},[_vm._v(\" CE-QUAL-W2 output files require that your scenario is run with \"),_c('strong',[_vm._v(\"daily\")]),_vm._v(\" output selected. Your scenario was run with \"),_c('strong',[_vm._v(_vm._s(_vm.data.printSetting))]),_vm._v(\" output. Please edit your scenario settings and re-run the scenario to use the CE-QUAL feature. \")]),(_vm.data.printSetting === 'daily')?_c('div',[_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Your request has been submitted. Please wait while we create your files.\"}}),_c('p',[_vm._v(\" CE-QUAL-W2 is a water quality and hydrodynamic model in 2D (longitudinal-vertical) for rivers, estuaries, lakes, reservoirs, and river basin systems. W2 models basic eutrophication processes such as temperature-nutrient-algae-dissolved oxygen-organic matter and sediment relationships. \")]),_c('p',[_vm._v(\" For watershed simulations run on a daily timestep with output processing selected, \"+_vm._s(_vm.siteText.siteName)+\" generates the concentration inflow (cin) files used in the CE-QUAL-W2 model. All cin files are generated with the assumption of ISS1 – 3 represent sand (10%), silt (50%), and clay (40%), respectively. ISS4 - 6 are defined as 0. In addition, monthly variations of Algae (T1 and T2 ALG1-3) are calculated using this \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.page.showMonthlyAlgae = true}}},[_vm._v(\"monthly fraction table\")]),_vm._v(\". \"),_c('a',{attrs:{\"href\":\"https://hawqs.tamu.edu/content/docs/ce-qual/CE-QUAL_input_calculations_readonly.xlsx\"}},[_vm._v(\"Download an Excel file\")]),_vm._v(\" showing the calculations. \")]),_c('p',{staticClass:\"mb-1\"},[_vm._v(\" For “Subbasin output” requests, please note: \")]),_c('ol',[_c('li',[_vm._v(\"There is not an Ammonia (NH4) value available, so all values are set to 0.\")]),_c('li',[_vm._v(\"There is only NO3 available, so the Nitrite + Nitrate (NO23) variable is calculated using only NO3.\")])]),_c('p',[_vm._v(\" For “Reach output” requests, all variables necessary for the (cin) files are available. \")]),_c('p',[_vm._v(\" When deciding which output to use for CE-QUAL-W2, “Reach output” is typically used for subbasins that have rivers flowing through or into the lakes, whereas “Subbasin output” is typically used for areas adjacent to the lake and contributing to the lake directly. Ultimately, it is the user’s discretion to determine which output is suitable for the modeled watershed. \")]),_c('p',[_vm._v(\" For more information on the CE-QUAL-W2 model, and additional model requirements, please visit: \"),_c('a',{attrs:{\"href\":\"http://www.ce.pdx.edu/w2/\",\"target\":\"_blank\"}},[_vm._v(\"www.ce.pdx.edu/w2/\")])]),_c('b-modal',{attrs:{\"size\":\"lg\",\"title\":\"Monthly fraction table\",\"scrollable\":\"\",\"hide-footer\":\"\"},model:{value:(_vm.page.showMonthlyAlgae),callback:function ($$v) {_vm.$set(_vm.page, \"showMonthlyAlgae\", $$v)},expression:\"page.showMonthlyAlgae\"}},[_c('table',{staticClass:\"table table-sm\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Month\")]),_c('th',[_vm._v(\"Algae 1\")]),_c('th',[_vm._v(\"Algae 2\")]),_c('th',[_vm._v(\"Algae 3\")])])]),_c('tbody',_vm._l((_vm.monthlyAlgae),function(m){return _c('tr',{key:m.month},[_c('td',[_vm._v(_vm._s(m.month))]),_c('td',[_vm._v(_vm._s(m.a1))]),_c('td',[_vm._v(_vm._s(m.a2))]),_c('td',[_vm._v(_vm._s(m.a3))])])}),0)])]),(_vm.data.requests.length > 0)?_c('div',{staticClass:\"my-4\"},[_c('b-table',{staticClass:\"nowrap-headers border-bottom mb-1\",attrs:{\"responsive\":\"\",\"striped\":\"\",\"small\":\"\",\"items\":_vm.data.requests,\"fields\":_vm.table.fields},scopedSlots:_vm._u([{key:\"cell(status)\",fn:function(data){return [(data.item.status == 'running')?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\"}}):(data.item.status == 'error')?_c('font-awesome-icon',{staticClass:\"text-danger\",attrs:{\"icon\":['fas', 'exclamation-triangle']}}):_c('span')]}},{key:\"cell(lastModifiedDate)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"date\")(data.item.lastModifiedDate))+\" \")]}},{key:\"cell(downloadLink)\",fn:function(data){return [(data.item.status == 'complete')?_c('a',{attrs:{\"href\":data.item.downloadLink}},[_vm._v(\"Download\")]):_c('em',[_vm._v(_vm._s(data.item.status == 'error' ? `Error: ${data.item.statusMessage}` : data.item.statusMessage))])]}},{key:\"cell(subbasins)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.subbasins))+\" \")]}},{key:\"cell(delete)\",fn:function(data){return [(data.item.status !== 'running')?_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",on:{\"click\":function($event){return _vm.askDelete(data.item.id)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1):_c('span')]}}],null,false,205697327)}),(_vm.anyRunning)?_c('div',[_c('small',[_c('a',{staticClass:\"text-secondary\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get.apply(null, arguments)}}},[_c('font-awesome-icon',{staticClass:\"mr-1\",attrs:{\"icon\":['fas', 'redo']}}),_vm._v(\" Refresh progress\")],1)])]):_vm._e()],1):_vm._e(),_c('h3',[_vm._v(\"Request CE-QUAL-W2 Files\")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('b-form-group',[_c('b-form-select',{attrs:{\"options\":_vm.options.outputTypes},model:{value:(_vm.form.outputType),callback:function ($$v) {_vm.$set(_vm.form, \"outputType\", $$v)},expression:\"form.outputType\"}})],1),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-only\":\"\",\"drop-down-label\":\"Request for\"},on:{\"change\":_vm.hruSelectionChange}}),_c('fixed-action-bar',{attrs:{\"cols\":10,\"offset\":2,\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection,\"text\":\"Request Files\"}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this request? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1):_vm._e()],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">CE-QUAL-W2 File Generation</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"!siteSettings.includeCeQual\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>This feature is not enabled. Please contact an administrator if you are expecting it to be available.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"data.noOutputProcessing\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>Output processing was skipped for this scenario run. Please re-run your scenario without the \"skip output processing\" box checked to use this feature.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-alert variant=\"info\" :show=\"data.printSetting !== 'daily'\">\r\n\t\t\t\t\tCE-QUAL-W2 output files require that your scenario is run with <strong>daily</strong> output selected.\r\n\t\t\t\t\tYour scenario was run with <strong>{{data.printSetting}}</strong> output. Please edit your scenario settings and re-run\r\n\t\t\t\t\tthe scenario to use the CE-QUAL feature.\r\n\t\t\t\t</b-alert>\r\n\t\t\t\t<div v-if=\"data.printSetting === 'daily'\">\r\n\t\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Your request has been submitted. Please wait while we create your files.\" />\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tCE-QUAL-W2 is a water quality and hydrodynamic model in 2D (longitudinal-vertical) for rivers, estuaries, lakes, reservoirs, and river basin systems.\r\n\t\t\t\t\t\tW2 models basic eutrophication processes such as temperature-nutrient-algae-dissolved oxygen-organic matter and sediment relationships.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tFor watershed simulations run on a daily timestep with output processing selected, {{siteText.siteName}} generates the concentration inflow (cin) files used in the CE-QUAL-W2 model.\r\n\t\t\t\t\t\tAll cin files are generated with the assumption of ISS1 – 3 represent sand (10%), silt (50%), and clay (40%), respectively.  ISS4 - 6 are defined as 0.\r\n\t\t\t\t\t\tIn addition, monthly variations of Algae (T1 and T2 ALG1-3) are calculated using this\r\n\t\t\t\t\t\t<a @click.prevent=\"page.showMonthlyAlgae = true\" href=\"#\">monthly fraction table</a>.\r\n\t\t\t\t\t\t<a href=\"https://hawqs.tamu.edu/content/docs/ce-qual/CE-QUAL_input_calculations_readonly.xlsx\">Download an Excel file</a> showing the calculations.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<p class=\"mb-1\">\r\n\t\t\t\t\t\tFor “Subbasin output” requests, please note:\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<ol>\r\n\t\t\t\t\t\t<li>There is not an Ammonia (NH4) value available, so all values are set to 0.</li>\r\n\t\t\t\t\t\t<li>There is only NO3 available, so the Nitrite + Nitrate (NO23) variable is calculated using only NO3.</li>\r\n\t\t\t\t\t</ol>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tFor “Reach output” requests, all variables necessary for the (cin) files are available.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tWhen deciding which output to use for CE-QUAL-W2, “Reach output” is typically used for subbasins that have rivers flowing through or into the lakes,\r\n\t\t\t\t\t\twhereas “Subbasin output” is typically used for areas adjacent to the lake and contributing to the lake directly.\r\n\t\t\t\t\t\tUltimately, it is the user’s discretion to determine which output is suitable for the modeled watershed.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tFor more information on the CE-QUAL-W2 model, and additional model requirements, please visit:\r\n\t\t\t\t\t\t<a href=\"http://www.ce.pdx.edu/w2/\" target=\"_blank\">www.ce.pdx.edu/w2/</a>\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.showMonthlyAlgae\" size=\"lg\" title=\"Monthly fraction table\" scrollable hide-footer>\r\n\t\t\t\t\t\t<table class=\"table table-sm\">\r\n\t\t\t\t\t\t\t<thead>\r\n\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t<th>Month</th>\r\n\t\t\t\t\t\t\t\t\t<th>Algae 1</th>\r\n\t\t\t\t\t\t\t\t\t<th>Algae 2</th>\r\n\t\t\t\t\t\t\t\t\t<th>Algae 3</th>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</thead>\r\n\t\t\t\t\t\t\t<tbody>\r\n\t\t\t\t\t\t\t\t<tr v-for=\"m in monthlyAlgae\" :key=\"m.month\">\r\n\t\t\t\t\t\t\t\t\t<td>{{m.month}}</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{m.a1}}</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{m.a2}}</td>\r\n\t\t\t\t\t\t\t\t\t<td>{{m.a3}}</td>\r\n\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t</tbody>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t\t<div class=\"my-4\" v-if=\"data.requests.length > 0\">\r\n\t\t\t\t\t\t<b-table responsive striped small class=\"nowrap-headers border-bottom mb-1\" :items=\"data.requests\" :fields=\"table.fields\">\r\n\t\t\t\t\t\t\t<template v-slot:cell(status)=\"data\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon v-if=\"data.item.status == 'running'\" :icon=\"['fas', 'spinner']\" spin />\r\n\t\t\t\t\t\t\t\t<font-awesome-icon v-else-if=\"data.item.status == 'error'\" :icon=\"['fas', 'exclamation-triangle']\" class=\"text-danger\" />\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(lastModifiedDate)=\"data\">\r\n\t\t\t\t\t\t\t\t{{data.item.lastModifiedDate | date}}\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(downloadLink)=\"data\">\r\n\t\t\t\t\t\t\t\t<a v-if=\"data.item.status == 'complete'\" :href=\"data.item.downloadLink\">Download</a>\r\n\t\t\t\t\t\t\t\t<em v-else>{{data.item.status == 'error' ? `Error: ${data.item.statusMessage}` : data.item.statusMessage}}</em>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(subbasins)=\"data\">\r\n\t\t\t\t\t\t\t\t{{writeArray(data.item.subbasins)}}\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(delete)=\"data\">\r\n\t\t\t\t\t\t\t\t<button class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDelete(data.item.id)\" v-if=\"data.item.status !== 'running'\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t\t<div v-if=\"anyRunning\"><small><a href=\"#\" @click.prevent=\"get\" class=\"text-secondary\"><font-awesome-icon :icon=\"['fas', 'redo']\" class=\"mr-1\" /> Refresh progress</a></small></div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<h3>Request CE-QUAL-W2 Files</h3>\r\n\r\n\t\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t\t\t\t<b-form-group>\r\n\t\t\t\t\t\t\t<b-form-select v-model=\"form.outputType\" :options=\"options.outputTypes\"></b-form-select>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" subbasin-only drop-down-label=\"Request for\"></hru-selector>\r\n\r\n\t\t\t\t\t\t<fixed-action-bar :cols=\"10\" :offset=\"2\" :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection\" text=\"Request Files\" class=\"mr-2\" />\r\n\t\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t</b-form>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tAre you sure you want to delete this request?\r\n\t\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport HruSelector from '@/components/HruSelector';\r\n\r\n\texport default {\r\n\t\tname: 'OutputCeQual',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\tid: null,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\n\t\t\t\t\tshowMonthlyAlgae: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\n\t\t\t\t\tprintSetting: null,\n\t\t\t\t\tnoOutputProcessing: false,\n\t\t\t\t\trequests: []\n\t\t\t\t},\n\t\t\t\tform: {\n\t\t\t\t\toutputType: 'RCH',\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: []\r\n\t\t\t\t},\n\t\t\t\toptions: {\n\t\t\t\t\toutputTypes: [\n\t\t\t\t\t\t{ value: 'RCH', text: 'Reach output' },\n\t\t\t\t\t\t{ value: 'SUB', text: 'Subbasin output' }\n\t\t\t\t\t]\r\n\t\t\t\t},\n\t\t\t\ttable: {\n\t\t\t\t\tfields: [\n\t\t\t\t\t\t{ key: 'status', label: '', class: 'min' },\n\t\t\t\t\t\t{ key: 'downloadLink', label: 'Request', sortable: true },\n\t\t\t\t\t\t{ key: 'outputType', label: 'Output Type', sortable: true },\n\t\t\t\t\t\t{ key: 'subbasins', sortable: true },\n\t\t\t\t\t\t{ key: 'lastModifiedDate', label: 'Date', sortable: true },\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\n\t\t\t\t\t],\n\t\t\t\t\tfilter: null\r\n\t\t\t\t},\n\t\t\t\tmonthlyAlgae: [\n\t\t\t\t\t{ month: 'Jan', a1: '0.7', a2: '0.2', a3: '0.1' },\r\n\t\t\t\t\t{ month: 'Feb', a1: '0.7', a2: '0.2', a3: '0.1' },\r\n\t\t\t\t\t{ month: 'Mar', a1: '0.7', a2: '0.2', a3: '0.1' },\r\n\t\t\t\t\t{ month: 'Apr', a1: '0.5', a2: '0.4', a3: '0.1' },\r\n\t\t\t\t\t{ month: 'May', a1: '0.3', a2: '0.4', a3: '0.3' },\r\n\t\t\t\t\t{ month: 'Jun', a1: '0.1', a2: '0.4', a3: '0.5' },\r\n\t\t\t\t\t{ month: 'Jul', a1: '0.1', a2: '0.2', a3: '0.7' },\r\n\t\t\t\t\t{ month: 'Aug', a1: '0.1', a2: '0.2', a3: '0.7' },\r\n\t\t\t\t\t{ month: 'Sep', a1: '0.1', a2: '0.4', a3: '0.5' },\r\n\t\t\t\t\t{ month: 'Oct', a1: '0.3', a2: '0.4', a3: '0.3' },\r\n\t\t\t\t\t{ month: 'Nov', a1: '0.5', a2: '0.4', a3: '0.1' },\r\n\t\t\t\t\t{ month: 'Dec', a1: '0.7', a2: '0.2', a3: '0.1' }\n\t\t\t\t]\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\n\t\t\tthis.$statusHub.customOutputRequestOpened(this.$route.params.scenarioID, 'CE-QUAL');\n\t\t\tthis.$statusHub.$on('custom-output-request-status-changed', this.onStatusChanged);\r\n\t\t},\n\t\tbeforeDestroy() {\n\t\t\tthis.$statusHub.customOutputRequestClosed(this.$route.params.scenarioID, 'CE-QUAL');\n\t\t\tthis.$statusHub.$off('custom-output-request-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\tawait this.getData();\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\n\t\t\tasync getData() {\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/output/cequal/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\n\t\t\tasync save() {\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\n\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`scenarios/output/cequal/${this.scenarioID}`, this.form, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\taskDelete(id) {\r\n\t\t\t\tthis.page.delete.id = id;\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.delete(`scenarios/output/deletecustomoutputrequest/${this.page.delete.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.form.applyToAll = selection.applyToAll;\r\n\t\t\t\tthis.form.subbasins = selection.subbasins;\r\n\t\t\t},\n\t\t\tasync onStatusChanged(data) {\n\t\t\t\tawait this.getData();\r\n\t\t\t},\n\t\t\twriteArray(items, limit = 5) {\r\n\t\t\t\tif (items === null || items.length === 0) return 'All';\r\n\t\t\t\tif (limit === 0) limit = items.length;\r\n\t\t\t\tvar s = items.slice(0, limit).join(', ');\r\n\r\n\t\t\t\tif (items.length > limit) return s + ' (...)';\r\n\t\t\t\treturn s;\r\n\t\t\t}\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.form.applyToAll ||\r\n\t\t\t\t\t(this.form.subbasins.length > 0);\r\n\t\t\t},\n\t\t\tanyRunning() {\n\t\t\t\tlet matches = this.data.requests.filter(function (el) { return el.status === 'running'; });\n\t\t\t\treturn matches.length > 0;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputCeQual.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputCeQual.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OutputCeQual.vue?vue&type=template&id=2478eeb5&\"\nimport script from \"./OutputCeQual.vue?vue&type=script&lang=js&\"\nexport * from \"./OutputCeQual.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Flood Frequency Analysis\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):(!_vm.siteSettings.includeFfa)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"This feature is not enabled. Please contact an administrator if you are expecting it to be available.\")])],1):(_vm.data.noOutputProcessing)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"Output processing was skipped for this scenario run. Please re-run your scenario without the \\\"skip output processing\\\" box checked to use this feature.\")])],1):(_vm.data.numYears <= 3)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"Your simulation must be run for more than 3 years to use this feature (simulation date minus skip years). At least 10 years is recommended.\")])],1):_c('div',[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.data.printSetting !== 'daily'}},[_vm._v(\" The flood frequency analysis feature requires that your scenario is run with \"),_c('strong',[_vm._v(\"daily\")]),_vm._v(\" output selected. Your scenario was run with \"),_c('strong',[_vm._v(_vm._s(_vm.data.printSetting))]),_vm._v(\" output. Please edit your scenario settings and re-run the scenario to use this feature. \")]),(_vm.data.printSetting === 'daily')?_c('div',[_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Your request has been submitted. Please wait while we create your files.\"}}),_c('p',[_vm._v(\" The flood frequency analysis takes your output reach data and calculates return periods using annual maximum flow at 2-year, 10-year, 25-year, 50-year, 100-year and 200-year recurrence intervals. The return periods and the frequency distribution plot can be used for flood frequency studies under the \"),_c('a',{attrs:{\"href\":\"https://www.usgs.gov/publications/guidelines-determining-flood-flow-frequency-bulletin-17c\",\"target\":\"_blank\"}},[_vm._v(\"USGS Bulletin 17c guidelines\")]),_vm._v(\". The number of years of analysis can have a significant impact on the results. It is recommended to have the longest available period of simulation for flood frequency analysis. A minimum of three complete water years (October 1 of one year and September 30th of next) is required for the analysis. To avoid substantial bias, it is suggested to have at least 10 years of simulation data. \")]),(_vm.data.requests.length > 0)?_c('div',{staticClass:\"my-4\"},[_c('b-table',{staticClass:\"nowrap-headers border-bottom mb-1\",attrs:{\"responsive\":\"\",\"striped\":\"\",\"small\":\"\",\"items\":_vm.data.requests,\"fields\":_vm.table.fields},scopedSlots:_vm._u([{key:\"cell(status)\",fn:function(data){return [(data.item.status == 'running')?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\"}}):(data.item.status == 'error')?_c('font-awesome-icon',{staticClass:\"text-danger\",attrs:{\"icon\":['fas', 'exclamation-triangle']}}):_c('span')]}},{key:\"cell(lastModifiedDate)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"date\")(data.item.lastModifiedDate))+\" \")]}},{key:\"cell(downloadLink)\",fn:function(data){return [(data.item.status == 'complete')?_c('a',{attrs:{\"href\":data.item.downloadLink}},[_vm._v(\"Download\")]):_c('em',[_vm._v(_vm._s(data.item.status == 'error' ? `Error: ${data.item.statusMessage}` : data.item.statusMessage))])]}},{key:\"cell(subbasins)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.subbasins))+\" \")]}},{key:\"cell(delete)\",fn:function(data){return [(data.item.status !== 'running')?_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",on:{\"click\":function($event){return _vm.askDelete(data.item.id)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1):_c('span')]}}],null,false,205697327)}),(_vm.anyRunning)?_c('div',[_c('small',[_c('a',{staticClass:\"text-secondary\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get.apply(null, arguments)}}},[_c('font-awesome-icon',{staticClass:\"mr-1\",attrs:{\"icon\":['fas', 'redo']}}),_vm._v(\" Refresh progress\")],1)])]):_vm._e()],1):_vm._e(),_c('h3',[_vm._v(\"Request flood frequency analysis files\")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-only\":\"\",\"drop-down-label\":\"Request for\"},on:{\"change\":_vm.hruSelectionChange}}),_c('fixed-action-bar',{attrs:{\"cols\":10,\"offset\":2,\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection,\"text\":\"Request Files\"}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this request? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1):_vm._e()],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Flood Frequency Analysis</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"!siteSettings.includeFfa\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>This feature is not enabled. Please contact an administrator if you are expecting it to be available.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"data.noOutputProcessing\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>Output processing was skipped for this scenario run. Please re-run your scenario without the \"skip output processing\" box checked to use this feature.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"data.numYears <= 3\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>Your simulation must be run for more than 3 years to use this feature (simulation date minus skip years). At least 10 years is recommended.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-alert variant=\"info\" :show=\"data.printSetting !== 'daily'\">\r\n\t\t\t\t\tThe flood frequency analysis feature requires that your scenario is run with <strong>daily</strong> output selected.\r\n\t\t\t\t\tYour scenario was run with <strong>{{data.printSetting}}</strong> output. Please edit your scenario settings and re-run\r\n\t\t\t\t\tthe scenario to use this feature.\r\n\t\t\t\t</b-alert>\r\n\t\t\t\t<div v-if=\"data.printSetting === 'daily'\">\r\n\t\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Your request has been submitted. Please wait while we create your files.\" />\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tThe flood frequency analysis takes your output reach data and calculates return periods using annual maximum flow at 2-year, 10-year, 25-year, 50-year, 100-year and 200-year recurrence intervals.\r\n\t\t\t\t\t\tThe return periods and the frequency distribution plot can be used for flood frequency studies under the <a href=\"https://www.usgs.gov/publications/guidelines-determining-flood-flow-frequency-bulletin-17c\" target=\"_blank\">USGS Bulletin 17c guidelines</a>.\r\n\t\t\t\t\t\tThe number of years of analysis can have a significant impact on the results. It is recommended to have the longest available period of simulation for flood frequency analysis.\r\n\t\t\t\t\t\tA minimum of three complete water years (October 1 of one year and September 30th of next) is required for the analysis.\r\n\t\t\t\t\t\tTo avoid substantial bias, it is suggested to have at least 10 years of simulation data.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div class=\"my-4\" v-if=\"data.requests.length > 0\">\r\n\t\t\t\t\t\t<b-table responsive striped small class=\"nowrap-headers border-bottom mb-1\" :items=\"data.requests\" :fields=\"table.fields\">\r\n\t\t\t\t\t\t\t<template v-slot:cell(status)=\"data\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon v-if=\"data.item.status == 'running'\" :icon=\"['fas', 'spinner']\" spin />\r\n\t\t\t\t\t\t\t\t<font-awesome-icon v-else-if=\"data.item.status == 'error'\" :icon=\"['fas', 'exclamation-triangle']\" class=\"text-danger\" />\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(lastModifiedDate)=\"data\">\r\n\t\t\t\t\t\t\t\t{{data.item.lastModifiedDate | date}}\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(downloadLink)=\"data\">\r\n\t\t\t\t\t\t\t\t<a v-if=\"data.item.status == 'complete'\" :href=\"data.item.downloadLink\">Download</a>\r\n\t\t\t\t\t\t\t\t<em v-else>{{data.item.status == 'error' ? `Error: ${data.item.statusMessage}` : data.item.statusMessage}}</em>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(subbasins)=\"data\">\r\n\t\t\t\t\t\t\t\t{{writeArray(data.item.subbasins)}}\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(delete)=\"data\">\r\n\t\t\t\t\t\t\t\t<button class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDelete(data.item.id)\" v-if=\"data.item.status !== 'running'\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t\t<div v-if=\"anyRunning\"><small><a href=\"#\" @click.prevent=\"get\" class=\"text-secondary\"><font-awesome-icon :icon=\"['fas', 'redo']\" class=\"mr-1\" /> Refresh progress</a></small></div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<h3>Request flood frequency analysis files</h3>\r\n\r\n\t\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" subbasin-only drop-down-label=\"Request for\"></hru-selector>\r\n\r\n\t\t\t\t\t\t<fixed-action-bar :cols=\"10\" :offset=\"2\" :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection\" text=\"Request Files\" class=\"mr-2\" />\r\n\t\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t</b-form>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tAre you sure you want to delete this request?\r\n\t\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport HruSelector from '@/components/HruSelector';\r\n\r\n\texport default {\r\n\t\tname: 'OutputFfa',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\tid: null,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tshowMonthlyAlgae: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tprintSetting: null,\n\t\t\t\t\tnumYears: 0,\r\n\t\t\t\t\tnoOutputProcessing: false,\r\n\t\t\t\t\trequests: []\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: []\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\toutputTypes: [\r\n\t\t\t\t\t\t{ value: 'RCH', text: 'Reach output' },\r\n\t\t\t\t\t\t{ value: 'SUB', text: 'Subbasin output' }\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'status', label: '', class: 'min' },\r\n\t\t\t\t\t\t{ key: 'downloadLink', label: 'Request', sortable: true },\r\n\t\t\t\t\t\t{ key: 'subbasins', sortable: true },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', label: 'Date', sortable: true },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tfilter: null\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t\tthis.$statusHub.customOutputRequestOpened(this.$route.params.scenarioID, 'FFA');\r\n\t\t\tthis.$statusHub.$on('custom-output-request-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.$statusHub.customOutputRequestClosed(this.$route.params.scenarioID, 'FFA');\r\n\t\t\tthis.$statusHub.$off('custom-output-request-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\tawait this.getData();\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getData() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/output/ffa/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`scenarios/output/ffa/${this.scenarioID}`, this.form, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\taskDelete(id) {\r\n\t\t\t\tthis.page.delete.id = id;\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.delete(`scenarios/output/deletecustomoutputrequest/${this.page.delete.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.form.applyToAll = selection.applyToAll;\r\n\t\t\t\tthis.form.subbasins = selection.subbasins;\r\n\t\t\t},\r\n\t\t\tasync onStatusChanged(data) {\r\n\t\t\t\tawait this.getData();\r\n\t\t\t},\r\n\t\t\twriteArray(items, limit = 5) {\r\n\t\t\t\tif (items === null || items.length === 0) return 'All';\r\n\t\t\t\tif (limit === 0) limit = items.length;\r\n\t\t\t\tvar s = items.slice(0, limit).join(', ');\r\n\r\n\t\t\t\tif (items.length > limit) return s + ' (...)';\r\n\t\t\t\treturn s;\r\n\t\t\t}\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.form.applyToAll ||\r\n\t\t\t\t\t(this.form.subbasins.length > 0);\r\n\t\t\t},\r\n\t\t\tanyRunning() {\r\n\t\t\t\tlet matches = this.data.requests.filter(function (el) { return el.status === 'running'; });\r\n\t\t\t\treturn matches.length > 0;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputFfa.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputFfa.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OutputFfa.vue?vue&type=template&id=4b64f06c&\"\nimport script from \"./OutputFfa.vue?vue&type=script&lang=js&\"\nexport * from \"./OutputFfa.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Baseflow Separation\")]),(_vm.$parent.scenario.status.isRunning)?_c('div',[_c('page-running')],1):(!_vm.siteSettings.includeBaseflowSeparation)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"This feature is not enabled. Please contact an administrator if you are expecting it to be available.\")])],1):(_vm.data.noOutputProcessing)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"Output processing was skipped for this scenario run. Please re-run your scenario without the \\\"skip output processing\\\" box checked to use this feature.\")])],1):(_vm.data.numYears <= 3)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\"Your simulation must be run for more than 3 years to use this feature (simulation date minus skip years). At least 10 years is recommended.\")])],1):_c('div',[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.data.printSetting !== 'daily'}},[_vm._v(\" The baseflow separation feature requires that your scenario is run with \"),_c('strong',[_vm._v(\"daily\")]),_vm._v(\" output selected. Your scenario was run with \"),_c('strong',[_vm._v(_vm._s(_vm.data.printSetting))]),_vm._v(\" output. Please edit your scenario settings and re-run the scenario to use this feature. \")]),(_vm.data.printSetting === 'daily')?_c('div',[_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Your request has been submitted. Please wait while we create your files.\"}}),_c('p',[_vm._v(\" The daily baseflow values are estimated using the Eckhardt two-parameter recursive digital filter (Eckhardt, 2012). Suggested values for BFI max based on watershed characteristics: \")]),_c('ol',{attrs:{\"type\":\"a\"}},[_c('li',[_vm._v(\"0.8 for perennial streams with porous aquifers\")]),_c('li',[_vm._v(\"0.5 for ephemeral streams with porous aquifers\")]),_c('li',[_vm._v(\"0.25 for perennial streams with hard rock aquifers. \")])]),_c('p',[_vm._v(\" Eckhardt, K. 2012. Technical note: Analytical sensitivity analysis of two parameter recursive digital baseflow separation filter. Hydrology and Earth System Sciences 16: 451-455, \"),_c('a',{attrs:{\"href\":\"https://doi.org/10.5194/hess-16-451-2012\",\"target\":\"_blank\"}},[_vm._v(\"doi.org/10.5194/hess-16-451-2012\")]),_vm._v(\". \")]),(_vm.data.requests.length > 0)?_c('div',{staticClass:\"my-4\"},[_c('b-table',{staticClass:\"nowrap-headers border-bottom mb-1\",attrs:{\"responsive\":\"\",\"striped\":\"\",\"small\":\"\",\"items\":_vm.data.requests,\"fields\":_vm.table.fields},scopedSlots:_vm._u([{key:\"cell(status)\",fn:function(data){return [(data.item.status == 'running')?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\"}}):(data.item.status == 'error')?_c('font-awesome-icon',{staticClass:\"text-danger\",attrs:{\"icon\":['fas', 'exclamation-triangle']}}):_c('span')]}},{key:\"cell(lastModifiedDate)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"date\")(data.item.lastModifiedDate))+\" \")]}},{key:\"cell(downloadLink)\",fn:function(data){return [(data.item.status == 'complete')?_c('a',{attrs:{\"href\":data.item.downloadLink}},[_vm._v(\"Download\")]):_c('em',[_vm._v(_vm._s(data.item.status == 'error' ? `Error: ${data.item.statusMessage}` : data.item.statusMessage))])]}},{key:\"cell(subbasins)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm.writeArray(data.item.subbasins))+\" \")]}},{key:\"cell(delete)\",fn:function(data){return [(data.item.status !== 'running')?_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",on:{\"click\":function($event){return _vm.askDelete(data.item.id)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1):_c('span')]}}],null,false,205697327)}),(_vm.anyRunning)?_c('div',[_c('small',[_c('a',{staticClass:\"text-secondary\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get.apply(null, arguments)}}},[_c('font-awesome-icon',{staticClass:\"mr-1\",attrs:{\"icon\":['fas', 'redo']}}),_vm._v(\" Refresh progress\")],1)])]):_vm._e()],1):_vm._e(),_c('h3',[_vm._v(\"Request baseflow separation files\")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('b-form-group',{attrs:{\"label\":\"Filter Parameter\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"required\":\"\",\"min\":\"0\",\"max\":\"1\"},model:{value:(_vm.form.filterParameter),callback:function ($$v) {_vm.$set(_vm.form, \"filterParameter\", $$v)},expression:\"form.filterParameter\"}})],1),_c('b-form-group',{attrs:{\"label\":\"BFI Max\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"required\":\"\",\"min\":\"0\",\"max\":\"1\"},model:{value:(_vm.form.bfiMax),callback:function ($$v) {_vm.$set(_vm.form, \"bfiMax\", $$v)},expression:\"form.bfiMax\"}})],1),_c('hru-selector',{attrs:{\"projectID\":Number(_vm.$route.params.id),\"subbasin-only\":\"\",\"drop-down-label\":\"Request for\"},on:{\"change\":_vm.hruSelectionChange}}),_c('fixed-action-bar',{attrs:{\"cols\":10,\"offset\":2,\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.validHruSelection,\"text\":\"Request Files\"}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this request? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1):_vm._e()],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Baseflow Separation</h2>\r\n\r\n\t\t\t<div v-if=\"$parent.scenario.status.isRunning\">\r\n\t\t\t\t<page-running />\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"!siteSettings.includeBaseflowSeparation\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>This feature is not enabled. Please contact an administrator if you are expecting it to be available.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"data.noOutputProcessing\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>Output processing was skipped for this scenario run. Please re-run your scenario without the \"skip output processing\" box checked to use this feature.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"data.numYears <= 3\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>Your simulation must be run for more than 3 years to use this feature (simulation date minus skip years). At least 10 years is recommended.</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-alert variant=\"info\" :show=\"data.printSetting !== 'daily'\">\r\n\t\t\t\t\tThe baseflow separation feature requires that your scenario is run with <strong>daily</strong> output selected.\r\n\t\t\t\t\tYour scenario was run with <strong>{{data.printSetting}}</strong> output. Please edit your scenario settings and re-run\r\n\t\t\t\t\tthe scenario to use this feature.\r\n\t\t\t\t</b-alert>\r\n\t\t\t\t<div v-if=\"data.printSetting === 'daily'\">\r\n\t\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Your request has been submitted. Please wait while we create your files.\" />\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tThe daily baseflow values are estimated using the Eckhardt two-parameter recursive digital filter (Eckhardt, 2012).\n\t\t\t\t\t\tSuggested values for BFI max based on watershed characteristics:\r\n\t\t\t\t\t</p>\n\n\t\t\t\t\t<ol type=\"a\">\r\n\t\t\t\t\t\t<li>0.8 for perennial streams with porous aquifers</li>\r\n\t\t\t\t\t\t<li>0.5 for ephemeral streams with porous aquifers</li>\r\n\t\t\t\t\t\t<li>0.25 for perennial streams with hard rock aquifers. </li>\r\n\t\t\t\t\t</ol>\n\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tEckhardt, K. 2012. Technical note: Analytical sensitivity analysis of two parameter recursive digital baseflow separation filter.\n\t\t\t\t\t\tHydrology and Earth System Sciences 16: 451-455, <a href=\"https://doi.org/10.5194/hess-16-451-2012\" target=\"_blank\">doi.org/10.5194/hess-16-451-2012</a>.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div class=\"my-4\" v-if=\"data.requests.length > 0\">\r\n\t\t\t\t\t\t<b-table responsive striped small class=\"nowrap-headers border-bottom mb-1\" :items=\"data.requests\" :fields=\"table.fields\">\r\n\t\t\t\t\t\t\t<template v-slot:cell(status)=\"data\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon v-if=\"data.item.status == 'running'\" :icon=\"['fas', 'spinner']\" spin />\r\n\t\t\t\t\t\t\t\t<font-awesome-icon v-else-if=\"data.item.status == 'error'\" :icon=\"['fas', 'exclamation-triangle']\" class=\"text-danger\" />\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(lastModifiedDate)=\"data\">\r\n\t\t\t\t\t\t\t\t{{data.item.lastModifiedDate | date}}\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(downloadLink)=\"data\">\r\n\t\t\t\t\t\t\t\t<a v-if=\"data.item.status == 'complete'\" :href=\"data.item.downloadLink\">Download</a>\r\n\t\t\t\t\t\t\t\t<em v-else>{{data.item.status == 'error' ? `Error: ${data.item.statusMessage}` : data.item.statusMessage}}</em>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(subbasins)=\"data\">\r\n\t\t\t\t\t\t\t\t{{writeArray(data.item.subbasins)}}\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<template v-slot:cell(delete)=\"data\">\r\n\t\t\t\t\t\t\t\t<button class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDelete(data.item.id)\" v-if=\"data.item.status !== 'running'\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t</b-table>\r\n\t\t\t\t\t\t<div v-if=\"anyRunning\"><small><a href=\"#\" @click.prevent=\"get\" class=\"text-secondary\"><font-awesome-icon :icon=\"['fas', 'redo']\" class=\"mr-1\" /> Refresh progress</a></small></div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<h3>Request baseflow separation files</h3>\r\n\r\n\t\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Filter Parameter\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"form.filterParameter\" type=\"number\" step=\"any\" required min=\"0\" max=\"1\"></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"BFI Max\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"form.bfiMax\" type=\"number\" step=\"any\" required min=\"0\" max=\"1\"></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<hru-selector :projectID=\"Number($route.params.id)\" @change=\"hruSelectionChange\" subbasin-only drop-down-label=\"Request for\"></hru-selector>\r\n\r\n\t\t\t\t\t\t<fixed-action-bar :cols=\"10\" :offset=\"2\" :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" :disabled=\"!validHruSelection\" text=\"Request Files\" class=\"mr-2\" />\r\n\t\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t</b-form>\r\n\r\n\t\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tAre you sure you want to delete this request?\r\n\t\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-modal>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport HruSelector from '@/components/HruSelector';\r\n\r\n\texport default {\r\n\t\tname: 'OutputBaseflowSeparation',\r\n\t\tcomponents: {\r\n\t\t\tHruSelector\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tscenarioID: this.$route.params.scenarioID,\r\n\t\t\t\tprojectID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\tid: null,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tprintSetting: null,\r\n\t\t\t\t\tnumYears: 0,\r\n\t\t\t\t\tnoOutputProcessing: false,\r\n\t\t\t\t\trequests: []\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tapplyToAll: true,\r\n\t\t\t\t\tsubbasins: [],\n\t\t\t\t\tfilterParameter: 0.98,\n\t\t\t\t\tbfiMax: 0.8\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'status', label: '', class: 'min' },\r\n\t\t\t\t\t\t{ key: 'downloadLink', label: 'Request', sortable: true },\r\n\t\t\t\t\t\t{ key: 'subbasins', sortable: true },\r\n\t\t\t\t\t\t{ key: 'filterParameter', label: 'Filter Parameter', sortable: true },\r\n\t\t\t\t\t\t{ key: 'bfiMax', label: 'BFI Max', sortable: true },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', label: 'Date', sortable: true },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tfilter: null\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t\tthis.$statusHub.customOutputRequestOpened(this.$route.params.scenarioID, 'BaseflowSeparation');\r\n\t\t\tthis.$statusHub.$on('custom-output-request-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.$statusHub.customOutputRequestClosed(this.$route.params.scenarioID, 'BaseflowSeparation');\r\n\t\t\tthis.$statusHub.$off('custom-output-request-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\tawait this.getData();\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getData() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`scenarios/output/baseflowseparation/${this.scenarioID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\n\n\t\t\t\tif (this.isNullOrEmpty(this.form.filterParameter) || this.isNullOrEmpty(this.form.bfiMax)) {\n\t\t\t\t\tthis.page.saveErrors.push(\"Filter parameter and BFI max are required.\");\r\n\t\t\t\t}\n\t\t\t\telse if (this.form.filterParameter < 0 || this.form.filterParameter > 1 || this.form.bfiMax < 0 || this.form.bfiMax > 1) {\n\t\t\t\t\tthis.page.saveErrors.push(\"Filter parameter and BFI max must be a number between 0 and 1.\");\n\t\t\t\t} else {\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`scenarios/output/baseflowseparation/${this.scenarioID}`, this.form, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\t\t\t\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\taskDelete(id) {\r\n\t\t\t\tthis.page.delete.id = id;\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.delete(`scenarios/output/deletecustomoutputrequest/${this.page.delete.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\thruSelectionChange(selection) {\r\n\t\t\t\tthis.form.applyToAll = selection.applyToAll;\r\n\t\t\t\tthis.form.subbasins = selection.subbasins;\r\n\t\t\t},\r\n\t\t\tasync onStatusChanged(data) {\r\n\t\t\t\tawait this.getData();\r\n\t\t\t},\r\n\t\t\twriteArray(items, limit = 5) {\r\n\t\t\t\tif (items === null || items.length === 0) return 'All';\r\n\t\t\t\tif (limit === 0) limit = items.length;\r\n\t\t\t\tvar s = items.slice(0, limit).join(', ');\r\n\r\n\t\t\t\tif (items.length > limit) return s + ' (...)';\r\n\t\t\t\treturn s;\r\n\t\t\t}\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tvalidHruSelection() {\r\n\t\t\t\treturn this.form.applyToAll ||\r\n\t\t\t\t\t(this.form.subbasins.length > 0);\r\n\t\t\t},\r\n\t\t\tanyRunning() {\r\n\t\t\t\tlet matches = this.data.requests.filter(function (el) { return el.status === 'running'; });\r\n\t\t\t\treturn matches.length > 0;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputBaseflowSeparation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OutputBaseflowSeparation.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OutputBaseflowSeparation.vue?vue&type=template&id=6b7bf381&\"\nimport script from \"./OutputBaseflowSeparation.vue?vue&type=script&lang=js&\"\nexport * from \"./OutputBaseflowSeparation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('div',{attrs:{\"id\":\"main-panel\"}},[(_vm.$route.name == 'GroupList')?_c('div',{staticClass:\"container py-5\"},[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',[_vm._v(\"My groups\")]),_c('p',[_vm._v(\" Groups are a way to share your projects and scenarios with other users. \")]),(_vm.invites.length > 0)?_c('div',{staticClass:\"mb-4\"},[_c('router-link',{staticClass:\"btn btn-primary\",attrs:{\"to\":\"invites\",\"append\":\"\"}},[_c('b-badge',{attrs:{\"variant\":\"light\"}},[_vm._v(_vm._s(_vm.invites.length))]),_vm._v(\" Pending group invitations \")],1)],1):_vm._e(),_c('grid-view',{attrs:{\"api-url\":\"groups\",\"delete-api-url\":\"groups\",\"delete-if-field\":\"isAdmin\",\"fields\":_vm.table.fields,\"link-name\":\"\",\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"default-per-page\":_vm.table.itemsPerPage,\"collection-description\":\"groups\",\"item-name\":\"group\",\"create-route\":\"create\",\"show-create\":\"\",\"extra-delete-message\":\"No projects or files will be deleted. Access will return to just the creator.\"}}),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1):_c('div',{staticClass:\"container\"},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white\",attrs:{\"items\":_vm.breadCrumbs}}),_c('div',{staticClass:\"container-fluid pb-4\"},[_c('router-view')],1)],1)])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<div v-if=\"$route.name == 'GroupList'\" class=\"container py-5\">\r\n\t\t\t\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t\t\t\t<h2>My groups</h2>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tGroups are a way to share your projects and scenarios with other users.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div v-if=\"invites.length > 0\" class=\"mb-4\">\r\n\t\t\t\t\t\t\t<router-link to=\"invites\" append class=\"btn btn-primary\">\r\n\t\t\t\t\t\t\t\t<b-badge variant=\"light\">{{invites.length}}</b-badge>\r\n\t\t\t\t\t\t\t\tPending group invitations\r\n\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<grid-view api-url=\"groups\" delete-api-url=\"groups\" delete-if-field=\"isAdmin\"\r\n\t\t\t\t\t\t\t\t   :fields=\"table.fields\" link-name\r\n\t\t\t\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\" :default-per-page=\"table.itemsPerPage\"\r\n\t\t\t\t\t\t\t\t   collection-description=\"groups\"\r\n\t\t\t\t\t\t\t\t   item-name=\"group\" create-route=\"create\" show-create\r\n\t\t\t\t\t\t\t\t   extra-delete-message=\"No projects or files will be deleted. Access will return to just the creator.\"></grid-view>\r\n\r\n\t\t\t\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t</page-authorization-container>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-else class=\"container\">\r\n\t\t\t\t\t<b-breadcrumb :items=\"breadCrumbs\" class=\"no-curves bg-white\"></b-breadcrumb>\r\n\t\t\t\t\t<div class=\"container-fluid pb-4\">\r\n\t\t\t\t\t\t<router-view></router-view>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\timport GridView from '@/components/helpers/GridView';\r\n\r\n\texport default {\r\n\t\tname: 'GroupList',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader, GridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tinvites: [],\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t{ key: 'numProjects', label: 'Projects', sortable: true },\r\n\t\t\t\t\t\t{ key: 'numMembers', label: 'Members', sortable: true },\r\n\t\t\t\t\t\t{ key: 'numInvitedUsers', label: 'Outstanding Invitations', sortable: true },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'name',\r\n\t\t\t\t\treverse: false,\r\n\t\t\t\t\titemsPerPage: 20\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('groups/invites', this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.invites = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tbreadCrumbs() {\r\n\t\t\t\tvar crumbs = [];\r\n\t\t\t\tfor (var i = 0; i < this.$route.matched.length; i++) {\r\n\t\t\t\t\tvar item = this.$route.matched[i];\r\n\t\t\t\t\tvar name = item.meta.title ? item.meta.title : item.name;\r\n\r\n\t\t\t\t\tcrumbs.push({\r\n\t\t\t\t\t\ttext: name,\r\n\t\t\t\t\t\tto: { name: item.name }\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\treturn crumbs;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupList.vue?vue&type=template&id=32788db0&\"\nimport script from \"./GroupList.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Group Invitations\")]),_c('b-alert',{attrs:{\"show\":_vm.page.accept.success,\"dismissible\":\"\",\"variant\":\"success\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'check']}}),_vm._v(\" You are now a member of the group, \"+_vm._s(_vm.page.accept.name)+\" \"),_c('router-link',{attrs:{\"to\":`/groups/${_vm.page.accept.id}`}},[_vm._v(\"Visit this group.\")])],1),(_vm.invites.length > 0)?_c('div',[_c('b-table',{staticClass:\"nowrap-headers mb-3 border-bottom table-valign-m\",attrs:{\"striped\":\"\",\"responsive\":\"\",\"items\":_vm.invites,\"fields\":_vm.table.fields},scopedSlots:_vm._u([{key:\"cell(invitedOn)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"date\")(data.item.invitedOn))+\" \")]}},{key:\"cell(reject)\",fn:function(data){return [_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.askReject(data.item.groupID, data.item.group)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}}),_vm._v(\" Reject \")],1)]}},{key:\"cell(accept)\",fn:function(data){return [_c('b-button',{attrs:{\"type\":\"button\",\"variant\":\"success\"},on:{\"click\":function($event){return _vm.accept(data.item.groupID, data.item.group)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'check']}}),_vm._v(\" Accept \")],1)]}}],null,false,1056323661)})],1):_c('div',[_c('p',{staticClass:\"lead\"},[_vm._v(\"You have no group invitations at this time.\")])]),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm invitation rejection\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.reject.show),callback:function ($$v) {_vm.$set(_vm.page.reject, \"show\", $$v)},expression:\"page.reject.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.reject.errors}}),_c('p',[_vm._v(\" Are you sure you want to reject the invitation to join the group, \"),_c('strong',[_vm._v(_vm._s(_vm.page.reject.name))]),_vm._v(\"? \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.reject.saving,\"text\":\"Reject Invitation\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmReject.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.reject.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">Group Invitations</h2>\r\n\r\n\t\t\t<b-alert :show=\"page.accept.success\"\r\n\t\t\t\t\t dismissible\r\n\t\t\t\t\t variant=\"success\">\r\n\t\t\t\t<font-awesome-icon :icon=\"['fas', 'check']\" />\r\n\t\t\t\tYou are now a member of the group, {{page.accept.name}}\r\n\t\t\t\t<router-link :to=\"`/groups/${page.accept.id}`\">Visit this group.</router-link>\r\n\t\t\t</b-alert>\r\n\r\n\t\t\t<div v-if=\"invites.length > 0\">\r\n\t\t\t\t<b-table striped responsive class=\"nowrap-headers mb-3 border-bottom table-valign-m\"\r\n\t\t\t\t\t\t :items=\"invites\" :fields=\"table.fields\">\r\n\t\t\t\t\t<template v-slot:cell(invitedOn)=\"data\">\r\n\t\t\t\t\t\t{{data.item.invitedOn | date}}\r\n\t\t\t\t\t</template>\r\n\t\t\t\t\t<template v-slot:cell(reject)=\"data\">\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"danger\" @click=\"askReject(data.item.groupID, data.item.group)\">\r\n\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" /> Reject\r\n\t\t\t\t\t\t</b-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t\t<template v-slot:cell(accept)=\"data\">\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"success\" @click=\"accept(data.item.groupID, data.item.group)\">\r\n\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'check']\" /> Accept\r\n\t\t\t\t\t\t</b-button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</b-table>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<p class=\"lead\">You have no group invitations at this time.</p>\r\n\t\t\t</div>\r\n\r\n\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t<b-modal v-model=\"page.reject.show\" size=\"md\" title=\"Confirm invitation rejection\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.reject.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to reject the invitation to join the group, <strong>{{page.reject.name}}</strong>?\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.reject.saving\" @click.native=\"confirmReject\" text=\"Reject Invitation\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.reject.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'GroupInvites',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\treject: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tid: null,\r\n\t\t\t\t\t\tname: null\r\n\t\t\t\t\t},\r\n\t\t\t\t\taccept: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tid: null,\r\n\t\t\t\t\t\tname: null,\r\n\t\t\t\t\t\tsuccess: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tinvites: [],\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'accept', label: '', class: 'min' },\r\n\t\t\t\t\t\t{ key: 'reject', label: '', class: 'min' },\r\n\t\t\t\t\t\t'group',\r\n\t\t\t\t\t\t'groupDescription',\r\n\t\t\t\t\t\t'invitedOn',\r\n\t\t\t\t\t\t'invitedBy'\r\n\t\t\t\t\t]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`groups/invites`, this.getTokenHeader());\r\n\t\t\t\t\tthis.invites = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\taskReject(id, name) {\r\n\t\t\t\tthis.page.reject.id = id;\r\n\t\t\t\tthis.page.reject.name = name;\r\n\t\t\t\tthis.page.reject.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmReject() {\r\n\t\t\t\tthis.page.reject.errors = [];\r\n\t\t\t\tthis.page.reject.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.patch(`groups/reject/${this.page.reject.id}`, {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.reject.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.reject.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.reject.saving = false;\r\n\t\t\t},\r\n\t\t\tasync accept(id, name) {\r\n\t\t\t\tthis.page.accept.id = id;\r\n\t\t\t\tthis.page.accept.name = name;\r\n\t\t\t\tthis.page.accept.errors = [];\r\n\t\t\t\tthis.page.accept.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.patch(`groups/accept/${id}`, {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.accept.show = false;\r\n\t\t\t\t\tthis.page.accept.success = true;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.accept.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.accept.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupInvites.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupInvites.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupInvites.vue?vue&type=template&id=1d7b80c2&\"\nimport script from \"./GroupInvites.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupInvites.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.group.name))]),_c('p',[_vm._v(\" \"+_vm._s(_vm.group.description)+\" \")]),_c('h3',{staticClass:\"mt-4 mb-3\"},[_vm._v(\"Group Projects\")]),_c('grid-view',{attrs:{\"api-url\":`groups/projects/${_vm.groupID}`,\"fields\":_vm.tables.projects.fields,\"default-sort\":_vm.tables.projects.sort,\"default-reverse\":_vm.tables.projects.reverse,\"default-per-page\":_vm.tables.itemsPerPage,\"collection-description\":\"group projects\",\"item-name\":\"project\"}}),_c('h3',{staticClass:\"mt-4 mb-3\",attrs:{\"id\":\"membersTop\"}},[_vm._v(\"Group Members\")]),(_vm.selectedMember !== null && _vm.group.isAdmin)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":\"\"}},[_c('p',[_vm._v(\" You have selected member \"),_c('strong',[_vm._v(_vm._s(_vm.selectedMember.firstName)+\" \"+_vm._s(_vm.selectedMember.lastName)+\" (\"+_vm._s(_vm.selectedMember.userName)+\")\")]),_vm._v(\". \")]),(_vm.selectedMember.isOwner)?_c('div',[_c('em',[_vm._v(\"This user is the owner of the group and cannot be removed.\")])]):_c('div',[_c('save-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"variant\":\"primary\",\"saving\":_vm.page.setAdmin.saving,\"text\":_vm.selectedMember.isAdmin ? 'Revoke Admin Rights' : 'Make Group Admin'},nativeOn:{\"click\":function($event){return _vm.setAdmin(_vm.selectedMember.userName, !_vm.selectedMember.isAdmin)}}}),_c('b-button',{attrs:{\"variant\":\"danger\",\"type\":\"button\"},on:{\"click\":function($event){return _vm.askRevokeAccess(_vm.selectedMember.userName)}}},[_vm._v(\" Revoke Group Membership \")])],1)])],1):_vm._e(),_c('p',[_vm._v(\" Click a row on the table below to set administrative rights for the user or remove them from the group. Users with administrative rights to the group can edit group settings and members. \")]),_c('grid-view',{attrs:{\"api-url\":`groups/members/${_vm.groupID}`,\"fields\":_vm.tables.members.fields,\"selectable\":_vm.group.isAdmin,\"default-sort\":_vm.tables.members.sort,\"default-reverse\":_vm.tables.members.reverse,\"default-per-page\":_vm.tables.itemsPerPage,\"collection-description\":\"group members\",\"item-name\":\"member\"},on:{\"selectionChanged\":_vm.memberSelectionChanged}}),(_vm.group.invitedUsers.length > 0)?_c('div',[_c('h3',{staticClass:\"mt-4 mb-3\"},[_vm._v(\"Pending Invitations\")]),_c('b-table',{staticClass:\"nowrap-headers mb-3 border-bottom\",attrs:{\"striped\":\"\",\"responsive\":\"\",\"items\":_vm.group.invitedUsers,\"fields\":_vm.tables.invites.fields},scopedSlots:_vm._u([{key:\"cell(delete)\",fn:function(data){return [(_vm.group.isAdmin)?_c('div',[_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",on:{\"click\":function($event){return _vm.askDeleteInvite(data.item.id)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1)]):_c('div')]}}],null,false,588710216)})],1):_vm._e(),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[(_vm.group.isAdmin)?_c('b-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"variant\":\"success\"},on:{\"click\":function($event){_vm.page.invite.show = true}}},[_vm._v(\"Invite Members\")]):_vm._e(),(_vm.group.isAdmin)?_c('b-button',{staticClass:\"mr-2\",attrs:{\"type\":\"button\",\"variant\":\"primary\"},on:{\"click\":function($event){_vm.page.edit.show = true}}},[_vm._v(\"Edit Settings\")]):_vm._e(),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.group.isOwner)?_c('b-button',{staticClass:\"ml-auto\",attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")]):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this group? No projects or files will be deleted. Access will return to just the creator. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.deleteInvite.show),callback:function ($$v) {_vm.$set(_vm.page.deleteInvite, \"show\", $$v)},expression:\"page.deleteInvite.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.deleteInvite.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this invitation? \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.deleteInvite.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDeleteInvite.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.deleteInvite.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm removal from group\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.revokeAccess.show),callback:function ($$v) {_vm.$set(_vm.page.revokeAccess, \"show\", $$v)},expression:\"page.revokeAccess.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.revokeAccess.errors}}),_c('p',[_vm._v(\" Are you sure you want to revoke group membership for \"),_c('strong',[_vm._v(_vm._s(_vm.page.revokeAccess.userName))]),_vm._v(\"? \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.revokeAccess.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmRevokeAccess.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.revokeAccess.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"title\":\"Invite a member to this group\"},model:{value:(_vm.page.invite.show),callback:function ($$v) {_vm.$set(_vm.page.invite, \"show\", $$v)},expression:\"page.invite.show\"}},[_c('p',[_vm._v(\" Invite a new member to this group. All users in the group may view, edit*, and run* projects shared with the group. (*Note: tier limits still apply.) \")]),_c('p',[_vm._v(\" For security reasons, in order to invite a user you must have the email address associated with their \"+_vm._s(_vm.group.siteName)+\" account. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.invite.errors}}),_c('b-alert',{attrs:{\"show\":_vm.page.invite.success,\"variant\":\"success\"}},[_vm._v(\" Invitation sent! Enter another email address to send another invitation or \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.page.invite.show = false}}},[_vm._v(\"close this window\")]),_vm._v(\". \")]),_c('b-form-group',{attrs:{\"label\":`What is the user's ${_vm.group.siteName} email address?`}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"required\":\"\"},model:{value:(_vm.page.invite.data.name),callback:function ($$v) {_vm.$set(_vm.page.invite.data, \"name\", $$v)},expression:\"page.invite.data.name\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Message to user (optional)\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"4\"},model:{value:(_vm.page.invite.data.description),callback:function ($$v) {_vm.$set(_vm.page.invite.data, \"description\", $$v)},expression:\"page.invite.data.description\"}})],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.invite.saving,\"text\":\"Invite User\",\"variant\":\"success\"},nativeOn:{\"click\":function($event){return _vm.sendInvite.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.invite.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"title\":\"Edit group settings\"},model:{value:(_vm.page.edit.show),callback:function ($$v) {_vm.$set(_vm.page.edit, \"show\", $$v)},expression:\"page.edit.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.edit.errors}}),_c('b-form-group',{attrs:{\"label\":\"Group name\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"required\":\"\"},model:{value:(_vm.page.edit.data.name),callback:function ($$v) {_vm.$set(_vm.page.edit.data, \"name\", $$v)},expression:\"page.edit.data.name\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Describe the purpose of this group\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"4\"},model:{value:(_vm.page.edit.data.description),callback:function ($$v) {_vm.$set(_vm.page.edit.data, \"description\", $$v)},expression:\"page.edit.data.description\"}})],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.edit.saving},nativeOn:{\"click\":function($event){return _vm.edit.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.edit.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<h2 class=\"mb-4\">{{group.name}}</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\t{{group.description}}\r\n\t\t\t</p>\r\n\r\n\t\t\t<h3 class=\"mt-4 mb-3\">Group Projects</h3>\r\n\r\n\t\t\t<grid-view :api-url=\"`groups/projects/${groupID}`\"\r\n\t\t\t\t\t   :fields=\"tables.projects.fields\"\r\n\t\t\t\t\t   :default-sort=\"tables.projects.sort\" :default-reverse=\"tables.projects.reverse\" :default-per-page=\"tables.itemsPerPage\"\r\n\t\t\t\t\t   collection-description=\"group projects\"\r\n\t\t\t\t\t   item-name=\"project\"></grid-view>\r\n\r\n\t\t\t<h3 class=\"mt-4 mb-3\" id=\"membersTop\">Group Members</h3>\r\n\r\n\t\t\t<div v-if=\"selectedMember !== null && group.isAdmin\">\r\n\t\t\t\t<b-alert variant=\"info\" show>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tYou have selected member\r\n\t\t\t\t\t\t<strong>{{selectedMember.firstName}} {{selectedMember.lastName}} ({{selectedMember.userName}})</strong>.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<div v-if=\"selectedMember.isOwner\">\r\n\t\t\t\t\t\t<em>This user is the owner of the group and cannot be removed.</em>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t<save-button type=\"button\" variant=\"primary\" class=\"mr-2\" :saving=\"page.setAdmin.saving\"\r\n\t\t\t\t\t\t\t\t\t @click.native=\"setAdmin(selectedMember.userName, !selectedMember.isAdmin)\"\r\n\t\t\t\t\t\t\t\t\t :text=\"selectedMember.isAdmin ? 'Revoke Admin Rights' : 'Make Group Admin'\" />\r\n\t\t\t\t\t\t<b-button variant=\"danger\" type=\"button\" @click=\"askRevokeAccess(selectedMember.userName)\">\r\n\t\t\t\t\t\t\tRevoke Group Membership\r\n\t\t\t\t\t\t</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tClick a row on the table below to set administrative rights for the user or remove them from the group.\r\n\t\t\t\tUsers with administrative rights to the group can edit group settings and members.\r\n\t\t\t</p>\r\n\r\n\t\t\t<grid-view :api-url=\"`groups/members/${groupID}`\"\r\n\t\t\t\t\t   :fields=\"tables.members.fields\"\r\n\t\t\t\t\t   :selectable=\"group.isAdmin\" @selectionChanged=\"memberSelectionChanged\"\r\n\t\t\t\t\t   :default-sort=\"tables.members.sort\" :default-reverse=\"tables.members.reverse\" :default-per-page=\"tables.itemsPerPage\"\r\n\t\t\t\t\t   collection-description=\"group members\"\r\n\t\t\t\t\t   item-name=\"member\"></grid-view>\r\n\r\n\t\t\t<div v-if=\"group.invitedUsers.length > 0\">\r\n\t\t\t\t<h3 class=\"mt-4 mb-3\">Pending Invitations</h3>\r\n\r\n\t\t\t\t<b-table striped responsive class=\"nowrap-headers mb-3 border-bottom\"\r\n\t\t\t\t\t\t :items=\"group.invitedUsers\" :fields=\"tables.invites.fields\">\r\n\t\t\t\t\t<template v-slot:cell(delete)=\"data\">\r\n\t\t\t\t\t\t<div v-if=\"group.isAdmin\">\r\n\t\t\t\t\t\t\t<button class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDeleteInvite(data.item.id)\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-else></div>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</b-table>\r\n\t\t\t</div>\r\n\r\n\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t<b-button v-if=\"group.isAdmin\" type=\"button\" variant=\"success\" @click=\"page.invite.show = true\" class=\"mr-2\">Invite Members</b-button>\r\n\t\t\t\t<b-button v-if=\"group.isAdmin\" type=\"button\" variant=\"primary\" @click=\"page.edit.show = true\" class=\"mr-2\">Edit Settings</b-button>\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t<b-button v-if=\"group.isOwner\" variant=\"danger\" @click=\"page.delete.show = true\" class=\"ml-auto\">Delete</b-button>\r\n\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete this group?\r\n\t\t\t\t\tNo projects or files will be deleted. Access will return to just the creator.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\t\t\t<b-modal v-model=\"page.deleteInvite.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.deleteInvite.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete this invitation?\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.deleteInvite.saving\" @click.native=\"confirmDeleteInvite\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.deleteInvite.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\t\t\t<b-modal v-model=\"page.revokeAccess.show\" size=\"md\" title=\"Confirm removal from group\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.revokeAccess.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to revoke group membership for <strong>{{page.revokeAccess.userName}}</strong>?\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.revokeAccess.saving\" @click.native=\"confirmRevokeAccess\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.revokeAccess.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\t\t\t<b-modal v-model=\"page.invite.show\" title=\"Invite a member to this group\">\r\n\t\t\t\t<p>\r\n\t\t\t\t\tInvite a new member to this group.\r\n\t\t\t\t\tAll users in the group may view, edit*, and run* projects shared with the group.\r\n\t\t\t\t\t(*Note: tier limits still apply.)\r\n\t\t\t\t</p>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tFor security reasons, in order to invite a user you must have the email address associated with\r\n\t\t\t\t\ttheir {{group.siteName}} account.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<error-list :errors=\"page.invite.errors\"></error-list>\r\n\r\n\t\t\t\t<b-alert :show=\"page.invite.success\" variant=\"success\">\r\n\t\t\t\t\tInvitation sent!\r\n\t\t\t\t\tEnter another email address to send another invitation or\r\n\t\t\t\t\t<a href=\"#\" @click.prevent=\"page.invite.show = false\">close this window</a>.\r\n\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t<b-form-group :label=\"`What is the user's ${group.siteName} email address?`\">\r\n\t\t\t\t\t<b-form-input v-model=\"page.invite.data.name\" type=\"email\" required></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Message to user (optional)\">\r\n\t\t\t\t\t<b-form-textarea v-model=\"page.invite.data.description\" rows=\"4\"></b-form-textarea>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.invite.saving\" @click.native=\"sendInvite\" text=\"Invite User\" variant=\"success\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.invite.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\t\t\t<b-modal v-model=\"page.edit.show\" title=\"Edit group settings\">\r\n\t\t\t\t<error-list :errors=\"page.edit.errors\"></error-list>\r\n\r\n\t\t\t\t<b-form-group label=\"Group name\">\r\n\t\t\t\t\t<b-form-input v-model=\"page.edit.data.name\" type=\"email\" required></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Describe the purpose of this group\">\r\n\t\t\t\t\t<b-form-textarea v-model=\"page.edit.data.description\" rows=\"4\"></b-form-textarea>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.edit.saving\" @click.native=\"edit\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.edit.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\r\n\texport default {\r\n\t\tname: 'GroupView',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tdeleteInvite: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\tid: undefined,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tsetAdmin: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\trevokeAccess: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tuserName: null\r\n\t\t\t\t\t},\r\n\t\t\t\t\tinvite: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\tname: null,\r\n\t\t\t\t\t\t\tdescription: null\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tedit: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tdata: {\r\n\t\t\t\t\t\t\tname: null,\r\n\t\t\t\t\t\t\tdescription: null\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tgroupID: this.$route.params.id,\r\n\t\t\t\tgroup: {\r\n\t\t\t\t\tinvitedUsers: []\r\n\t\t\t\t},\r\n\t\t\t\ttables: {\r\n\t\t\t\t\tprojects: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'project', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t\t{ key: 'userName', label: 'Belongs to', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t\t{ key: 'dataset', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'endingSubbasin', label: 'Downstream ID', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'numSubbasins', label: 'Subbasins', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t\t{ key: 'numHrus', label: 'HRUs', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t\t{ key: 'totalArea', label: 'Area (sq. km.)', sortable: false, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t\t{ key: 'numScenarios', label: 'Scenarios', sortable: false }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\t\treverse: true\r\n\t\t\t\t\t},\r\n\t\t\t\t\tmembers: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'userName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'email', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'firstName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'lastName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'affiliation', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'isAdmin', label: 'Group Admin?', sortable: false, formatter: (value) => { return value === true ? 'Yes' : 'No' } }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tsort: 'userName',\r\n\t\t\t\t\t\treverse: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tinvites: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'userName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'email', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'firstName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'lastName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'affiliation', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'delete', label: '' }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tsort: 'userName',\r\n\t\t\t\t\t\treverse: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\titemsPerPage: 10\r\n\t\t\t\t},\r\n\t\t\t\tselectedMember: null\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.groupID = this.$route.params.id;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.selectedMember = null;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`groups/${this.groupID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.group = response.data;\r\n\t\t\t\t\tthis.page.edit.data.name = this.group.name;\r\n\t\t\t\t\tthis.page.edit.data.description = this.group.description;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\taskDeleteInvite(id) {\r\n\t\t\t\tthis.page.deleteInvite.id = id;\r\n\t\t\t\tthis.page.deleteInvite.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDeleteInvite() {\r\n\t\t\t\tthis.page.deleteInvite.errors = [];\r\n\t\t\t\tthis.page.deleteInvite.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`groups/invite/${this.page.deleteInvite.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.deleteInvite.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.deleteInvite.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.deleteInvite.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`groups/${this.groupID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'GroupList' }).catch(err => {});\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\taskRevokeAccess(userName) {\r\n\t\t\t\tthis.page.revokeAccess.userName = userName;\r\n\t\t\t\tthis.page.revokeAccess.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmRevokeAccess() {\r\n\t\t\t\tthis.page.revokeAccess.errors = [];\r\n\t\t\t\tthis.page.revokeAccess.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tvalue: this.page.revokeAccess.userName\r\n\t\t\t\t\t};\r\n\t\t\t\t\tconst response = await this.$http.patch(`groups/removemember/${this.groupID}`, data, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.revokeAccess.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.revokeAccess.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.revokeAccess.saving = false;\r\n\t\t\t},\r\n\t\t\tasync setAdmin(name, value) {\r\n\t\t\t\tthis.page.setAdmin.errors = [];\r\n\t\t\t\tthis.page.setAdmin.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tname: name,\r\n\t\t\t\t\t\tvalue: value\r\n\t\t\t\t\t};\r\n\t\t\t\t\tconst response = await this.$http.patch(`groups/setadmin/${this.groupID}`, data, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.setAdmin.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.setAdmin.saving = false;\r\n\t\t\t},\r\n\t\t\tmemberSelectionChanged(items) {\r\n\t\t\t\tthis.log(items);\r\n\t\t\t\tif (items === null || items.length < 1) this.selectedMember = null;\r\n\t\t\t\telse {\r\n\t\t\t\t\tthis.selectedMember = items[0];\r\n\t\t\t\t\tthis.$scrollTo('#membersTop');\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync sendInvite() {\r\n\t\t\t\tthis.page.invite.errors = [];\r\n\t\t\t\tthis.page.invite.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.put(`groups/invite/${this.groupID}`, this.page.invite.data, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.page.invite.success = true;\r\n\t\t\t\t\tthis.page.invite.data.name = null;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.invite.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.invite.saving = false;\r\n\t\t\t},\r\n\t\t\tasync edit() {\r\n\t\t\t\tthis.page.edit.errors = [];\r\n\t\t\t\tthis.page.edit.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.put(`groups/${this.groupID}`, this.page.edit.data, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.edit.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.edit.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.edit.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupView.vue?vue&type=template&id=67661c8c&\"\nimport script from \"./GroupView.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"show-errors-with-object\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Create a new group\")]),_c('p',[_vm._v(\" Groups are a way to share your projects and scenarios with other users. After creating a group you can invite users to join by entering their email address. Users choose which projects to share with the group by clicking the share button from a project's page. All users in the group may view, edit*, and run* projects shared with the group. (*Note: tier limits still apply.) \")]),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('b-form-group',{attrs:{\"label\":\"Group name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.name)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.name)},model:{value:(_vm.$v.form.name.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.name, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.name.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Describe the purpose of this group\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.description)}},[_c('b-form-textarea',{attrs:{\"rows\":\"10\",\"state\":_vm.getValidState(_vm.$v.form.description)},model:{value:(_vm.$v.form.description.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.description, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.description.$model\"}})],1),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.$anyDirty}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" show-errors-with-object>\r\n\t\t\t<h2 class=\"mb-4\">Create a new group</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tGroups are a way to share your projects and scenarios with other users.\r\n\t\t\t\tAfter creating a group you can invite users to join by entering their email address.\r\n\t\t\t\tUsers choose which projects to share with the group by clicking the share button from a project's page.\r\n\t\t\t\tAll users in the group may view, edit*, and run* projects shared with the group.\r\n\t\t\t\t(*Note: tier limits still apply.)\r\n\t\t\t</p>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t\t<b-form-group label=\"Group name\" :invalid-feedback=\"requiredFeedback($v.form.name)\">\r\n\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.name.$model\" type=\"text\" autofocus :state=\"getValidState($v.form.name)\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Describe the purpose of this group\" :invalid-feedback=\"requiredFeedback($v.form.description)\">\r\n\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.form.description.$model\" rows=\"10\" :state=\"getValidState($v.form.description)\"></b-form-textarea>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" :disabled=\"!$v.$anyDirty\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'GroupCreate',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tname: null,\r\n\t\t\t\t\tdescription: null\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tname: { required },\r\n\t\t\t\tdescription: { required }\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.saveErrors.push('Please enter both a name and description.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post('groups', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'GroupView', params: { id: response.data } }).catch(err => {});\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GroupCreate.vue?vue&type=template&id=41d3b809&\"\nimport script from \"./GroupCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./GroupCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('div',{attrs:{\"id\":\"main-panel\"}},[(_vm.$route.name == 'DatasetList')?_c('div',{staticClass:\"container py-5\"},[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"My project dataset uploads\")]),_c('p',[_vm._v(\" If you checked the box to write SWAT Editor tables on any of your scenario runs and modified the project offline, you may upload those changes back into the system as a new project dataset. After uploading your project, you may create new projects in the system based off it, as well as share the project dataset with your groups or request it be made public to all users. Use your uploaded datasets by selecting it from the drop down list in the \"),_c('router-link',{attrs:{\"to\":\"/projects/create\"}},[_vm._v(\"create project page\")]),_vm._v(\". \")],1),(!_vm.data.hasAccess)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" Your tier does not have access to project uploads. If this is a feature you need, visit your \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"account profile\")]),_vm._v(\" to request access to a higher tier. \")],1)],1):_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":_vm.data.reachedLimit}},[_vm._v(\" You have reached the maximum number of project uploads allowed in your tier. If you need more uploads, visit your \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"account profile\")]),_vm._v(\" to request access to a higher tier. \")],1),_c('grid-view',{attrs:{\"api-url\":\"importdatasets\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"uploaded projects\",\"create-route\":\"create\",\"show-create\":!_vm.data.reachedLimit,\"item-name\":\"project dataset\"}}),_c('b-alert',{staticClass:\"my-4\",attrs:{\"variant\":\"info\",\"show\":_vm.data.uploadLimit < 100}},[_vm._v(\" You are allowed \"+_vm._s(_vm._f(\"number\")(_vm.data.uploadLimit,0))+\" project dataset uploads. \")])],1),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1):_c('div',{staticClass:\"container\"},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white\",attrs:{\"items\":_vm.breadCrumbs}}),_c('div',{staticClass:\"container-fluid pb-4\"},[_c('router-view')],1)],1)])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<div v-if=\"$route.name == 'DatasetList'\" class=\"container py-5\">\r\n\t\t\t\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t\t\t\t<h2 class=\"mb-4\">My project dataset uploads</h2>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tIf you checked the box to write SWAT Editor tables on any of your scenario runs\r\n\t\t\t\t\t\t\tand modified the project offline, you may upload those changes back into the\r\n\t\t\t\t\t\t\tsystem as a new project dataset.\r\n\t\t\t\t\t\t\tAfter uploading your project, you may create new projects in the system based off\r\n\t\t\t\t\t\t\tit, as well as share the project dataset with your groups or request it be made public\r\n\t\t\t\t\t\t\tto all users.\r\n\t\t\t\t\t\t\tUse your uploaded datasets by selecting it from the drop down list in the\r\n\t\t\t\t\t\t\t<router-link to=\"/projects/create\">create project page</router-link>.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div v-if=\"!data.hasAccess\">\r\n\t\t\t\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\t\t\t\tYour tier does not have access to project uploads.\r\n\t\t\t\t\t\t\t\tIf this is a feature you need, visit your <router-link to=\"/account\">account profile</router-link>\r\n\t\t\t\t\t\t\t\tto request access to a higher tier.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t<b-alert variant=\"warning\" :show=\"data.reachedLimit\">\r\n\t\t\t\t\t\t\t\tYou have reached the maximum number of project uploads allowed in your tier.\r\n\t\t\t\t\t\t\t\tIf you need more uploads, visit your <router-link to=\"/account\">account profile</router-link>\r\n\t\t\t\t\t\t\t\tto request access to a higher tier.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t<grid-view api-url=\"importdatasets\"\r\n\t\t\t\t\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t\t\t\t\t   collection-description=\"uploaded projects\"\r\n\t\t\t\t\t\t\t\t\t   create-route=\"create\" :show-create=\"!data.reachedLimit\"\r\n\t\t\t\t\t\t\t\t\t   item-name=\"project dataset\"></grid-view>\r\n\r\n\t\t\t\t\t\t\t<b-alert variant=\"info\" :show=\"data.uploadLimit < 100\" class=\"my-4\">\r\n\t\t\t\t\t\t\t\tYou are allowed {{data.uploadLimit | number(0)}} project dataset uploads.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t\t</page-authorization-container>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div v-else class=\"container\">\r\n\t\t\t\t\t<b-breadcrumb :items=\"breadCrumbs\" class=\"no-curves bg-white\"></b-breadcrumb>\r\n\t\t\t\t\t<div class=\"container-fluid pb-4\">\r\n\t\t\t\t\t\t<router-view></router-view>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'DatasetList',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader, GridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true },\r\n\t\t\t\t\t\t{ key: 'attribution', label: 'Credit', sortable: true },\r\n\t\t\t\t\t\t{ key: 'importedDate', sortable: true, formatter: (value) => { return moment(value).format('llll') } },\r\n\t\t\t\t\t\t{ key: 'isActive', label: 'Active?', sortable: true, formatter: (value) => { return value ? '✓' : '' }, tdClass: 'text-success font-weight-bold text-center', thClass: 'text-center' },\r\n\t\t\t\t\t\t{ key: 'status', sortable: false }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'name',\r\n\t\t\t\t\treverse: false,\r\n\t\t\t\t\titemsPerPage: 20\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('/importdatasets/options', this.getTokenHeader());\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tbreadCrumbs() {\r\n\t\t\t\tvar crumbs = [];\r\n\t\t\t\tfor (var i = 0; i < this.$route.matched.length; i++) {\r\n\t\t\t\t\tvar item = this.$route.matched[i];\r\n\t\t\t\t\tvar name = item.meta.title ? item.meta.title : item.name;\r\n\r\n\t\t\t\t\tcrumbs.push({\r\n\t\t\t\t\t\ttext: name,\r\n\t\t\t\t\t\tto: { name: item.name }\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\treturn crumbs;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatasetList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatasetList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DatasetList.vue?vue&type=template&id=3439309b&\"\nimport script from \"./DatasetList.vue?vue&type=script&lang=js&\"\nexport * from \"./DatasetList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[(_vm.status.isRunning)?_c('div',{staticClass:\"max-w-400 py-5 mx-auto text-center\"},[_c('b-progress',{attrs:{\"value\":_vm.progress.percent,\"max\":100,\"animated\":\"\"}}),_c('p',[_vm._v(\" \"+_vm._s(_vm.progress.message)+\" \")])],1):(_vm.status.hasError)?_c('div',[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"There was an error importing this dataset\")]),_c('p',[_vm._v(\" Please refer to the error message below and check your MS Access database for potential problems. You may \"),_c('router-link',{attrs:{\"to\":\"/help\",\"target\":\"_blank\"}},[_vm._v(\"contact support\")]),_vm._v(\" if you need help, or click the button below to remove the error and uploaded data to try again. If you choose to contact support, please do not click the button to remove. \")],1),_c('p',[_c('b-form-textarea',{attrs:{\"rows\":\"8\"},model:{value:(_vm.status.exceptionMessage),callback:function ($$v) {_vm.$set(_vm.status, \"exceptionMessage\", $$v)},expression:\"status.exceptionMessage\"}})],1),_c('p',[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Remove error and uploaded data\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}})],1)]):_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Uploaded dataset settings\")]),_c('p',{staticClass:\"mb-4\"},[_vm._v(\" To use this project dataset, \"),_c('router-link',{attrs:{\"to\":\"/projects/create\"}},[_vm._v(\"create a new project\")]),_vm._v(\" and select it from the drop-down menu. \")],1),_c('success-alert',{ref:\"deactivateAlert\",attrs:{\"text\":\"This dataset has been deactivated.\"}}),_c('success-alert',{ref:\"activateAlert\",attrs:{\"text\":\"This dataset has been reactivated and can now be used to create new projects.\"}}),_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-4\"},model:{value:(_vm.tabIndex),callback:function ($$v) {_vm.tabIndex=$$v},expression:\"tabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Display settings\"}},[_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form-group',{attrs:{\"label\":\"Name of your project (fewer than 50 characters)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.name)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.data.name)},model:{value:(_vm.$v.data.name.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.name, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.name.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Description (fewer than 200 characters)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.description)}},[_c('b-form-textarea',{attrs:{\"rows\":\"4\",\"state\":_vm.getValidState(_vm.$v.data.description)},model:{value:(_vm.$v.data.description.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.description, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.description.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Agency, organization, or person to whom this project should be credited (optional)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.attribution)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.data.attribution)},model:{value:(_vm.$v.data.attribution.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.attribution, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.attribution.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Default SWAT version for new scenarios using this dataset\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.defaultSWATVersionID)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.swatVersions,\"state\":_vm.getValidState(_vm.$v.data.defaultSWATVersionID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null}},[_vm._v(\"System default (latest version)\")])]},proxy:true}]),model:{value:(_vm.$v.data.defaultSWATVersionID.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.defaultSWATVersionID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.defaultSWATVersionID.$model\"}})],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.allowOnlyDefaultSWATVersion.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.allowOnlyDefaultSWATVersion, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.allowOnlyDefaultSWATVersion.$model\"}},[_vm._v(\" Allow projects to only use the SWAT version selected above? \")])],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.data.$anyDirty}})],1)],1)],1),_c('b-tab',{attrs:{\"title\":\"Share permissions\"}},[(_vm.data.isPublic)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":\"\"}},[_vm._v(\" This project dataset has been shared with all \"+_vm._s(_vm.$parent.data.siteName)+\" users. Any user may create their own projects based on your model. \")])],1):_c('div',[_c('p',[_vm._v(\" Share this project with your \"),_c('router-link',{attrs:{\"to\":\"/groups\"}},[_vm._v(\"groups\")]),_vm._v(\" or all \"+_vm._s(_vm.$parent.data.siteName)+\" users. \")],1),_c('error-list',{attrs:{\"errors\":_vm.page.share.errors}}),_c('b-alert',{attrs:{\"show\":_vm.page.share.sharedSuccess,\"variant\":\"success\",\"dismissible\":\"\"}},[_vm._v(\" Your project has been shared with \"),_c('router-link',{attrs:{\"to\":`/groups/${_vm.page.share.currentItem.value}`}},[_vm._v(_vm._s(_vm.page.share.currentItem.text))]),_vm._v(\". \")],1),_c('b-alert',{attrs:{\"show\":_vm.page.share.unsharedSuccess,\"variant\":\"success\",\"dismissible\":\"\"}},[_vm._v(\" Your project has been removed from \"),_c('router-link',{attrs:{\"to\":`/groups/${_vm.page.share.currentItem.value}`}},[_vm._v(_vm._s(_vm.page.share.currentItem.text))]),_vm._v(\". \")],1),_c('b-form-group',{attrs:{\"label\":\"Share this project dataset with:\"}},[_c('b-form-select',{attrs:{\"options\":_vm.shareOptions},model:{value:(_vm.data.accessibility),callback:function ($$v) {_vm.$set(_vm.data, \"accessibility\", $$v)},expression:\"data.accessibility\"}})],1),(_vm.data.accessibility === 'Group')?_c('div',[(_vm.groupOptions.length > 0)?_c('b-form-group',[_c('b-form-select',{attrs:{\"options\":_vm.groupOptions},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a group for sharing --\")])]},proxy:true}],null,false,547373144),model:{value:(_vm.page.share.groupID),callback:function ($$v) {_vm.$set(_vm.page.share, \"groupID\", $$v)},expression:\"page.share.groupID\"}})],1):_vm._e(),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.groupOptions.length <= 0 && _vm.data.groups.length <= 0}},[_vm._v(\" You don't belong to any groups. \"),_c('router-link',{attrs:{\"to\":\"/groups/create\"}},[_vm._v(\"Create one now.\")])],1),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":_vm.groupOptions.length <= 0 && _vm.data.groups.length > 0}},[_vm._v(\" This project dataset is already shared with all of your groups. \")]),(_vm.data.groups.length > 0)?_c('div',{staticClass:\"my-4\"},[_c('div',[_vm._v(\"Currently shared with (click to remove):\")]),_vm._l((_vm.data.groups),function(g,i){return _c('b-button',{key:i,staticClass:\"mr-2 mb-2\",attrs:{\"variant\":\"light\",\"size\":\"sm\"},on:{\"click\":function($event){return _vm.unshare(g.value)}}},[_vm._v(\" \"+_vm._s(g.text)+\" \"),_c('font-awesome-icon',{staticClass:\"text-danger\",attrs:{\"icon\":['fas', 'times']}})],1)})],2):_vm._e(),(_vm.page.share.groupID !== null)?_c('div',{staticClass:\"mt-4\"},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"text\":\"Share\"},nativeOn:{\"click\":function($event){return _vm.share.apply(null, arguments)}}})],1):_vm._e()],1):(_vm.data.accessibility === 'Public')?_c('div',[(_vm.data.publicRequest !== null)?_c('div',[_c('b-alert',{attrs:{\"show\":_vm.data.publicRequest.status === 'Denied',\"variant\":\"danger\"}},[_vm._v(\" You requested public sharing of this project on \"+_vm._s(_vm._f(\"date\")(_vm.data.publicRequest.requestedOn))+\". Unfortunately administrators denied your request. \"+_vm._s(_vm.data.publicRequest.adminMessage)+\" \")]),_c('b-alert',{attrs:{\"show\":_vm.data.publicRequest.status === 'Submitted',\"variant\":\"info\"}},[_vm._v(\" You requested public sharing of this project on \"+_vm._s(_vm._f(\"date\")(_vm.data.publicRequest.requestedOn))+\". Administrators will review your request as soon as possible. \")])],1):_c('div',[_c('b-alert',{attrs:{\"show\":_vm.page.share.sent,\"variant\":\"success\",\"dismissible\":\"\"}},[_vm._v(\" Your request has been sent to administrators for review. \")]),(!_vm.page.share.sent)?_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.requestPublic.apply(null, arguments)}}},[_c('p',[_vm._v(\" If you would like to share this project datasets with all \"+_vm._s(_vm.$parent.data.siteName)+\" users, submit the form below and administrators will review the request. \")]),_c('p',[_vm._v(\" Once shared, any user in the system can create their own projects from your data. If you wish to unshare this data at a later time, you will need to contact \"+_vm._s(_vm.$parent.data.siteName)+\" administrators. \")]),_c('b-form-group',{attrs:{\"label\":\"Reasons for request:\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"5\",\"state\":_vm.getValidState(_vm.$v.publicRequest.value)},model:{value:(_vm.publicRequest.value),callback:function ($$v) {_vm.$set(_vm.publicRequest, \"value\", $$v)},expression:\"publicRequest.value\"}}),(!_vm.$v.publicRequest.value.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e()],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.share.saving,\"text\":\"Send Request\"}})],1)],1):_vm._e()],1)]):_vm._e()],1)])],1),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.data.isActive)?_c('b-button',{staticClass:\"ml-auto mr-2\",attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){_vm.page.activation.show = true}}},[_vm._v(\"Deactivate\")]):_vm._e(),(!_vm.data.isActive)?_c('save-button',{staticClass:\"ml-auto mr-2\",attrs:{\"variant\":\"success\",\"saving\":_vm.page.activation.saving,\"text\":\"Activate\"},nativeOn:{\"click\":function($event){return _vm.activate.apply(null, arguments)}}}):_vm._e(),(!_vm.data.hasProjects && _vm.data.accessibility === 'User')?_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")]):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this uploaded project dataset? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm deactivation\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.activation.show),callback:function ($$v) {_vm.$set(_vm.page.activation, \"show\", $$v)},expression:\"page.activation.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.activation.errors}}),_c('p',[_vm._v(\" Are you sure you want to deactivate this dataset? Deactivating will not delete the dataset or any projects using it. Instead, it will remove it as an available option in the create projects page, so no new projects may be created from it unless you reactivate it. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.activation.saving,\"text\":\"Deactivate\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.deactivate.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.activation.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<div v-if=\"status.isRunning\" class=\"max-w-400 py-5 mx-auto text-center\">\r\n\t\t\t\t<b-progress :value=\"progress.percent\" :max=\"100\" animated></b-progress>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t{{progress.message}}\r\n\t\t\t\t</p>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"status.hasError\">\r\n\t\t\t\t<h2 class=\"mb-4\">There was an error importing this dataset</h2>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tPlease refer to the error message below and check your MS Access database for\r\n\t\t\t\t\tpotential problems. You may <router-link to=\"/help\" target=\"_blank\">contact support</router-link>\r\n\t\t\t\t\tif you need help, or click the button below to\r\n\t\t\t\t\tremove the error and uploaded data to try again. If you choose to contact support, please do\r\n\t\t\t\t\tnot click the button to remove.\r\n\t\t\t\t</p>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t<b-form-textarea v-model=\"status.exceptionMessage\" rows=\"8\"></b-form-textarea>\r\n\t\t\t\t</p>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Remove error and uploaded data\" variant=\"danger\" />\r\n\t\t\t\t</p>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<h2 class=\"mb-3\">Uploaded dataset settings</h2>\r\n\r\n\t\t\t\t<p class=\"mb-4\">\r\n\t\t\t\t\tTo use this project dataset, <router-link to=\"/projects/create\">create a new project</router-link> and select it from the drop-down menu.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<success-alert ref=\"deactivateAlert\" text=\"This dataset has been deactivated.\" />\r\n\t\t\t\t<success-alert ref=\"activateAlert\" text=\"This dataset has been reactivated and can now be used to create new projects.\" />\r\n\r\n\t\t\t\t<b-tabs v-model=\"tabIndex\" content-class=\"mt-4\" class=\"page-nav-tabs\">\r\n\t\t\t\t\t<b-tab title=\"Display settings\">\r\n\t\t\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Name of your project (fewer than 50 characters)\" :invalid-feedback=\"requiredFeedback($v.data.name)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.name.$model\" type=\"text\" autofocus :state=\"getValidState($v.data.name)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Description (fewer than 200 characters)\" :invalid-feedback=\"requiredFeedback($v.data.description)\">\r\n\t\t\t\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.data.description.$model\" rows=\"4\" :state=\"getValidState($v.data.description)\"></b-form-textarea>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Agency, organization, or person to whom this project should be credited (optional)\" :invalid-feedback=\"requiredFeedback($v.data.attribution)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.attribution.$model\" type=\"text\" :state=\"getValidState($v.data.attribution)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Default SWAT version for new scenarios using this dataset\" :invalid-feedback=\"requiredFeedback($v.data.defaultSWATVersionID)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.data.defaultSWATVersionID.$model\" :options=\"options.swatVersions\" :state=\"getValidState($v.data.defaultSWATVersionID)\">\r\n\t\t\t\t\t\t\t\t\t<template #first>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\">System default (latest version)</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.allowOnlyDefaultSWATVersion.$model\">\r\n\t\t\t\t\t\t\t\t\tAllow projects to only use the SWAT version selected above?\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" :disabled=\"!$v.data.$anyDirty\" />\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t<b-tab title=\"Share permissions\">\r\n\t\t\t\t\t\t<div v-if=\"data.isPublic\">\r\n\t\t\t\t\t\t\t<b-alert variant=\"info\" show>\r\n\t\t\t\t\t\t\t\tThis project dataset has been shared with all {{$parent.data.siteName}} users.\r\n\t\t\t\t\t\t\t\tAny user may create their own projects based on your model.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tShare this project with your <router-link to=\"/groups\">groups</router-link> or all {{$parent.data.siteName}} users.\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<error-list :errors=\"page.share.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t\t<b-alert :show=\"page.share.sharedSuccess\" variant=\"success\" dismissible>\r\n\t\t\t\t\t\t\t\tYour project has been shared with\r\n\t\t\t\t\t\t\t\t<router-link :to=\"`/groups/${page.share.currentItem.value}`\">{{page.share.currentItem.text}}</router-link>.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t<b-alert :show=\"page.share.unsharedSuccess\" variant=\"success\" dismissible>\r\n\t\t\t\t\t\t\t\tYour project has been removed from\r\n\t\t\t\t\t\t\t\t<router-link :to=\"`/groups/${page.share.currentItem.value}`\">{{page.share.currentItem.text}}</router-link>.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Share this project dataset with:\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"data.accessibility\" :options=\"shareOptions\"></b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"data.accessibility === 'Group'\">\r\n\t\t\t\t\t\t\t\t<b-form-group v-if=\"groupOptions.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"page.share.groupID\" :options=\"groupOptions\">\r\n\t\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a group for sharing --</option>\r\n\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"info\" :show=\"groupOptions.length <= 0 && data.groups.length <= 0\">\r\n\t\t\t\t\t\t\t\t\tYou don't belong to any groups.\r\n\t\t\t\t\t\t\t\t\t<router-link to=\"/groups/create\">Create one now.</router-link>\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t\t<b-alert variant=\"info\" :show=\"groupOptions.length <= 0 && data.groups.length > 0\">\r\n\t\t\t\t\t\t\t\t\tThis project dataset is already shared with all of your groups.\r\n\t\t\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.groups.length > 0\" class=\"my-4\">\r\n\t\t\t\t\t\t\t\t\t<div>Currently shared with (click to remove):</div>\r\n\t\t\t\t\t\t\t\t\t<b-button v-for=\"(g, i) in data.groups\" :key=\"i\" variant=\"light\" size=\"sm\" class=\"mr-2 mb-2\" @click=\"unshare(g.value)\">\r\n\t\t\t\t\t\t\t\t\t\t{{g.text}}\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" class=\"text-danger\" />\r\n\t\t\t\t\t\t\t\t\t</b-button>\r\n\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t<div class=\"mt-4\" v-if=\"page.share.groupID !== null\">\r\n\t\t\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" text=\"Share\" @click.native=\"share\" />\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-else-if=\"data.accessibility === 'Public'\">\r\n\t\t\t\t\t\t\t\t<div v-if=\"data.publicRequest !== null\">\r\n\t\t\t\t\t\t\t\t\t<b-alert :show=\"data.publicRequest.status === 'Denied'\" variant=\"danger\">\r\n\t\t\t\t\t\t\t\t\t\tYou requested public sharing of this project on\r\n\t\t\t\t\t\t\t\t\t\t{{data.publicRequest.requestedOn | date}}.\r\n\t\t\t\t\t\t\t\t\t\tUnfortunately administrators denied your request.\r\n\t\t\t\t\t\t\t\t\t\t{{data.publicRequest.adminMessage}}\r\n\t\t\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t\t\t<b-alert :show=\"data.publicRequest.status === 'Submitted'\" variant=\"info\">\r\n\t\t\t\t\t\t\t\t\t\tYou requested public sharing of this project on\r\n\t\t\t\t\t\t\t\t\t\t{{data.publicRequest.requestedOn | date}}.\r\n\t\t\t\t\t\t\t\t\t\tAdministrators will review your request as soon as possible.\r\n\t\t\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t\t\t<b-alert :show=\"page.share.sent\" variant=\"success\" dismissible>\r\n\t\t\t\t\t\t\t\t\t\tYour request has been sent to administrators for review.\r\n\t\t\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t\t\t\t<b-form @submit.prevent=\"requestPublic\" v-if=\"!page.share.sent\">\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tIf you would like to share this project datasets with all\r\n\t\t\t\t\t\t\t\t\t\t\t{{$parent.data.siteName}} users, submit the form below and\r\n\t\t\t\t\t\t\t\t\t\t\tadministrators will review the request.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tOnce shared, any user in the system can create their own projects\r\n\t\t\t\t\t\t\t\t\t\t\tfrom your data. If you wish to unshare this data at a later time,\r\n\t\t\t\t\t\t\t\t\t\t\tyou will need to contact {{$parent.data.siteName}} administrators.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"Reasons for request:\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-textarea v-model=\"publicRequest.value\" rows=\"5\" :state=\"getValidState($v.publicRequest.value)\"></b-form-textarea>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.publicRequest.value.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t\t\t<save-button :saving=\"page.share.saving\" text=\"Send Request\" />\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t</b-tabs>\r\n\r\n\t\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t<b-button variant=\"warning\"\r\n\t\t\t\t\t\t\t  v-if=\"data.isActive\"\r\n\t\t\t\t\t\t\t  @click=\"page.activation.show = true\" class=\"ml-auto mr-2\">Deactivate</b-button>\r\n\t\t\t\t\t<save-button variant=\"success\"\r\n\t\t\t\t\t\t\t  v-if=\"!data.isActive\" :saving=\"page.activation.saving\" text=\"Activate\"\r\n\t\t\t\t\t\t\t  @click.native=\"activate\" class=\"ml-auto mr-2\" />\r\n\t\t\t\t\t<b-button variant=\"danger\"\r\n\t\t\t\t\t\t\t  v-if=\"!data.hasProjects && data.accessibility === 'User'\"\r\n\t\t\t\t\t\t\t  @click=\"page.delete.show = true\">Delete</b-button>\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete this uploaded project dataset?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.activation.show\" size=\"md\" title=\"Confirm deactivation\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.activation.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to deactivate this dataset?\r\n\t\t\t\t\t\tDeactivating will not delete the dataset or any projects using it.\r\n\t\t\t\t\t\tInstead, it will remove it as an available option in the create projects page,\r\n\t\t\t\t\t\tso no new projects may be created from it unless you reactivate it.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.activation.saving\" @click.native=\"deactivate\" text=\"Deactivate\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.activation.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { requiredIf, maxLength } from 'vuelidate/lib/validators';\r\n\timport _ from 'lodash';\r\n\r\n\texport default {\r\n\t\tname: 'DatasetView',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\timportID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tshare: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tgroupID: null,\r\n\t\t\t\t\t\tcurrentItem: {},\r\n\t\t\t\t\t\tsharedSuccess: false,\r\n\t\t\t\t\t\tunsharedSuccess: false,\r\n\t\t\t\t\t\tsent: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tactivation: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tname: null,\r\n\t\t\t\t\tdescription: null,\r\n\t\t\t\t\tattribution: null,\n\t\t\t\t\tdefaultSWATVersionID: null,\n\t\t\t\t\tallowOnlyDefaultSWATVersion: false\r\n\t\t\t\t},\r\n\t\t\t\tstatus: {\r\n\t\t\t\t\tisRunning: false,\r\n\t\t\t\t\thasError: false,\r\n\t\t\t\t\texceptionMessage: ''\r\n\t\t\t\t},\r\n\t\t\t\tprogress: {\r\n\t\t\t\t\tpercent: 0,\r\n\t\t\t\t\tmessage: 'Please wait...'\r\n\t\t\t\t},\r\n\t\t\t\tgroupOptions: [],\r\n\t\t\t\ttabIndex: 0,\r\n\t\t\t\tshareOptions: [\r\n\t\t\t\t\t{ value: 'User', text: 'No one; only I can use this dataset (default)' },\r\n\t\t\t\t\t{ value: 'Group', text: 'My groups' },\r\n\t\t\t\t\t{ value: 'Public', text: 'All system users' }\r\n\t\t\t\t],\r\n\t\t\t\tpublicRequest: {\r\n\t\t\t\t\tvalue: null\r\n\t\t\t\t},\n\t\t\t\toptions: {\r\n\t\t\t\t\tswatVersions: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tdata: {\r\n\t\t\t\tname: {\r\n\t\t\t\t\trequired: requiredIf(function () { return this.tabIndex == 0; }),\r\n\t\t\t\t\tmaxLength: maxLength(50)\r\n\t\t\t\t},\r\n\t\t\t\tdescription: {\r\n\t\t\t\t\tmaxLength: maxLength(200)\r\n\t\t\t\t},\r\n\t\t\t\tattribution: {\r\n\t\t\t\t\tmaxLength: maxLength(100)\r\n\t\t\t\t},\n\t\t\t\tdefaultSWATVersionID: {},\n\t\t\t\tallowOnlyDefaultSWATVersion: {}\r\n\t\t\t},\r\n\t\t\tpublicRequest: {\r\n\t\t\t\tvalue: {\r\n\t\t\t\t\trequired: requiredIf(function () { return this.tabIndex == 1; })\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t\tthis.$statusHub.importDatasetOpened(this.importID);\r\n\t\t\tthis.$statusHub.$on('import-dataset-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.$statusHub.importDatasetClosed(this.importID);\r\n\t\t\tthis.$statusHub.$off('import-dataset-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.importID = this.$route.params.id;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`importdatasets/${this.importID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.data = response.data.dataset;\r\n\t\t\t\t\tthis.status = response.data.status;\r\n\t\t\t\t\tthis.progress = response.data.progress;\r\n\t\t\t\t\tthis.groupOptions = response.data.groupOptions;\r\n\t\t\t\t\tthis.options.swatVersions = response.data.swatVersions;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync onStatusChanged(data) {\r\n\t\t\t\tif (this.importID != data.importID) return;\r\n\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\tthis.status.isRunning = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.progress.percent = data.progress;\r\n\t\t\t\tthis.progress.message = data.statusMessage;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tname: this.data.name,\r\n\t\t\t\t\t\t\tdescription: this.data.description,\r\n\t\t\t\t\t\t\tattribution: this.data.attribution,\n\t\t\t\t\t\t\tdefaultSWATVersionID: this.data.defaultSWATVersionID,\n\t\t\t\t\t\t\tallowOnlyDefaultSWATVersion: this.data.allowOnlyDefaultSWATVersion\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.put(`importdatasets/${this.importID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`importdatasets/${this.importID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'DatasetList'}).catch(err => {});\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\r\n\t\t\tasync share() {\r\n\t\t\t\tthis.page.share.errors = [];\r\n\t\t\t\tthis.page.share.saving = true;\r\n\t\t\t\tthis.page.share.unsharedSuccess = false;\r\n\t\t\t\tthis.page.share.sharedSuccess = false;\r\n\r\n\t\t\t\tif (this.isNullOrEmpty(this.page.share.groupID)) {\r\n\t\t\t\t\tthis.page.share.errors.push('Please select a group.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.patch(`importdatasets/groupshare/${this.page.share.groupID}/${this.data.newDatasetID}`, {}, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.page.share.currentItem = response.data;\r\n\t\t\t\t\t\tthis.groupOptions = _.remove(this.groupOptions, function (n) { return n.value !== response.data.value; });\r\n\t\t\t\t\t\tthis.data.groups.push(response.data);\r\n\t\t\t\t\t\tthis.page.share.groupID = null;\r\n\t\t\t\t\t\tthis.page.share.sharedSuccess = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.share.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.share.saving = false;\r\n\t\t\t},\r\n\t\t\tasync unshare(id) {\r\n\t\t\t\tthis.page.share.errors = [];\r\n\t\t\t\tthis.page.share.saving = true;\r\n\t\t\t\tthis.page.share.unsharedSuccess = false;\r\n\t\t\t\tthis.page.share.sharedSuccess = false;\r\n\r\n\t\t\t\tif (!this.isNullOrEmpty(id)) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.patch(`importdatasets/groupunshare/${id}/${this.data.newDatasetID}`, {}, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.page.share.currentItem = response.data;\r\n\t\t\t\t\t\tthis.data.groups = _.remove(this.data.groups, function (n) { return n.value !== response.data.value; });\r\n\t\t\t\t\t\tthis.groupOptions.push(response.data);\r\n\t\t\t\t\t\tthis.page.share.unsharedSuccess = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.share.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.share.saving = false;\r\n\t\t\t},\r\n\t\t\tasync requestPublic() {\r\n\t\t\t\tthis.page.share.errors = [];\r\n\t\t\t\tthis.page.share.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.share.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.put(`importdatasets/publicshare/${this.data.newDatasetID}`, this.publicRequest, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.page.share.sent = true;\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.share.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.share.saving = false;\r\n\t\t\t},\r\n\t\t\tasync deactivate() {\r\n\t\t\t\tthis.page.activation.errors = [];\r\n\t\t\t\tthis.page.activation.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.patch(`importdatasets/deactivate/${this.data.newDatasetID}`, {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.data.isActive = false;\r\n\t\t\t\t\tthis.page.activation.show = false;\r\n\t\t\t\t\tthis.$refs.deactivateAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.activation.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.activation.saving = false;\r\n\t\t\t},\r\n\t\t\tasync activate() {\r\n\t\t\t\tthis.page.activation.errors = [];\r\n\t\t\t\tthis.page.activation.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.patch(`importdatasets/activate/${this.data.newDatasetID}`, {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.data.isActive = true;\r\n\t\t\t\t\tthis.$refs.activateAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.activation.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.activation.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatasetView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatasetView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DatasetView.vue?vue&type=template&id=b241cfb0&\"\nimport script from \"./DatasetView.vue?vue&type=script&lang=js&\"\nexport * from \"./DatasetView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"show-errors-with-object\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Upload a new project dataset\")]),_c('p',[_vm._v(\" Upload a SWAT project that has been modified offline. Once uploaded, you may create new projects based on your dataset for use in the \"+_vm._s(_vm.siteText.siteName)+\" system. Your project dataset can be shared with your groups or be made public for use by all \"+_vm._s(_vm.siteText.siteName)+\" users (administrator approval required). \")]),_c('b-card',{staticClass:\"mb-3\",attrs:{\"no-body\":\"\",\"header-bg-variant\":\"info\",\"header-text-variant\":\"white\"},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('div',[_c('strong',[_vm._v(\"Option 1:\")]),_vm._v(\" Projects based on an existing \"+_vm._s(_vm.siteText.siteName)+\" project\")])]},proxy:true}])},[_c('b-card-body',{staticClass:\"bg-light font-italic font-weight-light py-2\"},[_c('b-card-text',[_vm._v(\" If your project initiated from an exported project database file in the \"+_vm._s(_vm.siteText.siteName)+\" system, please include the following in your zip file to upload: \")])],1),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',[_c('ol',{staticClass:\"m-0\"},[_c('li',[_vm._v(\"Project database (.mdb file from SWAT Editor)\")])])]),_c('b-list-group-item',[_c('ol',{staticClass:\"m-0\",attrs:{\"start\":\"2\"}},[_c('li',[_vm._v(\" If you have customized fertilizer, pesticides, tillage, or soils, also include your SWAT2012.mdb file in the zip. \"),_c('br'),_vm._v(\"You may skip this file to just use the \"+_vm._s(_vm.siteText.siteName)+\" data for these tables. \")])])])],1)],1),_c('b-card',{staticClass:\"mb-3\",attrs:{\"no-body\":\"\",\"header-bg-variant\":\"info\",\"header-text-variant\":\"white\"},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('div',[_c('strong',[_vm._v(\"Option 2:\")]),_vm._v(\" External SWAT models\")])]},proxy:true}])},[_c('b-card-body',{staticClass:\"bg-light font-italic font-weight-light py-2\"},[_c('b-card-text',[_vm._v(\" If your project was set up using ArcSWAT or QSWAT instead of \"+_vm._s(_vm.siteText.siteName)+\", please include the following in your zip file to upload. Please \"),_c('strong',[_vm._v(\"do not\")]),_vm._v(\" zip your entire project folder; instead copy only the files needed into a new directory as described below: \")])],1),_c('b-list-group',{attrs:{\"flush\":\"\"}},[_c('b-list-group-item',[_c('ol',{staticClass:\"m-0\"},[_c('li',[_vm._v(\"Project database (.mdb file from SWAT Editor)\")])])]),_c('b-list-group-item',[_c('ol',{staticClass:\"m-0\",attrs:{\"start\":\"2\"}},[_c('li',[_vm._v(\"SWAT2012.mdb file\")])])]),_c('b-list-group-item',[_c('ol',{staticClass:\"m-0\",attrs:{\"start\":\"3\"}},[_c('li',[_vm._v(\" Subbasin and stream shapefile data in GeoJSON format with decimal degrees coordinate reference system \"),_c('ul',[_c('li',[_vm._v(\" Inside your ArcSWAT/QSWAT project folder, browse to Watershed/Shapes. You'll see 6 files starting with \"),_c('code',[_vm._v(\"subs1\")]),_vm._v(\", and 6 files starting with \"),_c('code',[_vm._v(\"riv1\")]),_vm._v(\". We need you to convert these files into 2 GeoJSON files named \"),_c('code',[_vm._v(\"subs1.geojson\")]),_vm._v(\" and \"),_c('code',[_vm._v(\"riv1.geojson\")]),_vm._v(\" and copy them to the \"),_c('strong',[_vm._v(\"root\")]),_vm._v(\" of the upload folder. \")]),_c('li',[_vm._v(\" If you're using QGIS, right click on the subs1/riv1 layer in the Layers Panel. Choose 'Save As...' and select GeoJSON format and WGS 84 for CRS (not Conus Albers). \")]),_c('li',[_vm._v(\" You may alternatively use an online service to convert the files. However you will need to make sure your shape coordinates are in decimal lat/long degrees first, and not Conus Albers. Visit \"),_c('a',{attrs:{\"href\":\"https://mygeodata.cloud/converter/shp-to-geojson\",\"target\":\"_blank\"}},[_vm._v(\"this website\")]),_vm._v(\" and upload all 6 of your files starting with \"),_c('code',[_vm._v(\"subs1\")]),_vm._v(\". Download the resulting GeoJSON file, then repeat the process for the \"),_c('code',[_vm._v(\"riv1\")]),_vm._v(\" shapefiles. \")])])])])]),_c('b-list-group-item',[_c('ol',{staticClass:\"m-0\",attrs:{\"start\":\"4\"}},[_c('li',[_vm._v(\" Partial TxtInOut folder \"),_c('ul',[_c('li',[_vm._v(\" Include all your \"),_c('strong',[_vm._v(\"weather files (pcp, tmp, etc)\")]),_vm._v(\", along with any \"),_c('strong',[_vm._v(\"point source or inlet data (.dat)\")]),_vm._v(\" within a folder named \"),_c('strong',[_vm._v(\"TxtInOut\")]),_vm._v(\" at the \"),_c('strong',[_vm._v(\"root\")]),_vm._v(\" of the upload folder. \")]),_c('li',[_vm._v(\" Weather files must be named as: pcp1.pcp, hmd1.hmd, slr1.slr, tmp1.tmp, wnd1.wnd \")]),_c('li',[_vm._v(\" Point source files must be named as: *p.dat, where * is the subbasin number. Check the TYPE column in the pp table in your project database matches the timestep of your files: 7=MONTH, 8=ANNUAL, 10=DAY, 11=CONSTANT). \")]),_c('li',[_vm._v(\" Inlet data files must be named as: *i.dat, where * is the subbasin number. Check the TYPE column in the ppi table in your project database matches the timestep of your files: 7=MONTH, 8=ANNUAL, 10=DAY, 11=CONSTANT). \")]),_c('li',[_vm._v(\" Refer to the \"),_c('a',{attrs:{\"href\":\"https://swat.tamu.edu/media/69392/ch31_input_meas.pdf\",\"target\":\"_blank\"}},[_vm._v(\"SWAT IO documentation chapter on measured inputs\")]),_vm._v(\" for formatting the point source and inlet data .dat files. \")]),_c('li',[_c('strong',{staticStyle:{\"text-decoration\":\"underline\"}},[_vm._v(\"Do NOT include all files from TxtInOut.\")]),_vm._v(\" Only copy the files mentioned, and don't include all the .hru, .mgt, etc files. This will significantly speed up the upload process and keep your file size under the 1GB limit. \")])])])])]),_c('b-list-group-item',[_c('ol',{staticClass:\"m-0\",attrs:{\"start\":\"5\"}},[_c('li',[_vm._v(\" Daily or monthly reservoir flow files \"),_c('ul',[_c('li',[_vm._v(\" If your project uses daily or monthly reservoir outflow files, please include the .txt files you added via SWAT Editor and place them in the \"),_c('strong',[_vm._v(\"root\")]),_vm._v(\" of your zip file for upload. \")]),_c('li',[_vm._v(\" The files must be named the same as the entry for the \"),_c('code',[_vm._v(\"RESDAYO\")]),_vm._v(\" or \"),_c('code',[_vm._v(\"RESMONO\")]),_vm._v(\" column in the \"),_c('code',[_vm._v(\"res\")]),_vm._v(\" table in your project database. \")]),_c('li',[_c('a',{attrs:{\"href\":\"/content/docs/upload-res-flow-files-sample.zip\"}},[_vm._v(\"Download a sample showing the required formats.\")])])])])])])],1)],1),_c('p',[_c('strong',[_vm._v(\"Limitations:\")]),_vm._v(\" atmospheric deposition data will not be included for external SWAT projects. For projects based on \"+_vm._s(_vm.siteText.siteName)+\", we will use default \"+_vm._s(_vm.siteText.siteName)+\" atmospheric deposition data. \")]),_c('hr',{staticClass:\"my-4\"}),(!_vm.data.hasAccess)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" Your tier does not have access to project uploads. If this is a feature you need, visit your \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"account profile\")]),_vm._v(\" to request access to a higher tier. \")],1)],1):(_vm.data.reachedLimit)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" You have reached the maximum number of project uploads allowed in your tier. If you need more uploads, visit your \"),_c('router-link',{attrs:{\"to\":\"/account\"}},[_vm._v(\"account profile\")]),_vm._v(\" to request access to a higher tier. \")],1)],1):_c('div',[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),(!_vm.page.showForm)?_c('div',[_c('p',{staticClass:\"font-weight-bold\"},[_vm._v(\" Drag and drop a zip file into the space below. Your zip file must be no larger than 1 GB. \"),_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip\"}],staticClass:\"text-primary text-underline pointer\",attrs:{\"title\":\"If your Microsoft Access (.mdb) files are large, open the file, click the Database Tools menu, and select Compact and Repair Database to reduce its size\"}},[_vm._v(\" Tips\")])]),_c('vue-dropzone',{ref:\"addFile\",attrs:{\"id\":\"addFile\",\"options\":_vm.dropzoneOptions},on:{\"vdropzone-success\":_vm.fileUploaded,\"vdropzone-error\":_vm.uploadError}})],1):_vm._e(),(_vm.page.showForm)?_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-alert',{staticClass:\"my-3\",attrs:{\"variant\":\"success\",\"show\":\"\"}},[_c('font-awesome-icon',{staticClass:\"mr-1\",attrs:{\"icon\":['fas', 'check']}}),_vm._v(\" Uploaded \"+_vm._s(_vm.upload.uploadedFileName)+\" \")],1),_c('b-form-group',{attrs:{\"label\":\"Name of your project (fewer than 50 characters)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.name)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.name)},model:{value:(_vm.$v.form.name.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.name, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.name.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Description (fewer than 200 characters)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.description)}},[_c('b-form-textarea',{attrs:{\"rows\":\"4\",\"state\":_vm.getValidState(_vm.$v.form.description)},model:{value:(_vm.$v.form.description.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.description, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.description.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Agency, organization, or person to whom this project should be credited (optional)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.attribution)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.attribution)},model:{value:(_vm.$v.form.attribution.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.attribution, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.attribution.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":`If the project originated in ${_vm.siteText.siteName}, what dataset is it based on?`,\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.existingDatasetID)}},[_c('b-form-select',{attrs:{\"state\":_vm.getValidState(_vm.$v.form.existingDatasetID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null}},[_vm._v(\"None\")])]},proxy:true}],null,false,2806070356),model:{value:(_vm.$v.form.existingDatasetID.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.existingDatasetID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.existingDatasetID.$model\"}},[_vm._l((_vm.data.datasets),function(o,i){return _c('b-form-select-option-group',{key:i,attrs:{\"label\":_vm.isNullOrEmpty(o.label) ? 'System datasets' : o.label,\"options\":o.options}})}),(_vm.data.userDatasets.length > 0)?_c('b-form-select-option-group',{attrs:{\"label\":\"User-submitted datasets\",\"options\":_vm.data.userDatasets}}):_vm._e()],2)],1),_c('b-form-group',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.form.existingDatasetID !== null && (!_vm.upload.hasEndingSubKey || _vm.isNullOrEmpty(_vm.upload.endingSubbasinName))),expression:\"form.existingDatasetID !== null && (!upload.hasEndingSubKey || isNullOrEmpty(upload.endingSubbasinName))\"}],attrs:{\"label\":\"Please provide the outlet subbasin name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.endingSubbasinName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.endingSubbasinName)},model:{value:(_vm.$v.form.endingSubbasinName.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.endingSubbasinName, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.endingSubbasinName.$model\"}}),_c('small',{staticClass:\"text-muted\"},[_vm._v(\" We were unable to detect this automatically from your \"),_c('code',[_vm._v(\"submapping\")]),_vm._v(\" table. This may be because your project .mdb file was created using an old version of \"+_vm._s(_vm.siteText.siteName)+\". \")])],1),(_vm.data.canDoHawqsBased)?_c('b-card',{attrs:{\"header\":\"ADVANCED: This option is only available to full administrators\"}},[_c('b-card-text',[_c('b-form-checkbox',{attrs:{\"state\":_vm.getValidState(_vm.$v.form.isHawqsBased)},model:{value:(_vm.$v.form.isHawqsBased.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.isHawqsBased, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.isHawqsBased.$model\"}},[_vm._v(\" Is the data \"+_vm._s(_vm.siteText.siteName)+\"-based? (Coming from another \"+_vm._s(_vm.siteText.siteName)+\" dataset that is not loaded on this site.) \")])],1)],1):_vm._e(),_c('fixed-action-bar',{attrs:{\"cols\":12,\"offset\":0,\"cols-lg\":12,\"offset-lg\":0}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.$anyDirty}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1):_vm._e()],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" show-errors-with-object>\r\n\t\t\t<h2 class=\"mb-4\">Upload a new project dataset</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tUpload a SWAT project that has been modified offline.\r\n\t\t\t\tOnce uploaded, you may create new projects based on your dataset for use in the {{siteText.siteName}} system.\r\n\t\t\t\tYour project dataset can be shared with your groups or be made public\r\n\t\t\t\tfor use by all {{siteText.siteName}} users (administrator approval required).\r\n\t\t\t</p>\r\n\r\n\t\t\t<b-card no-body header-bg-variant=\"info\" header-text-variant=\"white\" class=\"mb-3\">\r\n\t\t\t\t<template v-slot:header>\r\n\t\t\t\t\t<div><strong>Option 1:</strong> Projects based on an existing {{siteText.siteName}} project</div>\r\n\t\t\t\t</template>\r\n\r\n\t\t\t\t<b-card-body class=\"bg-light font-italic font-weight-light py-2\">\r\n\t\t\t\t\t<b-card-text>\r\n\t\t\t\t\t\tIf your project initiated from an exported project database file in the {{siteText.siteName}} system,\r\n\t\t\t\t\t\tplease include the following in your zip file to upload:\r\n\t\t\t\t\t</b-card-text>\r\n\t\t\t\t</b-card-body>\r\n\r\n\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t<b-list-group-item>\r\n\t\t\t\t\t\t<ol class=\"m-0\"><li>Project database (.mdb file from SWAT Editor)</li></ol>\r\n\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t<b-list-group-item>\r\n\t\t\t\t\t\t<ol class=\"m-0\" start=\"2\">\r\n\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\tIf you have customized fertilizer, pesticides, tillage, or soils,\r\n\t\t\t\t\t\t\t\talso include your SWAT2012.mdb file in the zip. <br />You may skip this file to just use the {{siteText.siteName}}\r\n\t\t\t\t\t\t\t\tdata for these tables.\r\n\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t</ol>\r\n\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t</b-list-group>\r\n\t\t\t</b-card>\r\n\r\n\t\t\t<b-card no-body header-bg-variant=\"info\" header-text-variant=\"white\" class=\"mb-3\">\r\n\t\t\t\t<template v-slot:header>\r\n\t\t\t\t\t<div><strong>Option 2:</strong> External SWAT models</div>\r\n\t\t\t\t</template>\r\n\r\n\t\t\t\t<b-card-body class=\"bg-light font-italic font-weight-light py-2\">\r\n\t\t\t\t\t<b-card-text>\r\n\t\t\t\t\t\tIf your project was set up using ArcSWAT or QSWAT instead of {{siteText.siteName}},\r\n\t\t\t\t\t\tplease include the following in your zip file to upload. Please <strong>do not</strong> zip your entire project folder;\n\t\t\t\t\t\tinstead copy only the files needed into a new directory as described below:\r\n\t\t\t\t\t</b-card-text>\r\n\t\t\t\t</b-card-body>\r\n\r\n\t\t\t\t<b-list-group flush>\r\n\t\t\t\t\t<b-list-group-item>\r\n\t\t\t\t\t\t<ol class=\"m-0\"><li>Project database (.mdb file from SWAT Editor)</li></ol>\r\n\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t<b-list-group-item>\r\n\t\t\t\t\t\t<ol class=\"m-0\" start=\"2\"><li>SWAT2012.mdb file</li></ol>\r\n\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t<b-list-group-item>\r\n\t\t\t\t\t\t<ol class=\"m-0\" start=\"3\">\r\n\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\tSubbasin and stream shapefile data in GeoJSON format with decimal degrees coordinate reference system\r\n\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tInside your ArcSWAT/QSWAT project folder, browse to Watershed/Shapes.\r\n\t\t\t\t\t\t\t\t\t\tYou'll see 6 files starting with <code>subs1</code>, and 6 files\r\n\t\t\t\t\t\t\t\t\t\tstarting with <code>riv1</code>.\r\n\t\t\t\t\t\t\t\t\t\tWe need you to convert these files into 2 GeoJSON files named\r\n\t\t\t\t\t\t\t\t\t\t<code>subs1.geojson</code> and <code>riv1.geojson</code> and copy them to the\n\t\t\t\t\t\t\t\t\t\t<strong>root</strong> of the upload folder.\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tIf you're using QGIS, right click on the subs1/riv1 layer in the Layers Panel.\r\n\t\t\t\t\t\t\t\t\t\tChoose 'Save As...' and select GeoJSON format and WGS 84 for CRS (not Conus Albers).\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tYou may alternatively use an online service to convert the files.\r\n\t\t\t\t\t\t\t\t\t\tHowever you will need to make sure your shape coordinates are in decimal lat/long degrees first,\r\n\t\t\t\t\t\t\t\t\t\tand not Conus Albers.\r\n\t\t\t\t\t\t\t\t\t\tVisit <a href=\"https://mygeodata.cloud/converter/shp-to-geojson\" target=\"_blank\">this website</a>\r\n\t\t\t\t\t\t\t\t\t\tand upload all 6 of your files starting with <code>subs1</code>. Download the resulting GeoJSON file, then\r\n\t\t\t\t\t\t\t\t\t\trepeat the process for the <code>riv1</code> shapefiles.\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t</ol>\r\n\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t<b-list-group-item>\r\n\t\t\t\t\t\t<ol class=\"m-0\" start=\"4\">\r\n\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\tPartial TxtInOut folder\r\n\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tInclude all your <strong>weather files (pcp, tmp, etc)</strong>,\r\n\t\t\t\t\t\t\t\t\t\talong with any <strong>point source or inlet data (.dat)</strong> within a folder named <strong>TxtInOut</strong> at the <strong>root</strong>\r\n\t\t\t\t\t\t\t\t\t\tof the upload folder.\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tWeather files must be named as: pcp1.pcp, hmd1.hmd, slr1.slr, tmp1.tmp, wnd1.wnd\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tPoint source files must be named as: *p.dat, where * is the subbasin number. Check the TYPE column in the pp table in your project database matches the timestep of your files: 7=MONTH, 8=ANNUAL, 10=DAY, 11=CONSTANT).\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tInlet data files must be named as: *i.dat, where * is the subbasin number. Check the TYPE column in the ppi table in your project database matches the timestep of your files: 7=MONTH, 8=ANNUAL, 10=DAY, 11=CONSTANT).\r\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tRefer to the <a href=\"https://swat.tamu.edu/media/69392/ch31_input_meas.pdf\" target=\"_blank\">SWAT IO documentation chapter on measured inputs</a> for formatting the point source and inlet data .dat files.\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\t<strong style=\"text-decoration:underline\">Do NOT include all files from TxtInOut.</strong>\r\n\t\t\t\t\t\t\t\t\t\tOnly copy the files mentioned, and don't include all the .hru, .mgt, etc files.\r\n\t\t\t\t\t\t\t\t\t\tThis will significantly speed up the upload process and keep your file size under the 1GB limit.\r\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t</ol>\r\n\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t\t<b-list-group-item>\r\n\t\t\t\t\t\t<ol class=\"m-0\" start=\"5\">\r\n\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\tDaily or monthly reservoir flow files\r\n\t\t\t\t\t\t\t\t<ul>\r\n\t\t\t\t\t\t\t\t\t<li>\r\n\t\t\t\t\t\t\t\t\t\tIf your project uses daily or monthly reservoir outflow files, please include the .txt files you added via SWAT Editor\n\t\t\t\t\t\t\t\t\t\tand place them in the <strong>root</strong> of your zip file for upload.\r\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\tThe files must be named the same as the entry for the <code>RESDAYO</code> or <code>RESMONO</code> column in the <code>res</code>\n\t\t\t\t\t\t\t\t\t\ttable in your project database.\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<a href=\"/content/docs/upload-res-flow-files-sample.zip\">Download a sample showing the required formats.</a>\n\t\t\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t\t\t</ul>\r\n\t\t\t\t\t\t\t</li>\r\n\t\t\t\t\t\t</ol>\r\n\t\t\t\t\t</b-list-group-item>\r\n\t\t\t\t</b-list-group>\r\n\t\t\t</b-card>\n\n\t\t\t<p>\r\n\t\t\t\t<strong>Limitations:</strong>\r\n\t\t\t\tatmospheric deposition data will not be included for external SWAT projects.\r\n\t\t\t\tFor projects based on {{siteText.siteName}}, we will use default {{siteText.siteName}} atmospheric deposition data.\r\n\t\t\t</p>\r\n\r\n\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t<div v-if=\"!data.hasAccess\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\tYour tier does not have access to project uploads.\r\n\t\t\t\t\tIf this is a feature you need, visit your <router-link to=\"/account\">account profile</router-link>\r\n\t\t\t\t\tto request access to a higher tier.\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"data.reachedLimit\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\tYou have reached the maximum number of project uploads allowed in your tier.\r\n\t\t\t\t\tIf you need more uploads, visit your <router-link to=\"/account\">account profile</router-link>\r\n\t\t\t\t\tto request access to a higher tier.\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t\t<div v-if=\"!page.showForm\">\r\n\t\t\t\t\t<p class=\"font-weight-bold\">\r\n\t\t\t\t\t\tDrag and drop a zip file into the space below.\r\n\t\t\t\t\t\tYour zip file must be no larger than 1 GB.\n\t\t\t\t\t\t<span class=\"text-primary text-underline pointer\"\n\t\t\t\t\t\t\tv-b-tooltip title=\"If your Microsoft Access (.mdb) files are large, open the file, click the Database Tools menu, and select Compact and Repair Database to reduce its size\">\n\t\t\t\t\t\t\tTips</span>\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<vue-dropzone ref=\"addFile\" id=\"addFile\" :options=\"dropzoneOptions\" @vdropzone-success=\"fileUploaded\" @vdropzone-error=\"uploadError\"></vue-dropzone>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<b-form v-if=\"page.showForm\" @submit.prevent=\"save\">\r\n\t\t\t\t\t<b-alert variant=\"success\" show class=\"my-3\">\r\n\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'check']\" class=\"mr-1\" />\r\n\t\t\t\t\t\tUploaded {{upload.uploadedFileName}}\r\n\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Name of your project (fewer than 50 characters)\" :invalid-feedback=\"requiredFeedback($v.form.name)\">\r\n\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.name.$model\" type=\"text\" autofocus :state=\"getValidState($v.form.name)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Description (fewer than 200 characters)\" :invalid-feedback=\"requiredFeedback($v.form.description)\">\r\n\t\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.form.description.$model\" rows=\"4\" :state=\"getValidState($v.form.description)\"></b-form-textarea>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Agency, organization, or person to whom this project should be credited (optional)\" :invalid-feedback=\"requiredFeedback($v.form.attribution)\">\r\n\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.attribution.$model\" type=\"text\" :state=\"getValidState($v.form.attribution)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group :label=\"`If the project originated in ${siteText.siteName}, what dataset is it based on?`\" :invalid-feedback=\"requiredFeedback($v.form.existingDatasetID)\">\r\n\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.form.existingDatasetID.$model\" :state=\"getValidState($v.form.existingDatasetID)\">\r\n\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\">None</b-form-select-option>\r\n\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t<b-form-select-option-group v-for=\"(o, i) in data.datasets\" :key=\"i\" :label=\"isNullOrEmpty(o.label) ? 'System datasets' : o.label\" :options=\"o.options\"></b-form-select-option-group>\r\n\t\t\t\t\t\t\t<b-form-select-option-group v-if=\"data.userDatasets.length > 0\" label=\"User-submitted datasets\" :options=\"data.userDatasets\"></b-form-select-option-group>\r\n\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group v-show=\"form.existingDatasetID !== null && (!upload.hasEndingSubKey || isNullOrEmpty(upload.endingSubbasinName))\" label=\"Please provide the outlet subbasin name\" :invalid-feedback=\"requiredFeedback($v.form.endingSubbasinName)\">\r\n\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.endingSubbasinName.$model\" type=\"text\" :state=\"getValidState($v.form.endingSubbasinName)\"></b-form-input>\r\n\t\t\t\t\t\t<small class=\"text-muted\">\r\n\t\t\t\t\t\t\tWe were unable to detect this automatically from your <code>submapping</code> table.\r\n\t\t\t\t\t\t\tThis may be because your project .mdb file was created using an old version of {{siteText.siteName}}.\r\n\t\t\t\t\t\t</small>\r\n\t\t\t\t\t</b-form-group>\n\n\t\t\t\t\t<b-card v-if=\"data.canDoHawqsBased\" header=\"ADVANCED: This option is only available to full administrators\">\n\t\t\t\t\t\t<b-card-text>\r\n\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.form.isHawqsBased.$model\" :state=\"getValidState($v.form.isHawqsBased)\">\r\n\t\t\t\t\t\t\t\tIs the data {{siteText.siteName}}-based? (Coming from another {{siteText.siteName}} dataset that is not loaded on this site.)\r\n\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t</b-card-text>\n\t\t\t\t\t</b-card>\r\n\r\n\t\t\t\t\t<fixed-action-bar :cols=\"12\" :offset=\"0\" :cols-lg=\"12\" :offset-lg=\"0\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" :disabled=\"!$v.$anyDirty\" />\r\n\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t</b-form>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, maxLength } from 'vuelidate/lib/validators';\r\n\timport vue2Dropzone from 'vue2-dropzone';\r\n\timport 'vue2-dropzone/dist/vue2Dropzone.min.css';\r\n\r\n\texport default {\r\n\t\tname: 'DatasetCreate',\r\n\t\tcomponents: {\r\n\t\t\tvueDropzone: vue2Dropzone\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tshowForm: false\r\n\t\t\t\t},\r\n\t\t\t\tdropzoneOptions: {\r\n\t\t\t\t\turl: '/api/importdatasets/upload',\r\n\t\t\t\t\theaders: this.getTokenHeaderPart(),\r\n\t\t\t\t\tacceptedFiles: '.zip',\n\t\t\t\t\ttimeout: 3600000,\n\t\t\t\t\tmaxFilesize: 1000\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tsiteName: '',\r\n\t\t\t\t\tdatasets: [],\r\n\t\t\t\t\tuserDatasets: []\r\n\t\t\t\t},\r\n\t\t\t\tupload: {},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tname: null,\r\n\t\t\t\t\tdescription: null,\r\n\t\t\t\t\tattribution: null,\r\n\t\t\t\t\tdatabaseFile: null,\r\n\t\t\t\t\texistingDatasetID: null,\r\n\t\t\t\t\tendingSubbasinName: null,\r\n\t\t\t\t\thasSwatMdb: false,\r\n\t\t\t\t\tuploadDirectory: null,\n\t\t\t\t\tisHawqsBased: false,\n\t\t\t\t\tisSqlite: false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tname: { required, maxLength: maxLength(50) },\r\n\t\t\t\tdescription: { required, maxLength: maxLength(200) },\r\n\t\t\t\texistingDatasetID: { },\r\n\t\t\t\tendingSubbasinName: { },\t\t\t\t\r\n\t\t\t\tattribution: { maxLength: maxLength(100) },\r\n\t\t\t\tisHawqsBased: {},\n\t\t\t\tisSqlite: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('/importdatasets/options', this.getTokenHeader());\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t\tthis.log(this.data);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post('importdatasets', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'DatasetView', params: { id: response.data } }).catch(err => {});\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tfileUploaded(file, response) {\r\n\t\t\t\tthis.upload = response;\r\n\t\t\t\tthis.log(this.upload);\r\n\t\t\t\tthis.form.endingSubbasinName = this.upload.hasEndingSubKey ? this.upload.endingSubbasinName : null;\r\n\t\t\t\tthis.form.hasSwatMdb = this.upload.hasSwatMdb;\n\t\t\t\tthis.form.isSqlite = this.upload.isSqlite;\r\n\t\t\t\tthis.form.uploadDirectory = this.upload.uploadDirectory;\r\n\t\t\t\tthis.form.databaseFile = this.upload.projectMdbName;\r\n\t\t\t\tthis.page.showForm = true;\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t},\r\n\t\t\tuploadError(file, message, xhr) {\r\n\t\t\t\tthis.log(file);\r\n\t\t\t\tthis.log(xhr);\r\n\t\t\t\tthis.log(message);\r\n\t\t\t\tthis.page.saveErrors.push(message);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatasetCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatasetCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DatasetCreate.vue?vue&type=template&id=7943a049&\"\nimport script from \"./DatasetCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./DatasetCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('b-alert',{staticClass:\"mb-0\",attrs:{\"show\":_vm.siteSettings.enableAlertNotification,\"variant\":\"warning\"}},[_vm._v(\" \"+_vm._s(_vm.siteSettings.alertNotification)+\" \")]),_c('div',{attrs:{\"id\":\"main-panel\"}},[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('b-container',{staticClass:\"p-0\",attrs:{\"fluid\":\"\"}},[_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{staticClass:\"fixed-height bg-light\",attrs:{\"md\":\"3\",\"lg\":\"2\",\"order\":\"2\",\"order-md\":\"1\"}},[_c('div',{staticClass:\"px-3 pt-md-4\"},[_c('b-nav',{staticClass:\"dash-items-nav nav-lg\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":\"/admin\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'tachometer-alt'],\"fixed-width\":\"\"}}),_vm._v(\" Dashboard\")],1),_c('b-nav-item',{attrs:{\"to\":\"/admin/users\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'user-friends'],\"fixed-width\":\"\"}}),_vm._v(\" Users \"),(_vm.$route.path.startsWith('/admin/users'))?_c('b-nav',{staticClass:\"nested\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":\"/admin/users/tiers\"}},[_vm._v(\"Tiers\")]),_c('b-nav-item',{attrs:{\"to\":\"/admin/users/groups\"}},[_vm._v(\"Groups\")]),_c('b-nav-item',{attrs:{\"to\":\"/admin/users/categories\"}},[_vm._v(\"Categories\")]),(_vm.isAuthorized(_vm.roleNames.admin))?_c('b-nav-item',{attrs:{\"to\":\"/admin/users/email\"}},[_vm._v(\"Email Users\")]):_vm._e()],1):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":\"/admin/projects\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'project-diagram'],\"fixed-width\":\"\"}}),_vm._v(\" Projects \"),(_vm.$route.path.startsWith('/admin/projects'))?_c('b-nav',{staticClass:\"nested\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":\"/admin/projects/scenarios\"}},[_vm._v(\"Scenarios\")])],1):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":\"/admin/datasets\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'database'],\"fixed-width\":\"\"}}),_vm._v(\" Datasets \"),(_vm.$route.path.startsWith('/admin/datasets'))?_c('b-nav',{staticClass:\"nested\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":\"/admin/datasets/weather\"}},[_vm._v(\"Weather\")]),_c('b-nav-item',{attrs:{\"to\":\"/admin/datasets/swatversions\"}},[_vm._v(\"SWAT Versions\")])],1):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":\"/admin/reports\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'table'],\"fixed-width\":\"\"}}),_vm._v(\" Reports\")],1),_c('b-nav-item',{attrs:{\"to\":\"/admin/errors\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'exclamation-triangle'],\"fixed-width\":\"\"}}),_vm._v(\" Feedback/errors\")],1)],1),(_vm.isAuthorized(_vm.roleNames.admin))?_c('div',{staticClass:\"mt-4\"},[_c('h6',[_vm._v(\"Advanced\")]),_c('b-nav',{staticClass:\"dash-items-nav nav-lg\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"href\":`/jobs?access_token=${_vm.localStorageToken}`,\"target\":\"_blank\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'layer-group'],\"fixed-width\":\"\"}}),_vm._v(\" Job queue\")],1),_c('b-nav-item',{attrs:{\"to\":\"/admin/website\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['far', 'file-alt'],\"fixed-width\":\"\"}}),_vm._v(\" Website text \"),(_vm.$route.path.startsWith('/admin/website') && !_vm.$route.path.startsWith('/admin/website-'))?_c('b-nav',{staticClass:\"nested\",attrs:{\"vertical\":\"\"}},[_c('b-nav-item',{attrs:{\"to\":\"/admin/website/Help\"}},[_vm._v(\"Help page\")]),_c('b-nav-item',{attrs:{\"to\":\"/admin/website/PointSource\"}},[_vm._v(\"Point source page\")])],1):_vm._e()],1),_c('b-nav-item',{attrs:{\"to\":\"/admin/website-settings\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'cog'],\"fixed-width\":\"\"}}),_vm._v(\" Website settings \")],1),(_vm.data.showImportV2)?_c('b-nav-item',{attrs:{\"to\":\"/admin/import-huc-v2\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'database'],\"fixed-width\":\"\"}}),_vm._v(\" Import HUC v2 \")],1):_vm._e()],1)],1):_vm._e()],1)]),_c('b-col',{staticClass:\"fixed-height shadow-sm no-shadow-sm\",staticStyle:{\"z-index\":\"500\"},attrs:{\"md\":\"9\",\"lg\":\"10\",\"order\":\"1\",\"order-md\":\"2\"}},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white px-md-4\",attrs:{\"items\":_vm.generalBreadCrumbs}}),_c('div',{staticClass:\"container-fluid px-md-4 pb-4\"},[(_vm.$route.name == 'AdminDashboard')?_c('div',[_c('div',{staticClass:\"text-muted mb-3 border-bottom pb-2\"},[_c('small',[_c('font-awesome-icon',{staticClass:\"mr-1\",attrs:{\"icon\":['far', 'clock']}}),_vm._v(\" The statistics on this page were computed at \"+_vm._s(_vm._f(\"date\")(_vm.data.computedAt))+\". \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get.apply(null, arguments)}}},[_vm._v(\"Refresh now.\")])],1)]),_c('div',{staticClass:\"mb-4\"},[_c('highcharts',{attrs:{\"options\":_vm.statisticsTimeChart}})],1),_c('h2',{staticClass:\"h4 text-center\"},[_vm._v(\"Totals\")]),_c('hr',{staticClass:\"mt-2 mb-3\"}),_c('b-row',{attrs:{\"align-h\":\"center\"}},[_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Users\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.numUsers,0)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Projects\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.numProjects,0)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Scenarios\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.numScenarios,0)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Running Now\")]),_c('div',{staticClass:\"value\"},[_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.data.numScenariosRunning,0))+\" \"),_c('span',{attrs:{\"title\":`As of ${_vm.toDate(_vm.data.computedAt)}. Click to refresh.`}},[_c('a',{staticClass:\"mute\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get.apply(null, arguments)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['far', 'clock']},on:{\"click\":_vm.get}})],1)])])])])],1),_c('h2',{staticClass:\"h4 text-center mt-4\"},[_vm._v(\"Averages\")]),_c('hr',{staticClass:\"mt-2 mb-3\"}),_c('b-row',{attrs:{\"align-h\":\"center\"}},[_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Projects / User\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.avgProjectsPerUser,1)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"HRUs / Project\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.avgHrusPerProject,1)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Scenarios / Project\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.avgScenariosPerProject,1)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Scenario Run Time\")]),_c('div',{staticClass:\"value\"},[_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.data.avgScenarioRunTime,1))+\" \"),_c('span',{attrs:{\"title\":\"minutes\"}},[_vm._v(\"min\")])])])])],1),_c('hr',{staticClass:\"mt-2 mb-3\"}),_c('p',[_vm._v(\" Code version: \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.data.buildDate)))]),_vm._v(\". \")])],1):_vm._e(),_c('router-view')],1)],1)],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<b-alert :show=\"siteSettings.enableAlertNotification\" variant=\"warning\" class=\"mb-0\">\r\n\t\t\t\t{{ siteSettings.alertNotification }}\r\n\t\t\t</b-alert>\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t\t\t<b-container fluid class=\"p-0\">\r\n\t\t\t\t\t\t<b-row no-gutters>\r\n\t\t\t\t\t\t\t<b-col md=\"3\" lg=\"2\" order=\"2\" order-md=\"1\" class=\"fixed-height bg-light\">\r\n\t\t\t\t\t\t\t\t<div class=\"px-3 pt-md-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-lg\">\r\n\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin\"><font-awesome-icon :icon=\"['fas', 'tachometer-alt']\" fixed-width class=\"mr-3\" /> Dashboard</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/users\">\r\n\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'user-friends']\" fixed-width class=\"mr-3\" /> Users\r\n\t\t\t\t\t\t\t\t\t\t\t<b-nav vertical v-if=\"$route.path.startsWith('/admin/users')\" class=\"nested\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/users/tiers\">Tiers</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/users/groups\">Groups</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/users/categories\">Categories</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item v-if=\"isAuthorized(roleNames.admin)\" to=\"/admin/users/email\">Email Users</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/projects\">\r\n\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'project-diagram']\" fixed-width class=\"mr-3\" /> Projects\r\n\t\t\t\t\t\t\t\t\t\t\t<b-nav vertical v-if=\"$route.path.startsWith('/admin/projects')\" class=\"nested\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/projects/scenarios\">Scenarios</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/datasets\">\r\n\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'database']\" fixed-width class=\"mr-3\" /> Datasets\r\n\t\t\t\t\t\t\t\t\t\t\t<b-nav vertical v-if=\"$route.path.startsWith('/admin/datasets')\" class=\"nested\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/datasets/weather\">Weather</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/datasets/swatversions\">SWAT Versions</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/reports\"><font-awesome-icon :icon=\"['fas', 'table']\" fixed-width class=\"mr-3\" /> Reports</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/errors\"><font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" fixed-width class=\"mr-3\" /> Feedback/errors</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t</b-nav>\r\n\r\n\t\t\t\t\t\t\t\t\t<div v-if=\"isAuthorized(roleNames.admin)\" class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t\t\t<h6>Advanced</h6>\r\n\t\t\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-lg\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-nav-item :href=\"`/jobs?access_token=${localStorageToken}`\" target=\"_blank\"><font-awesome-icon :icon=\"['fas', 'layer-group']\" fixed-width class=\"mr-3\" /> Job queue</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/website\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['far', 'file-alt']\" fixed-width class=\"mr-3\" /> Website text\r\n\t\t\t\t\t\t\t\t\t\t\t\t<b-nav vertical v-if=\"$route.path.startsWith('/admin/website') && !$route.path.startsWith('/admin/website-')\" class=\"nested\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/website/Help\">Help page</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/website/PointSource\">Point source page</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/website-settings\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'cog']\" fixed-width class=\"mr-3\" /> Website settings\r\n\t\t\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/admin/import-huc-v2\" v-if=\"data.showImportV2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'database']\" fixed-width class=\"mr-3\" /> Import HUC v2\r\n\t\t\t\t\t\t\t\t\t\t\t</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col md=\"9\" lg=\"10\" order=\"1\" order-md=\"2\" class=\"fixed-height shadow-sm no-shadow-sm\" style=\"z-index:500\">\r\n\t\t\t\t\t\t\t\t<b-breadcrumb :items=\"generalBreadCrumbs\" class=\"no-curves bg-white px-md-4\"></b-breadcrumb>\r\n\t\t\t\t\t\t\t\t<div class=\"container-fluid px-md-4 pb-4\">\r\n\t\t\t\t\t\t\t\t\t<div v-if=\"$route.name == 'AdminDashboard'\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"text-muted mb-3 border-bottom pb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t<small>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['far', 'clock']\" class=\"mr-1\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\tThe statistics on this page were computed at\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ data.computedAt | date }}.\r\n\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"#\" @click.prevent=\"get\">Refresh now.</a>\r\n\t\t\t\t\t\t\t\t\t\t\t</small>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"mb-4\">\r\n\t\t\t\t\t\t\t\t\t\t\t<highcharts :options=\"statisticsTimeChart\"></highcharts>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<h2 class=\"h4 text-center\">Totals</h2>\r\n\t\t\t\t\t\t\t\t\t\t<hr class=\"mt-2 mb-3\" />\r\n\t\t\t\t\t\t\t\t\t\t<b-row align-h=\"center\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"title\">Users</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.numUsers |  number(0) }}</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"title\">Projects</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.numProjects |  number(0) }}</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"title\">Scenarios</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.numScenarios |  number(0) }}</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"title\">Running Now</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"value\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ data.numScenariosRunning |  number(0) }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span :title=\"`As of ${toDate(data.computedAt)}. Click to refresh.`\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a class=\"mute\" href=\"#\" @click.prevent=\"get\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['far', 'clock']\" @click=\"get\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<h2 class=\"h4 text-center mt-4\">Averages</h2>\r\n\t\t\t\t\t\t\t\t\t\t<hr class=\"mt-2 mb-3\" />\r\n\t\t\t\t\t\t\t\t\t\t<b-row align-h=\"center\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"title\">Projects / User</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.avgProjectsPerUser |  number(1) }}</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"title\">HRUs / Project</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.avgHrusPerProject |  number(1) }}</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"title\">Scenarios / Project</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.avgScenariosPerProject |  number(1) }}</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"title\">Scenario Run Time</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"value\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{ data.avgScenarioRunTime |  number(1) }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span title=\"minutes\">min</span>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t\t\t<hr class=\"mt-2 mb-3\" />\r\n\t\t\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\t\t\tCode version: <strong>{{ data.buildDate | date }}</strong>.\r\n\t\t\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<router-view></router-view>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t</b-container>\r\n\t\t\t\t</page-authorization-container>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\r\n\texport default {\r\n\t\tname: 'AdminDashboard',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tstatisticsTimeChart: {}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('admin/dashboard', this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tstatisticsTimeChart() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tchart: { type: 'bar' },\r\n\t\t\t\t\tplotOptions: { bar: { dataLabels: { enabled: true } } },\r\n\t\t\t\t\ttitle: { text: this.data.statisticsTimeChart.title },\r\n\t\t\t\t\txAxis: { categories: this.data.statisticsTimeChart.xAxisCategories },\r\n\t\t\t\t\tyAxis: { title: { text: '' } },\r\n\t\t\t\t\tseries: this.data.statisticsTimeChart.series\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminDashboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminDashboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminDashboard.vue?vue&type=template&id=1633dc73&\"\nimport script from \"./AdminDashboard.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminDashboard.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},_vm._l((_vm.data),function(d,i){return _c('div',{key:i,staticClass:\"mb-4\"},[_c('h2',[_vm._v(_vm._s(d.name))]),_c('hr',{staticClass:\"mt-2 mb-3\"}),_c('b-row',{attrs:{\"align-h\":\"center\"}},[_c('b-col',{attrs:{\"cols\":\"4\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Subbasins\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(d.subbasins,0)))])])]),_c('b-col',{attrs:{\"cols\":\"4\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"HRUs\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(d.hrus,0)))])])]),_c('b-col',{attrs:{\"cols\":\"4\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-dark text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Projects\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(d.projects,0)))])])])],1)],1)}),0)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\n\t\t\t<div v-for=\"(d, i) in data\" :key=\"i\" class=\"mb-4\">\r\n\t\t\t\t<h2>{{d.name}}</h2>\r\n\t\t\t\t<hr class=\"mt-2 mb-3\" />\r\n\t\t\t\t<b-row align-h=\"center\">\r\n\t\t\t\t\t<b-col cols=\"4\" lg=\"3\">\r\n\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t<div class=\"title\">Subbasins</div>\r\n\t\t\t\t\t\t\t<div class=\"value\">{{ d.subbasins |  number(0) }}</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col cols=\"4\" lg=\"3\">\r\n\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t<div class=\"title\">HRUs</div>\r\n\t\t\t\t\t\t\t<div class=\"value\">{{ d.hrus |  number(0) }}</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col cols=\"4\" lg=\"3\">\r\n\t\t\t\t\t\t<div class=\"stat-box bg-dark text-white mb-2\">\r\n\t\t\t\t\t\t\t<div class=\"title\">Projects</div>\r\n\t\t\t\t\t\t\t<div class=\"value\">{{ d.projects |  number(0) }}</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\t\t\t</div>\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'AdminDatabase',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('admin/database', this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminDatabase.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminDatabase.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminDatabase.vue?vue&type=template&id=fd95264c&\"\nimport script from \"./AdminDatabase.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminDatabase.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Reports\")]),_c('p',[(_vm.data.reports.length > 0)?_c('span',[_vm._v(\" Select an existing report from the table, or create a new report / update it using the form below. \")]):_c('span',[_vm._v(\" Generate a CSV file of data using the drop-downs below. \")]),_vm._v(\" Larger reports, such as HRUs, may take several minutes to process. \")]),_c('p',[_vm._v(\" Note: \"),_c('router-link',{attrs:{\"to\":\"/admin/projects\"}},[_vm._v(\"Projects\")]),_vm._v(\", \"),_c('router-link',{attrs:{\"to\":\"/admin/projects/scenarios\"}},[_vm._v(\"scenarios\")]),_vm._v(\", and \"),_c('router-link',{attrs:{\"to\":\"/admin/users\"}},[_vm._v(\"users\")]),_vm._v(\" tables may be downloaded from their respective sections in the administrative area. \")],1),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('b-form',{attrs:{\"inline\":\"\"},on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-select',{staticClass:\"mr-2\",attrs:{\"options\":_vm.data.reportTypes,\"state\":_vm.getValidState(_vm.$v.form.name)},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}},[_c('template',{slot:\"first\"},[_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"Select a report type...\")])])],2),(_vm.form.name !== 'User Statistics')?_c('b-form-select',{staticClass:\"mr-2\",attrs:{\"options\":_vm.data.datasets,\"state\":_vm.getValidState(_vm.$v.form.datasetID)},model:{value:(_vm.form.datasetID),callback:function ($$v) {_vm.$set(_vm.form, \"datasetID\", $$v)},expression:\"form.datasetID\"}},[_c('template',{slot:\"first\"},[_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"Select a dataset...\")])])],2):_vm._e(),_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"text\":\"Generate Report\"}})],1),(_vm.data.reports.length > 0)?_c('div',{staticClass:\"my-4\"},[_c('hr',{staticClass:\"my-4\"}),_c('div',{staticClass:\"mb-2 form-inline\"},[_c('b-form-input',{attrs:{\"placeholder\":\"Search...\"},model:{value:(_vm.table.filter),callback:function ($$v) {_vm.$set(_vm.table, \"filter\", $$v)},expression:\"table.filter\"}})],1),_c('b-table',{staticClass:\"nowrap-headers border-bottom\",attrs:{\"responsive\":\"\",\"striped\":\"\",\"small\":\"\",\"items\":_vm.data.reports,\"fields\":_vm.table.fields,\"filter\":_vm.table.filter},scopedSlots:_vm._u([{key:\"cell(createdDate)\",fn:function(data){return [_vm._v(\" \"+_vm._s(_vm._f(\"date\")(data.item.createdDate))+\" \")]}},{key:\"cell(name)\",fn:function(data){return [(data.item.status == 'complete')?_c('a',{attrs:{\"href\":data.item.fileName}},[_vm._v(_vm._s(_vm.getDisplayName(data.item)))]):_c('span',[_vm._v(_vm._s(_vm.getDisplayName(data.item)))])]}},{key:\"cell(status)\",fn:function(data){return [(data.item.status == 'running' || _vm.runningReportIDs.includes(data.item.id))?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\"}}):_c('span')]}},{key:\"cell(delete)\",fn:function(data){return [_c('button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"plain text-danger\",on:{\"click\":function($event){return _vm.askDelete(data.item.id, data.item.name)}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1)]}}],null,false,2214766516)})],1):_vm._e(),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete \"),_c('strong',[_vm._v(_vm._s(_vm.page.delete.name))]),_vm._v(\"? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-3\">Reports</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\t<span v-if=\"data.reports.length > 0\">\r\n\t\t\t\t\tSelect an existing report from the table, or create a new report / update it using the form below.\r\n\t\t\t\t</span>\r\n\t\t\t\t<span v-else>\r\n\t\t\t\t\tGenerate a CSV file of data using the drop-downs below.\r\n\t\t\t\t</span>\r\n\t\t\t\tLarger reports, such as HRUs, may take several minutes to process.\r\n\t\t\t</p>\r\n\t\t\t<p>\r\n\t\t\t\tNote: <router-link to=\"/admin/projects\">Projects</router-link>,\r\n\t\t\t\t<router-link to=\"/admin/projects/scenarios\">scenarios</router-link>, and\r\n\t\t\t\t<router-link to=\"/admin/users\">users</router-link> tables may be downloaded from their respective sections in the administrative area.\r\n\t\t\t</p>\r\n\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t<b-form inline @submit.prevent=\"save\">\r\n\t\t\t\t<b-form-select v-model=\"form.name\" :options=\"data.reportTypes\" :state=\"getValidState($v.form.name)\" class=\"mr-2\">\r\n\t\t\t\t\t<template slot=\"first\">\r\n\t\t\t\t\t\t<option :value=\"null\" disabled>Select a report type...</option>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</b-form-select>\r\n\r\n\t\t\t\t<b-form-select v-model=\"form.datasetID\" :options=\"data.datasets\" :state=\"getValidState($v.form.datasetID)\" class=\"mr-2\" v-if=\"form.name !== 'User Statistics'\">\r\n\t\t\t\t\t<template slot=\"first\">\r\n\t\t\t\t\t\t<option :value=\"null\" disabled>Select a dataset...</option>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</b-form-select>\r\n\r\n\t\t\t\t<save-button :saving=\"page.saving\" text=\"Generate Report\" class=\"mr-2\" />\r\n\t\t\t</b-form>\r\n\r\n\t\t\t<div class=\"my-4\" v-if=\"data.reports.length > 0\">\n\t\t\t\t<hr class=\"my-4\" />\n\t\t\t\t<div class=\"mb-2 form-inline\">\r\n\t\t\t\t\t<b-form-input v-model=\"table.filter\" placeholder=\"Search...\"></b-form-input>\r\n\t\t\t\t</div>\r\n\t\t\t\t<b-table responsive striped small class=\"nowrap-headers border-bottom\" :items=\"data.reports\" :fields=\"table.fields\" :filter=\"table.filter\">\r\n\t\t\t\t\t<template v-slot:cell(createdDate)=\"data\">\r\n\t\t\t\t\t\t{{data.item.createdDate | date}}\r\n\t\t\t\t\t</template>\r\n\t\t\t\t\t<template v-slot:cell(name)=\"data\">\r\n\t\t\t\t\t\t<a v-if=\"data.item.status == 'complete'\" :href=\"data.item.fileName\">{{getDisplayName(data.item)}}</a>\r\n\t\t\t\t\t\t<span v-else>{{getDisplayName(data.item)}}</span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t\t<template v-slot:cell(status)=\"data\">\r\n\t\t\t\t\t\t<font-awesome-icon v-if=\"data.item.status == 'running' || runningReportIDs.includes(data.item.id)\" :icon=\"['fas', 'spinner']\" spin />\r\n\t\t\t\t\t\t<span v-else></span>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t\t<template v-slot:cell(delete)=\"data\">\r\n\t\t\t\t\t\t<button class=\"plain text-danger\" v-b-tooltip.hover.right=\"'Delete'\" @click=\"askDelete(data.item.id, data.item.name)\">\r\n\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t\t</button>\r\n\t\t\t\t\t</template>\r\n\t\t\t\t</b-table>\r\n\t\t\t</div>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete <strong>{{page.delete.name}}</strong>?\r\n\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, requiredIf } from 'vuelidate/lib/validators';\r\n\texport default {\r\n\t\tname: 'AdminReports',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tsaveErrors: [],\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\tid: undefined,\r\n\t\t\t\t\t\tname: '',\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\n\t\t\t\ttable: {\n\t\t\t\t\tfields: [\n\t\t\t\t\t\t{ key: 'status', label: '', class: 'min' },\n\t\t\t\t\t\t{ key: 'name', sortable: true },\n\t\t\t\t\t\t{ key: 'createdDate', sortable: true },\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\n\t\t\t\t\t],\n\t\t\t\t\tfilter: null\r\n\t\t\t\t},\n\t\t\t\tdata: {\n\t\t\t\t\treports: [],\n\t\t\t\t\tdatasets: [],\n\t\t\t\t\treportTypes: []\n\t\t\t\t},\n\t\t\t\tform: {\n\t\t\t\t\tdatasetID: null,\n\t\t\t\t\tname: null\r\n\t\t\t\t},\n\t\t\t\trunningReportIDs: []\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tname: { required },\r\n\t\t\t\tdatasetID: { required: requiredIf(function () { return this.form.name !== 'User Statistics'; }) }\r\n\t\t\t}\r\n\t\t},\n\t\tasync created() {\n\t\t\tawait this.get();\n\t\t\tthis.$statusHub.adminReportOpened();\n\t\t\tthis.$statusHub.$on('admin-report-status-change', this.onStatusChanged);\r\n\t\t},\n\t\tbeforeDestroy() {\n\t\t\tthis.$statusHub.adminReportClosed();\n\t\t\tthis.$statusHub.$off('admin-report-status-change', this.onStatusChanged);\r\n\t\t},\n\t\tmethods: {\n\t\t\tasync get() {\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\n\n\t\t\t\ttry {\n\t\t\t\t\tconst response = await this.$http.get('admin/reports', this.getTokenHeader());\n\t\t\t\t\tthis.log(response.data);\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\n\t\t\tasync save() {\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst response = await this.$http.post('admin/reports', this.form, this.getTokenHeader());\n\t\t\t\t\t\tthis.log(response.data);\n\t\t\t\t\t\tthis.$v.$reset();\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\tonStatusChanged(data) {\n\t\t\t\tthis.runningReportIDs = data.reportIDs;\n\t\t\t\tthis.get();\r\n\t\t\t},\n\t\t\tgetDisplayName(item) {\n\t\t\t\tif (this.isNullOrEmpty(item.dataset))\n\t\t\t\t\treturn item.name;\n\n\t\t\t\treturn `${item.name} - ${item.dataset}`;\r\n\t\t\t},\n\t\t\taskDelete(id, name) {\r\n\t\t\t\tthis.page.delete.id = id;\r\n\t\t\t\tthis.page.delete.name = name;\r\n\t\t\t\tthis.page.delete.show = true;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`admin/reports/${this.page.delete.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminReports.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminReports.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminReports.vue?vue&type=template&id=53880bc8&\"\nimport script from \"./AdminReports.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminReports.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminUsers')?_c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Users\")]),_c('b-alert',{staticClass:\"mb-4 py-3\",attrs:{\"show\":_vm.data.numPending > 0,\"variant\":\"warning\"}},[_c('p',[_vm._v(\" There \"+_vm._s(_vm.data.numPending === 1 ? 'is' : 'are')+\" currently \"),_c('strong',[_vm._v(_vm._s(_vm.data.numPending))]),_vm._v(\" \"+_vm._s(_vm.data.numPending === 1 ? 'user' : 'users')+\" pending approval. Click the edit icon next to a user's name to approve/deny, or click the approve all button below. \")]),_c('b-button',{attrs:{\"pressed\":_vm.data.showPending,\"variant\":\"warning\"},on:{\"update:pressed\":function($event){return _vm.$set(_vm.data, \"showPending\", $event)}}},[_vm._v(_vm._s(_vm.data.showPending ? 'Show all users' : 'Show pending user' + (_vm.data.numPending > 1 ? 's' : '')))])],1),_c('grid-view',{attrs:{\"api-url\":\"admin/users\",\"use-filter\":\"\",\"allow-export\":\"\",\"export-url\":\"admin/exports/users\",\"filter-flag\":_vm.data.showPending ? 'Pending' : '',\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"users\",\"item-name\":\"user\",\"show-create\":\"\",\"create-route\":\"create\",\"extra-delete-message\":\"All projects, scenarios, and files for this user will be removed.\"}})],1)],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\n\t\t<div v-if=\"$route.name == 'AdminUsers'\">\r\n\t\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t\t<h2 class=\"mb-3\">Users</h2>\r\n\r\n\t\t\t\t<b-alert :show=\"data.numPending > 0\" variant=\"warning\" class=\"mb-4 py-3\">\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tThere {{data.numPending === 1 ? 'is' : 'are'}} currently <strong>{{data.numPending}}</strong> {{data.numPending === 1 ? 'user' : 'users'}} pending approval.\r\n\t\t\t\t\t\tClick the edit icon next to a user's name to approve/deny, or click the approve all button below.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<b-button :pressed.sync=\"data.showPending\" variant=\"warning\">{{data.showPending ? 'Show all users' : 'Show pending user' + (data.numPending > 1 ? 's' : '')}}</b-button>\r\n\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t<grid-view api-url=\"admin/users\" use-filter allow-export export-url=\"admin/exports/users\" :filter-flag=\"data.showPending ? 'Pending' : ''\"\r\n\t\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t\t   collection-description=\"users\"\r\n\t\t\t\t\t\t   item-name=\"user\"\n\t\t\t\t\t\t   show-create create-route=\"create\"\r\n\t\t\t\t\t\t   extra-delete-message=\"All projects, scenarios, and files for this user will be removed.\"></grid-view>\r\n\t\t\t</page-authorization-container>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminUsers',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\n\t\t\t\t\tshowPending: false,\n\t\t\t\t\tnumPending: 0\n\t\t\t\t},\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\n\t\t\t\t\t\t{ key: 'edit', label: '' },\n\t\t\t\t\t\t{ key: 'roles', label: '' },\r\n\t\t\t\t\t\t{ key: 'lastLoginDate', label: 'Last Log-in', sortable: true, formatter: (value) => { return moment(value).format('M/D/YYYY h:mm a') } },\r\n\t\t\t\t\t\t{ key: 'userName', sortable: true },\n\t\t\t\t\t\t{ key: 'email', sortable: true },\n\t\t\t\t\t\t{ key: 'firstName', sortable: true },\n\t\t\t\t\t\t{ key: 'lastName', sortable: true },\n\t\t\t\t\t\t{ key: 'affiliation', sortable: true },\n\t\t\t\t\t\t{ key: 'organizationCategory', label: 'Category', sortable: true },\n\t\t\t\t\t\t{ key: 'country', sortable: true },\n\t\t\t\t\t\t{ key: 'state', sortable: true },\r\n\t\t\t\t\t\t{ key: 'registrationDate', label: 'Registered', sortable: true, formatter: (value) => { return moment(value).format('M/D/YYYY') } },\n\t\t\t\t\t\t{ key: 'isLockedOut', label: 'Locked?', sortable: true }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'lastLoginDate',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\n\t\t\t\tif (this.$route.name == 'AdminUsers') {\r\n\t\t\t\t\tthis.page.errors = [];\r\n\t\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get('admin/users/pending', this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.data.numPending = response.data.numPending;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.page.loading = false;\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminUsers.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminUsers.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminUsers.vue?vue&type=template&id=3d11e555&\"\nimport script from \"./AdminUsers.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminUsers.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Account information for \"+_vm._s(_vm.profile.userName))]),_c('success-alert',{ref:\"setApprovedAlert\",attrs:{\"text\":\"User account approved. The user has been sent an email notification.\"}}),(_vm.isPending)?_c('div',[_c('error-list',{attrs:{\"errors\":_vm.page.approve.errors}}),_c('error-list',{attrs:{\"errors\":_vm.page.deleteAccount.errors}}),_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_c('p',[_vm._v(\"This account is pending approval.\")]),_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.approve.saving,\"text\":\"Approve\"},nativeOn:{\"click\":function($event){return _vm.approveAccount.apply(null, arguments)}}}),_c('save-button',{attrs:{\"saving\":_vm.page.deleteAccount.saving,\"variant\":\"danger\",\"text\":\"Deny/Delete\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete(false)}}})],1)],1):_vm._e(),_c('error-list',{attrs:{\"errors\":_vm.page.lockout.errors}}),(_vm.profile.isLockedOut)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_c('p',[_vm._v(\"This account is locked out until \"+_vm._s(_vm._f(\"date\")(_vm.profile.lockoutEndDate)))]),_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.lockout.saving,\"text\":\"Unlock account\"},nativeOn:{\"click\":function($event){return _vm.setLockout(-1)}}})],1)],1):_vm._e(),_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-4\"},model:{value:(_vm.tabIndex),callback:function ($$v) {_vm.tabIndex=$$v},expression:\"tabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Profile\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.profile.errors}}),_c('success-alert',{ref:\"profileSavedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('error-list',{attrs:{\"errors\":_vm.page.setRole.errors}}),_c('success-alert',{ref:\"setRoleAlert\",attrs:{\"text\":\"User role change saved.\"}}),_c('b-row',[_c('b-col',{attrs:{\"md\":\"8\"}},[_c('b-form',[_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"First name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.firstName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.profile.firstName)},model:{value:(_vm.profile.firstName),callback:function ($$v) {_vm.$set(_vm.profile, \"firstName\", $$v)},expression:\"profile.firstName\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Last name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.lastName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.profile.lastName)},model:{value:(_vm.profile.lastName),callback:function ($$v) {_vm.$set(_vm.profile, \"lastName\", $$v)},expression:\"profile.lastName\"}})],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Email\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.getValidState(_vm.$v.profile.email)},model:{value:(_vm.profile.email),callback:function ($$v) {_vm.$set(_vm.profile, \"email\", $$v)},expression:\"profile.email\"}}),(!_vm.$v.profile.email.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.profile.email.email)?_c('b-form-invalid-feedback',[_vm._v(\"Please enter a valid email address\")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Company or organization\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.affiliation)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.profile.affiliation)},model:{value:(_vm.profile.affiliation),callback:function ($$v) {_vm.$set(_vm.profile, \"affiliation\", $$v)},expression:\"profile.affiliation\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Category\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.organizationCategory)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.organizationCategories,\"state\":_vm.getValidState(_vm.$v.profile.organizationCategory)},model:{value:(_vm.profile.organizationCategory),callback:function ($$v) {_vm.$set(_vm.profile, \"organizationCategory\", $$v)},expression:\"profile.organizationCategory\"}})],1),_c('b-form-group',{attrs:{\"label\":`What is your reason for trying ${_vm.siteText.siteName}?`,\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.reasonForUse)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.profile.reasonForUse)},model:{value:(_vm.profile.reasonForUse),callback:function ($$v) {_vm.$set(_vm.profile, \"reasonForUse\", $$v)},expression:\"profile.reasonForUse\"}})],1),_c('b-form-group',{attrs:{\"label\":\"In what country are you located?\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.country)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.countries,\"state\":_vm.getValidState(_vm.$v.profile.country)},model:{value:(_vm.profile.country),callback:function ($$v) {_vm.$set(_vm.profile, \"country\", $$v)},expression:\"profile.country\"}})],1),(_vm.profile.country === 'United States')?_c('b-form-group',{attrs:{\"label\":\"Select your state or territory\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.state)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.states,\"state\":_vm.getValidState(_vm.$v.profile.state)},model:{value:(_vm.profile.state),callback:function ($$v) {_vm.$set(_vm.profile, \"state\", $$v)},expression:\"profile.state\"}})],1):_vm._e(),_c('hr',{staticClass:\"my-3\"}),_c('b-form-group',{attrs:{\"label\":\"Units preference\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.profile.units)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.units,\"state\":_vm.getValidState(_vm.$v.profile.units)},model:{value:(_vm.profile.units),callback:function ($$v) {_vm.$set(_vm.profile, \"units\", $$v)},expression:\"profile.units\"}})],1)],1)],1),_c('b-col',[(!_vm.isPending && (_vm.isAuthorized(_vm.roleNames.admin) || (_vm.isAuthorized(_vm.roleNames.partialAdmin) && !_vm.userHasRole(_vm.roleNames.admin))))?_c('b-card',{staticClass:\"mb-3\",attrs:{\"bg-variant\":\"light\"}},[_c('b-card-text',[_c('p',[_vm._v(\"Set roles\")]),_c('div',[_c('b-form-checkbox',{on:{\"change\":function($event){return _vm.setRole(_vm.roleNames.partialAdmin)}},model:{value:(_vm.setRoles.isPartialAdmin),callback:function ($$v) {_vm.$set(_vm.setRoles, \"isPartialAdmin\", $$v)},expression:\"setRoles.isPartialAdmin\"}},[_vm._v(\"Site administrator\")])],1),(_vm.isAuthorized(_vm.roleNames.admin))?_c('div',[_c('b-form-checkbox',{on:{\"change\":function($event){return _vm.setRole(_vm.roleNames.admin)}},model:{value:(_vm.setRoles.isAdmin),callback:function ($$v) {_vm.$set(_vm.setRoles, \"isAdmin\", $$v)},expression:\"setRoles.isAdmin\"}},[_vm._v(\"Full access administrator\")])],1):_vm._e()])],1):_vm._e(),(!_vm.isNullOrEmpty(_vm.options.defaultTier))?_c('b-card',{staticClass:\"mb-3\",attrs:{\"bg-variant\":\"light\"}},[_c('b-card-text',[_c('p',[_vm._v(\"Set tier access\")]),_c('b-form-select',{attrs:{\"options\":_vm.options.tiers},model:{value:(_vm.profile.tierID),callback:function ($$v) {_vm.$set(_vm.profile, \"tierID\", $$v)},expression:\"profile.tierID\"}}),(_vm.profile.tierID !== _vm.options.defaultTier)?_c('b-form-group',{staticClass:\"mt-3\",attrs:{\"label\":\"Access expiration date (optional)\"}},[_c('b-form-input',{attrs:{\"type\":\"date\"},model:{value:(_vm.profile.tierExpiration),callback:function ($$v) {_vm.$set(_vm.profile, \"tierExpiration\", $$v)},expression:\"profile.tierExpiration\"}}),_c('small',{staticClass:\"form-text text-muted\"},[_vm._v(\"Leave blank for indefinite access to this tier\")])],1):_vm._e()],1)],1):_vm._e(),_c('div',{staticClass:\"text-muted text-small\"},[_c('div',[_vm._v(\"Last log-in on \"+_vm._s(_vm._f(\"date\")(_vm.profile.lastLoginDate)))]),_c('div',[_vm._v(\"Registered on \"+_vm._s(_vm._f(\"date\")(_vm.profile.registrationDate)))])])],1)],1)],1),_c('b-tab',{attrs:{\"title\":\"Projects\"}},[_c('grid-view',{attrs:{\"api-url\":`admin/users/projects/${_vm.userID}`,\"fields\":_vm.table.fields,\"link-name\":\"\",\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"projects\",\"item-name\":\"project\",\"edit-route\":\"/projects/\",\"edit-route-append\":false}})],1),_c('b-tab',{attrs:{\"title\":\"Usage statistics\"}},[_c('div',{staticClass:\"mb-4\"},[_c('highcharts',{attrs:{\"options\":_vm.statisticsTimeChart}})],1),_c('h2',{staticClass:\"h4 text-center\"},[_vm._v(\"Totals\")]),_c('hr',{staticClass:\"mt-2 mb-3\"}),_c('b-row',{attrs:{\"align-h\":\"center\"}},[_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Projects\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.stats.numProjects,0)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Scenarios\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.stats.numScenarios,0)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Running Now\")]),_c('div',{staticClass:\"value\"},[_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.stats.numScenariosRunning,0))+\" \")])])])],1),_c('h2',{staticClass:\"h4 text-center mt-4\"},[_vm._v(\"Averages\")]),_c('hr',{staticClass:\"mt-2 mb-3\"}),_c('b-row',{attrs:{\"align-h\":\"center\"}},[_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"HRUs / Project\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.stats.avgHrusPerProject,1)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Scenarios / Project\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.stats.avgScenariosPerProject,1)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Scenario Run Time\")]),_c('div',{staticClass:\"value\"},[_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.stats.avgScenarioRunTime,1))+\" \"),_c('span',{attrs:{\"title\":\"minutes\"}},[_vm._v(\"min\")])])])])],1)],1),_c('b-tab',{attrs:{\"title\":\"Reset password\"}},[(_vm.isPending)?_c('div',[_c('p',[_c('em',[_vm._v(\"Not available for pending users.\")])])]):_c('div',[(!_vm.isAuthorized(_vm.roleNames.admin) && _vm.userHasRole(_vm.roleNames.admin))?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" You are not authorized to change this user's password because they are an administrator. \")])],1):_c('div',[_c('p',[_vm._v(\" In most cases you should instruct the user to use the forgot password link under the log-in form. They will enter their email and be mailed instructions for resetting. In cases where this doesn't work or is not an option, enter a new password below and send it to the user. Please instruct them to change it after successful log-in. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.password.errors}}),_c('success-alert',{ref:\"passwordSavedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form',[_c('b-form-group',{attrs:{\"label\":\"New password\",\"description\":_vm.globals.passwordRequirements}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.password.new)},model:{value:(_vm.password.new),callback:function ($$v) {_vm.$set(_vm.password, \"new\", $$v)},expression:\"password.new\"}}),(!_vm.$v.password.new.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.password.new.strongPassword)?_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.globals.passwordRequirements))]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Confirm new password\"}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.password.confirm)},model:{value:(_vm.password.confirm),callback:function ($$v) {_vm.$set(_vm.password, \"confirm\", $$v)},expression:\"password.confirm\"}}),(!_vm.$v.password.confirm.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.password.confirm.sameAsPassword)?_c('b-form-invalid-feedback',[_vm._v(\"Passwords must match\")]):_vm._e()],1)],1)],1)])]),_c('b-tab',{attrs:{\"title\":\"Access codes\"}},[(_vm.isPending)?_c('div',[_c('p',[_c('em',[_vm._v(\"Not available for pending users.\")])])]):_c('div',[_c('p',[_vm._v(\" Access codes are temporary codes sent to users confirming access to their accounts via email. If a user emails from their account's email address and claims to have not received the code, you may sent one from the table below. If the user does not have access to their account email, please change it for them, then have them log in as usual. \")]),_c('b-alert',{attrs:{\"show\":_vm.accessCodes.length < 1,\"variant\":\"info\"}},[_vm._v(\" The user does not currently have any active temporary codes. \")]),(_vm.accessCodes.length > 0)?_c('b-table-simple',{attrs:{\"hover\":\"\",\"small\":\"\",\"responsive\":\"\"}},[_c('b-thead',{staticClass:\"bg-light\"},[_c('b-tr',[_c('b-th',[_vm._v(\"Code\")]),_c('b-th',[_vm._v(\"Expires\")])],1)],1),_c('b-tbody',_vm._l((_vm.accessCodes),function(c,i){return _c('b-tr',{key:i},[_c('b-td',[_vm._v(_vm._s(c.code))]),_c('b-td',[_vm._v(_vm._s(_vm._f(\"date\")(c.expiryDate)))])],1)}),1)],1):_vm._e()],1)]),_c('b-tab',{attrs:{\"title\":\"API access\"}},[_c('success-alert',{ref:\"apiClientAlert\",attrs:{\"text\":\"Changes saved.\"}}),(!_vm.siteSettings.apiConnectivityEnabled)?_c('div',[_c('p',[_c('em',[_vm._v(\"This feature is not enabled.\")])])]):(_vm.isPending)?_c('div',[_c('p',[_c('em',[_vm._v(\"Not available for pending users.\")])])]):(!_vm.hasApiAccess)?_c('div',[_c('p',[_vm._v(\"This user does not currently have API access set up. Use the button below to grant access.\")])]):_c('div',[_c('b-table-simple',{staticClass:\"border-bottom\"},[_c('b-tr',[_c('b-th',[_vm._v(\"Shared Key\")]),_c('b-td',[_c('code',[_vm._v(_vm._s(_vm.apiClient.sharedKey))])])],1),_c('b-tr',[_c('b-th',[_vm._v(\"Secret Key\")]),_c('b-td',[_c('code',[_vm._v(_vm._s(_vm.apiClient.secretKey))])])],1)],1),_c('h3',{staticClass:\"mt-4\"},[_vm._v(\"API Requests\")]),_c('grid-view',{attrs:{\"api-url\":`admin/users/apirequests/${_vm.userID}`,\"fields\":_vm.apiTable.fields,\"link-name\":\"\",\"default-sort\":_vm.apiTable.sort,\"default-reverse\":_vm.apiTable.reverse,\"collection-description\":\"requests\",\"item-name\":\"request\",\"edit-route\":\"/api/batch/\",\"edit-route-append\":false}})],1)],1),(!_vm.isPending)?_c('b-tab',{attrs:{\"title\":\"Delete account\",\"title-link-class\":\"text-danger\"}},[_c('p',[_vm._v(\" Are you sure you want to delete this account? This action is \"),_c('strong',[_vm._v(\"permanent and cannot be undone\")]),_vm._v(\". All projects and files for this user will be removed. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.deleteAccount.errors}}),_c('b-form',[_c('b-form-group',{attrs:{\"label\":\"Type DELETE to confirm\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.deleteAccount.value)},model:{value:(_vm.deleteAccount.value),callback:function ($$v) {_vm.$set(_vm.deleteAccount, \"value\", $$v)},expression:\"deleteAccount.value\"}}),(!_vm.$v.deleteAccount.value.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(_vm.deleteAccount.value !== 'DELETE')?_c('b-form-invalid-feedback',[_vm._v(\"You must type DELETE\")]):_vm._e()],1)],1)],1):_vm._e()],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[(_vm.tabIndex == 0)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.profile.saving},nativeOn:{\"click\":function($event){return _vm.saveProfile.apply(null, arguments)}}}):_vm._e(),(_vm.tabIndex == 3)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.password.saving},nativeOn:{\"click\":function($event){return _vm.savePassword.apply(null, arguments)}}}):_vm._e(),(_vm.tabIndex == 6)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.deleteAccount.saving,\"variant\":\"danger\",\"text\":\"Delete Account\",\"disabled\":_vm.deleteAccount.value !== 'DELETE'},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}):_vm._e(),(_vm.tabIndex == 5 && !_vm.hasApiAccess)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.apiClient.saving,\"text\":\"Grant API Access\"},nativeOn:{\"click\":function($event){return _vm.grantApiAccess.apply(null, arguments)}}}):_vm._e(),(_vm.tabIndex == 5 && _vm.hasApiAccess)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.apiClient.saving,\"variant\":\"danger\",\"text\":\"Remove API Access\"},nativeOn:{\"click\":function($event){return _vm.deleteApiAccess.apply(null, arguments)}}}):_vm._e(),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(!_vm.profile.isLockedOut)?_c('save-button',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-auto\",attrs:{\"saving\":_vm.page.lockout.saving,\"variant\":\"warning\",\"text\":\"Lockout User\",\"title\":\"Lockout user account from accessing this app for 30 days\"},nativeOn:{\"click\":function($event){return _vm.setLockout(30)}}}):_vm._e()],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Account information for {{profile.userName}}</h2>\r\n\r\n\t\t\t<success-alert ref=\"setApprovedAlert\" text=\"User account approved. The user has been sent an email notification.\" />\r\n\t\t\t<div v-if=\"isPending\">\r\n\t\t\t\t<error-list :errors=\"page.approve.errors\"></error-list>\r\n\t\t\t\t<error-list :errors=\"page.deleteAccount.errors\"></error-list>\r\n\r\n\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\t<p>This account is pending approval.</p>\r\n\r\n\t\t\t\t\t<save-button :saving=\"page.approve.saving\" text=\"Approve\" @click.native=\"approveAccount\" class=\"mr-2\" />\r\n\t\t\t\t\t<save-button :saving=\"page.deleteAccount.saving\" variant=\"danger\" text=\"Deny/Delete\" @click.native=\"confirmDelete(false)\" />\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\r\n\t\t\t<error-list :errors=\"page.lockout.errors\"></error-list>\r\n\t\t\t<div v-if=\"profile.isLockedOut\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\t<p>This account is locked out until {{profile.lockoutEndDate | date}}</p>\r\n\t\t\t\t\t<save-button :saving=\"page.lockout.saving\" text=\"Unlock account\" @click.native=\"setLockout(-1)\" class=\"mr-2\" />\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\r\n\t\t\t<b-tabs v-model=\"tabIndex\" content-class=\"mt-4\" class=\"page-nav-tabs\">\r\n\t\t\t\t<b-tab title=\"Profile\">\r\n\t\t\t\t\t<error-list :errors=\"page.profile.errors\"></error-list>\r\n\t\t\t\t\t<success-alert ref=\"profileSavedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t<error-list :errors=\"page.setRole.errors\"></error-list>\r\n\t\t\t\t\t<success-alert ref=\"setRoleAlert\" text=\"User role change saved.\" />\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md=\"8\">\r\n\t\t\t\t\t\t\t<b-form>\r\n\t\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"First name\" :invalid-feedback=\"requiredFeedback($v.profile.firstName)\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.firstName\" type=\"text\" autofocus :state=\"getValidState($v.profile.firstName)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-group label=\"Last name\" :invalid-feedback=\"requiredFeedback($v.profile.lastName)\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.lastName\" type=\"text\" :state=\"getValidState($v.profile.lastName)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Email\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.email\" type=\"email\" :state=\"getValidState($v.profile.email)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.profile.email.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.profile.email.email\">Please enter a valid email address</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Company or organization\" :invalid-feedback=\"requiredFeedback($v.profile.affiliation)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.affiliation\" type=\"text\" :state=\"getValidState($v.profile.affiliation)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Category\" :invalid-feedback=\"requiredFeedback($v.profile.organizationCategory)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.organizationCategory\" :options=\"location.organizationCategories\" :state=\"getValidState($v.profile.organizationCategory)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group :label=\"`What is your reason for trying ${siteText.siteName}?`\" :invalid-feedback=\"requiredFeedback($v.profile.reasonForUse)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.reasonForUse\" type=\"text\" :state=\"getValidState($v.profile.reasonForUse)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"In what country are you located?\" :invalid-feedback=\"requiredFeedback($v.profile.country)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.country\" :options=\"location.countries\" :state=\"getValidState($v.profile.country)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group v-if=\"profile.country === 'United States'\" label=\"Select your state or territory\" :invalid-feedback=\"requiredFeedback($v.profile.state)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.state\" :options=\"location.states\" :state=\"getValidState($v.profile.state)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<hr class=\"my-3\" />\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Units preference\" :invalid-feedback=\"requiredFeedback($v.profile.units)\">\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.units\" :options=\"options.units\" :state=\"getValidState($v.profile.units)\"></b-form-select>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t<b-card bg-variant=\"light\" class=\"mb-3\" v-if=\"!isPending && (isAuthorized(roleNames.admin) || (isAuthorized(roleNames.partialAdmin) && !userHasRole(roleNames.admin)))\">\r\n\t\t\t\t\t\t\t\t<b-card-text>\r\n\t\t\t\t\t\t\t\t\t<p>Set roles</p>\r\n\r\n\t\t\t\t\t\t\t\t\t<div>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"setRoles.isPartialAdmin\" @change=\"setRole(roleNames.partialAdmin)\">Site administrator</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div v-if=\"isAuthorized(roleNames.admin)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-checkbox v-model=\"setRoles.isAdmin\" @change=\"setRole(roleNames.admin)\">Full access administrator</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-card-text>\r\n\t\t\t\t\t\t\t</b-card>\r\n\r\n\t\t\t\t\t\t\t<b-card bg-variant=\"light\" class=\"mb-3\" v-if=\"!isNullOrEmpty(options.defaultTier)\">\r\n\t\t\t\t\t\t\t\t<b-card-text>\r\n\t\t\t\t\t\t\t\t\t<p>Set tier access</p>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"profile.tierID\" :options=\"options.tiers\"></b-form-select>\r\n\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Access expiration date (optional)\" class=\"mt-3\" v-if=\"profile.tierID !== options.defaultTier\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"profile.tierExpiration\" type=\"date\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<small class=\"form-text text-muted\">Leave blank for indefinite access to this tier</small>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-card-text>\r\n\t\t\t\t\t\t\t</b-card>\r\n\r\n\t\t\t\t\t\t\t<div class=\"text-muted text-small\">\r\n\t\t\t\t\t\t\t\t<div>Last log-in on {{profile.lastLoginDate | date}}</div>\r\n\t\t\t\t\t\t\t\t<div>Registered on {{profile.registrationDate | date}}</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t<b-tab title=\"Projects\">\r\n\t\t\t\t\t<grid-view :api-url=\"`admin/users/projects/${userID}`\"\r\n\t\t\t\t\t\t\t   :fields=\"table.fields\" link-name\r\n\t\t\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t\t\t   collection-description=\"projects\"\r\n\t\t\t\t\t\t\t   item-name=\"project\"\r\n\t\t\t\t\t\t\t   edit-route=\"/projects/\" :edit-route-append=\"false\"></grid-view>\r\n\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t<b-tab title=\"Usage statistics\">\r\n\t\t\t\t\t<div class=\"mb-4\">\r\n\t\t\t\t\t\t<highcharts :options=\"statisticsTimeChart\"></highcharts>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<h2 class=\"h4 text-center\">Totals</h2>\r\n\t\t\t\t\t<hr class=\"mt-2 mb-3\" />\r\n\t\t\t\t\t<b-row align-h=\"center\">\r\n\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t\t<div class=\"title\">Projects</div>\r\n\t\t\t\t\t\t\t\t<div class=\"value\">{{ stats.numProjects |  number(0) }}</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t\t<div class=\"title\">Scenarios</div>\r\n\t\t\t\t\t\t\t\t<div class=\"value\">{{ stats.numScenarios |  number(0) }}</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t\t<div class=\"title\">Running Now</div>\r\n\t\t\t\t\t\t\t\t<div class=\"value\">\r\n\t\t\t\t\t\t\t\t\t{{ stats.numScenariosRunning |  number(0) }}\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<h2 class=\"h4 text-center mt-4\">Averages</h2>\r\n\t\t\t\t\t<hr class=\"mt-2 mb-3\" />\r\n\t\t\t\t\t<b-row align-h=\"center\">\r\n\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t\t<div class=\"title\">HRUs / Project</div>\r\n\t\t\t\t\t\t\t\t<div class=\"value\">{{ stats.avgHrusPerProject |  number(1) }}</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t\t<div class=\"title\">Scenarios / Project</div>\r\n\t\t\t\t\t\t\t\t<div class=\"value\">{{ stats.avgScenariosPerProject |  number(1) }}</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t\t<div class=\"title\">Scenario Run Time</div>\r\n\t\t\t\t\t\t\t\t<div class=\"value\">\r\n\t\t\t\t\t\t\t\t\t{{ stats.avgScenarioRunTime |  number(1) }}\r\n\t\t\t\t\t\t\t\t\t<span title=\"minutes\">min</span>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t<b-tab title=\"Reset password\">\r\n\t\t\t\t\t<div v-if=\"isPending\">\r\n\t\t\t\t\t\t<p><em>Not available for pending users.</em></p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t<div v-if=\"!isAuthorized(roleNames.admin) && userHasRole(roleNames.admin)\">\r\n\t\t\t\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\t\t\t\tYou are not authorized to change this user's password because they are an administrator.\r\n\t\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tIn most cases you should instruct the user to use the forgot password link under the log-in form.\r\n\t\t\t\t\t\t\t\tThey will enter their email and be mailed instructions for resetting.\r\n\t\t\t\t\t\t\t\tIn cases where this doesn't work or is not an option, enter a new password below and send it to the user.\r\n\t\t\t\t\t\t\t\tPlease instruct them to change it after successful log-in.\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<error-list :errors=\"page.password.errors\"></error-list>\r\n\t\t\t\t\t\t\t<success-alert ref=\"passwordSavedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t\t\t<b-form>\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"New password\" :description=\"globals.passwordRequirements\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"password.new\" type=\"password\" :state=\"getValidState($v.password.new)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.new.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.new.strongPassword\">{{globals.passwordRequirements}}</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t\t<b-form-group label=\"Confirm new password\">\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"password.confirm\" type=\"password\" :state=\"getValidState($v.password.confirm)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.confirm.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.password.confirm.sameAsPassword\">Passwords must match</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t<b-tab title=\"Access codes\">\r\n\t\t\t\t\t<div v-if=\"isPending\">\r\n\t\t\t\t\t\t<p><em>Not available for pending users.</em></p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tAccess codes are temporary codes sent to users confirming access to their accounts via email.\r\n\t\t\t\t\t\t\tIf a user emails from their account's email address and claims to have not received the code, you may sent one from\r\n\t\t\t\t\t\t\tthe table below. If the user does not have access to their account email, please change it for them, then have\r\n\t\t\t\t\t\t\tthem log in as usual.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<b-alert :show=\"accessCodes.length < 1\" variant=\"info\">\r\n\t\t\t\t\t\t\tThe user does not currently have any active temporary codes.\r\n\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t<b-table-simple hover small responsive v-if=\"accessCodes.length > 0\">\r\n\t\t\t\t\t\t\t<b-thead class=\"bg-light\">\r\n\t\t\t\t\t\t\t\t<b-tr>\r\n\t\t\t\t\t\t\t\t\t<b-th>Code</b-th>\r\n\t\t\t\t\t\t\t\t\t<b-th>Expires</b-th>\r\n\t\t\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t\t\t</b-thead>\r\n\t\t\t\t\t\t\t<b-tbody>\r\n\t\t\t\t\t\t\t\t<b-tr v-for=\"(c, i) in accessCodes\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<b-td>{{c.code}}</b-td>\r\n\t\t\t\t\t\t\t\t\t<b-td>{{c.expiryDate | date}}</b-td>\r\n\t\t\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t\t\t</b-tbody>\r\n\t\t\t\t\t\t</b-table-simple>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t<b-tab title=\"API access\">\r\n\t\t\t\t\t<success-alert ref=\"apiClientAlert\" text=\"Changes saved.\" />\n\r\n\t\t\t\t\t<div v-if=\"!siteSettings.apiConnectivityEnabled\">\r\n\t\t\t\t\t\t<p><em>This feature is not enabled.</em></p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else-if=\"isPending\">\r\n\t\t\t\t\t\t<p><em>Not available for pending users.</em></p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else-if=\"!hasApiAccess\">\r\n\t\t\t\t\t\t<p>This user does not currently have API access set up. Use the button below to grant access.</p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t<b-table-simple class=\"border-bottom\">\r\n\t\t\t\t\t\t\t<b-tr>\r\n\t\t\t\t\t\t\t\t<b-th>Shared Key</b-th>\r\n\t\t\t\t\t\t\t\t<b-td><code>{{apiClient.sharedKey}}</code></b-td>\r\n\t\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t\t\t<b-tr>\r\n\t\t\t\t\t\t\t\t<b-th>Secret Key</b-th>\r\n\t\t\t\t\t\t\t\t<b-td><code>{{apiClient.secretKey}}</code></b-td>\r\n\t\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t\t</b-table-simple>\r\n\n\t\t\t\t\t\t<h3 class=\"mt-4\">API Requests</h3>\r\n\t\t\t\t\t\t<grid-view :api-url=\"`admin/users/apirequests/${userID}`\"\r\n\t\t\t\t\t\t\t\t   :fields=\"apiTable.fields\" link-name\r\n\t\t\t\t\t\t\t\t   :default-sort=\"apiTable.sort\" :default-reverse=\"apiTable.reverse\"\r\n\t\t\t\t\t\t\t\t   collection-description=\"requests\"\r\n\t\t\t\t\t\t\t\t   item-name=\"request\"\r\n\t\t\t\t\t\t\t\t   edit-route=\"/api/batch/\" :edit-route-append=\"false\"></grid-view>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-tab>\r\n\r\n\t\t\t\t<b-tab title=\"Delete account\" title-link-class=\"text-danger\" v-if=\"!isPending\">\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete this account?\r\n\t\t\t\t\t\tThis action is <strong>permanent and cannot be undone</strong>.\r\n\t\t\t\t\t\tAll projects and files for this user will be removed.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<error-list :errors=\"page.deleteAccount.errors\"></error-list>\r\n\r\n\t\t\t\t\t<b-form>\r\n\t\t\t\t\t\t<b-form-group label=\"Type DELETE to confirm\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"deleteAccount.value\" type=\"text\" :state=\"getValidState($v.deleteAccount.value)\"></b-form-input>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.deleteAccount.value.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"deleteAccount.value !== 'DELETE'\">You must type DELETE</b-form-invalid-feedback>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-form>\r\n\t\t\t\t</b-tab>\r\n\t\t\t</b-tabs>\r\n\r\n\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t<save-button v-if=\"tabIndex == 0\" :saving=\"page.profile.saving\" @click.native=\"saveProfile\" class=\"mr-2\" />\r\n\t\t\t\t<save-button v-if=\"tabIndex == 3\" :saving=\"page.password.saving\" @click.native=\"savePassword\" class=\"mr-2\" />\r\n\t\t\t\t<save-button v-if=\"tabIndex == 6\" :saving=\"page.deleteAccount.saving\" @click.native=\"confirmDelete\" class=\"mr-2\"\r\n\t\t\t\t\t\t\t variant=\"danger\" text=\"Delete Account\"\r\n\t\t\t\t\t\t\t :disabled=\"deleteAccount.value !== 'DELETE'\" />\r\n\t\t\t\t<save-button v-if=\"tabIndex == 5 && !hasApiAccess\" :saving=\"page.apiClient.saving\" @click.native=\"grantApiAccess\" text=\"Grant API Access\" class=\"mr-2\" />\r\n\t\t\t\t<save-button v-if=\"tabIndex == 5 && hasApiAccess\" :saving=\"page.apiClient.saving\" @click.native=\"deleteApiAccess\" variant=\"danger\" text=\"Remove API Access\" class=\"mr-2\" />\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t<save-button v-if=\"!profile.isLockedOut\" :saving=\"page.lockout.saving\"\r\n\t\t\t\t\t\t\t variant=\"warning\" text=\"Lockout User\"\r\n\t\t\t\t\t\t\t v-b-tooltip.hover title=\"Lockout user account from accessing this app for 30 days\"\r\n\t\t\t\t\t\t\t @click.native=\"setLockout(30)\" class=\"ml-auto\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, requiredIf, email, sameAs } from 'vuelidate/lib/validators';\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminUser',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tuserID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tprofile: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tpassword: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tdeleteAccount: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tapprove: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tlockout: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tsetRole: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tapiClient: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\ttabIndex: 0,\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tunits: [\r\n\t\t\t\t\t\t{ value: 0, text: 'Metric' },\r\n\t\t\t\t\t\t{ value: 1, text: 'Imperial' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\ttiers: [],\r\n\t\t\t\t\tdefaultTier: ''\r\n\t\t\t\t},\r\n\t\t\t\tprofile: {},\r\n\t\t\t\tstats: {\r\n\t\t\t\t\tstatisticsTimeChart: {}\r\n\t\t\t\t},\r\n\t\t\t\tpassword: {\r\n\t\t\t\t\tnew: '',\r\n\t\t\t\t\tconfirm: ''\r\n\t\t\t\t},\r\n\t\t\t\tdeleteAccount: {\r\n\t\t\t\t\tvalue: ''\r\n\t\t\t\t},\r\n\t\t\t\tsetRoles: {\r\n\t\t\t\t\tisPartialAdmin: false,\r\n\t\t\t\t\tisAdmin: false\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t{ key: 'dataset', sortable: false },\r\n\t\t\t\t\t\t{ key: 'endingSubbasin', label: 'Downstream ID', sortable: true },\r\n\t\t\t\t\t\t{ key: 'numSubbasins', label: 'Subbasins', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t{ key: 'numHrus', label: 'HRUs', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t{ key: 'totalArea', label: 'Area (sq. km.)', sortable: false, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t{ key: 'numScenarios', label: 'Scenarios', sortable: false }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 20\r\n\t\t\t\t},\n\t\t\t\tlocation: {\n\t\t\t\t\tcountries: [],\n\t\t\t\t\tstates: [],\n\t\t\t\t\torganizationCategories: []\r\n\t\t\t\t},\n\t\t\t\taccessCodes: [],\n\t\t\t\tapiClient: {},\r\n\t\t\t\tapiTable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'requestType', sortable: true },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t{ key: 'status', sortable: true },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t{ key: 'createdDate', sortable: true, class: 'nowrap' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 20\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tprofile: {\r\n\t\t\t\tfirstName: { required: requiredIf(function(){ return this.tabIndex == 0; }) },\r\n\t\t\t\tlastName: { required: requiredIf(function(){ return this.tabIndex == 0; }) },\r\n\t\t\t\tcountry: { required: requiredIf(function () { return this.tabIndex == 0; }) },\r\n\t\t\t\tstate: { required: requiredIf(function () { return this.tabIndex == 0 && this.profile.country == 'United States'; }) },\r\n\t\t\t\torganizationCategory: { required: requiredIf(function () { return this.tabIndex == 0; }) },\r\n\t\t\t\taffiliation: { required: requiredIf(function(){ return this.tabIndex == 0; }) },\r\n\t\t\t\treasonForUse: { required: requiredIf(function(){ return this.tabIndex == 0; }) },\r\n\t\t\t\tunits: { required: requiredIf(function () { return this.tabIndex == 0; }) },\r\n\t\t\t\temail: {\r\n\t\t\t\t\temail,\r\n\t\t\t\t\trequired: requiredIf(function(){ return this.tabIndex == 0; })\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tpassword: {\r\n\t\t\t\tnew: {\r\n\t\t\t\t\tstrongPassword(password) {\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\tthis.tabIndex != 3 || (\r\n\t\t\t\t\t\t\t/[a-z]/.test(password) && // checks for a-z\r\n\t\t\t\t\t\t\t/[0-9]/.test(password) && // checks for 0-9\r\n\t\t\t\t\t\t\t/\\W|_/.test(password) && // checks for special char\r\n\t\t\t\t\t\t\tpassword.length >= 10)\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t},\r\n\t\t\t\t\trequired: requiredIf(function(){ return this.tabIndex == 3; })\r\n\t\t\t\t},\r\n\t\t\t\tconfirm: {\r\n\t\t\t\t\tsameAsPassword: sameAs('new'),\r\n\t\t\t\t\trequired: requiredIf(function(){ return this.tabIndex == 3; })\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tdeleteAccount: {\r\n\t\t\t\tvalue: { required: requiredIf(function(){ return this.tabIndex == 6; }) }\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.userID = this.$route.params.id;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/users/${this.userID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.profile = response.data.profile;\r\n\t\t\t\t\tthis.options.tiers = response.data.tiers;\r\n\t\t\t\t\tthis.options.defaultTier = response.data.defaultTierID;\r\n\t\t\t\t\tthis.stats = response.data.stats;\r\n\t\t\t\t\tthis.location = response.data.location;\n\t\t\t\t\tthis.accessCodes = response.data.accessCodes;\n\t\t\t\t\tthis.apiClient = response.data.apiClient;\r\n\r\n\t\t\t\t\tif (!this.isNullOrEmpty(this.profile.tierExpiration)) {\r\n\t\t\t\t\t\tthis.profile.tierExpiration = moment(this.profile.tierExpiration).format('YYYY-MM-DD');\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.log(this.profile);\r\n\r\n\t\t\t\t\tthis.setRoles.isPartialAdmin = this.profile.roles.includes(this.roleNames.partialAdmin);\r\n\t\t\t\t\tthis.setRoles.isAdmin = this.profile.roles.includes(this.roleNames.admin);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync saveProfile() {\r\n\t\t\t\tthis.page.profile.errors = [];\r\n\t\t\t\tthis.page.profile.saving = true;\r\n\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.profile.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post(`admin/users/${this.userID}`, this.profile, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$refs.profileSavedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.profile.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.profile.saving = false;\r\n\t\t\t},\r\n\t\t\tasync savePassword() {\r\n\t\t\t\tthis.page.password.errors = [];\r\n\t\t\t\tthis.page.password.saving = true;\r\n\r\n\t\t\t\tthis.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.password.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tvalue: this.password.new\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.post(`admin/users/password/${this.userID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$refs.passwordSavedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.password.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.password.saving = false;\r\n\t\t\t},\r\n\t\t\tasync setRole(role) {\r\n\t\t\t\tthis.page.setRole.errors = [];\r\n\t\t\t\tthis.page.setRole.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tvalue: role\r\n\t\t\t\t\t};\r\n\t\t\t\t\tconst response = await this.$http.post(`admin/users/setrole/${this.userID}`, data, this.getTokenHeader());\r\n\t\t\t\t\tthis.$refs.setRoleAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.setRole.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.setRole.saving = false;\r\n\t\t\t},\r\n\t\t\tasync approveAccount() {\r\n\t\t\t\tthis.page.approve.errors = [];\r\n\t\t\t\tthis.page.approve.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/users/approve?id=${this.userID}`, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.setApprovedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.approve.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.approve.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete(validate = true) {\r\n\t\t\t\tthis.page.deleteAccount.errors = [];\r\n\t\t\t\tthis.page.deleteAccount.saving = true;\r\n\r\n\t\t\t\tif (validate) this.$v.$touch();\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.deleteAccount.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.delete(`account/delete?userId=${this.userID}`, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push('/admin/users').catch(err => {});\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.deleteAccount.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.deleteAccount.saving = false;\r\n\t\t\t},\r\n\t\t\tasync setLockout(days) {\r\n\t\t\t\tthis.page.lockout.errors = [];\r\n\t\t\t\tthis.page.lockout.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/users/setlock/${this.userID}/${days}`, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.lockout.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.lockout.saving = false;\r\n\t\t\t},\r\n\t\t\tuserHasRole(role) {\r\n\t\t\t\treturn this.profile.roles !== undefined && this.profile.roles.includes(role);\r\n\t\t\t},\r\n\t\t\tasync grantApiAccess() {\r\n\t\t\t\tthis.page.apiClient.errors = [];\r\n\t\t\t\tthis.page.apiClient.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`admin/users/apiAccess/${this.userID}`, {}, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.apiClientAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.apiClient.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.apiClient.saving = false;\r\n\t\t\t},\r\n\t\t\tasync deleteApiAccess() {\r\n\t\t\t\tthis.page.apiClient.errors = [];\r\n\t\t\t\tthis.page.apiClient.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`admin/users/deleteApiAccess/${this.userID}`, this.getTokenHeader());\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.apiClientAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.apiClient.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.apiClient.saving = false;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tisPending() {\r\n\t\t\t\treturn this.profile.roles !== undefined && this.profile.roles.includes(this.roleNames.pending);\r\n\t\t\t},\r\n\t\t\tstatisticsTimeChart() {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tchart: { type: 'bar' },\r\n\t\t\t\t\tplotOptions: { bar: { dataLabels: { enabled: true } } },\r\n\t\t\t\t\ttitle: { text: this.stats.statisticsTimeChart.title },\r\n\t\t\t\t\txAxis: { categories: this.stats.statisticsTimeChart.xAxisCategories },\r\n\t\t\t\t\tyAxis: { title: { text: '' } },\r\n\t\t\t\t\tseries: this.stats.statisticsTimeChart.series\r\n\t\t\t\t};\r\n\t\t\t},\n\t\t\thasApiAccess() {\n\t\t\t\treturn this.profile.roles !== undefined && this.profile.roles.includes(this.roleNames.apiUser);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminUser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminUser.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminUser.vue?vue&type=template&id=42865702&\"\nimport script from \"./AdminUser.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminUser.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Manually add new user\")]),_c('p',[_vm._v(\" It is strongly recommended for the user to register via the home page. However, you may add a user below manually. The user will not need to confirm their email and they will already be registered. You should inform the user of their user name and email address, and instruct them to use the \\\"Forgot Password\\\" link under the log-in form when possible. Otherwise, send them their password and notify that they should change it after logging in. \")]),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"User account created.\"}}),(!_vm.registration.submitted)?_c('b-form',{staticClass:\"my-4\",on:{\"submit\":function($event){$event.preventDefault();return _vm.register.apply(null, arguments)}}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"First name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.firstName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.registration.form.firstName)},model:{value:(_vm.registration.form.firstName),callback:function ($$v) {_vm.$set(_vm.registration.form, \"firstName\", $$v)},expression:\"registration.form.firstName\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Last name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.lastName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.registration.form.lastName)},model:{value:(_vm.registration.form.lastName),callback:function ($$v) {_vm.$set(_vm.registration.form, \"lastName\", $$v)},expression:\"registration.form.lastName\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Email address\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.getValidState(_vm.$v.registration.form.email)},model:{value:(_vm.registration.form.email),callback:function ($$v) {_vm.$set(_vm.registration.form, \"email\", $$v)},expression:\"registration.form.email\"}}),(!_vm.$v.registration.form.email.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.registration.form.email.email)?_c('b-form-invalid-feedback',[_vm._v(\"Please enter a valid email address\")]):_vm._e()],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Confirm your email\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.getValidState(_vm.$v.registration.form.compareEmail)},model:{value:(_vm.registration.form.compareEmail),callback:function ($$v) {_vm.$set(_vm.registration.form, \"compareEmail\", $$v)},expression:\"registration.form.compareEmail\"}}),(!_vm.$v.registration.form.compareEmail.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.registration.form.compareEmail.email)?_c('b-form-invalid-feedback',[_vm._v(\"Please enter a valid email address\")]):_vm._e(),(!_vm.$v.registration.form.compareEmail.sameAsEmail)?_c('b-form-invalid-feedback',[_vm._v(\"Email addresses must match\")]):_vm._e()],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Company or organization\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.affiliation)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.registration.form.affiliation)},model:{value:(_vm.registration.form.affiliation),callback:function ($$v) {_vm.$set(_vm.registration.form, \"affiliation\", $$v)},expression:\"registration.form.affiliation\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Category\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.organizationCategory)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.organizationCategories,\"state\":_vm.getValidState(_vm.$v.registration.form.organizationCategory)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a category --\")])]},proxy:true}],null,false,404444676),model:{value:(_vm.registration.form.organizationCategory),callback:function ($$v) {_vm.$set(_vm.registration.form, \"organizationCategory\", $$v)},expression:\"registration.form.organizationCategory\"}})],1),_c('b-form-group',{attrs:{\"label\":`What is your reason for trying ${_vm.siteText.siteName}?`,\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.reasonForUse)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.registration.form.reasonForUse)},model:{value:(_vm.registration.form.reasonForUse),callback:function ($$v) {_vm.$set(_vm.registration.form, \"reasonForUse\", $$v)},expression:\"registration.form.reasonForUse\"}})],1),_c('b-form-group',{attrs:{\"label\":\"In what country are you located?\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.country)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.countries,\"state\":_vm.getValidState(_vm.$v.registration.form.country)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a country --\")])]},proxy:true}],null,false,584122172),model:{value:(_vm.registration.form.country),callback:function ($$v) {_vm.$set(_vm.registration.form, \"country\", $$v)},expression:\"registration.form.country\"}})],1),(_vm.registration.form.country === 'United States')?_c('b-form-group',{attrs:{\"label\":\"Select your state or territory\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.state)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.states,\"state\":_vm.getValidState(_vm.$v.registration.form.state)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a state or territory --\")])]},proxy:true}],null,false,2159271862),model:{value:(_vm.registration.form.state),callback:function ($$v) {_vm.$set(_vm.registration.form, \"state\", $$v)},expression:\"registration.form.state\"}})],1):_vm._e(),_c('hr',{staticClass:\"my-3\"}),_c('b-form-group',{attrs:{\"label\":\"Enter a user name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.registration.form.userName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.registration.form.userName)},model:{value:(_vm.registration.form.userName),callback:function ($$v) {_vm.$set(_vm.registration.form, \"userName\", $$v)},expression:\"registration.form.userName\"}})],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Password\",\"description\":_vm.globals.passwordRequirements}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.registration.form.password)},model:{value:(_vm.registration.form.password),callback:function ($$v) {_vm.$set(_vm.registration.form, \"password\", $$v)},expression:\"registration.form.password\"}}),(!_vm.$v.registration.form.password.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.registration.form.password.strongPassword)?_c('b-form-invalid-feedback',[_vm._v(_vm._s(_vm.globals.passwordRequirements))]):_vm._e()],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Confirm your password\"}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.registration.form.comparePassword)},model:{value:(_vm.registration.form.comparePassword),callback:function ($$v) {_vm.$set(_vm.registration.form, \"comparePassword\", $$v)},expression:\"registration.form.comparePassword\"}}),(!_vm.$v.registration.form.comparePassword.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.registration.form.comparePassword.sameAsPassword)?_c('b-form-invalid-feedback',[_vm._v(\"Passwords must match\")]):_vm._e()],1)],1)],1)],1):_vm._e(),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{attrs:{\"saving\":_vm.registration.saving,\"text\":\"Create account\"},nativeOn:{\"click\":function($event){return _vm.register.apply(null, arguments)}}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Manually add new user</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tIt is strongly recommended for the user to register via the home page. However, you may add a user below manually.\r\n\t\t\t\tThe user will not need to confirm their email and they will already be registered.\r\n\t\t\t\tYou should inform the user of their user name and email address, and instruct them to use the \"Forgot Password\" link under the\r\n\t\t\t\tlog-in form when possible. Otherwise, send them their password and notify that they should change it after logging in.\r\n\t\t\t</p>\r\n\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"User account created.\" />\r\n\r\n\t\t\t<b-form @submit.prevent=\"register\" class=\"my-4\" v-if=\"!registration.submitted\">\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"First name\" :invalid-feedback=\"requiredFeedback($v.registration.form.firstName)\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.firstName\" type=\"text\" autofocus :state=\"getValidState($v.registration.form.firstName)\"></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Last name\" :invalid-feedback=\"requiredFeedback($v.registration.form.lastName)\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.lastName\" type=\"text\" :state=\"getValidState($v.registration.form.lastName)\"></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Email address\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.email\" type=\"email\" :state=\"getValidState($v.registration.form.email)\"></b-form-input>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.email.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.email.email\">Please enter a valid email address</b-form-invalid-feedback>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Confirm your email\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.compareEmail\" type=\"email\" :state=\"getValidState($v.registration.form.compareEmail)\"></b-form-input>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.compareEmail.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.compareEmail.email\">Please enter a valid email address</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.compareEmail.sameAsEmail\">Email addresses must match</b-form-invalid-feedback>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<b-form-group label=\"Company or organization\" :invalid-feedback=\"requiredFeedback($v.registration.form.affiliation)\">\r\n\t\t\t\t\t<b-form-input v-model=\"registration.form.affiliation\" type=\"text\" :state=\"getValidState($v.registration.form.affiliation)\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Category\" :invalid-feedback=\"requiredFeedback($v.registration.form.organizationCategory)\">\r\n\t\t\t\t\t<b-form-select v-model=\"registration.form.organizationCategory\" :options=\"location.organizationCategories\" :state=\"getValidState($v.registration.form.organizationCategory)\">\r\n\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a category --</option>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-form-select>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group :label=\"`What is your reason for trying ${siteText.siteName}?`\" :invalid-feedback=\"requiredFeedback($v.registration.form.reasonForUse)\">\r\n\t\t\t\t\t<b-form-input v-model=\"registration.form.reasonForUse\" type=\"text\" :state=\"getValidState($v.registration.form.reasonForUse)\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"In what country are you located?\" :invalid-feedback=\"requiredFeedback($v.registration.form.country)\">\r\n\t\t\t\t\t<b-form-select v-model=\"registration.form.country\" :options=\"location.countries\" :state=\"getValidState($v.registration.form.country)\">\r\n\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a country --</option>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-form-select>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group v-if=\"registration.form.country === 'United States'\" label=\"Select your state or territory\" :invalid-feedback=\"requiredFeedback($v.registration.form.state)\">\r\n\t\t\t\t\t<b-form-select v-model=\"registration.form.state\" :options=\"location.states\" :state=\"getValidState($v.registration.form.state)\">\r\n\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a state or territory --</option>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</b-form-select>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<hr class=\"my-3\" />\r\n\r\n\t\t\t\t<b-form-group label=\"Enter a user name\" :invalid-feedback=\"requiredFeedback($v.registration.form.userName)\">\r\n\t\t\t\t\t<b-form-input v-model=\"registration.form.userName\" type=\"text\" :state=\"getValidState($v.registration.form.userName)\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Password\" :description=\"globals.passwordRequirements\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.password\" type=\"password\" :state=\"getValidState($v.registration.form.password)\"></b-form-input>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.password.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.password.strongPassword\">{{globals.passwordRequirements}}</b-form-invalid-feedback>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Confirm your password\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"registration.form.comparePassword\" type=\"password\" :state=\"getValidState($v.registration.form.comparePassword)\"></b-form-input>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.comparePassword.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.registration.form.comparePassword.sameAsPassword\">Passwords must match</b-form-invalid-feedback>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\t\t\t</b-form>\r\n\r\n\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t<save-button :saving=\"registration.saving\" text=\"Create account\" @click.native=\"register\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, requiredIf, email, sameAs } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'AdminUserCreate',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tregistration: {\r\n\t\t\t\t\tform: {\r\n\t\t\t\t\t\tfirstName: '',\r\n\t\t\t\t\t\tlastName: '',\r\n\t\t\t\t\t\temail: '',\r\n\t\t\t\t\t\tcompareEmail: '',\r\n\t\t\t\t\t\tuserName: '',\r\n\t\t\t\t\t\tpassword: '',\r\n\t\t\t\t\t\tcomparePassword: '',\r\n\t\t\t\t\t\tcountry: 'United States',\r\n\t\t\t\t\t\tstate: null,\r\n\t\t\t\t\t\taffiliation: '',\r\n\t\t\t\t\t\torganizationCategory: null,\r\n\t\t\t\t\t\treasonForUse: ''\r\n\t\t\t\t\t},\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tsubmitted: false,\r\n\t\t\t\t\trecaptchaToken: ''\r\n\t\t\t\t},\n\t\t\t\tlocation: {\n\t\t\t\t\tcountries: [],\n\t\t\t\t\tstates: [],\n\t\t\t\t\torganizationCategories: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tregistration: {\r\n\t\t\t\tform: {\r\n\t\t\t\t\tfirstName: { required },\r\n\t\t\t\t\tlastName: { required },\r\n\t\t\t\t\temail: { required, email },\r\n\t\t\t\t\tcompareEmail: { required, email, sameAsEmail: sameAs('email') },\r\n\t\t\t\t\tuserName: { required },\r\n\t\t\t\t\tpassword: {\r\n\t\t\t\t\t\trequired,\r\n\t\t\t\t\t\tstrongPassword(password) {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t/[a-z]/.test(password) && // checks for a-z\r\n\t\t\t\t\t\t\t\t/[0-9]/.test(password) && // checks for 0-9\r\n\t\t\t\t\t\t\t\t/\\W|_/.test(password) && // checks for special char\r\n\t\t\t\t\t\t\t\tpassword.length >= 10\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcomparePassword: { required, sameAsPassword: sameAs('password') },\r\n\t\t\t\t\tcountry: { required },\r\n\t\t\t\t\tstate: { required: requiredIf(function () { return this.registration.form.country == 'United States'; }) },\r\n\t\t\t\t\torganizationCategory: { required },\r\n\t\t\t\t\taffiliation: { required },\r\n\t\t\t\t\treasonForUse: { required }\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('account/locationdata', this.getTokenHeader());\n\t\t\t\t\tthis.location = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync register() {\r\n\t\t\t\tthis.registration.errors = [];\r\n\t\t\t\tthis.registration.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.registration.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tfirstName: this.registration.form.firstName,\r\n\t\t\t\t\t\tlastName: this.registration.form.lastName,\r\n\t\t\t\t\t\temail: this.registration.form.email,\r\n\t\t\t\t\t\tuserName: this.registration.form.userName,\r\n\t\t\t\t\t\tpassword: this.registration.form.password,\r\n\t\t\t\t\t\tcountry: this.registration.form.country,\r\n\t\t\t\t\t\tstate: this.registration.form.state,\r\n\t\t\t\t\t\torganizationCategory: this.registration.form.organizationCategory,\r\n\t\t\t\t\t\taffiliation: this.registration.form.affiliation,\r\n\t\t\t\t\t\treasonForUse: this.registration.form.reasonForUse\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tawait this.$http.post('admin/users', data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tthis.registration.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.registration.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminUserCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminUserCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminUserCreate.vue?vue&type=template&id=5fc1d56c&\"\nimport script from \"./AdminUserCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminUserCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminGroups')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Groups\")]),_c('p',[_vm._v(\" Groups are a way for users to share projects and scenarios with each other. Any user can create a group then invite other users to join by entering their email address. Users choose which projects to share with the group by clicking the share button from a project's page. All users in the group may view, edit*, and run* projects shared with the group. (*Note: tier limits still apply.) \")]),_c('grid-view',{attrs:{\"api-url\":\"admin/users/groups\",\"delete-api-url\":\"groups\",\"fields\":_vm.table.fields,\"link-name\":\"\",\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"default-per-page\":_vm.table.itemsPerPage,\"collection-description\":\"groups\",\"item-name\":\"group\",\"extra-delete-message\":\"It is recommended to let users manage their own groups. No projects or files will be deleted. Access will return to just the creator.\"}})],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'AdminGroups'\">\r\n\t\t\t<h2 class=\"mb-3\">Groups</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tGroups are a way for users to share projects and scenarios with each other.\r\n\t\t\t\tAny user can create a group then invite other users to join by entering their email address.\r\n\t\t\t\tUsers choose which projects to share with the group by clicking the share button from a project's page.\r\n\t\t\t\tAll users in the group may view, edit*, and run* projects shared with the group.\r\n\t\t\t\t(*Note: tier limits still apply.)\r\n\t\t\t</p>\r\n\r\n\t\t\t<grid-view api-url=\"admin/users/groups\" delete-api-url=\"groups\"\r\n\t\t\t\t\t   :fields=\"table.fields\" link-name\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\" :default-per-page=\"table.itemsPerPage\"\r\n\t\t\t\t\t   collection-description=\"groups\"\r\n\t\t\t\t\t   item-name=\"group\"\r\n\t\t\t\t\t   extra-delete-message=\"It is recommended to let users manage their own groups. No projects or files will be deleted. Access will return to just the creator.\"></grid-view>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminGroups',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t{ key: 'numProjects', label: 'Projects', sortable: true },\r\n\t\t\t\t\t\t{ key: 'numMembers', label: 'Members', sortable: true },\r\n\t\t\t\t\t\t{ key: 'numInvitedUsers', label: 'Invitations', sortable: true },\t\t\t\t\t\t\r\n\t\t\t\t\t\t{ key: 'createdOn', sortable: true, formatter: (value) => { return moment(value).format('llll') } },\r\n\t\t\t\t\t\t{ key: 'createdBy', sortable: true },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'name',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminGroups.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminGroups.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminGroups.vue?vue&type=template&id=426feabd&\"\nimport script from \"./AdminGroups.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminGroups.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.group.name))]),_c('p',[_vm._v(\" \"+_vm._s(_vm.group.description)+\" \")]),_c('h3',{staticClass:\"mt-4 mb-3\"},[_vm._v(\"Group Projects\")]),_c('grid-view',{attrs:{\"api-url\":`groups/projects/${_vm.groupID}`,\"fields\":_vm.tables.projects.fields,\"default-sort\":_vm.tables.projects.sort,\"default-reverse\":_vm.tables.projects.reverse,\"default-per-page\":_vm.tables.itemsPerPage,\"collection-description\":\"group projects\",\"item-name\":\"project\"}}),_c('h3',{staticClass:\"mt-4 mb-3\",attrs:{\"id\":\"membersTop\"}},[_vm._v(\"Group Members\")]),_c('grid-view',{attrs:{\"api-url\":`groups/members/${_vm.groupID}`,\"fields\":_vm.tables.members.fields,\"selectable\":_vm.group.isAdmin,\"default-sort\":_vm.tables.members.sort,\"default-reverse\":_vm.tables.members.reverse,\"default-per-page\":_vm.tables.itemsPerPage,\"collection-description\":\"group members\",\"item-name\":\"member\"},on:{\"selectionChanged\":_vm.memberSelectionChanged}}),(_vm.group.invitedUsers.length > 0)?_c('div',[_c('h3',{staticClass:\"mt-4 mb-3\"},[_vm._v(\"Pending Invitations\")]),_c('b-table',{staticClass:\"nowrap-headers mb-3 border-bottom\",attrs:{\"striped\":\"\",\"responsive\":\"\",\"items\":_vm.group.invitedUsers,\"fields\":_vm.tables.invites.fields}})],1):_vm._e(),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">{{group.name}}</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\t{{group.description}}\r\n\t\t\t</p>\r\n\r\n\t\t\t<h3 class=\"mt-4 mb-3\">Group Projects</h3>\r\n\r\n\t\t\t<grid-view :api-url=\"`groups/projects/${groupID}`\"\r\n\t\t\t\t\t   :fields=\"tables.projects.fields\"\r\n\t\t\t\t\t   :default-sort=\"tables.projects.sort\" :default-reverse=\"tables.projects.reverse\" :default-per-page=\"tables.itemsPerPage\"\r\n\t\t\t\t\t   collection-description=\"group projects\"\r\n\t\t\t\t\t   item-name=\"project\"></grid-view>\r\n\r\n\t\t\t<h3 class=\"mt-4 mb-3\" id=\"membersTop\">Group Members</h3>\r\n\r\n\t\t\t<grid-view :api-url=\"`groups/members/${groupID}`\"\r\n\t\t\t\t\t   :fields=\"tables.members.fields\"\r\n\t\t\t\t\t   :selectable=\"group.isAdmin\" @selectionChanged=\"memberSelectionChanged\"\r\n\t\t\t\t\t   :default-sort=\"tables.members.sort\" :default-reverse=\"tables.members.reverse\" :default-per-page=\"tables.itemsPerPage\"\r\n\t\t\t\t\t   collection-description=\"group members\"\r\n\t\t\t\t\t   item-name=\"member\"></grid-view>\r\n\r\n\t\t\t<div v-if=\"group.invitedUsers.length > 0\">\r\n\t\t\t\t<h3 class=\"mt-4 mb-3\">Pending Invitations</h3>\r\n\r\n\t\t\t\t<b-table striped responsive class=\"nowrap-headers mb-3 border-bottom\"\r\n\t\t\t\t\t\t :items=\"group.invitedUsers\" :fields=\"tables.invites.fields\">\r\n\t\t\t\t</b-table>\r\n\t\t\t</div>\r\n\r\n\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\r\n\texport default {\r\n\t\tname: 'GroupView',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tgroupID: this.$route.params.id,\r\n\t\t\t\tgroup: {\r\n\t\t\t\t\tinvitedUsers: []\r\n\t\t\t\t},\r\n\t\t\t\ttables: {\r\n\t\t\t\t\tprojects: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'project', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t\t{ key: 'userName', label: 'Belongs to', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t\t{ key: 'dataset', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'endingSubbasin', label: 'Downstream ID', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'numSubbasins', label: 'Subbasins', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t\t{ key: 'numHrus', label: 'HRUs', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t\t{ key: 'totalArea', label: 'Area (sq. km.)', sortable: false, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t\t{ key: 'numScenarios', label: 'Scenarios', sortable: false }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\t\treverse: true\r\n\t\t\t\t\t},\r\n\t\t\t\t\tmembers: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'userName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'email', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'firstName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'lastName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'affiliation', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'isAdmin', label: 'Group Admin?', sortable: false, formatter: (value) => { return value === true ? 'Yes' : 'No' } }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tsort: 'userName',\r\n\t\t\t\t\t\treverse: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tinvites: {\r\n\t\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t\t{ key: 'userName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'email', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'firstName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'lastName', sortable: true },\r\n\t\t\t\t\t\t\t{ key: 'affiliation', sortable: true }\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\tsort: 'userName',\r\n\t\t\t\t\t\treverse: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\titemsPerPage: 10\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.groupID = this.$route.params.id;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.selectedMember = null;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`groups/${this.groupID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.group = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminGroupView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminGroupView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminGroupView.vue?vue&type=template&id=7d49d393&\"\nimport script from \"./AdminGroupView.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminGroupView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminTiers')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Tiers\")]),_c('p',[_vm._v(\" All users will be assigned to the default tier automatically. To grant a user access to another tier, select the user from the \"),_c('router-link',{attrs:{\"to\":\"/admin/users\"}},[_vm._v(\"users page\")]),_vm._v(\". \")],1),_c('grid-view',{attrs:{\"api-url\":\"admin/tiers\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"tiers\",\"item-name\":\"tier\",\"show-create\":\"\",\"create-route\":\"create\"}})],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'AdminTiers'\">\r\n\t\t\t<h2 class=\"mb-3\">Tiers</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tAll users will be assigned to the default tier automatically.\r\n\t\t\t\tTo grant a user access to another tier, select the user from the\r\n\t\t\t\t<router-link to=\"/admin/users\">users page</router-link>.\r\n\t\t\t</p>\r\n\r\n\t\t\t<grid-view api-url=\"admin/tiers\"\r\n\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t   collection-description=\"tiers\"\r\n\t\t\t\t\t   item-name=\"tier\"\r\n\t\t\t\t\t   show-create create-route=\"create\"></grid-view>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\r\n\texport default {\r\n\t\tname: 'AdminTiers',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true },\r\n\t\t\t\t\t\t{ key: 'description', sortable: true },\r\n\t\t\t\t\t\t{ key: 'isDefault', label: 'Default?', sortable: true, formatter: (value) => { return value ? 'Yes' : 'No' } },\r\n\t\t\t\t\t\t{ key: 'numUsers', label: '# Users', sortable: true, formatter: (value) => { return value === 0 ? '-' : this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t{ key: 'queuePriority', sortable: true, formatter: (value) => { return value === 'middle' ? 'higher' : (value === 'default' ? 'normal' : value) } },\r\n\t\t\t\t\t\t{ key: 'subbasinLimit', label: 'Max Subbasins', sortable: true, formatter: (value) => { return value === 0 ? '-' : this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t{ key: 'hruLimit', label: 'Max HRUs', sortable: true, formatter: (value) => { return value === 0 ? '-' : this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t{ key: 'taskLimit', label: 'Run Frequency', sortable: true },\r\n\t\t\t\t\t\t{ key: 'concurrencyLimit', label: 'Concurrently', sortable: true, formatter: (value) => { return value === 0 ? '-' : this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t{ key: 'datasetUploadLimit', label: 'Max Project Uploads', sortable: true }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'name',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminTiers.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminTiers.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminTiers.vue?vue&type=template&id=04123b4e&\"\nimport script from \"./AdminTiers.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTiers.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Edit Tier\")]),_c('admin-tier-form',{attrs:{\"is-update\":\"\",\"data\":_vm.data}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-4\"},model:{value:(_vm.tabIndex),callback:function ($$v) {_vm.tabIndex=$$v},expression:\"tabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Settings\"}},[_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),_c('b-form',[_c('b-form-group',{attrs:{\"label\":\"Name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.name)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.name)},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Description (optional)\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.form.description),callback:function ($$v) {_vm.$set(_vm.form, \"description\", $$v)},expression:\"form.description\"}})],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.isDefault),callback:function ($$v) {_vm.$set(_vm.form, \"isDefault\", $$v)},expression:\"form.isDefault\"}},[_vm._v(\"Make this the default tier for users\")])],1),_c('b-form-group',{staticClass:\"mb-5\"},[_c('b-checkbox',{model:{value:(_vm.form.hideFromDisplay),callback:function ($$v) {_vm.$set(_vm.form, \"hideFromDisplay\", $$v)},expression:\"form.hideFromDisplay\"}},[_vm._v(\"Hide this tier from the help display (tier for internal/dev. use)\")])],1),_c('p',[_c('strong',[_vm._v(\"For the fields below, enter 0 for unlimited.\")])]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Maximum number of subbasins per project\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.subbasinLimit)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.subbasinLimit)},model:{value:(_vm.form.subbasinLimit),callback:function ($$v) {_vm.$set(_vm.form, \"subbasinLimit\", $$v)},expression:\"form.subbasinLimit\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Maximum number of HRUs per project\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.hruLimit)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.hruLimit)},model:{value:(_vm.form.hruLimit),callback:function ($$v) {_vm.$set(_vm.form, \"hruLimit\", $$v)},expression:\"form.hruLimit\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Maximum number of runs\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.taskLimit)}},[_c('b-input-group',[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.taskLimit)},model:{value:(_vm.form.taskLimit),callback:function ($$v) {_vm.$set(_vm.form, \"taskLimit\", $$v)},expression:\"form.taskLimit\"}}),_c('b-input-group-append',[_c('b-form-select',{attrs:{\"options\":_vm.options.taskLimitIntervals},model:{value:(_vm.form.taskLimitInterval),callback:function ($$v) {_vm.$set(_vm.form, \"taskLimitInterval\", $$v)},expression:\"form.taskLimitInterval\"}})],1)],1)],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Maximum number of concurrent runs\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.concurrencyLimit)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.concurrencyLimit)},model:{value:(_vm.form.concurrencyLimit),callback:function ($$v) {_vm.$set(_vm.form, \"concurrencyLimit\", $$v)},expression:\"form.concurrencyLimit\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"Priority in queue\"}},[_c('b-form-select',{attrs:{\"options\":_vm.options.queuePriorities},model:{value:(_vm.form.queuePriority),callback:function ($$v) {_vm.$set(_vm.form, \"queuePriority\", $$v)},expression:\"form.queuePriority\"}})],1)],1)],1),_c('b-row',{staticClass:\"mt-4\"},[_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Maximum number of dataset uploads (offline project .mdb files). No unlimited value; a zero means no uploads allowed.\",\"label-class\":\"font-weight-bold\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.datasetUploadLimit)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.datasetUploadLimit)},model:{value:(_vm.form.datasetUploadLimit),callback:function ($$v) {_vm.$set(_vm.form, \"datasetUploadLimit\", $$v)},expression:\"form.datasetUploadLimit\"}})],1)],1)],1),_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',{staticClass:\"mt-4\"},[_c('p',[_c('strong',[_vm._v(\"Select datasets accessible to users in this tier:\")])]),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.form.datasets),callback:function ($$v) {_vm.$set(_vm.form, \"datasets\", $$v)},expression:\"form.datasets\"}},_vm._l((_vm.options.datasets),function(d,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":d.value}},[_vm._v(_vm._s(d.text))])],1)}),0)],1)]):_vm._e(),_c('div',{staticClass:\"mt-4\"},[_c('p',[_c('strong',[_vm._v(\"Select advanced features accessible to users in this tier:\")])]),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.form.featureList),callback:function ($$v) {_vm.$set(_vm.form, \"featureList\", $$v)},expression:\"form.featureList\"}},[_c('div',{staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":_vm.featureNames.batchProjects}},[_vm._v(\"Batch Projects (be sure to enable API key for each user)\")]),_c('b-form-checkbox',{attrs:{\"value\":_vm.featureNames.regionalProjects}},[_vm._v(\"Regional Projects (regions must be set up in the database)\")])],1)])],1)])],1)],1),(_vm.isUpdate && !_vm.data.isDefault)?_c('b-tab',{attrs:{\"title\":\"Users\"}},[_c('grid-view',{attrs:{\"api-url\":`admin/tiers/users/${_vm.data.id}`,\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"users\",\"item-name\":\"user\",\"edit-route\":\"/admin/users/\",\"edit-route-append\":false}})],1):_vm._e()],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[(_vm.tabIndex === 0)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving},nativeOn:{\"click\":function($event){return _vm.save.apply(null, arguments)}}}):_vm._e(),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.isUpdate && _vm.isAuthorized(_vm.roleNames.admin))?_c('b-button',{staticClass:\"ml-auto\",attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")]):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this tier? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<b-tabs v-model=\"tabIndex\" content-class=\"mt-4\" class=\"page-nav-tabs\">\r\n\t\t\t<b-tab title=\"Settings\">\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\t\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t\t<b-form>\r\n\t\t\t\t\t<b-form-group label=\"Name\" :invalid-feedback=\"requiredFeedback($v.form.name)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.name\" type=\"text\" autofocus :state=\"getValidState($v.form.name)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Description (optional)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.description\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group>\r\n\t\t\t\t\t\t<b-checkbox v-model=\"form.isDefault\">Make this the default tier for users</b-checkbox>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group class=\"mb-5\">\r\n\t\t\t\t\t\t<b-checkbox v-model=\"form.hideFromDisplay\">Hide this tier from the help display (tier for internal/dev. use)</b-checkbox>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\t<strong>For the fields below, enter 0 for unlimited.</strong>\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Maximum number of subbasins per project\" :invalid-feedback=\"requiredFeedback($v.form.subbasinLimit)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.subbasinLimit\" type=\"number\" :state=\"getValidState($v.form.subbasinLimit)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Maximum number of HRUs per project\" :invalid-feedback=\"requiredFeedback($v.form.hruLimit)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.hruLimit\" type=\"number\" :state=\"getValidState($v.form.hruLimit)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Maximum number of runs\" :invalid-feedback=\"requiredFeedback($v.form.taskLimit)\">\r\n\t\t\t\t\t\t\t\t<b-input-group>\r\n\t\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.taskLimit\" type=\"number\" :state=\"getValidState($v.form.taskLimit)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t<b-input-group-append>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select v-model=\"form.taskLimitInterval\" :options=\"options.taskLimitIntervals\"></b-form-select>\r\n\t\t\t\t\t\t\t\t\t</b-input-group-append>\r\n\t\t\t\t\t\t\t\t</b-input-group>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Maximum number of concurrent runs\" :invalid-feedback=\"requiredFeedback($v.form.concurrencyLimit)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.concurrencyLimit\" type=\"number\" :state=\"getValidState($v.form.concurrencyLimit)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md=\"6\">\r\n\t\t\t\t\t\t\t<b-form-group label=\"Priority in queue\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"form.queuePriority\" :options=\"options.queuePriorities\"></b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-row class=\"mt-4\">\r\n\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Maximum number of dataset uploads (offline project .mdb files). No unlimited value; a zero means no uploads allowed.\" label-class=\"font-weight-bold\" :invalid-feedback=\"requiredFeedback($v.form.datasetUploadLimit)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.datasetUploadLimit\" type=\"number\" :state=\"getValidState($v.form.datasetUploadLimit)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t\t\t\t<div v-if=\"!page.loading\" class=\"mt-4\">\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t<strong>Select datasets accessible to users in this tier:</strong>\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"form.datasets\" stacked>\r\n\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(d, i) in options.datasets\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"d.value\">{{d.text}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t<strong>Select advanced features accessible to users in this tier:</strong>\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"form.featureList\" stacked>\r\n\t\t\t\t\t\t\t\t<div class=\"item\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"featureNames.batchProjects\">Batch Projects (be sure to enable API key for each user)</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"featureNames.regionalProjects\">Regional Projects (regions must be set up in the database)</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-form>\r\n\t\t\t</b-tab>\r\n\t\t\t<b-tab title=\"Users\" v-if=\"isUpdate && !data.isDefault\">\r\n\t\t\t\t<grid-view :api-url=\"`admin/tiers/users/${data.id}`\"\r\n\t\t\t\t\t:fields=\"table.fields\"\r\n\t\t\t\t\t:default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\tcollection-description=\"users\"\r\n\t\t\t\t\titem-name=\"user\"\r\n\t\t\t\t\tedit-route=\"/admin/users/\" :edit-route-append=\"false\"></grid-view>\r\n\t\t\t</b-tab>\r\n\t\t</b-tabs>\r\n\r\n\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t<save-button v-if=\"tabIndex === 0\" :saving=\"page.saving\" class=\"mr-2\" @click.native=\"save\" />\r\n\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t<b-button v-if=\"isUpdate && isAuthorized(roleNames.admin)\" variant=\"danger\" @click=\"page.delete.show = true\" class=\"ml-auto\">Delete</b-button>\r\n\t\t</fixed-action-bar>\r\n\r\n\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tAre you sure you want to delete this tier?\r\n\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t</p>\r\n\r\n\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t</div>\r\n\t\t</b-modal>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminTierForm',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tprops: {\r\n\t\t\tisUpdate: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tdata: {\r\n\t\t\t\ttype: Object,\r\n\t\t\t\trequired: true\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\ttaskLimitIntervals: [\r\n\t\t\t\t\t\t{ value: 1, text: 'per hour' },\r\n\t\t\t\t\t\t{ value: 24, text: 'per day' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tqueuePriorities: [\r\n\t\t\t\t\t\t{ value: 'default', text: 'Normal' },\r\n\t\t\t\t\t\t{ value: 'middle', text: 'Higher' },\r\n\t\t\t\t\t\t{ value: 'highest', text: 'Highest' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tdatasets: []\r\n\t\t\t\t},\r\n\t\t\t\tform: this.data,\r\n\t\t\t\ttabIndex: 0,\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'userName', sortable: true },\r\n\t\t\t\t\t\t{ key: 'email', sortable: true },\r\n\t\t\t\t\t\t{ key: 'firstName', sortable: true },\r\n\t\t\t\t\t\t{ key: 'lastName', sortable: true },\r\n\t\t\t\t\t\t{ key: 'affiliation', sortable: true },\r\n\t\t\t\t\t\t{ key: 'location', sortable: true },\r\n\t\t\t\t\t\t{ key: 'expiration', label: 'Access Expiration', sortable: true, formatter: (value) => { return this.isNullOrEmpty(value) ? '' : moment(value).format('M/D/YYYY') } }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'userName',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tname: { required },\r\n\t\t\t\tsubbasinLimit: { required },\r\n\t\t\t\thruLimit: { required },\r\n\t\t\t\ttaskLimit: { required },\r\n\t\t\t\tconcurrencyLimit: { required },\r\n\t\t\t\tdatasetUploadLimit: { required },\n\t\t\t\thideFromDisplay: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('/datasets', this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.options.datasets = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tif (!this.isUpdate) {\r\n\t\t\t\t\t\t\tconst response = await this.$http.post('admin/tiers', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\t\tthis.$router.push({ name: 'AdminTiers' }).catch(err => {});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tconst response = await this.$http.put(`admin/tiers/${this.form.id}`, this.form, this.getTokenHeader());\r\n\t\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`admin/tiers/${this.form.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'AdminTiers' }).catch(err => {});\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminTierForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminTierForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminTierForm.vue?vue&type=template&id=2aa267fd&\"\nimport script from \"./AdminTierForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTierForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Edit Tier</h2>\r\n\r\n\t\t\t<admin-tier-form is-update :data=\"data\"></admin-tier-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport AdminTierForm from '@/views/admin/users/tiers/AdminTierForm';\r\n\r\n\texport default {\r\n\t\tname: 'AdminTierView',\r\n\t\tcomponents: {\r\n\t\t\tAdminTierForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttierID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.tierID = this.$route.params.id;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/tiers/${this.tierID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminTierView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminTierView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminTierView.vue?vue&type=template&id=abb67e3e&\"\nimport script from \"./AdminTierView.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTierView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Create a new tier\")]),_c('admin-tier-form',{attrs:{\"data\":_vm.data}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Create a new tier</h2>\r\n\r\n\t\t\t<admin-tier-form :data=\"data\"></admin-tier-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport AdminTierForm from '@/views/admin/users/tiers/AdminTierForm';\r\n\r\n\texport default {\r\n\t\tname: 'AdminTierCreate',\r\n\t\tcomponents: {\r\n\t\t\tAdminTierForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tqueuePriority: \"default\",\r\n\t\t\t\t\ttaskLimitInterval: 1\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\t/*this.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.tierID = this.$route.params.id;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/tiers/${this.tierID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;*/\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminTierCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminTierCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminTierCreate.vue?vue&type=template&id=025dfbdf&\"\nimport script from \"./AdminTierCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTierCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"User Categories\")]),_c('p',[_vm._v(\" Set the organization categories a user may choose from during registration. Drag and drop to sort. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-alert',{staticClass:\"border\",attrs:{\"variant\":\"light\",\"show\":_vm.categories.length < 1}},[_vm._v(\" There are no categories saved. Add one below. \")]),(_vm.categories.length > 0)?_c('draggable',{staticClass:\"list-group\",attrs:{\"element\":\"ul\"},model:{value:(_vm.categories),callback:function ($$v) {_vm.categories=$$v},expression:\"categories\"}},_vm._l((_vm.categories),function(element){return _c('li',{key:element,staticClass:\"list-group-item bg-light d-flex justify-content-between align-items-center\"},[_vm._v(\" \"+_vm._s(element)+\" \"),_c('font-awesome-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.right\",value:('Delete'),expression:\"'Delete'\",modifiers:{\"hover\":true,\"right\":true}}],staticClass:\"ml-auto text-danger pointer\",attrs:{\"icon\":['fas', 'times']},on:{\"click\":function($event){return _vm.remove(element)}}})],1)}),0):_vm._e(),_c('b-form-group',{staticClass:\"mt-4\",attrs:{\"label\":\"Add a category\"}},[_c('b-input-group',[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.newCategory),callback:function ($$v) {_vm.newCategory=$$v},expression:\"newCategory\"}}),_c('b-input-group-append',[_c('b-button',{attrs:{\"variant\":\"info\"},on:{\"click\":_vm.add}},[_vm._v(\"Add\")])],1)],1)],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving},nativeOn:{\"click\":function($event){return _vm.save.apply(null, arguments)}}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">User Categories</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tSet the organization categories a user may choose from during registration. Drag and drop to sort.\r\n\t\t\t</p>\r\n\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\n\t\t\t<b-alert variant=\"light\" :show=\"categories.length < 1\" class=\"border\">\n\t\t\t\tThere are no categories saved. Add one below.\n\t\t\t</b-alert>\r\n\t\t\t<draggable v-if=\"categories.length > 0\" class=\"list-group\" element=\"ul\" v-model=\"categories\">\r\n\t\t\t\t<li class=\"list-group-item bg-light d-flex justify-content-between align-items-center\" v-for=\"element in categories\" :key=\"element\">\r\n\t\t\t\t\t{{element}}\r\n\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'times']\" class=\"ml-auto text-danger pointer\" @click=\"remove(element)\" v-b-tooltip.hover.right=\"'Delete'\" />\r\n\t\t\t\t</li>\r\n\t\t\t</draggable>\r\n\r\n\t\t\t<b-form-group label=\"Add a category\" class=\"mt-4\">\n\t\t\t\t<b-input-group>\r\n\t\t\t\t\t<b-form-input v-model=\"newCategory\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t<b-input-group-append>\r\n\t\t\t\t\t\t<b-button variant=\"info\" @click=\"add\">Add</b-button>\r\n\t\t\t\t\t</b-input-group-append>\r\n\t\t\t\t</b-input-group>\t\t\t\t\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t<save-button :saving=\"page.saving\" @click.native=\"save\" class=\"mr-2\" />\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport draggable from 'vuedraggable';\r\n\r\n\texport default {\r\n\t\tname: 'AdminUserCategories',\r\n\t\tcomponents: {\r\n\t\t\tdraggable\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tsaveErrors: []\r\n\t\t\t\t},\n\t\t\t\tcategories: [],\n\t\t\t\tnewCategory: null\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\n\t\tmethods: {\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/users/categories`, this.getTokenHeader());\r\n\t\t\t\t\tthis.categories = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.post(`admin/users/categories`, this.categories, this.getTokenHeader());\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\tadd: function () {\r\n\t\t\t\tvar alreadyExists = this.categories.includes(this.newCategory);\r\n\t\t\t\tif (!this.isNullOrEmpty(this.newCategory) && !alreadyExists) {\r\n\t\t\t\t\tthis.categories.push(this.newCategory);\r\n\t\t\t\t\tthis.newCategory = null;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (alreadyExists)\r\n\t\t\t\t\tthis.newCategory = null;\r\n\t\t\t},\r\n\t\t\tremove: function (element) {\r\n\t\t\t\tthis.categories.splice(this.categories.indexOf(element), 1);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminUserCategories.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminUserCategories.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminUserCategories.vue?vue&type=template&id=e0871678&\"\nimport script from \"./AdminUserCategories.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminUserCategories.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Send an email to all users\")]),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Your email has been sent to the queue. Please allow users several minutes to get the email.\"}}),_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),_c('b-form',[_c('b-form-group',{attrs:{\"label\":\"Subject\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.subject)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.subject)},model:{value:(_vm.form.subject),callback:function ($$v) {_vm.$set(_vm.form, \"subject\", $$v)},expression:\"form.subject\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Email message\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.body)}},[_c('b-form-textarea',{attrs:{\"rows\":\"8\",\"state\":_vm.getValidState(_vm.$v.form.body)},model:{value:(_vm.$v.form.body.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.body, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.body.$model\"}})],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.form.bccSender.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.bccSender, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.bccSender.$model\"}},[_vm._v(\" BCC sender? \")])],1)],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving},nativeOn:{\"click\":function($event){return _vm.save.apply(null, arguments)}}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Send an email to all users</h2>\r\n\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"Your email has been sent to the queue. Please allow users several minutes to get the email.\" />\r\n\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t<b-form>\r\n\t\t\t\t<b-form-group label=\"Subject\" :invalid-feedback=\"requiredFeedback($v.form.subject)\">\r\n\t\t\t\t\t<b-form-input v-model=\"form.subject\" type=\"text\" autofocus :state=\"getValidState($v.form.subject)\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Email message\" :invalid-feedback=\"requiredFeedback($v.form.body)\">\r\n\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.form.body.$model\" rows=\"8\" :state=\"getValidState($v.form.body)\"></b-form-textarea>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.form.bccSender.$model\">\r\n\t\t\t\t\t\tBCC sender?\r\n\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t</b-form-group>\r\n\t\t\t</b-form>\r\n\r\n\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" @click.native=\"save\" />\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t</fixed-action-bar>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\n\r\n\texport default {\r\n\t\tname: 'AdminEmailUsers',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tsubject: '',\r\n\t\t\t\t\tbody: '',\n\t\t\t\t\tbccSender: false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tsubject: { required },\r\n\t\t\t\tbody: { required },\n\t\t\t\tbccSender: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post('admin/users/emailusers', this.form, this.getTokenHeader());\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\n\t\t\t\t\t\tthis.form.subject = '';\n\t\t\t\t\t\tthis.form.body = '';\n\t\t\t\t\t\tthis.form.bccSender = false;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminEmailUsers.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminEmailUsers.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminEmailUsers.vue?vue&type=template&id=39deaec0&\"\nimport script from \"./AdminEmailUsers.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminEmailUsers.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminErrors')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Feedback and error reports\")]),_c('grid-view',{attrs:{\"api-url\":\"admin/errorreports\",\"delete-api-url\":\"errorreports\",\"link-user-name\":\"\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"error reports\",\"item-name\":\"error report\"}})],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'AdminErrors'\">\r\n\t\t\t<h2 class=\"mb-3\">Feedback and error reports</h2>\r\n\r\n\t\t\t<grid-view api-url=\"admin/errorreports\" delete-api-url=\"errorreports\" link-user-name\r\n\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t   collection-description=\"error reports\"\r\n\t\t\t\t\t   item-name=\"error report\"></grid-view>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminErrors',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '', class: 'min' },\r\n\t\t\t\t\t\t{ key: 'reportStatus', label: 'Status', sortable: true },\r\n\t\t\t\t\t\t{ key: 'title', sortable: true },\r\n\t\t\t\t\t\t{ key: 'userName', sortable: true },\r\n\t\t\t\t\t\t{ key: 'project', sortable: true },\r\n\t\t\t\t\t\t{ key: 'scenario', sortable: true },\r\n\t\t\t\t\t\t{ key: 'dateSubmitted', sortable: true, formatter: (value) => { return moment(value).format('llll') } },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', class: 'min' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'dateSubmitted',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminErrors.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminErrors.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminErrors.vue?vue&type=template&id=12c42b8a&\"\nimport script from \"./AdminErrors.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminErrors.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Update feedback / error report\")]),_c('b-card',{staticClass:\"mb-4\",attrs:{\"bg-variant\":\"light\"}},[_c('b-card-text',[_vm._v(\" Submitted on \"+_vm._s(_vm._f(\"date\")(_vm.data.dateSubmitted))+\" by \"),_c('router-link',{attrs:{\"to\":`/admin/users/${_vm.data.userID}`}},[_vm._v(_vm._s(_vm.data.userName))]),(!_vm.isNullOrEmpty(_vm.data.project))?_c('div',[_vm._v(\" In reference to project \"),_c('router-link',{attrs:{\"to\":`/projects/${_vm.data.projectID}`}},[_vm._v(_vm._s(_vm.data.project))]),(!_vm.isNullOrEmpty(_vm.data.scenario))?_c('span',[_vm._v(\" scenario \"),_c('router-link',{attrs:{\"to\":`/projects/${_vm.data.projectID}/scenarios/${_vm.data.scenarioID}`}},[_vm._v(_vm._s(_vm.data.scenario))])],1):_vm._e()],1):_vm._e()],1)],1),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Report title\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.data.title),callback:function ($$v) {_vm.$set(_vm.data, \"title\", $$v)},expression:\"data.title\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Exception message\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"10\",\"readonly\":\"\"},model:{value:(_vm.data.exception),callback:function ($$v) {_vm.$set(_vm.data, \"exception\", $$v)},expression:\"data.exception\"}})],1),_c('b-form-group',{attrs:{\"label\":\"User comments\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"10\",\"readonly\":\"\"},model:{value:(_vm.data.userComments),callback:function ($$v) {_vm.$set(_vm.data, \"userComments\", $$v)},expression:\"data.userComments\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Report status\"}},[_c('b-form-select',{attrs:{\"options\":_vm.form.statusOptions},model:{value:(_vm.data.status),callback:function ($$v) {_vm.$set(_vm.data, \"status\", $$v)},expression:\"data.status\"}}),(!_vm.isNullOrEmpty(_vm.data.resolvedDate))?_c('small',[_vm._v(\" Resolved on \"+_vm._s(_vm._f(\"date\")(_vm.data.resolvedDate))+\" \")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":\"Resolved by\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.data.resolvedBy),callback:function ($$v) {_vm.$set(_vm.data, \"resolvedBy\", $$v)},expression:\"data.resolvedBy\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Developer comments\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"10\"},model:{value:(_vm.data.developerComments),callback:function ($$v) {_vm.$set(_vm.data, \"developerComments\", $$v)},expression:\"data.developerComments\"}})],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.emailUser),callback:function ($$v) {_vm.$set(_vm.form, \"emailUser\", $$v)},expression:\"form.emailUser\"}},[_vm._v(\"Email developer comments to user?\")])],1),(_vm.form.emailUser)?_c('b-form-group',{attrs:{\"label\":\"Copy email to (optional)\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.form.ccEmail),callback:function ($$v) {_vm.$set(_vm.form, \"ccEmail\", $$v)},expression:\"form.ccEmail\"}})],1):_vm._e()],1)],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),_c('b-button',{staticClass:\"ml-auto\",attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this error report? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Update feedback / error report</h2>\r\n\r\n\t\t\t<b-card bg-variant=\"light\" class=\"mb-4\">\r\n\t\t\t\t<b-card-text>\r\n\t\t\t\t\tSubmitted on {{data.dateSubmitted | date}} by\r\n\t\t\t\t\t<router-link :to=\"`/admin/users/${data.userID}`\">{{data.userName}}</router-link>\r\n\t\t\t\t\t<div v-if=\"!isNullOrEmpty(data.project)\">\r\n\t\t\t\t\t\tIn reference to project <router-link :to=\"`/projects/${data.projectID}`\">{{data.project}}</router-link>\r\n\t\t\t\t\t\t<span v-if=\"!isNullOrEmpty(data.scenario)\">\r\n\t\t\t\t\t\t\tscenario <router-link :to=\"`/projects/${data.projectID}/scenarios/${data.scenarioID}`\">{{data.scenario}}</router-link>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-card-text>\t\t\t\t\r\n\t\t\t</b-card>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Report title\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"data.title\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Exception message\">\r\n\t\t\t\t\t\t\t<b-form-textarea v-model=\"data.exception\" rows=\"10\" readonly></b-form-textarea>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"User comments\">\r\n\t\t\t\t\t\t\t<b-form-textarea v-model=\"data.userComments\" rows=\"10\" readonly></b-form-textarea>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<b-form-group label=\"Report status\">\r\n\t\t\t\t\t\t\t<b-form-select v-model=\"data.status\" :options=\"form.statusOptions\"></b-form-select>\r\n\t\t\t\t\t\t\t<small v-if=\"!isNullOrEmpty(data.resolvedDate)\">\r\n\t\t\t\t\t\t\t\tResolved on {{data.resolvedDate | date}}\r\n\t\t\t\t\t\t\t</small>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Resolved by\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"data.resolvedBy\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Developer comments\">\r\n\t\t\t\t\t\t\t<b-form-textarea v-model=\"data.developerComments\" rows=\"10\"></b-form-textarea>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<b-form-group>\r\n\t\t\t\t\t\t\t<b-checkbox v-model=\"form.emailUser\">Email developer comments to user?</b-checkbox>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Copy email to (optional)\" v-if=\"form.emailUser\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"form.ccEmail\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\t\t\t\t\r\n\r\n\t\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t<b-button variant=\"danger\" @click=\"page.delete.show = true\" class=\"ml-auto\">Delete</b-button>\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete this error report?\r\n\t\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'AdminErrorView',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\treportID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tdata: {},\r\n\t\t\t\tform: {\r\n\t\t\t\t\temailUser: false,\n\t\t\t\t\tccEmail: null,\r\n\t\t\t\t\tstatusOptions: [\r\n\t\t\t\t\t\t{ value: 'Submitted', text: 'Submitted' },\r\n\t\t\t\t\t\t{ value: 'Working', text: 'Working' },\r\n\t\t\t\t\t\t{ value: 'Resolved', text: 'Resolved' }\r\n\t\t\t\t\t]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.reportID = this.$route.params.id;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/errorreports/${this.reportID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\tid: this.data.id,\r\n\t\t\t\t\t\ttitle: this.data.title,\r\n\t\t\t\t\t\tmessage: this.data.message,\r\n\t\t\t\t\t\tstatus: this.data.status,\r\n\t\t\t\t\t\tdeveloperComments: this.data.developerComments,\r\n\t\t\t\t\t\tresolvedBy: this.data.resolvedBy,\r\n\t\t\t\t\t\temailUser: this.form.emailUser,\n\t\t\t\t\t\tccEmail: this.form.ccEmail\r\n\t\t\t\t\t};\r\n\t\t\t\t\tconst response = await this.$http.put(`admin/errorreports/${this.reportID}`, data, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tawait this.get();\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`errorreports/${this.reportID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.page.delete.show = false;\r\n\t\t\t\t\tthis.$router.push({ name: 'AdminErrorReports' }).catch(err => {});\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminErrorView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminErrorView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminErrorView.vue?vue&type=template&id=8c55aeee&\"\nimport script from \"./AdminErrorView.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminErrorView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminProjects')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Projects\")]),_c('p',[_vm._v(\" Projects may be copied to a new user, or the same user. To copy a project, find it in the table below then \"),_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],staticClass:\"ml-1 border-bottom text-info\",staticStyle:{\"cursor\":\"help\"},attrs:{\"title\":\"Click anywhere on the row except one of the icons or links\"}},[_vm._v(\" click on the row \")]),_vm._v(\" to select it. Once you have selected a row it will highlight in blue. Scroll to the top of the page if needed, then click the copy project button. \")]),(_vm.selectedProject !== null)?_c('div',[_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":\"\"}},[_c('p',[_vm._v(\" You have selected project \"),_c('strong',[_vm._v(_vm._s(_vm.selectedProject.name))]),_vm._v(\" assigned to user \"),_c('strong',[_vm._v(_vm._s(_vm.selectedProject.userName))]),_vm._v(\". \")]),_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){_vm.page.copy.show = true}}},[_vm._v(\"Copy Project\")])],1)],1):_vm._e(),_c('grid-view',{attrs:{\"api-url\":\"admin/projects\",\"use-filter\":\"\",\"allow-export\":\"\",\"export-url\":\"admin/exports/projects\",\"selectable\":\"\",\"delete-api-url\":\"projects\",\"link-user-name\":\"\",\"edit-route\":\"/projects/\",\"edit-route-append\":false,\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"projects\",\"item-name\":\"project\",\"extra-delete-message\":\"All scenarios and files for this project will be removed.\"},on:{\"selectionChanged\":_vm.rowSelectionChanged}}),_c('b-modal',{attrs:{\"title\":\"Copy project\"},model:{value:(_vm.page.copy.show),callback:function ($$v) {_vm.$set(_vm.page.copy, \"show\", $$v)},expression:\"page.copy.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.copy.errors}}),_c('p',[_vm._v(\" Copy this project to a new project. All scenarios and files will be copied. \")]),_c('b-form-group',{attrs:{\"label\":\"Provide a name for the new project\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"required\":\"\"},model:{value:(_vm.page.copy.name),callback:function ($$v) {_vm.$set(_vm.page.copy, \"name\", $$v)},expression:\"page.copy.name\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Assign this project to a different user by typing a user name below. Leave blank to use the same user as the original project.\"}},[_c('b-typeahead',{ref:\"usersTypeahead\",attrs:{\"data\":_vm.userNames,\"max-matches\":100},model:{value:(_vm.usersSearch),callback:function ($$v) {_vm.usersSearch=$$v},expression:\"usersSearch\"}})],1),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.copy.saving,\"text\":\"Copy Project\",\"variant\":\"success\"},nativeOn:{\"click\":function($event){return _vm.copyProject.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.copy.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'AdminProjects'\">\r\n\t\t\t<h2 class=\"mb-3\">Projects</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tProjects may be copied to a new user, or the same user. To copy a project,\r\n\t\t\t\tfind it in the table below then \r\n\t\t\t\t<span v-b-tooltip.hover.bottom title=\"Click anywhere on the row except one of the icons or links\" class=\"ml-1 border-bottom text-info\" style=\"cursor:help\">\r\n\t\t\t\t\tclick on the row\r\n\t\t\t\t</span> to select it.\r\n\t\t\t\tOnce you have selected a row it will highlight in blue. Scroll to the top of the page if needed, then click the copy project button.\r\n\t\t\t</p>\r\n\r\n\t\t\t<div v-if=\"selectedProject !== null\">\r\n\t\t\t\t<b-alert variant=\"info\" show>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tYou have selected project <strong>{{selectedProject.name}}</strong>\r\n\t\t\t\t\t\tassigned to user <strong>{{selectedProject.userName}}</strong>.\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t<b-button variant=\"primary\" @click=\"page.copy.show = true\">Copy Project</b-button>\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\r\n\t\t\t<grid-view api-url=\"admin/projects\" use-filter allow-export export-url=\"admin/exports/projects\"\r\n\t\t\t\t\t   selectable @selectionChanged=\"rowSelectionChanged\"\r\n\t\t\t\t\t   delete-api-url=\"projects\"\r\n\t\t\t\t\t   link-user-name\r\n\t\t\t\t\t   edit-route=\"/projects/\" :edit-route-append=\"false\"\r\n\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t   collection-description=\"projects\"\r\n\t\t\t\t\t   item-name=\"project\"\r\n\t\t\t\t\t   extra-delete-message=\"All scenarios and files for this project will be removed.\"></grid-view>\r\n\r\n\t\t\t<b-modal v-model=\"page.copy.show\" title=\"Copy project\">\r\n\t\t\t\t<error-list :errors=\"page.copy.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tCopy this project to a new project. All scenarios and files will be copied.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<b-form-group label=\"Provide a name for the new project\">\r\n\t\t\t\t\t<b-form-input v-model=\"page.copy.name\" type=\"text\" required></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Assign this project to a different user by typing a user name below. Leave blank to use the same user as the original project.\">\r\n\t\t\t\t\t<b-typeahead ref=\"usersTypeahead\"\r\n\t\t\t\t\t\t\t\t :data=\"userNames\"\r\n\t\t\t\t\t\t\t\t v-model=\"usersSearch\"\r\n\t\t\t\t\t\t\t\t :max-matches=\"100\">\r\n\t\t\t\t\t</b-typeahead>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.copy.saving\" @click.native=\"copyProject\" text=\"Copy Project\" variant=\"success\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.copy.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport _ from 'underscore';\r\n\r\n\texport default {\r\n\t\tname: 'AdminProjects',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\tcopy: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tname: ''\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t{ key: 'userName', sortable: true },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t{ key: 'dataset', sortable: false },\r\n\t\t\t\t\t\t{ key: 'endingSubbasin', label: 'Downstream ID', sortable: true },\r\n\t\t\t\t\t\t{ key: 'numSubbasins', label: 'Subbasins', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t{ key: 'numHrus', label: 'HRUs', sortable: false, formatter: (value) => { return this.numberWithCommas(value) } },\r\n\t\t\t\t\t\t{ key: 'totalArea', label: 'Area (sq. km.)', sortable: false, formatter: (value) => { return this.numberWithCommas(Number(value).toFixed(2)) } },\r\n\t\t\t\t\t\t{ key: 'numScenarios', label: 'Scenarios', sortable: false },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t},\r\n\t\t\t\tselectedProject: null,\r\n\t\t\t\tusersSearch: '',\r\n\t\t\t\tuserNames: []\r\n\t\t\t}\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\tusersSearch: _.debounce(function (query) { this.findUsers(query) }, 500)\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\trowSelectionChanged(items) {\r\n\t\t\t\tthis.log(items);\r\n\t\t\t\tif (items === null || items.length < 1) this.selectedProject = null;\r\n\t\t\t\telse {\r\n\t\t\t\t\tthis.selectedProject = items[0];\r\n\t\t\t\t\tthis.page.copy.name = this.selectedProject.name + ' (Copy)';\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync copyProject() {\r\n\t\t\t\tthis.page.copy.errors = [];\r\n\t\t\t\tthis.page.copy.saving = true;\r\n\r\n\t\t\t\tif (this.isNullOrEmpty(this.page.copy.name)) {\r\n\t\t\t\t\tthis.page.copy.errors.push('Please provide a name for the new scenario.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tname: this.page.copy.name,\r\n\t\t\t\t\t\t\tuserName: this.usersSearch\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tthis.log(data);\r\n\t\t\t\t\t\tconst response = await this.$http.post(`admin/projects/copy/${this.selectedProject.id}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ProjectView', params: { id: response.data }}).catch(err => {});\r\n\t\t\t\t\t\tthis.page.copy.show = false;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.copy.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.copy.saving = false;\r\n\t\t\t},\r\n\t\t\tasync findUsers(query) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`/admin/users/find/${query}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.userNames = response.data != '' ? response.data : [];\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.copy.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminProjects.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminProjects.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminProjects.vue?vue&type=template&id=0c33aaf7&\"\nimport script from \"./AdminProjects.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminProjects.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Scenarios\")]),_c('grid-view',{attrs:{\"api-url\":\"admin/projects/scenarios\",\"use-filter\":\"\",\"allow-export\":\"\",\"export-url\":\"admin/exports/scenarios\",\"delete-api-url\":\"scenarios\",\"link-user-name\":\"\",\"use-edit-route-pieces\":\"\",\"edit-route-pieces\":_vm.table.editRoutePieces,\"edit-route-append\":false,\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"scenarios\",\"item-name\":\"scenario\"}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<h2 class=\"mb-3\">Scenarios</h2>\r\n\r\n\t\t<grid-view api-url=\"admin/projects/scenarios\" use-filter allow-export export-url=\"admin/exports/scenarios\"\n\t\t\t\tdelete-api-url=\"scenarios\"\r\n\t\t\t\tlink-user-name\r\n\t\t\t\tuse-edit-route-pieces :edit-route-pieces=\"table.editRoutePieces\" :edit-route-append=\"false\"\r\n\t\t\t\t:fields=\"table.fields\"\r\n\t\t\t\t:default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\tcollection-description=\"scenarios\"\r\n\t\t\t\titem-name=\"scenario\"></grid-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminScenarios',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t{ key: 'project', sortable: true },\r\n\t\t\t\t\t\t{ key: 'userName', sortable: true },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t{ key: 'hasRun', label: 'Ran?', sortable: false, formatter: (value) => { return value === true ? 'Yes' : 'No' } },\r\n\t\t\t\t\t\t{ key: 'weatherDataset', label: 'Weather', sortable: false },\r\n\t\t\t\t\t\t{ key: 'startingSimulationDate', label: 'Start', sortable: false, formatter: (value) => { return moment(value).format('M/D/YYYY') } },\r\n\t\t\t\t\t\t{ key: 'endingSimulationDate', label: 'End', sortable: false, formatter: (value) => { return moment(value).format('M/D/YYYY') } },\r\n\t\t\t\t\t\t{ key: 'skipYears', label: 'Skip', sortable: false },\r\n\t\t\t\t\t\t{ key: 'printSetting', label: 'Print', sortable: false },\r\n\t\t\t\t\t\t{ key: 'swatVersion', label: 'SWAT', sortable: false },\r\n\t\t\t\t\t\t{ key: 'delete', label: '', sortable: false, class: 'min' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50,\n\t\t\t\t\teditRoutePieces: [\n\t\t\t\t\t\t{ type: 'text', value: 'projects' },\n\t\t\t\t\t\t{ type: 'key', value: 'projectID' },\n\t\t\t\t\t\t{ type: 'text', value: 'scenarios' },\n\t\t\t\t\t\t{ type: 'key', value: 'id' }\n\t\t\t\t\t]\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminScenarios.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminScenarios.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminScenarios.vue?vue&type=template&id=c3ac5562&\"\nimport script from \"./AdminScenarios.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminScenarios.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminDatasets')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Datasets\")]),_c('p',[_vm._v(\" Datasets are SWAT model data from which users may create projects. Depending on their \"),_c('router-link',{attrs:{\"to\":\"/admin/users/tiers\"}},[_vm._v(\"tier settings\")]),_vm._v(\", users may upload their own datasets. By default, user-uploaded datasets may be used by the user only. The user may share the dataset with their groups, or request it be made publicly available by contacting administrators. \")],1),_c('p',[_vm._v(\" Browse existing datasets below. Select one to activate/deactivate it, set its permissions, or edit its name and description. \")]),_c('grid-view',{attrs:{\"api-url\":\"admin/datasets\",\"use-filter\":\"\",\"link-user-name\":\"\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"datasets\",\"item-name\":\"dataset\"}})],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'AdminDatasets'\">\r\n\t\t\t<h2 class=\"mb-3\">Datasets</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tDatasets are SWAT model data from which users may create projects.\r\n\t\t\t\tDepending on their <router-link to=\"/admin/users/tiers\">tier settings</router-link>, users may upload their own datasets.\r\n\t\t\t\tBy default, user-uploaded datasets may be used by the user only. The user may share the dataset with their groups,\r\n\t\t\t\tor request it be made publicly available by contacting administrators.\r\n\t\t\t</p>\r\n\t\t\t<p>\r\n\t\t\t\tBrowse existing datasets below. Select one to activate/deactivate it, set its permissions, or edit its name and description.\r\n\t\t\t</p>\r\n\r\n\t\t\t<grid-view api-url=\"admin/datasets\" use-filter link-user-name\r\n\t\t\t\t\t:fields=\"table.fields\"\r\n\t\t\t\t\t:default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\tcollection-description=\"datasets\"\r\n\t\t\t\t\titem-name=\"dataset\"></grid-view>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminDatasets',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'isActive', label: 'Active?', sortable: true, formatter: (value) => { return value ? '✓' : '' }, tdClass: 'text-success font-weight-bold text-center', thClass: 'text-center' },\r\n\t\t\t\t\t\t{ key: 'optionOrder', label: 'Order', sortable: true },\r\n\t\t\t\t\t\t{ key: 'optionGroup', label: 'Grouping', sortable: true },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true },\r\n\t\t\t\t\t\t{ key: 'attribution', label: 'Credit', sortable: true },\r\n\t\t\t\t\t\t{ key: 'version', sortable: true, class: 'text-center' },\r\n\t\t\t\t\t\t{ key: 'isUserSubmitted', label: 'User-submitted?', sortable: true, formatter: (value) => { return value ? '✓' : '' }, tdClass: 'text-success font-weight-bold text-center', thClass: 'text-center' },\r\n\t\t\t\t\t\t{ key: 'createdOn', sortable: true, formatter: (value) => { return moment(value).format('YYYY') == '0001' ? '' : moment(value).format('llll') } },\r\n\t\t\t\t\t\t{ key: 'userName', label: 'Created By', sortable: true }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: '',\r\n\t\t\t\t\treverse: false,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminDatasets.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminDatasets.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminDatasets.vue?vue&type=template&id=eb24dd3a&\"\nimport script from \"./AdminDatasets.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminDatasets.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[(_vm.data.importID && _vm.data.importStatus.isRunning)?_c('div',{staticClass:\"max-w-400 py-5 mx-auto text-center\"},[_c('b-progress',{attrs:{\"value\":_vm.data.importStatus.progress.percent,\"max\":100,\"animated\":\"\"}}),_c('p',[_vm._v(\" \"+_vm._s(_vm.data.importStatus.progress.message)+\" \")])],1):(_vm.data.importID && _vm.data.importStatus.hasError)?_c('div',[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"There was an error importing this dataset\")]),_c('p',[_vm._v(\" The user encountered the following error trying to import this dataset. \")]),_c('p',[_c('b-form-textarea',{attrs:{\"rows\":\"8\"},model:{value:(_vm.data.importStatus.exceptionMessage),callback:function ($$v) {_vm.$set(_vm.data.importStatus, \"exceptionMessage\", $$v)},expression:\"data.importStatus.exceptionMessage\"}})],1)]):_c('div',[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Dataset details\")]),_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":_vm.data.publicRequest && _vm.data.publicRequest.status === 'Submitted'}},[_vm._v(\" The creator of this dataset has requested it be made available to the public. Click the permissions tab below to review the request. \")]),_c('b-tabs',{staticClass:\"page-nav-tabs\",attrs:{\"content-class\":\"mt-4\"},model:{value:(_vm.tabIndex),callback:function ($$v) {_vm.tabIndex=$$v},expression:\"tabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Overview\"}},[_c('div',{staticClass:\"lead text-center mb-4\"},[(_vm.data.isUserSubmitted)?_c('span',[_vm._v(\" The \"),_c('strong',[_vm._v(_vm._s(_vm.data.name))]),_vm._v(\" dataset was uploaded \"+_vm._s(_vm._f(\"date\")(_vm.data.createdOn))+\" by \"),_c('router-link',{attrs:{\"to\":`/admin/users/${_vm.data.userID}`}},[_vm._v(_vm._s(_vm.data.userName))]),_vm._v(\". \"),(!_vm.data.isPublic && _vm.data.accessibility === 'User')?_c('span',[_c('br'),_vm._v(\"This dataset is not shared. Its availability is limited to its creator. \")]):_vm._e(),(!_vm.data.isPublic && _vm.data.accessibility === 'Group' && _vm.data.groups.length > 0)?_c('span',[_c('br'),_vm._v(\"This dataset is not available publicly, but is shared with the following groups: \"),_vm._l((_vm.data.groups),function(g,i){return _c('span',{key:i},[_c('router-link',{attrs:{\"to\":`/admin/users/groups/${g.value}`}},[_vm._v(_vm._s(g.text))]),(i < _vm.data.groups.length - 1)?_c('span',[_vm._v(\", \")]):_vm._e()],1)}),_vm._v(\". \")],2):_vm._e()],1):_c('span',[_c('strong',[_vm._v(_vm._s(_vm.data.name))]),_vm._v(\" is a system-wide dataset \")]),(_vm.data.tiers.length > 0 && _vm.data.isPublic)?_c('span',[(_vm.data.isUserSubmitted)?_c('span',[_c('br'),_vm._v(\"It is \")]):_vm._e(),_vm._v(\" available to all users in \"),_vm._l((_vm.data.tiers),function(t,i){return _c('span',{key:i},[_c('router-link',{attrs:{\"to\":`/admin/users/tiers/${t.value}`}},[_vm._v(_vm._s(t.text))]),(i < _vm.data.tiers.length - 1)?_c('span',[_vm._v(\", \")]):_vm._e()],1)}),_vm._v(\". \")],2):_vm._e()]),_c('b-row',{attrs:{\"align-h\":\"center\"}},[_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],class:`stat-box ${_vm.activeClass} text-white mb-2`,attrs:{\"title\":\"An active status means the dataset can be used for new projects\"}},[_c('div',{staticClass:\"title\"},[_vm._v(\"Status: \"+_vm._s(_vm.data.isActive ? 'Active' : 'Inactive'))]),_c('div',{staticClass:\"value\"},[(_vm.data.isActive)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'check']}}):_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}})],1)])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-info text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"Subbasins\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.counts.subbasins,0)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"stat-box bg-primary text-white mb-2\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"HRUs\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.counts.hrus,0)))])])]),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('div',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"stat-box bg-dark text-white mb-2\",attrs:{\"title\":\"Number of projects using this dataset\"}},[_c('div',{staticClass:\"title\"},[_vm._v(\"Projects\")]),_c('div',{staticClass:\"value\"},[_vm._v(_vm._s(_vm._f(\"number\")(_vm.data.counts.projects,0)))])])])],1)],1),_c('b-tab',{attrs:{\"title\":\"Settings\"}},[_c('b-form',[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form-group',{staticClass:\"bg-light py-3 px-2 mb-4 border\"},[_c('b-form-checkbox',{attrs:{\"switch\":\"\"},model:{value:(_vm.$v.data.isActive.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.isActive, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.isActive.$model\"}},[_vm._v(\" \"+_vm._s(_vm.data.isActive ? 'Active — new projects using this dataset are allowed' : 'Inactive — no new projects can be created using this dataset, but old projects already using it are still functional')+\" \")])],1),_c('b-form-group',{attrs:{\"label\":\"Name of the dataset (fewer than 50 characters)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.name)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.data.name)},model:{value:(_vm.$v.data.name.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.name, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.name.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Description (fewer than 200 characters)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.description)}},[_c('b-form-textarea',{attrs:{\"rows\":\"4\",\"state\":_vm.getValidState(_vm.$v.data.description)},model:{value:(_vm.$v.data.description.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.description, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.description.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Agency, organization, or person to whom this dataset should be credited (optional)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.attribution)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.data.attribution)},model:{value:(_vm.$v.data.attribution.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.attribution, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.attribution.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Version\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.version)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.version)},model:{value:(_vm.$v.data.version.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.version, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.version.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Default SWAT version for new scenarios using this dataset\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.defaultSWATVersionID)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.swatVersions,\"state\":_vm.getValidState(_vm.$v.data.defaultSWATVersionID)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null}},[_vm._v(\"System default (latest version)\")])]},proxy:true}]),model:{value:(_vm.$v.data.defaultSWATVersionID.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.defaultSWATVersionID, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.defaultSWATVersionID.$model\"}})],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.allowOnlyDefaultSWATVersion.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.allowOnlyDefaultSWATVersion, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.allowOnlyDefaultSWATVersion.$model\"}},[_vm._v(\" Allow projects to only use the SWAT version selected above? \")])],1),_c('hr',{staticClass:\"mt-5 mb-4\"}),_c('h4',[_vm._v(\"Advanced\")]),_c('p',{staticClass:\"text-danger\"},[_vm._v(\" Warning: changing the fields below could break the system. Please use caution when changing values. \")]),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Grouping\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.optionGroup)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.data.optionGroup)},model:{value:(_vm.$v.data.optionGroup.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.optionGroup, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.optionGroup.$model\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Display order\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.optionOrder)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.data.optionOrder)},model:{value:(_vm.$v.data.optionOrder.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.optionOrder, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.optionOrder.$model\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Config. File Path (relative)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.configPath)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.data.configPath)},model:{value:(_vm.$v.data.configPath.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.configPath, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.configPath.$model\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Weather File Path (relative)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.weatherPath)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.data.weatherPath)},model:{value:(_vm.$v.data.weatherPath.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.weatherPath, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.weatherPath.$model\"}})],1)],1)],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.isUserSubmitted.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.isUserSubmitted, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.isUserSubmitted.$model\"}},[_vm._v(\" Show as user submitted? In the project creation page, this will list the dataset under user submitted grouping. (If left unchecked, dataset must be public.) \")])],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.loadByDefault.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.loadByDefault, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.loadByDefault.$model\"}},[_vm._v(\" Load map of entire dataset area when selected? Recommended for small, user-submitted datasets, but not large, country-sized system datasets. \")])],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Minimum Latitude\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.minLat)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.minLat)},model:{value:(_vm.$v.data.minLat.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.minLat, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.minLat.$model\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Maximum Latitude\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.maxLat)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.maxLat)},model:{value:(_vm.$v.data.maxLat.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.maxLat, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.maxLat.$model\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Minimum Longitude\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.minLon)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.minLon)},model:{value:(_vm.$v.data.minLon.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.minLon, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.minLon.$model\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Maximum Longitude\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.maxLon)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.maxLon)},model:{value:(_vm.$v.data.maxLon.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.maxLon, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.maxLon.$model\"}})],1)],1)],1),_c('b-form-group',{staticClass:\"my-3\",attrs:{\"label\":\"Boundary GeoJson\",\"description\":\"JSON format. Contact developer for instructions.\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"5\",\"state\":_vm.getValidState(_vm.$v.data.outline)},model:{value:(_vm.$v.data.outline.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.outline, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.outline.$model\"}})],1),_c('hr',{staticClass:\"my-4\"}),_c('p',{staticClass:\"mt-4\"},[_vm._v(\" Restrict curve number values so they never exceed the limits below, despite user changes. Leave blank to allow any curve number values. \")]),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Minimum curve number\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.minCn2)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.minCn2)},model:{value:(_vm.$v.data.minCn2.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.minCn2, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.minCn2.$model\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":\"Maximum curve number\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.maxCn2)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.maxCn2)},model:{value:(_vm.$v.data.maxCn2.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.maxCn2, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.maxCn2.$model\"}})],1)],1)],1),_c('hr',{staticClass:\"my-4\"}),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.restrictSelection.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.restrictSelection, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.restrictSelection.$model\"}},[_vm._v(\" Enable subbasin restriction to a certain area? Note: developer will need to set the selectable subbasins. \")])],1),_c('b-form-group',{attrs:{\"label\":\"Message to user when clicking outside selectable area\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.restrictionMessage)}},[_c('b-form-textarea',{attrs:{\"rows\":\"4\",\"state\":_vm.getValidState(_vm.$v.data.restrictionMessage)},model:{value:(_vm.$v.data.restrictionMessage.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.restrictionMessage, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.restrictionMessage.$model\"}})],1),_c('hr',{staticClass:\"my-4\"}),_c('b-form-group',{attrs:{\"label\":\"Form's default HRU reduction area (km2) - uses 1km2 if not specified\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.defaultHruThreshold)},model:{value:(_vm.$v.data.defaultHruThreshold.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.defaultHruThreshold, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.defaultHruThreshold.$model\"}})],1),_c('p',{staticClass:\"mt-4\"},[_vm._v(\" If the dataset has ICLUS (Integrated Climate and Land Use Scenarios) files, include the required HRU threshold below. Leave blank to disable ICLUS for the dataset. \")]),_c('b-form-group',{attrs:{\"label\":\"ICLUS HRU reduction area (km2)\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.data.iclusHruThreshold)},model:{value:(_vm.$v.data.iclusHruThreshold.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.iclusHruThreshold, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.iclusHruThreshold.$model\"}})],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.useSharedWeatherDirectoryForIclus.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.useSharedWeatherDirectoryForIclus, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.useSharedWeatherDirectoryForIclus.$model\"}},[_vm._v(\" Use shared weather directory for ICLUS data location? \")])],1),_c('hr',{staticClass:\"my-4\"}),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.includeModflow.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.includeModflow, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.includeModflow.$model\"}},[_vm._v(\" Include MODFLOW process when running simulations? Files will need to be configured under \"),_c('code',[_vm._v(\"{dataDirectory}/config/modflow/{datasetID}\")]),_vm._v(\". \")])],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.allowGisApiAccess.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.allowGisApiAccess, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.allowGisApiAccess.$model\"}},[_vm._v(\" Allow projects to download GIS files? This is only functional for USA HUC v2 data. \")])],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.allowApiAccess.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.allowApiAccess, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.allowApiAccess.$model\"}},[_vm._v(\" Allow API access to dataset? \")])],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.allowSqliteEditorTables.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.allowSqliteEditorTables, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.allowSqliteEditorTables.$model\"}},[_vm._v(\" Allow writing SWAT editor tables in SQLite format? \")])],1),_c('b-form-group',{staticClass:\"my-4\"},[_c('b-form-checkbox',{model:{value:(_vm.$v.data.hideFromHelpTable.$model),callback:function ($$v) {_vm.$set(_vm.$v.data.hideFromHelpTable, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.data.hideFromHelpTable.$model\"}},[_vm._v(\" Hide from tier access table in help page? \")])],1),_c('hr',{staticClass:\"my-4\"}),_c('b-form-group',{attrs:{\"label\":\"Scenario calibration data text\"}},[_c('tinymce-editor',{attrs:{\"api-key\":_vm.tinymce.api,\"init\":_vm.tinymce.init},model:{value:(_vm.data.calibrationPageText),callback:function ($$v) {_vm.$set(_vm.data, \"calibrationPageText\", $$v)},expression:\"data.calibrationPageText\"}})],1)],1)],1),_c('b-tab',{attrs:{\"title\":\"Permissions\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"sharedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":!_vm.data.isUserSubmitted && _vm.data.isPublic && _vm.share.accessibility !== 'Public'}},[_vm._v(\" Warning: changing the share permissions means it will no longer be accessible to all users. This is not recommended for system-wide datasets. \")]),(_vm.data.publicRequest && _vm.data.publicRequest.status === 'Submitted')?_c('div',[_c('p',[_vm._v(\" The creator of this dataset would like it to made available to all users. To approve the request and make the dataset publicly available, select all users from the drop down below then check the tiers which should have access to the dataset. To deny the request, leave the share settings as is (creator or groups) and check deny request below. You may optionally send a message to the user regarding your decision. Click save changes when done. \")]),_c('b-form-group',{attrs:{\"label\":`Message from ${_vm.data.userName}`}},[_c('b-form-textarea',{attrs:{\"rows\":\"3\",\"readonly\":\"\"},model:{value:(_vm.data.publicRequest.userMessage),callback:function ($$v) {_vm.$set(_vm.data.publicRequest, \"userMessage\", $$v)},expression:\"data.publicRequest.userMessage\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Message to user (optional)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.share.adminMessage)}},[_c('b-form-textarea',{attrs:{\"rows\":\"3\",\"state\":_vm.getValidState(_vm.$v.share.adminMessage)},model:{value:(_vm.$v.share.adminMessage.$model),callback:function ($$v) {_vm.$set(_vm.$v.share.adminMessage, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.share.adminMessage.$model\"}})],1),_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.$v.share.deny.$model),callback:function ($$v) {_vm.$set(_vm.$v.share.deny, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.share.deny.$model\"}},[_vm._v(\"Deny this request?\")])],1),_c('hr',{staticClass:\"my-4\"})],1):_vm._e(),_c('b-form-group',{staticClass:\"mb-4\",attrs:{\"label\":\"Share this dataset with:\"}},[_c('b-form-select',{attrs:{\"options\":_vm.options.share},model:{value:(_vm.$v.share.accessibility.$model),callback:function ($$v) {_vm.$set(_vm.$v.share.accessibility, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.share.accessibility.$model\"}})],1),(_vm.share.accessibility === 'Group')?_c('div',[_c('p',[_vm._v(\" Select groups that will have access to this dataset: \")]),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.$v.share.groups.$model),callback:function ($$v) {_vm.$set(_vm.$v.share.groups, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.share.groups.$model\"}},_vm._l((_vm.options.groups),function(g,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":g.value}},[_vm._v(_vm._s(g.text))])],1)}),0)],1),(_vm.data.isUserSubmitted)?_c('p',{staticClass:\"mt-4\"},[_vm._v(\" Note: we recommend letting the user who created the dataset manage the groups to which it is shared. \")]):_vm._e()]):_vm._e(),(_vm.share.accessibility === 'Public')?_c('div',[_c('p',[_vm._v(\" Select user tiers that will have access to this dataset: \")]),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.$v.share.tiers.$model),callback:function ($$v) {_vm.$set(_vm.$v.share.tiers, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.share.tiers.$model\"}},_vm._l((_vm.options.tiers),function(g,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":g.value}},[_vm._v(_vm._s(g.text))])],1)}),0)],1)]):_vm._e(),(_vm.data.publicRequest && _vm.data.publicRequest.status !== 'Submitted')?_c('div',[_c('hr',{staticClass:\"my-4\"}),(_vm.data.publicRequest.status === 'Approved')?_c('div',[_c('p',[_vm._v(\" This dataset was \"),_c('strong',{staticClass:\"text-success\"},[_vm._v(\"approved\")]),_vm._v(\" for public use by \"+_vm._s(_vm.data.publicRequest.reviewedBy)+\" on \"+_vm._s(_vm._f(\"date\")(_vm.data.publicRequest.reviewedOn))+\". \")])]):_vm._e(),(_vm.data.publicRequest.status === 'Denied')?_c('div',[_c('p',[_vm._v(\" This dataset was \"),_c('strong',{staticClass:\"text-danger\"},[_vm._v(\"denied\")]),_vm._v(\" public usage by \"+_vm._s(_vm.data.publicRequest.reviewedBy)+\" on \"+_vm._s(_vm._f(\"date\")(_vm.data.publicRequest.reviewedOn))+\". \")])]):_vm._e(),_c('b-form-group',{attrs:{\"label\":\"User's request\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"3\",\"readonly\":\"\"},model:{value:(_vm.data.publicRequest.userMessage),callback:function ($$v) {_vm.$set(_vm.data.publicRequest, \"userMessage\", $$v)},expression:\"data.publicRequest.userMessage\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Administrator's response\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"3\",\"readonly\":\"\"},model:{value:(_vm.data.publicRequest.adminMessage),callback:function ($$v) {_vm.$set(_vm.data.publicRequest, \"adminMessage\", $$v)},expression:\"data.publicRequest.adminMessage\"}})],1)],1):_vm._e()],1),_c('b-tab',{attrs:{\"title\":\"Weather Options\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"sharedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('p',[_vm._v(\" Select weather datasets available for this dataset. CAREFUL: data must be named according to the dataset's subbasin names. Recommended developer change only. \")]),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.$v.selectedWeather.$model),callback:function ($$v) {_vm.$set(_vm.$v.selectedWeather, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.selectedWeather.$model\"}},_vm._l((_vm.options.weather),function(g,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":g.value}},[_vm._v(_vm._s(g.text))])],1)}),0)],1)],1)],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[(_vm.tabIndex === _vm.settingsTab)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.data.$anyDirty},nativeOn:{\"click\":function($event){return _vm.saveSettings.apply(null, arguments)}}}):_vm._e(),(_vm.tabIndex === _vm.permissionsTab)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.share.$anyDirty},nativeOn:{\"click\":function($event){return _vm.savePermissions.apply(null, arguments)}}}):_vm._e(),(_vm.tabIndex === _vm.weatherTab)?_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":!_vm.$v.selectedWeather.$anyDirty},nativeOn:{\"click\":function($event){return _vm.saveWeather.apply(null, arguments)}}}):_vm._e(),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.isAuthorized(_vm.roleNames.admin))?_c('b-button',{staticClass:\"ml-auto\",attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")]):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this dataset? This action is permanent and cannot be undone. ALL projects and data will be deleted. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<div v-if=\"data.importID && data.importStatus.isRunning\" class=\"max-w-400 py-5 mx-auto text-center\">\r\n\t\t\t\t<b-progress :value=\"data.importStatus.progress.percent\" :max=\"100\" animated></b-progress>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t{{data.importStatus.progress.message}}\r\n\t\t\t\t</p>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"data.importID && data.importStatus.hasError\">\r\n\t\t\t\t<h2 class=\"mb-4\">There was an error importing this dataset</h2>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tThe user encountered the following error trying to import this dataset.\r\n\t\t\t\t</p>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t<b-form-textarea v-model=\"data.importStatus.exceptionMessage\" rows=\"8\"></b-form-textarea>\r\n\t\t\t\t</p>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<h2 class=\"mb-4\">Dataset details</h2>\r\n\r\n\t\t\t\t<b-alert variant=\"warning\" :show=\"data.publicRequest && data.publicRequest.status === 'Submitted'\">\r\n\t\t\t\t\tThe creator of this dataset has requested it be made available to the public.\r\n\t\t\t\t\tClick the permissions tab below to review the request.\r\n\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t<b-tabs v-model=\"tabIndex\" content-class=\"mt-4\" class=\"page-nav-tabs\">\r\n\t\t\t\t\t<b-tab title=\"Overview\">\r\n\t\t\t\t\t\t<div class=\"lead text-center mb-4\">\r\n\t\t\t\t\t\t\t<span v-if=\"data.isUserSubmitted\">\r\n\t\t\t\t\t\t\t\tThe <strong>{{data.name}}</strong> dataset was uploaded {{data.createdOn | date}} by\r\n\t\t\t\t\t\t\t\t<router-link :to=\"`/admin/users/${data.userID}`\">{{data.userName}}</router-link>.\r\n\t\t\t\t\t\t\t\t<span v-if=\"!data.isPublic && data.accessibility === 'User'\">\r\n\t\t\t\t\t\t\t\t\t<br />This dataset is not shared. Its availability is limited to its creator.\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t<span v-if=\"!data.isPublic && data.accessibility === 'Group' && data.groups.length > 0\">\r\n\t\t\t\t\t\t\t\t\t<br />This dataset is not available publicly, but is shared with the following groups:\r\n\t\t\t\t\t\t\t\t\t<span v-for=\"(g, i) in data.groups\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t<router-link :to=\"`/admin/users/groups/${g.value}`\">{{g.text}}</router-link><span v-if=\"i < data.groups.length - 1\">, </span>\r\n\t\t\t\t\t\t\t\t\t</span>.\r\n\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t<span v-else>\r\n\t\t\t\t\t\t\t\t<strong>{{data.name}}</strong> is a system-wide dataset\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t<span v-if=\"data.tiers.length > 0 && data.isPublic\">\r\n\t\t\t\t\t\t\t\t<span v-if=\"data.isUserSubmitted\"><br />It is </span>\r\n\t\t\t\t\t\t\t\tavailable to all users in\r\n\t\t\t\t\t\t\t\t<span v-for=\"(t, i) in data.tiers\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<router-link :to=\"`/admin/users/tiers/${t.value}`\">{{t.text}}</router-link><span v-if=\"i < data.tiers.length - 1\">, </span>\r\n\t\t\t\t\t\t\t\t</span>.\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<b-row align-h=\"center\">\r\n\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t<div :class=\"`stat-box ${activeClass} text-white mb-2`\" v-b-tooltip.hover title=\"An active status means the dataset can be used for new projects\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"title\">Status: {{ data.isActive ? 'Active' : 'Inactive' }}</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"value\">\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon v-if=\"data.isActive\" :icon=\"['fas', 'check']\" />\r\n\t\t\t\t\t\t\t\t\t\t<font-awesome-icon v-else :icon=\"['fas', 'times']\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t<div class=\"stat-box bg-info text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"title\">Subbasins</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.counts.subbasins |  number(0) }}</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t<div class=\"stat-box bg-primary text-white mb-2\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"title\">HRUs</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.counts.hrus |  number(0) }}</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col cols=\"6\" lg=\"3\">\r\n\t\t\t\t\t\t\t\t<div class=\"stat-box bg-dark text-white mb-2\" v-b-tooltip.hover title=\"Number of projects using this dataset\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"title\">Projects</div>\r\n\t\t\t\t\t\t\t\t\t<div class=\"value\">{{ data.counts.projects |  number(0) }}</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t<b-tab title=\"Settings\">\r\n\t\t\t\t\t\t<b-form>\r\n\t\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"bg-light py-3 px-2 mb-4 border\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.isActive.$model\" switch>\r\n\t\t\t\t\t\t\t\t\t{{ data.isActive ? 'Active &mdash; new projects using this dataset are allowed' : 'Inactive &mdash; no new projects can be created using this dataset, but old projects already using it are still functional' }}\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Name of the dataset (fewer than 50 characters)\" :invalid-feedback=\"requiredFeedback($v.data.name)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.name.$model\" type=\"text\" autofocus :state=\"getValidState($v.data.name)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Description (fewer than 200 characters)\" :invalid-feedback=\"requiredFeedback($v.data.description)\">\r\n\t\t\t\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.data.description.$model\" rows=\"4\" :state=\"getValidState($v.data.description)\"></b-form-textarea>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Agency, organization, or person to whom this dataset should be credited (optional)\" :invalid-feedback=\"requiredFeedback($v.data.attribution)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.attribution.$model\" type=\"text\" :state=\"getValidState($v.data.attribution)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Version\" :invalid-feedback=\"requiredFeedback($v.data.version)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.version.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.version)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Default SWAT version for new scenarios using this dataset\" :invalid-feedback=\"requiredFeedback($v.data.defaultSWATVersionID)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.data.defaultSWATVersionID.$model\" :options=\"options.swatVersions\" :state=\"getValidState($v.data.defaultSWATVersionID)\">\r\n\t\t\t\t\t\t\t\t\t<template #first>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-select-option :value=\"null\">System default (latest version)</b-form-select-option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.allowOnlyDefaultSWATVersion.$model\">\r\n\t\t\t\t\t\t\t\t\tAllow projects to only use the SWAT version selected above?\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<hr class=\"mt-5 mb-4\" />\r\n\r\n\t\t\t\t\t\t\t<h4>Advanced</h4>\r\n\r\n\t\t\t\t\t\t\t<p class=\"text-danger\">\r\n\t\t\t\t\t\t\t\tWarning: changing the fields below could break the system.\r\n\t\t\t\t\t\t\t\tPlease use caution when changing values.\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Grouping\" :invalid-feedback=\"requiredFeedback($v.data.optionGroup)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.optionGroup.$model\" type=\"text\" :state=\"getValidState($v.data.optionGroup)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Display order\" :invalid-feedback=\"requiredFeedback($v.data.optionOrder)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.optionOrder.$model\" type=\"number\" :state=\"getValidState($v.data.optionOrder)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Config. File Path (relative)\" :invalid-feedback=\"requiredFeedback($v.data.configPath)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.configPath.$model\" type=\"text\" :state=\"getValidState($v.data.configPath)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Weather File Path (relative)\" :invalid-feedback=\"requiredFeedback($v.data.weatherPath)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.weatherPath.$model\" type=\"text\" :state=\"getValidState($v.data.weatherPath)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.isUserSubmitted.$model\">\r\n\t\t\t\t\t\t\t\t\tShow as user submitted? In the project creation page, this will list the dataset under user submitted grouping.\r\n\t\t\t\t\t\t\t\t\t(If left unchecked, dataset must be public.)\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.loadByDefault.$model\">\r\n\t\t\t\t\t\t\t\t\tLoad map of entire dataset area when selected?\r\n\t\t\t\t\t\t\t\t\tRecommended for small, user-submitted datasets, but not large, country-sized system datasets.\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Minimum Latitude\" :invalid-feedback=\"requiredFeedback($v.data.minLat)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.minLat.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.minLat)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Maximum Latitude\" :invalid-feedback=\"requiredFeedback($v.data.maxLat)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.maxLat.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.maxLat)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Minimum Longitude\" :invalid-feedback=\"requiredFeedback($v.data.minLon)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.minLon.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.minLon)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Maximum Longitude\" :invalid-feedback=\"requiredFeedback($v.data.maxLon)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.maxLon.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.maxLon)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Boundary GeoJson\" description=\"JSON format. Contact developer for instructions.\" class=\"my-3\">\r\n\t\t\t\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.data.outline.$model\" rows=\"5\" :state=\"getValidState($v.data.outline)\"></b-form-textarea>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t\t\t<p class=\"mt-4\">\r\n\t\t\t\t\t\t\t\tRestrict curve number values so they never exceed the limits below, despite user changes.\r\n\t\t\t\t\t\t\t\tLeave blank to allow any curve number values.\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Minimum curve number\" :invalid-feedback=\"requiredFeedback($v.data.minCn2)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.minCn2.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.minCn2)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Maximum curve number\" :invalid-feedback=\"requiredFeedback($v.data.maxCn2)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.maxCn2.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.maxCn2)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.restrictSelection.$model\">\r\n\t\t\t\t\t\t\t\t\tEnable subbasin restriction to a certain area? Note: developer will need to set the selectable subbasins.\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Message to user when clicking outside selectable area\" :invalid-feedback=\"requiredFeedback($v.data.restrictionMessage)\">\r\n\t\t\t\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.data.restrictionMessage.$model\" rows=\"4\" :state=\"getValidState($v.data.restrictionMessage)\"></b-form-textarea>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Form's default HRU reduction area (km2) - uses 1km2 if not specified\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.defaultHruThreshold.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.defaultHruThreshold)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<p class=\"mt-4\">\r\n\t\t\t\t\t\t\t\tIf the dataset has ICLUS (Integrated Climate and Land Use Scenarios) files, include the required HRU threshold below.\r\n\t\t\t\t\t\t\t\tLeave blank to disable ICLUS for the dataset.\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"ICLUS HRU reduction area (km2)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.data.iclusHruThreshold.$model\" type=\"number\" step=\"any\" :state=\"getValidState($v.data.iclusHruThreshold)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.useSharedWeatherDirectoryForIclus.$model\">\r\n\t\t\t\t\t\t\t\t\tUse shared weather directory for ICLUS data location?\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.includeModflow.$model\">\r\n\t\t\t\t\t\t\t\t\tInclude MODFLOW process when running simulations?\r\n\t\t\t\t\t\t\t\t\tFiles will need to be configured under <code>{dataDirectory}/config/modflow/{datasetID}</code>.\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.allowGisApiAccess.$model\">\r\n\t\t\t\t\t\t\t\t\tAllow projects to download GIS files?\r\n\t\t\t\t\t\t\t\t\tThis is only functional for USA HUC v2 data.\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.allowApiAccess.$model\">\r\n\t\t\t\t\t\t\t\t\tAllow API access to dataset?\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.allowSqliteEditorTables.$model\">\r\n\t\t\t\t\t\t\t\t\tAllow writing SWAT editor tables in SQLite format?\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group class=\"my-4\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.data.hideFromHelpTable.$model\">\r\n\t\t\t\t\t\t\t\t\tHide from tier access table in help page?\r\n\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Scenario calibration data text\">\r\n\t\t\t\t\t\t\t\t<tinymce-editor :api-key=\"tinymce.api\" v-model=\"data.calibrationPageText\" :init=\"tinymce.init\"></tinymce-editor>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t<b-tab title=\"Permissions\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t\t\t<success-alert ref=\"sharedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t\t<b-alert variant=\"warning\" :show=\"!data.isUserSubmitted && data.isPublic && share.accessibility !== 'Public'\">\r\n\t\t\t\t\t\t\tWarning: changing the share permissions\r\n\t\t\t\t\t\t\tmeans it will no longer be accessible to all users. This is not\r\n\t\t\t\t\t\t\trecommended for system-wide datasets.\r\n\t\t\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t\t\t<div v-if=\"data.publicRequest && data.publicRequest.status === 'Submitted'\">\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tThe creator of this dataset would like it to made available to all users.\r\n\t\t\t\t\t\t\t\tTo approve the request and make the dataset publicly\r\n\t\t\t\t\t\t\t\tavailable, select all users from the drop down below then check\r\n\t\t\t\t\t\t\t\tthe tiers which should have access to the dataset.\r\n\t\t\t\t\t\t\t\tTo deny the request, leave the share settings as is (creator or groups)\r\n\t\t\t\t\t\t\t\tand check deny request below.\r\n\t\t\t\t\t\t\t\tYou may optionally send a message to the user regarding your decision.\r\n\t\t\t\t\t\t\t\tClick save changes when done.\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t<b-form-group :label=\"`Message from ${data.userName}`\">\r\n\t\t\t\t\t\t\t\t<b-form-textarea v-model=\"data.publicRequest.userMessage\" rows=\"3\" readonly></b-form-textarea>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Message to user (optional)\" :invalid-feedback=\"requiredFeedback($v.share.adminMessage)\">\r\n\t\t\t\t\t\t\t\t<b-form-textarea v-model.trim=\"$v.share.adminMessage.$model\" rows=\"3\" :state=\"getValidState($v.share.adminMessage)\"></b-form-textarea>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<b-form-group>\r\n\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.share.deny.$model\">Deny this request?</b-form-checkbox>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<hr class=\"my-4\" />\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<b-form-group label=\"Share this dataset with:\" class=\"mb-4\">\r\n\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.share.accessibility.$model\" :options=\"options.share\"></b-form-select>\r\n\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t<div v-if=\"share.accessibility === 'Group'\">\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tSelect groups that will have access to this dataset:\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model.trim=\"$v.share.groups.$model\" stacked>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(g, i) in options.groups\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"g.value\">{{g.text}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<p v-if=\"data.isUserSubmitted\" class=\"mt-4\">\r\n\t\t\t\t\t\t\t\tNote: we recommend letting the user who created the dataset manage the\r\n\t\t\t\t\t\t\t\tgroups to which it is shared.\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<div v-if=\"share.accessibility === 'Public'\">\r\n\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\tSelect user tiers that will have access to this dataset:\r\n\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model.trim=\"$v.share.tiers.$model\" stacked>\r\n\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(g, i) in options.tiers\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"g.value\">{{g.text}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<div v-if=\"data.publicRequest && data.publicRequest.status !== 'Submitted'\">\r\n\t\t\t\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"data.publicRequest.status === 'Approved'\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tThis dataset was <strong class=\"text-success\">approved</strong>\r\n\t\t\t\t\t\t\t\t\tfor public use by {{data.publicRequest.reviewedBy}}\r\n\t\t\t\t\t\t\t\t\ton {{data.publicRequest.reviewedOn | date}}.\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-if=\"data.publicRequest.status === 'Denied'\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tThis dataset was <strong class=\"text-danger\">denied</strong>\r\n\t\t\t\t\t\t\t\t\tpublic usage by {{data.publicRequest.reviewedBy}}\r\n\t\t\t\t\t\t\t\t\ton {{data.publicRequest.reviewedOn | date}}.\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<b-form-group label=\"User's request\">\r\n\t\t\t\t\t\t\t\t<b-form-textarea v-model=\"data.publicRequest.userMessage\" rows=\"3\" readonly></b-form-textarea>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Administrator's response\">\r\n\t\t\t\t\t\t\t\t<b-form-textarea v-model=\"data.publicRequest.adminMessage\" rows=\"3\" readonly></b-form-textarea>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t\t<b-tab title=\"Weather Options\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t\t\t<success-alert ref=\"sharedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tSelect weather datasets available for this dataset. CAREFUL: data must be named according to the dataset's subbasin names.\n\t\t\t\t\t\t\tRecommended developer change only.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t<b-form-checkbox-group v-model.trim=\"$v.selectedWeather.$model\" stacked>\r\n\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(g, i) in options.weather\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"g.value\">{{g.text}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-tab>\r\n\t\t\t\t</b-tabs>\r\n\r\n\t\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t<save-button v-if=\"tabIndex === settingsTab\" @click.native=\"saveSettings\" :saving=\"page.saving\" class=\"mr-2\" :disabled=\"!$v.data.$anyDirty\" />\r\n\t\t\t\t\t<save-button v-if=\"tabIndex === permissionsTab\" @click.native=\"savePermissions\" :saving=\"page.saving\" class=\"mr-2\" :disabled=\"!$v.share.$anyDirty\" />\r\n\t\t\t\t\t<save-button v-if=\"tabIndex === weatherTab\" @click.native=\"saveWeather\" :saving=\"page.saving\" class=\"mr-2\" :disabled=\"!$v.selectedWeather.$anyDirty\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\r\n\t\t\t\t\t<b-button variant=\"danger\" class=\"ml-auto\"\r\n\t\t\t\t\t\t\t  v-if=\"isAuthorized(roleNames.admin)\"\r\n\t\t\t\t\t\t\t  @click=\"page.delete.show = true\">Delete</b-button>\r\n\t\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\tAre you sure you want to delete this dataset?\r\n\t\t\t\t\t\tThis action is permanent and cannot be undone.\n\t\t\t\t\t\tALL projects and data will be deleted.\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-modal>\r\n\t\t\t</div>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport Editor from '@tinymce/tinymce-vue';\r\n\timport { required, requiredIf, maxLength, between } from 'vuelidate/lib/validators';\r\n\timport _ from 'lodash';\r\n\r\n\texport default {\r\n\t\tname: 'AdminDatasetView',\r\n\t\tcomponents: {\r\n\t\t\t'tinymce-editor': Editor\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tdatasetID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tisActive: false,\r\n\t\t\t\t\tname: null,\r\n\t\t\t\t\tdescription: null,\r\n\t\t\t\t\tattribution: null,\r\n\t\t\t\t\tversion: 1,\r\n\t\t\t\t\timportStatus: {\r\n\t\t\t\t\t\tisRunning: false,\r\n\t\t\t\t\t\thasError: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcounts: {},\r\n\t\t\t\t\ttiers: [],\n\t\t\t\t\tisUserSubmitted: false,\n\t\t\t\t\toptionOrder: 0,\n\t\t\t\t\toptionGroup: null,\n\t\t\t\t\trestrictSelection: false,\n\t\t\t\t\trestrictionMessage: null,\n\t\t\t\t\tdefaultSWATVersionID: null,\n\t\t\t\t\tallowOnlyDefaultSWATVersion: false,\n\t\t\t\t\tallowGisApiAccess: false,\n\t\t\t\t\tallowApiAccess: false,\n\t\t\t\t\tincludeModflow: false,\n\t\t\t\t\toutline: null,\n\t\t\t\t\ticlusHruThreshold: null,\n\t\t\t\t\tuseSharedWeatherDirectoryForIclus: false,\n\t\t\t\t\tdefaultHruThreshold: null,\n\t\t\t\t\tallowSqliteEditorTables: false,\n\t\t\t\t\tconfigPath: null,\n\t\t\t\t\tweatherPath: null,\n\t\t\t\t\tcalibrationPageText: null,\n\t\t\t\t\thideFromHelpTable: false\r\n\t\t\t\t},\r\n\t\t\t\ttabIndex: 0,\r\n\t\t\t\tsettingsTab: 1,\r\n\t\t\t\tpermissionsTab: 2,\r\n\t\t\t\tweatherTab: 3,\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tshare: [\r\n\t\t\t\t\t\t{ value: 'User', text: 'Creator only' },\r\n\t\t\t\t\t\t{ value: 'Group', text: 'Selected groups' },\r\n\t\t\t\t\t\t{ value: 'Public', text: 'All users in selected tiers' }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tgroups: [],\r\n\t\t\t\t\ttiers: [],\n\t\t\t\t\tswatVersions: [],\n\t\t\t\t\tweather: []\r\n\t\t\t\t},\r\n\t\t\t\tshare: {\r\n\t\t\t\t\taccessibility: null,\r\n\t\t\t\t\tgroups: [],\r\n\t\t\t\t\ttiers: [],\r\n\t\t\t\t\tdeny: false,\r\n\t\t\t\t\tadminMessage: null\r\n\t\t\t\t},\n\t\t\t\tselectedWeather: [],\r\n\t\t\t\ttinymce: {\r\n\t\t\t\t\tapi: 'umc6fcf2lmc4vpzyrqb2jfcr2slzvqb94kk4ac6wl757gx5b',\r\n\t\t\t\t\tinit: {\r\n\t\t\t\t\t\theight: 400,\r\n\t\t\t\t\t\tmenubar: false,\r\n\t\t\t\t\t\tplugins: [\r\n\t\t\t\t\t\t\t'advlist autolink lists link image charmap print preview anchor',\r\n\t\t\t\t\t\t\t'searchreplace visualblocks code fullscreen',\r\n\t\t\t\t\t\t\t'insertdatetime media table paste code help wordcount'\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\ttoolbar: 'undo redo | formatselect | bold italic underline | link unlink | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | removeformat | code',\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tdata: {\r\n\t\t\t\tisActive: {},\r\n\t\t\t\tname: {\r\n\t\t\t\t\trequired: requiredIf(function () { return this.tabIndex == this.settingsTab; }),\r\n\t\t\t\t\tmaxLength: maxLength(50)\r\n\t\t\t\t},\r\n\t\t\t\tdescription: {\r\n\t\t\t\t\tmaxLength: maxLength(200)\r\n\t\t\t\t},\r\n\t\t\t\tattribution: {\r\n\t\t\t\t\tmaxLength: maxLength(100)\r\n\t\t\t\t},\r\n\t\t\t\tversion: { required: requiredIf(function () { return this.tabIndex == this.settingsTab; }) },\r\n\t\t\t\tminLat: {\r\n\t\t\t\t\trequired: requiredIf(function () { return this.tabIndex == this.settingsTab; }),\r\n\t\t\t\t\tbetween: between(-180, 180)\r\n\t\t\t\t},\r\n\t\t\t\tmaxLat: {\r\n\t\t\t\t\trequired: requiredIf(function () { return this.tabIndex == this.settingsTab; }),\r\n\t\t\t\t\tbetween: between(-180, 180)\r\n\t\t\t\t},\r\n\t\t\t\tminLon: {\r\n\t\t\t\t\trequired: requiredIf(function () { return this.tabIndex == this.settingsTab; }),\r\n\t\t\t\t\tbetween: between(-180, 180)\r\n\t\t\t\t},\r\n\t\t\t\tmaxLon: {\r\n\t\t\t\t\trequired: requiredIf(function () { return this.tabIndex == this.settingsTab; }),\r\n\t\t\t\t\tbetween: between(-180, 180)\r\n\t\t\t\t},\r\n\t\t\t\tminCn2: {},\r\n\t\t\t\tmaxCn2: {},\r\n\t\t\t\tloadByDefault: {},\n\t\t\t\tisUserSubmitted: {},\n\t\t\t\toptionOrder: { required },\n\t\t\t\toptionGroup: {},\n\t\t\t\trestrictSelection: {},\n\t\t\t\trestrictionMessage: {},\n\t\t\t\tdefaultSWATVersionID: {},\n\t\t\t\tallowOnlyDefaultSWATVersion: {},\n\t\t\t\tallowGisApiAccess: {},\n\t\t\t\tallowApiAccess: {},\n\t\t\t\tincludeModflow: {},\n\t\t\t\toutline: {},\n\t\t\t\ticlusHruThreshold: {},\n\t\t\t\tuseSharedWeatherDirectoryForIclus: {},\n\t\t\t\tdefaultHruThreshold: {},\n\t\t\t\tallowSqliteEditorTables: {},\n\t\t\t\tconfigPath: {},\n\t\t\t\tweatherPath: {},\n\t\t\t\tcalibrationPageText: {},\n\t\t\t\thideFromHelpTable: {}\r\n\t\t\t},\r\n\t\t\tshare: {\r\n\t\t\t\taccessibility: {},\r\n\t\t\t\tgroups: {},\r\n\t\t\t\ttiers: {},\r\n\t\t\t\tdeny: {},\r\n\t\t\t\tadminMessage: {}\r\n\t\t\t},\n\t\t\tselectedWeather: {}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.datasetID = this.$route.params.id;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/datasets/${this.datasetID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data.dataset;\r\n\t\t\t\t\tthis.options.groups = response.data.groups;\r\n\t\t\t\t\tthis.options.tiers = response.data.tiers;\r\n\t\t\t\t\tthis.options.swatVersions = response.data.swatVersions;\r\n\t\t\t\t\t\r\n\t\t\t\t\tthis.share.accessibility = this.data.accessibility;\r\n\t\t\t\t\tthis.share.groups = this.data.groupIDs;\r\n\t\t\t\t\tthis.share.tiers = this.data.tierIDs;\n\n\t\t\t\t\tthis.options.weather = response.data.weather.options;\n\t\t\t\t\tthis.selectedWeather = response.data.weather.datasets;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync saveSettings() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tid: this.datasetID,\r\n\t\t\t\t\t\t\tisActive: this.data.isActive,\r\n\t\t\t\t\t\t\tname: this.data.name,\r\n\t\t\t\t\t\t\tdescription: this.data.description,\r\n\t\t\t\t\t\t\tattribution: this.data.attribution,\r\n\t\t\t\t\t\t\tversion: this.data.version,\r\n\t\t\t\t\t\t\tloadByDefault: this.data.loadByDefault,\r\n\t\t\t\t\t\t\tmaxLat: this.data.maxLat,\r\n\t\t\t\t\t\t\tminLat: this.data.minLat,\r\n\t\t\t\t\t\t\tmaxLon: this.data.maxLon,\r\n\t\t\t\t\t\t\tminLon: this.data.minLon,\r\n\t\t\t\t\t\t\tmaxCn2: this.data.maxCn2,\r\n\t\t\t\t\t\t\tminCn2: this.data.minCn2,\n\t\t\t\t\t\t\tisUserSubmitted: this.data.isUserSubmitted,\n\t\t\t\t\t\t\toptionOrder: this.data.optionOrder,\n\t\t\t\t\t\t\toptionGroup: this.data.optionGroup,\n\t\t\t\t\t\t\trestrictSelection: this.data.restrictSelection,\n\t\t\t\t\t\t\trestrictionMessage: this.data.restrictionMessage,\n\t\t\t\t\t\t\tdefaultSWATVersionID: this.data.defaultSWATVersionID,\n\t\t\t\t\t\t\tallowOnlyDefaultSWATVersion: this.data.allowOnlyDefaultSWATVersion,\n\t\t\t\t\t\t\tallowGisApiAccess: this.data.allowGisApiAccess,\n\t\t\t\t\t\t\tallowApiAccess: this.data.allowApiAccess,\n\t\t\t\t\t\t\tincludeModflow: this.data.includeModflow,\n\t\t\t\t\t\t\toutline: this.data.outline,\n\t\t\t\t\t\t\ticlusHruThreshold: this.data.iclusHruThreshold,\n\t\t\t\t\t\t\tuseSharedWeatherDirectoryForIclus: this.data.useSharedWeatherDirectoryForIclus,\n\t\t\t\t\t\t\tdefaultHruThreshold: this.data.defaultHruThreshold,\n\t\t\t\t\t\t\tallowSqliteEditorTables: this.data.allowSqliteEditorTables,\n\t\t\t\t\t\t\tconfigPath: this.data.configPath,\n\t\t\t\t\t\t\tweatherPath: this.data.weatherPath,\n\t\t\t\t\t\t\tcalibrationPageText: this.data.calibrationPageText,\n\t\t\t\t\t\t\thideFromHelpTable: this.data.hideFromHelpTable\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tawait this.$http.put(`admin/datasets/${this.datasetID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync savePermissions() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.put(`admin/datasets/share/${this.datasetID}`, this.share, this.getTokenHeader());\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.sharedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync saveWeather() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlet data = {\n\t\t\t\t\t\t\tweatherDatasets: this.selectedWeather\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tconst response = await this.$http.put(`admin/datasets/weather/${this.datasetID}`, data, this.getTokenHeader());\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t\tthis.$refs.sharedAlert.startAlert();\r\n\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.delete(`admin/datasets/${this.datasetID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'AdminDatasets' }).catch(err => { });\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tactiveClass() {\r\n\t\t\t\treturn this.data.isActive ? 'bg-success' : 'bg-danger';\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminDatasetView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminDatasetView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminDatasetView.vue?vue&type=template&id=2d49e5e8&\"\nimport script from \"./AdminDatasetView.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminDatasetView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminWebsiteText')?_c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Website text\")]),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":\"\"}},[_vm._v(\" Please be cautious editing this page. In most situations, it is better to contact the developer to make any style/html changes regarding the text below. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"Site name/acronym\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.data.siteName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.data.siteName)},model:{value:(_vm.data.siteName),callback:function ($$v) {_vm.$set(_vm.data, \"siteName\", $$v)},expression:\"data.siteName\"}})],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Long name\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.data.siteLongName),callback:function ($$v) {_vm.$set(_vm.data, \"siteLongName\", $$v)},expression:\"data.siteLongName\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Description\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.data.siteNameDescription),callback:function ($$v) {_vm.$set(_vm.data, \"siteNameDescription\", $$v)},expression:\"data.siteNameDescription\"}})],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Home page introduction paragraph\"}},[_c('tinymce-editor',{attrs:{\"api-key\":_vm.tinymce.api,\"init\":_vm.tinymce.init},model:{value:(_vm.data.homePageIntro),callback:function ($$v) {_vm.$set(_vm.data, \"homePageIntro\", $$v)},expression:\"data.homePageIntro\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Home page main text\"}},[_c('tinymce-editor',{attrs:{\"api-key\":_vm.tinymce.api,\"init\":_vm.tinymce.init},model:{value:(_vm.data.homePageText),callback:function ($$v) {_vm.$set(_vm.data, \"homePageText\", $$v)},expression:\"data.homePageText\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Home page 'how it works' lists\"}},[_c('tinymce-editor',{attrs:{\"api-key\":_vm.tinymce.api,\"init\":_vm.tinymce.init},model:{value:(_vm.data.homePageWorkLists),callback:function ($$v) {_vm.$set(_vm.data, \"homePageWorkLists\", $$v)},expression:\"data.homePageWorkLists\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Footer\"}},[_c('tinymce-editor',{attrs:{\"api-key\":_vm.tinymce.api,\"init\":_vm.tinymce.init},model:{value:(_vm.data.footer),callback:function ($$v) {_vm.$set(_vm.data, \"footer\", $$v)},expression:\"data.footer\"}})],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'AdminWebsiteText'\">\r\n\t\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t\t<h2 class=\"mb-4\">Website text</h2>\r\n\r\n\t\t\t\t<b-alert variant=\"info\" show>\r\n\t\t\t\t\tPlease be cautious editing this page.\r\n\t\t\t\t\tIn most situations, it is better to contact the developer to make any style/html changes regarding the\r\n\t\t\t\t\ttext below.\r\n\t\t\t\t</b-alert>\r\n\r\n\t\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t\t<b-form-group label=\"Site name/acronym\" :invalid-feedback=\"requiredFeedback($v.data.siteName)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"data.siteName\" type=\"text\" autofocus :state=\"getValidState($v.data.siteName)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Long name\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"data.siteLongName\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Description\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"data.siteNameDescription\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Home page introduction paragraph\">\r\n\t\t\t\t\t\t<tinymce-editor :api-key=\"tinymce.api\" v-model=\"data.homePageIntro\" :init=\"tinymce.init\"></tinymce-editor>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Home page main text\">\r\n\t\t\t\t\t\t<tinymce-editor :api-key=\"tinymce.api\" v-model=\"data.homePageText\" :init=\"tinymce.init\"></tinymce-editor>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Home page 'how it works' lists\">\r\n\t\t\t\t\t\t<tinymce-editor :api-key=\"tinymce.api\" v-model=\"data.homePageWorkLists\" :init=\"tinymce.init\"></tinymce-editor>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Footer\">\r\n\t\t\t\t\t\t<tinymce-editor :api-key=\"tinymce.api\" v-model=\"data.footer\" :init=\"tinymce.init\"></tinymce-editor>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" />\r\n\t\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t\t</fixed-action-bar>\r\n\t\t\t\t</b-form>\r\n\t\t\t</page-authorization-container>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\n\timport Editor from '@tinymce/tinymce-vue';\n\r\n\texport default {\r\n\t\tname: 'AdminWebsiteText',\n\t\tcomponents: {\r\n\t\t\t'tinymce-editor': Editor\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tsaveErrors: []\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\n\t\t\t\t\tappName: '',\n\t\t\t\t\tsiteName: '',\n\t\t\t\t\tsiteLongName: null,\n\t\t\t\t\tsiteNameDescription: null,\n\t\t\t\t\thomePageIntro: null,\n\t\t\t\t\thomePageText: null,\n\t\t\t\t\thomePageWorkLists: null,\n\t\t\t\t\tfooter: null,\n\t\t\t\t\thelpPageText: null\n\t\t\t\t},\n\t\t\t\ttinymce: {\n\t\t\t\t\tapi: 'umc6fcf2lmc4vpzyrqb2jfcr2slzvqb94kk4ac6wl757gx5b',\n\t\t\t\t\tinit: {\n\t\t\t\t\t\theight: 400,\r\n\t\t\t\t\t\tmenubar: false,\r\n\t\t\t\t\t\tplugins: [\r\n\t\t\t\t\t\t\t'advlist autolink lists link image charmap print preview anchor',\r\n\t\t\t\t\t\t\t'searchreplace visualblocks code fullscreen',\r\n\t\t\t\t\t\t\t'insertdatetime media table paste code help wordcount'\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\ttoolbar: 'undo redo | formatselect | bold italic underline | link unlink | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | removeformat | code',\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\n\t\tvalidations: {\n\t\t\tdata: {\n\t\t\t\tsiteName: { required }\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('admin/websitetext', this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\n\t\t\tasync save() {\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst response = await this.$http.post('admin/websitetext', this.data, this.getTokenHeader());\n\t\t\t\t\t\tthis.log(response.data);\n\t\t\t\t\t\tthis.$v.$reset();\n\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWebsiteText.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWebsiteText.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminWebsiteText.vue?vue&type=template&id=35cbe90d&\"\nimport script from \"./AdminWebsiteText.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminWebsiteText.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(_vm._s(_vm.pageName)+\" page custom text\")]),_c('p',[_vm._v(\"Leave blank to use default text.\")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-group',[_c('tinymce-editor',{attrs:{\"api-key\":_vm.tinymce.api,\"init\":_vm.tinymce.init},model:{value:(_vm.data.text),callback:function ($$v) {_vm.$set(_vm.data, \"text\", $$v)},expression:\"data.text\"}})],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">{{pageName}} page custom text</h2>\r\n\r\n\t\t\t<p>Leave blank to use default text.</p>\r\n\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<b-form-group>\r\n\t\t\t\t\t<tinymce-editor :api-key=\"tinymce.api\" v-model=\"data.text\" :init=\"tinymce.init\"></tinymce-editor>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport Editor from '@tinymce/tinymce-vue';\r\n\r\n\texport default {\r\n\t\tname: 'AdminWebsiteTextPage',\r\n\t\tcomponents: {\r\n\t\t\t'tinymce-editor': Editor\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpageName: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tsaveErrors: []\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\ttext: null\r\n\t\t\t\t},\r\n\t\t\t\ttinymce: {\r\n\t\t\t\t\tapi: 'umc6fcf2lmc4vpzyrqb2jfcr2slzvqb94kk4ac6wl757gx5b',\r\n\t\t\t\t\tinit: {\r\n\t\t\t\t\t\theight: 600,\r\n\t\t\t\t\t\tmenubar: false,\r\n\t\t\t\t\t\tplugins: [\r\n\t\t\t\t\t\t\t'advlist autolink lists link image charmap print preview anchor',\r\n\t\t\t\t\t\t\t'searchreplace visualblocks code fullscreen',\r\n\t\t\t\t\t\t\t'insertdatetime media table paste code help wordcount'\r\n\t\t\t\t\t\t],\r\n\t\t\t\t\t\ttoolbar: 'undo redo | formatselect | bold italic underline | link unlink | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | removeformat | code',\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.pageName = this.$route.params.id;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/websitetextpage/${this.pageName}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\n\n\t\t\t\t\tif (this.isNullOrEmpty(this.data.text) && this.pageName === 'Help') this.data.text = this.siteText.helpPageText;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\n\t\t\t\ttry {\n\t\t\t\t\tlet data = { value: this.data.text };\r\n\t\t\t\t\tconst response = await this.$http.post(`admin/websitetextpage/${this.pageName}`, data, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWebsiteTextPage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWebsiteTextPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminWebsiteTextPage.vue?vue&type=template&id=14c558fe&\"\nimport script from \"./AdminWebsiteTextPage.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminWebsiteTextPage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Website settings\")]),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":\"\"}},[_vm._v(\" Please be cautious editing this page. Contact the developer for help. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-checkbox',{model:{value:(_vm.data.apiConnectivityEnabled),callback:function ($$v) {_vm.$set(_vm.data, \"apiConnectivityEnabled\", $$v)},expression:\"data.apiConnectivityEnabled\"}},[_vm._v(\"Enable API connectivity features for users (development only)\")]),_c('b-form-checkbox',{model:{value:(_vm.data.includeCeQual),callback:function ($$v) {_vm.$set(_vm.data, \"includeCeQual\", $$v)},expression:\"data.includeCeQual\"}},[_vm._v(\"Enable CE-QUAL output feature\")]),_c('b-form-checkbox',{model:{value:(_vm.data.includeFfa),callback:function ($$v) {_vm.$set(_vm.data, \"includeFfa\", $$v)},expression:\"data.includeFfa\"}},[_vm._v(\"Enable flood frequency analysis (FFA) output feature\")]),_c('b-form-checkbox',{model:{value:(_vm.data.includeBaseflowSeparation),callback:function ($$v) {_vm.$set(_vm.data, \"includeBaseflowSeparation\", $$v)},expression:\"data.includeBaseflowSeparation\"}},[_vm._v(\"Enable baseflow separation output feature\")]),_c('b-form-checkbox',{model:{value:(_vm.data.useCustomHelpPage),callback:function ($$v) {_vm.$set(_vm.data, \"useCustomHelpPage\", $$v)},expression:\"data.useCustomHelpPage\"}},[_vm._v(\"Remove standard help page text and only use custom text from the 'Website text' setting\")]),_c('hr',{staticClass:\"my-4\"}),_c('h3',[_vm._v(\"Map Settings\")]),_c('b-form-group',{staticClass:\"my-3\",attrs:{\"label\":\"Custom default map center\",\"description\":\"[lat,lng]\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.data.customMapBounds),callback:function ($$v) {_vm.$set(_vm.data, \"customMapBounds\", $$v)},expression:\"data.customMapBounds\"}})],1),_c('b-form-group',{staticClass:\"my-3\",attrs:{\"label\":\"Custom default map zoom\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(_vm.data.customMapZoom),callback:function ($$v) {_vm.$set(_vm.data, \"customMapZoom\", $$v)},expression:\"data.customMapZoom\"}})],1),_c('b-form-group',{staticClass:\"my-3\",attrs:{\"label\":\"Custom map tile providers\",\"description\":\"JSON format. See example below or contact developer for instructions.\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"5\"},model:{value:(_vm.data.customTileProviders),callback:function ($$v) {_vm.$set(_vm.data, \"customTileProviders\", $$v)},expression:\"data.customTileProviders\"}})],1),_c('div',[_vm._v(\"Example tile providers:\")]),_c('div',{staticClass:\"bg-light p-3\"},[_c('pre',[_vm._v(\"[\\n\\t{\\n\\t\\tname: 'Default map',\\n\\t\\tvisible: true,\\n\\t\\tattribution: '© \"),_c('a',{attrs:{\"target\":\"_blank\",\"href\":\"http://osm.org/copyright\"}},[_vm._v(\"OpenStreetMap\")]),_vm._v(\" contributors',\\n\\t\\turl: 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'\\n\\t},\\n\\t{\\n\\t\\tname: 'Topography map',\\n\\t\\tvisible: false,\\n\\t\\turl: 'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png',\\n\\t\\tattribution: 'Map data: © \"),_c('a',{attrs:{\"href\":\"http://www.openstreetmap.org/copyright\"}},[_vm._v(\"OpenStreetMap\")]),_vm._v(\", \"),_c('a',{attrs:{\"href\":\"http://viewfinderpanoramas.org\"}},[_vm._v(\"SRTM\")]),_vm._v(\" | Map style: © \"),_c('a',{attrs:{\"href\":\"https://opentopomap.org\"}},[_vm._v(\"OpenTopoMap\")]),_vm._v(\" (\"),_c('a',{attrs:{\"href\":\"https://creativecommons.org/licenses/by-sa/3.0/\"}},[_vm._v(\"CC-BY-SA\")]),_vm._v(\")'\\n\\t},\\n\\t{\\n\\t\\tname: 'Satellite map',\\n\\t\\tvisible: false,\\n\\t\\turl: 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}',\\n\\t\\tattribution: 'Tiles © Esri — Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community'\\n\\t}\\n]\")])]),_c('hr',{staticClass:\"my-4\"}),_c('b-form-checkbox',{model:{value:(_vm.data.enableAlertNotification),callback:function ($$v) {_vm.$set(_vm.data, \"enableAlertNotification\", $$v)},expression:\"data.enableAlertNotification\"}},[_vm._v(\"Enable site-wide alert notification\")]),_c('b-form-group',{staticClass:\"my-3\",attrs:{\"label\":\"Notification message\"}},[_c('b-form-textarea',{attrs:{\"rows\":\"3\"},model:{value:(_vm.data.alertNotification),callback:function ($$v) {_vm.$set(_vm.data, \"alertNotification\", $$v)},expression:\"data.alertNotification\"}})],1),_c('hr',{staticClass:\"my-4\"}),_c('p',{staticClass:\"text-danger\"},[_vm._v(\"The settings below are not yet active:\")]),_c('b-form-checkbox',{model:{value:(_vm.data.isOffline),callback:function ($$v) {_vm.$set(_vm.data, \"isOffline\", $$v)},expression:\"data.isOffline\"}},[_vm._v(\"Take the website offline\")]),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Website settings</h2>\r\n\r\n\t\t\t<b-alert variant=\"info\" show>\r\n\t\t\t\tPlease be cautious editing this page.\r\n\t\t\t\tContact the developer for help. \r\n\t\t\t</b-alert>\r\n\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<b-form-checkbox v-model=\"data.apiConnectivityEnabled\">Enable API connectivity features for users (development only)</b-form-checkbox>\r\n\t\t\t\t<b-form-checkbox v-model=\"data.includeCeQual\">Enable CE-QUAL output feature</b-form-checkbox>\r\n\t\t\t\t<b-form-checkbox v-model=\"data.includeFfa\">Enable flood frequency analysis (FFA) output feature</b-form-checkbox>\r\n\t\t\t\t<b-form-checkbox v-model=\"data.includeBaseflowSeparation\">Enable baseflow separation output feature</b-form-checkbox>\r\n\t\t\t\t<b-form-checkbox v-model=\"data.useCustomHelpPage\">Remove standard help page text and only use custom text from the 'Website text' setting</b-form-checkbox>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\t\t\t\t<h3>Map Settings</h3>\r\n\t\t\t\t<b-form-group label=\"Custom default map center\" description=\"[lat,lng]\" class=\"my-3\">\r\n\t\t\t\t\t<b-form-input type=\"text\" v-model=\"data.customMapBounds\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Custom default map zoom\" class=\"my-3\">\r\n\t\t\t\t\t<b-form-input type=\"number\" v-model=\"data.customMapZoom\"></b-form-input>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group label=\"Custom map tile providers\" description=\"JSON format. See example below or contact developer for instructions.\" class=\"my-3\">\r\n\t\t\t\t\t<b-form-textarea v-model=\"data.customTileProviders\" rows=\"5\"></b-form-textarea>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<div>Example tile providers:</div>\r\n\t\t\t\t<div class=\"bg-light p-3\">\r\n\t\t\t\t\t<pre>[\r\n\t{\r\n\t\tname: 'Default map',\r\n\t\tvisible: true,\r\n\t\tattribution: '&copy; <a target=\"_blank\" href=\"http://osm.org/copyright\">OpenStreetMap</a> contributors',\r\n\t\turl: 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'\r\n\t},\r\n\t{\r\n\t\tname: 'Topography map',\r\n\t\tvisible: false,\r\n\t\turl: 'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png',\r\n\t\tattribution: 'Map data: &copy; <a href=\"http://www.openstreetmap.org/copyright\">OpenStreetMap</a>, <a href=\"http://viewfinderpanoramas.org\">SRTM</a> | Map style: &copy; <a href=\"https://opentopomap.org\">OpenTopoMap</a> (<a href=\"https://creativecommons.org/licenses/by-sa/3.0/\">CC-BY-SA</a>)'\r\n\t},\r\n\t{\r\n\t\tname: 'Satellite map',\r\n\t\tvisible: false,\r\n\t\turl: 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}',\r\n\t\tattribution: 'Tiles &copy; Esri &mdash; Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community'\r\n\t}\r\n]</pre>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t<b-form-checkbox v-model=\"data.enableAlertNotification\">Enable site-wide alert notification</b-form-checkbox>\r\n\r\n\t\t\t\t<b-form-group label=\"Notification message\" class=\"my-3\">\r\n\t\t\t\t\t<b-form-textarea v-model=\"data.alertNotification\" rows=\"3\"></b-form-textarea>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\t\t\t\t<p class=\"text-danger\">The settings below are not yet active:</p>\r\n\r\n\t\t\t\t<b-form-checkbox v-model=\"data.isOffline\">Take the website offline</b-form-checkbox>\r\n\r\n\t\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'AdminWebsiteSettings',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tsaveErrors: []\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tappName: '',\r\n\t\t\t\t\tisOffline: false,\n\t\t\t\t\tuseCustomHelpPage: false,\n\t\t\t\t\tcustomTileProviders: null,\n\t\t\t\t\tincludeCeQual: false,\n\t\t\t\t\tincludeFfa: false,\n\t\t\t\t\tincludeBaseflowSeparation: false,\n\t\t\t\t\tcustomMapBounds: null,\n\t\t\t\t\tcustomMapZoom: null,\n\t\t\t\t\tapiConnectivityEnabled: false,\n\t\t\t\t\tenableAlertNotification: false,\n\t\t\t\t\talertNotification: null,\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('admin/websitesettings', this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post('admin/websitesettings', this.data, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWebsiteSettings.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWebsiteSettings.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminWebsiteSettings.vue?vue&type=template&id=7940ee07&\"\nimport script from \"./AdminWebsiteSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminWebsiteSettings.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Special Administrative Jobs\")]),_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"danger\"}},[_vm._v(\" Do not run without specific permission from the developer. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('p',[_c('save-button',{attrs:{\"saving\":_vm.page.saving,\"text\":\"Set Calibrations 11/2020\",\"type\":\"button\"},nativeOn:{\"click\":function($event){return _vm.submit.apply(null, arguments)}}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-3\">Special Administrative Jobs</h2>\r\n\t\t\t<b-alert show variant=\"danger\">\r\n\t\t\t\tDo not run without specific permission from the developer.\r\n\t\t\t</b-alert>\r\n\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t<p>\r\n\t\t\t\t<save-button :saving=\"page.saving\" text=\"Set Calibrations 11/2020\" type=\"button\" @click.native=\"submit\" />\r\n\t\t\t</p>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'AdminJobs',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tsaveErrors: [],\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync submit() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.post('admin/SetCalibrations', {}, this.getTokenHeader());\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminJobs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminJobs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminJobs.vue?vue&type=template&id=79a13d88&\"\nimport script from \"./AdminJobs.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminJobs.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"HUC Data Version 2 Imports\")]),_c('b-alert',{attrs:{\"variant\":\"info\",\"show\":\"\"}},[_vm._v(\" It is highly recommended to just run one region at a time. Please check with Jaclyn before running. \")]),_c('b-table-simple',{staticClass:\"table-valign-m\",attrs:{\"small\":\"\",\"responsive\":\"\"}},[_c('b-thead',[_c('b-tr',[_c('b-th',[_vm._v(\"Region\")]),_c('b-th',[_vm._v(\"HUC8\")]),_c('b-th',[_vm._v(\"HUC10\")]),_c('b-th',[_vm._v(\"HUC12\")]),_c('b-th',[_vm._v(\"HUC14\")])],1)],1),_c('b-tbody',_vm._l((_vm.data.regions),function(r,i){return _c('b-tr',{key:i},[_c('b-td',[_vm._v(_vm._s(r.name))]),_vm._l((r.resolutions),function(d){return _c('b-td',{key:d,staticStyle:{\"width\":\"20%\"}},[(_vm.data.imports[d].status.isRunning)?_c('div',[_c('b-progress',{attrs:{\"value\":_vm.data.imports[d].progress.percent,\"max\":100,\"animated\":\"\"}}),_c('div',[_vm._v(_vm._s(_vm.data.imports[d].progress.message))]),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.abortImport(d)}}},[_vm._v(\"Abort\")])],1):(_vm.data.imports[d].status.hasError)?_c('div',[_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal\",value:(`error-popover-${d}`),expression:\"`error-popover-${d}`\"}],attrs:{\"size\":\"sm\",\"variant\":\"danger\"}},[_vm._v(\" Error \")]),_c('b-modal',{attrs:{\"id\":`error-popover-${d}`,\"hide-footer\":\"\",\"size\":\"xl\"},scopedSlots:_vm._u([{key:\"modal-title\",fn:function(){return [_vm._v(\" Error importing region \"+_vm._s(r.name)+\" HUC\"+_vm._s(_vm.data.imports[d].digits)+\" \")]},proxy:true}],null,true)},[_c('div',{staticClass:\"border p-1 mb-3\",staticStyle:{\"font-size\":\"0.8rem\"}},[_c('pre',[_vm._v(_vm._s(_vm.data.imports[d].status.exceptionMessage))])]),_c('b-button',{attrs:{\"size\":\"sm\",\"variant\":\"secondary\"},on:{\"click\":function($event){return _vm.importData(d)}}},[_vm._v(\"Re-start\")])],1)],1):(_vm.data.imports[d].status.isComplete)?_c('div',[_c('font-awesome-icon',{staticClass:\"pointer icon mx-2 text-success\",attrs:{\"id\":`complete-popover-${d}`,\"icon\":['fas', 'check']}}),_c('b-popover',{attrs:{\"target\":`complete-popover-${d}`,\"triggers\":\"hover\",\"id\":`complete-popover-${d}`}},[_c('div',{staticClass:\"mb-2\"},[_vm._v(\"Imported \"+_vm._s(_vm._f(\"date\")(_vm.data.imports[d].importedDate))+\" in \"+_vm._s(_vm.data.imports[d].importTime)+\".\")]),_c('b-button',{attrs:{\"size\":\"sm\",\"variant\":\"secondary\"},on:{\"click\":function($event){return _vm.importData(d)}}},[_vm._v(\"Re-import\")])],1)],1):_c('div',[_c('b-button',{attrs:{\"size\":\"sm\",\"variant\":\"secondary\"},on:{\"click\":function($event){return _vm.importData(d)}}},[_vm._v(\"Import\")])],1)])})],2)}),1)],1),_c('b-card',{staticClass:\"border my-3\"},[_c('b-card-text',[_vm._v(\" SSURGO Soils Count: \"+_vm._s(_vm.data.soils.count)+\" \"),(_vm.data.soils.progress.percent === 0 || _vm.data.soils.progress.percent === 100)?_c('div',[_c('b-button',{attrs:{\"size\":\"sm\",\"variant\":\"secondary\"},on:{\"click\":_vm.importSoils}},[_vm._v(_vm._s(_vm.data.soils.count > 0 ? 'Re-import' : 'Start Import'))])],1):_c('div',[_c('b-progress',{attrs:{\"value\":_vm.data.soils.progress.percent,\"max\":100,\"animated\":\"\"}}),_c('div',[_vm._v(_vm._s(_vm.data.soils.progress.message))])],1)])],1),_c('b-card',{staticClass:\"border my-3\"},[_c('b-card-text',[_vm._v(\" Import all regions that haven't run. Will skip regions with errors. \"),_c('div',[_c('b-button',{attrs:{\"size\":\"sm\",\"variant\":\"secondary\"},on:{\"click\":_vm.importAll}},[_vm._v(\"Start Import\")])],1)])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-3\">HUC Data Version 2 Imports</h2>\r\n\r\n\t\t\t<b-alert variant=\"info\" show>\r\n\t\t\t\tIt is highly recommended to just run one region at a time. Please check with Jaclyn before running.\r\n\t\t\t</b-alert>\r\n\r\n\t\t\t<b-table-simple small responsive class=\"table-valign-m\">\r\n\t\t\t\t<b-thead>\r\n\t\t\t\t\t<b-tr>\r\n\t\t\t\t\t\t<b-th>Region</b-th>\r\n\t\t\t\t\t\t<b-th>HUC8</b-th>\r\n\t\t\t\t\t\t<b-th>HUC10</b-th>\r\n\t\t\t\t\t\t<b-th>HUC12</b-th>\r\n\t\t\t\t\t\t<b-th>HUC14</b-th>\r\n\t\t\t\t\t</b-tr>\r\n\t\t\t\t</b-thead>\r\n\t\t\t\t<b-tbody>\r\n\t\t\t\t\t<b-tr v-for=\"(r, i) in data.regions\" :key=\"i\">\r\n\t\t\t\t\t\t<b-td>{{r.name}}</b-td>\r\n\t\t\t\t\t\t<b-td v-for=\"d in r.resolutions\" :key=\"d\" style=\"width:20%\">\r\n\t\t\t\t\t\t\t<div v-if=\"data.imports[d].status.isRunning\">\r\n\t\t\t\t\t\t\t\t<b-progress :value=\"data.imports[d].progress.percent\" :max=\"100\" animated></b-progress>\r\n\t\t\t\t\t\t\t\t<div>{{data.imports[d].progress.message}}</div>\r\n\t\t\t\t\t\t\t\t<a href=\"#\" @click.prevent=\"abortImport(d)\">Abort</a>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-else-if=\"data.imports[d].status.hasError\">\r\n\t\t\t\t\t\t\t\t<b-button v-b-modal=\"`error-popover-${d}`\" size=\"sm\" variant=\"danger\">\r\n\t\t\t\t\t\t\t\t\tError\r\n\t\t\t\t\t\t\t\t</b-button>\r\n\t\t\t\t\t\t\t\t<b-modal :id=\"`error-popover-${d}`\" hide-footer size=\"xl\">\r\n\t\t\t\t\t\t\t\t\t<template #modal-title>\r\n\t\t\t\t\t\t\t\t\t\tError importing region {{r.name}} HUC{{data.imports[d].digits}}\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t<div class=\"border p-1 mb-3\" style=\"font-size:0.8rem\">\r\n\t\t\t\t\t\t\t\t\t\t<pre>{{data.imports[d].status.exceptionMessage}}</pre>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<b-button size=\"sm\" variant=\"secondary\" @click=\"importData(d)\">Re-start</b-button>\r\n\t\t\t\t\t\t\t\t</b-modal>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-else-if=\"data.imports[d].status.isComplete\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon :id=\"`complete-popover-${d}`\" :icon=\"['fas', 'check']\" class=\"pointer icon mx-2 text-success\" />\r\n\t\t\t\t\t\t\t\t<b-popover :target=\"`complete-popover-${d}`\" triggers=\"hover\" :id=\"`complete-popover-${d}`\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"mb-2\">Imported {{data.imports[d].importedDate | date}} in {{data.imports[d].importTime}}.</div>\r\n\t\t\t\t\t\t\t\t\t<b-button size=\"sm\" variant=\"secondary\" @click=\"importData(d)\">Re-import</b-button>\r\n\t\t\t\t\t\t\t\t</b-popover>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t\t<b-button size=\"sm\" variant=\"secondary\" @click=\"importData(d)\">Import</b-button>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-td>\r\n\t\t\t\t\t</b-tr>\r\n\t\t\t\t</b-tbody>\r\n\t\t\t</b-table-simple>\r\n\r\n\t\t\t<b-card class=\"border my-3\">\r\n\t\t\t\t<b-card-text>\r\n\t\t\t\t\tSSURGO Soils Count: {{data.soils.count}}\r\n\t\t\t\t\t<div v-if=\"data.soils.progress.percent === 0 || data.soils.progress.percent === 100\">\r\n\t\t\t\t\t\t<b-button size=\"sm\" variant=\"secondary\" @click=\"importSoils\">{{data.soils.count > 0 ? 'Re-import' : 'Start Import'}}</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t<b-progress :value=\"data.soils.progress.percent\" :max=\"100\" animated></b-progress>\r\n\t\t\t\t\t\t<div>{{data.soils.progress.message}}</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-card-text>\r\n\t\t\t</b-card>\r\n\r\n\t\t\t<b-card class=\"border my-3\">\r\n\t\t\t\t<b-card-text>\r\n\t\t\t\t\tImport all regions that haven't run. Will skip regions with errors.\r\n\t\t\t\t\t<div>\r\n\t\t\t\t\t\t<b-button size=\"sm\" variant=\"secondary\" @click=\"importAll\">Start Import</b-button>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</b-card-text>\r\n\t\t\t</b-card>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\n\n<script>\r\n\texport default {\r\n\t\tname: 'AdminImportHuc2',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tsaveErrors: []\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\tregions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tname: '01',\n\t\t\t\t\t\t\tresolutions: [1]\r\n\t\t\t\t\t\t}\n\t\t\t\t\t],\r\n\t\t\t\t\tsoils: {\n\t\t\t\t\t\tcount: 0,\n\t\t\t\t\t\tprogress: {\n\t\t\t\t\t\t\tpercent: 0,\n\t\t\t\t\t\t\tmessage: null\r\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\timports: {\n\t\t\t\t\t\t1: {\n\t\t\t\t\t\t\tregion: '01',\n\t\t\t\t\t\t\tdigits: 8,\n\t\t\t\t\t\t\timportedDate: null,\n\t\t\t\t\t\t\timportTime: null,\n\t\t\t\t\t\t\tstatus: {\r\n\t\t\t\t\t\t\t\tisRunning: false,\r\n\t\t\t\t\t\t\t\thasError: false,\r\n\t\t\t\t\t\t\t\texceptionMessage: null,\n\t\t\t\t\t\t\t\tisComplete: false\r\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tprogress: {\n\t\t\t\t\t\t\t\tpercent: 0,\n\t\t\t\t\t\t\t\tmessage: null\r\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t\tthis.$statusHub.importHucVersion2Opened();\r\n\t\t\tthis.$statusHub.$on('import-huc-version2-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.$statusHub.importHucVersion2Closed();\r\n\t\t\tthis.$statusHub.$off('import-huc-version2-status-changed', this.onStatusChanged);\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('admin/importHuc2', this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync onStatusChanged(data) {\r\n\t\t\t\tif (data.importID in this.data.imports) {\n\t\t\t\t\tlet res = this.data.imports[data.importID];\n\n\t\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\t\tres.status.isRunning = false;\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tres.progress.percent = data.progress;\r\n\t\t\t\t\tres.progress.message = data.statusMessage;\r\n\t\t\t\t} else if (data.importID === 0) {\n\t\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\t\tawait this.get();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.data.soils.progress.percent = data.progress;\r\n\t\t\t\t\tthis.data.soils.progress.message = data.statusMessage;\r\n\t\t\t\t}\r\n\t\t\t\treturn;\r\n\t\t\t},\n\t\t\tasync importData(id) {\n\t\t\t\tthis.page.errors = [];\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`admin/importHuc2/${id}`, {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data.imports[id].progress = {\n\t\t\t\t\t\tpercent: 1,\n\t\t\t\t\t\tmessage: 'Starting import...'\r\n\t\t\t\t\t};\n\t\t\t\t\tthis.data.imports[id].status = {\r\n\t\t\t\t\t\tisRunning: true,\r\n\t\t\t\t\t\thasError: false,\r\n\t\t\t\t\t\texceptionMessage: null,\n\t\t\t\t\t\tisComplete: false\r\n\t\t\t\t\t};\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\n\t\t\tasync importSoils() {\n\t\t\t\tthis.page.errors = [];\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post('admin/importHuc2/soils', {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data.soils.progress = {\n\t\t\t\t\t\tpercent: 1,\n\t\t\t\t\t\tmessage: 'Starting import...'\r\n\t\t\t\t\t};\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\n\t\t\tasync importAll() {\n\t\t\t\tthis.page.errors = [];\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post('admin/importHuc2/all', {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\n\t\t\tasync abortImport(id) {\n\t\t\t\tthis.page.errors = [];\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post(`admin/importHuc2/abort/${id}`, {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\n\t\t\t\t\tthis.data.imports[id].progress.message = 'Aborting please wait...';\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminImportHuc2.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminImportHuc2.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminImportHuc2.vue?vue&type=template&id=2025e08e&\"\nimport script from \"./AdminImportHuc2.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminImportHuc2.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminWeatherList')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Weather\")]),_c('p',[_vm._v(\" See the main system datasets section to see what is available for each weather dataset. Some weather data may only by valid for specific datasets. This section does not modify weather files on the server, so please be careful making changes. \")]),_c('grid-view',{attrs:{\"api-url\":\"admin/weather\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"tiers\",\"item-name\":\"tier\",\"show-create\":\"\",\"create-route\":\"create\"}})],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'AdminWeatherList'\">\r\n\t\t\t<h2 class=\"mb-3\">Weather</h2>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tSee the main system datasets section to see what is available for each weather dataset.\n\t\t\t\tSome weather data may only by valid for specific datasets. This section does not modify weather files on the server, so please be careful making changes.\r\n\t\t\t</p>\r\n\r\n\t\t\t<grid-view api-url=\"admin/weather\"\r\n\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t   collection-description=\"tiers\"\r\n\t\t\t\t\t   item-name=\"tier\"\r\n\t\t\t\t\t   show-create create-route=\"create\"></grid-view>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminWeatherList',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true },\r\n\t\t\t\t\t\t{ key: 'isActive', label: 'Active?', sortable: true, formatter: (value) => { return value ? 'Yes' : 'No' } },\r\n\t\t\t\t\t\t{ key: 'pathToFiles', sortable: true },\r\n\t\t\t\t\t\t{ key: 'startDate', label: 'Start', sortable: true, formatter: (value) => { return moment(value).format('M/D/YYYY') } },\r\n\t\t\t\t\t\t{ key: 'endDate', label: 'End', sortable: true, formatter: (value) => { return moment(value).format('M/D/YYYY') } },\r\n\t\t\t\t\t\t{ key: 'fileFormat', sortable: true },\r\n\t\t\t\t\t\t{ key: 'cmipVersion', sortable: true },\r\n\t\t\t\t\t\t{ key: 'sortOrder', sortable: true }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'sortOrder',\r\n\t\t\t\t\treverse: false,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWeatherList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWeatherList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminWeatherList.vue?vue&type=template&id=1141f863&\"\nimport script from \"./AdminWeatherList.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminWeatherList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Edit weather dataset\")]),_c('admin-weather-form',{attrs:{\"is-update\":\"\",\"data\":_vm.data}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),_c('b-form',[_c('b-form-group',{attrs:{\"label\":\"Name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.name)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.name)},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Path to files (relative to main weather file directory)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.pathToFiles)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.pathToFiles)},model:{value:(_vm.form.pathToFiles),callback:function ($$v) {_vm.$set(_vm.form, \"pathToFiles\", $$v)},expression:\"form.pathToFiles\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Override dataset path to files (not the path above, but set to change the dataset's Weather Path setting)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.overrideDatasetPath)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.overrideDatasetPath)},model:{value:(_vm.form.overrideDatasetPath),callback:function ($$v) {_vm.$set(_vm.form, \"overrideDatasetPath\", $$v)},expression:\"form.overrideDatasetPath\"}})],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Start date\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.startDate)}},[_c('b-form-input',{attrs:{\"type\":\"date\",\"state\":_vm.getValidState(_vm.$v.form.startDate)},model:{value:(_vm.form.startDate),callback:function ($$v) {_vm.$set(_vm.form, \"startDate\", $$v)},expression:\"form.startDate\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"End date\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.endDate)}},[_c('b-form-input',{attrs:{\"type\":\"date\",\"state\":_vm.getValidState(_vm.$v.form.endDate)},model:{value:(_vm.form.endDate),callback:function ($$v) {_vm.$set(_vm.form, \"endDate\", $$v)},expression:\"form.endDate\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"File format\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.fileFormat)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.fileFormats,\"state\":_vm.getValidState(_vm.$v.form.fileFormat)},model:{value:(_vm.form.fileFormat),callback:function ($$v) {_vm.$set(_vm.form, \"fileFormat\", $$v)},expression:\"form.fileFormat\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"CMIP version (if applicable)\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.cmipVersion)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.cmipVersion)},model:{value:(_vm.form.cmipVersion),callback:function ($$v) {_vm.$set(_vm.form, \"cmipVersion\", $$v)},expression:\"form.cmipVersion\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":\"Sort order\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.sortOrder)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.sortOrder)},model:{value:(_vm.form.sortOrder),callback:function ($$v) {_vm.$set(_vm.form, \"sortOrder\", $$v)},expression:\"form.sortOrder\"}})],1)],1)],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.isActive),callback:function ($$v) {_vm.$set(_vm.form, \"isActive\", $$v)},expression:\"form.isActive\"}},[_vm._v(\"Is active?\")])],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.canUseLowerResolution),callback:function ($$v) {_vm.$set(_vm.form, \"canUseLowerResolution\", $$v)},expression:\"form.canUseLowerResolution\"}},[_vm._v(\"Use lower resolution files if not available? (USA HUC only)\")])],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.isInSharedLocation),callback:function ($$v) {_vm.$set(_vm.form, \"isInSharedLocation\", $$v)},expression:\"form.isInSharedLocation\"}},[_vm._v(\"Are the files located in a shared weather directory?\")])],1),_c('b-form-group',{staticClass:\"mb-4\"},[_c('b-checkbox',{model:{value:(_vm.form.hasIclusFolder),callback:function ($$v) {_vm.$set(_vm.form, \"hasIclusFolder\", $$v)},expression:\"form.hasIclusFolder\"}},[_vm._v(\"If CMIP and ICLUS is available, does it have its own ICLUS data folder? (Will use \\\"nocc\\\" ICLUS otherwise)\")])],1),_c('p',[_vm._v(\"Available weather files:\")]),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.hasPcp),callback:function ($$v) {_vm.$set(_vm.form, \"hasPcp\", $$v)},expression:\"form.hasPcp\"}},[_vm._v(\"PCP - Precipitation\")])],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.hasTmp),callback:function ($$v) {_vm.$set(_vm.form, \"hasTmp\", $$v)},expression:\"form.hasTmp\"}},[_vm._v(\"TMP - Temperature\")])],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.hasHmd),callback:function ($$v) {_vm.$set(_vm.form, \"hasHmd\", $$v)},expression:\"form.hasHmd\"}},[_vm._v(\"HMD - Relative humidity\")])],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.hasSlr),callback:function ($$v) {_vm.$set(_vm.form, \"hasSlr\", $$v)},expression:\"form.hasSlr\"}},[_vm._v(\"SLR - Solar radiation\")])],1),_c('b-form-group',{staticClass:\"mb-4\"},[_c('b-checkbox',{model:{value:(_vm.form.hasWnd),callback:function ($$v) {_vm.$set(_vm.form, \"hasWnd\", $$v)},expression:\"form.hasWnd\"}},[_vm._v(\"WND - Wind\")])],1),_c('p',[_vm._v(\"The following may be applicable to uploaded datasets:\")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"nrgage\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.nrgage)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.nrgage)},model:{value:(_vm.form.nrgage),callback:function ($$v) {_vm.$set(_vm.form, \"nrgage\", $$v)},expression:\"form.nrgage\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"nrtot\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.nrtot)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.nrtot)},model:{value:(_vm.form.nrtot),callback:function ($$v) {_vm.$set(_vm.form, \"nrtot\", $$v)},expression:\"form.nrtot\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"nrgfil\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.nrgfil)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.nrgfil)},model:{value:(_vm.form.nrgfil),callback:function ($$v) {_vm.$set(_vm.form, \"nrgfil\", $$v)},expression:\"form.nrgfil\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"ntgage\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.ntgage)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.ntgage)},model:{value:(_vm.form.ntgage),callback:function ($$v) {_vm.$set(_vm.form, \"ntgage\", $$v)},expression:\"form.ntgage\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"nttot\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.nttot)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.nttot)},model:{value:(_vm.form.nttot),callback:function ($$v) {_vm.$set(_vm.form, \"nttot\", $$v)},expression:\"form.nttot\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"ntgfil\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.ntgfil)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.ntgfil)},model:{value:(_vm.form.ntgfil),callback:function ($$v) {_vm.$set(_vm.form, \"ntgfil\", $$v)},expression:\"form.ntgfil\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"nstot\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.nstot)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.nstot)},model:{value:(_vm.form.nstot),callback:function ($$v) {_vm.$set(_vm.form, \"nstot\", $$v)},expression:\"form.nstot\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"nhtot\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.nhtot)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.nhtot)},model:{value:(_vm.form.nhtot),callback:function ($$v) {_vm.$set(_vm.form, \"nhtot\", $$v)},expression:\"form.nhtot\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"nwtot\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.nwtot)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.nwtot)},model:{value:(_vm.form.nwtot),callback:function ($$v) {_vm.$set(_vm.form, \"nwtot\", $$v)},expression:\"form.nwtot\"}})],1)],1)],1)],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving},nativeOn:{\"click\":function($event){return _vm.save.apply(null, arguments)}}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.isUpdate && _vm.isAuthorized(_vm.roleNames.admin))?_c('b-button',{staticClass:\"ml-auto\",attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")]):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this weather dataset? This action is permanent and cannot be undone. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t<b-form>\r\n\t\t\t<b-form-group label=\"Name\" :invalid-feedback=\"requiredFeedback($v.form.name)\">\r\n\t\t\t\t<b-form-input v-model=\"form.name\" type=\"text\" autofocus :state=\"getValidState($v.form.name)\"></b-form-input>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<b-form-group label=\"Path to files (relative to main weather file directory)\" :invalid-feedback=\"requiredFeedback($v.form.pathToFiles)\">\r\n\t\t\t\t<b-form-input v-model=\"form.pathToFiles\" type=\"text\" :state=\"getValidState($v.form.pathToFiles)\"></b-form-input>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<b-form-group label=\"Override dataset path to files (not the path above, but set to change the dataset's Weather Path setting)\" :invalid-feedback=\"requiredFeedback($v.form.overrideDatasetPath)\">\r\n\t\t\t\t<b-form-input v-model=\"form.overrideDatasetPath\" type=\"text\" :state=\"getValidState($v.form.overrideDatasetPath)\"></b-form-input>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"Start date\" :invalid-feedback=\"requiredFeedback($v.form.startDate)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.startDate\" type=\"date\" :state=\"getValidState($v.form.startDate)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"End date\" :invalid-feedback=\"requiredFeedback($v.form.endDate)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.endDate\" type=\"date\" :state=\"getValidState($v.form.endDate)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"File format\" :invalid-feedback=\"requiredFeedback($v.form.fileFormat)\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"form.fileFormat\" :options=\"options.fileFormats\" :state=\"getValidState($v.form.fileFormat)\"></b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"CMIP version (if applicable)\" :invalid-feedback=\"requiredFeedback($v.form.cmipVersion)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.cmipVersion\" type=\"number\" :state=\"getValidState($v.form.cmipVersion)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md=\"6\">\r\n\t\t\t\t\t<b-form-group label=\"Sort order\" :invalid-feedback=\"requiredFeedback($v.form.sortOrder)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.sortOrder\" type=\"number\" :state=\"getValidState($v.form.sortOrder)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\r\n\t\t\t<b-form-group>\r\n\t\t\t\t<b-checkbox v-model=\"form.isActive\">Is active?</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<b-form-group>\r\n\t\t\t\t<b-checkbox v-model=\"form.canUseLowerResolution\">Use lower resolution files if not available? (USA HUC only)</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<b-form-group>\r\n\t\t\t\t<b-checkbox v-model=\"form.isInSharedLocation\">Are the files located in a shared weather directory?</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<b-form-group class=\"mb-4\">\r\n\t\t\t\t<b-checkbox v-model=\"form.hasIclusFolder\">If CMIP and ICLUS is available, does it have its own ICLUS data folder? (Will use \"nocc\" ICLUS otherwise)</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<p>Available weather files:</p>\r\n\r\n\t\t\t<b-form-group>\r\n\t\t\t\t<b-checkbox v-model=\"form.hasPcp\">PCP - Precipitation</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\t\t\t<b-form-group>\r\n\t\t\t\t<b-checkbox v-model=\"form.hasTmp\">TMP - Temperature</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\t\t\t<b-form-group>\r\n\t\t\t\t<b-checkbox v-model=\"form.hasHmd\">HMD - Relative humidity</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\t\t\t<b-form-group>\r\n\t\t\t\t<b-checkbox v-model=\"form.hasSlr\">SLR - Solar radiation</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\t\t\t<b-form-group class=\"mb-4\">\r\n\t\t\t\t<b-checkbox v-model=\"form.hasWnd\">WND - Wind</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\r\n\r\n\t\t\t<p>The following may be applicable to uploaded datasets:</p>\r\n\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"nrgage\" :invalid-feedback=\"requiredFeedback($v.form.nrgage)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.nrgage\" type=\"number\" :state=\"getValidState($v.form.nrgage)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"nrtot\" :invalid-feedback=\"requiredFeedback($v.form.nrtot)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.nrtot\" type=\"number\" :state=\"getValidState($v.form.nrtot)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"nrgfil\" :invalid-feedback=\"requiredFeedback($v.form.nrgfil)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.nrgfil\" type=\"number\" :state=\"getValidState($v.form.nrgfil)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"ntgage\" :invalid-feedback=\"requiredFeedback($v.form.ntgage)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.ntgage\" type=\"number\" :state=\"getValidState($v.form.ntgage)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"nttot\" :invalid-feedback=\"requiredFeedback($v.form.nttot)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.nttot\" type=\"number\" :state=\"getValidState($v.form.nttot)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"ntgfil\" :invalid-feedback=\"requiredFeedback($v.form.ntgfil)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.ntgfil\" type=\"number\" :state=\"getValidState($v.form.ntgfil)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"nstot\" :invalid-feedback=\"requiredFeedback($v.form.nstot)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.nstot\" type=\"number\" :state=\"getValidState($v.form.nstot)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"nhtot\" :invalid-feedback=\"requiredFeedback($v.form.nhtot)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.nhtot\" type=\"number\" :state=\"getValidState($v.form.nhtot)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"nwtot\" :invalid-feedback=\"requiredFeedback($v.form.nwtot)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.nwtot\" type=\"number\" :state=\"getValidState($v.form.nwtot)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\t\t</b-form>\r\n\r\n\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" @click.native=\"save\" />\r\n\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t<b-button v-if=\"isUpdate && isAuthorized(roleNames.admin)\" variant=\"danger\" @click=\"page.delete.show = true\" class=\"ml-auto\">Delete</b-button>\r\n\t\t</fixed-action-bar>\r\n\r\n\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tAre you sure you want to delete this weather dataset?\r\n\t\t\t\tThis action is permanent and cannot be undone.\r\n\t\t\t</p>\r\n\r\n\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t</div>\r\n\t\t</b-modal>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'AdminWeatherForm',\r\n\t\tprops: {\r\n\t\t\tisUpdate: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tdata: {\r\n\t\t\t\ttype: Object,\r\n\t\t\t\trequired: true\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\toptions: {\r\n\t\t\t\t\tfileFormats: [\n\t\t\t\t\t\t{ value: null, text: 'Select...' },\n\t\t\t\t\t\t{ value: 1, text: 'HAWQS' },\n\t\t\t\t\t\t{ value: 2, text: 'SWAT' },\n\t\t\t\t\t\t{ value: 3, text: 'Original' }\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\tform: this.data\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tname: { required },\r\n\t\t\t\tpathToFiles: { required },\r\n\t\t\t\tstartDate: { required },\r\n\t\t\t\tendDate: { required },\r\n\t\t\t\tfileFormat: { required },\r\n\t\t\t\tisActive: { required },\r\n\t\t\t\tcmipVersion: {},\r\n\t\t\t\thasPcp: {},\r\n\t\t\t\thasTmp: {},\r\n\t\t\t\thasHmd: {},\r\n\t\t\t\thasSlr: {},\r\n\t\t\t\thasWnd: {},\r\n\t\t\t\tnrgage: {},\r\n\t\t\t\tnrtot: {},\r\n\t\t\t\tnrgfil: {},\r\n\t\t\t\tntgage: {},\r\n\t\t\t\tnttot: {},\r\n\t\t\t\tntgfil: {},\r\n\t\t\t\tnstot: {},\r\n\t\t\t\tnhtot: {},\r\n\t\t\t\tnwtot: {},\n\t\t\t\tsortOrder: { required },\n\t\t\t\thasIclusFolder: {},\n\t\t\t\tisInSharedLocation: {},\n\t\t\t\toverrideDatasetPath: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tif (!this.isUpdate) {\r\n\t\t\t\t\t\t\tawait this.$http.post('admin/weather', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\t\tthis.$router.push({ name: 'AdminWeatherList' }).catch(err => { this.log(err); });\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tawait this.$http.put(`admin/weather/${this.form.id}`, this.form, this.getTokenHeader());\r\n\t\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.delete(`admin/weather/${this.form.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'AdminWeatherList' }).catch(err => { this.log(err); });\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWeatherForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWeatherForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminWeatherForm.vue?vue&type=template&id=5be6639a&\"\nimport script from \"./AdminWeatherForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminWeatherForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Edit weather dataset</h2>\r\n\r\n\t\t\t<admin-weather-form is-update :data=\"data\"></admin-weather-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport AdminWeatherForm from '@/views/admin/datasets/weather/AdminWeatherForm';\r\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'AdminWeatherView',\r\n\t\tcomponents: {\r\n\t\t\tAdminWeatherForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tweatherID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.weatherID = this.$route.params.id;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/weather/${this.weatherID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.data = response.data;\n\t\t\t\t\tthis.data.startDate = moment(this.data.startDate).format('YYYY-MM-DD');\n\t\t\t\t\tthis.data.endDate = moment(this.data.endDate).format('YYYY-MM-DD');\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWeatherView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWeatherView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminWeatherView.vue?vue&type=template&id=85c700be&\"\nimport script from \"./AdminWeatherView.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminWeatherView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Create a new weather dataset\")]),_c('p',[_vm._v(\"Files must be placed on the server.\")]),_c('admin-weather-form',{attrs:{\"data\":_vm.data}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Create a new weather dataset</h2>\n\t\t\t<p>Files must be placed on the server.</p>\r\n\r\n\t\t\t<admin-weather-form :data=\"data\"></admin-weather-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport AdminWeatherForm from '@/views/admin/datasets/weather/AdminWeatherForm';\r\n\r\n\texport default {\r\n\t\tname: 'AdminWeatherCreate',\r\n\t\tcomponents: {\r\n\t\t\tAdminWeatherForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWeatherCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminWeatherCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminWeatherCreate.vue?vue&type=template&id=d431bd86&\"\nimport script from \"./AdminWeatherCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminWeatherCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$route.name == 'AdminSwatVersionList')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"SWAT Executable Versions\")]),_c('grid-view',{attrs:{\"api-url\":\"admin/swatversions\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"SWAT versions\",\"item-name\":\"version\",\"show-create\":\"\",\"create-route\":\"create\"}}),_c('hr',{staticClass:\"my-4\"}),_c('h3',{staticClass:\"mb-3\"},[_vm._v(\"Upload executable files\")]),_c('p',[_vm._v(\"Note: existing files with the same name will be overwritten.\")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('vue-dropzone',{attrs:{\"id\":\"fileUpload\",\"options\":_vm.dropzoneOptions},on:{\"vdropzone-success\":_vm.fileUploaded,\"vdropzone-error\":_vm.uploadError}})],1):_vm._e(),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div v-if=\"$route.name == 'AdminSwatVersionList'\">\r\n\t\t\t<h2 class=\"mb-3\">SWAT Executable Versions</h2>\r\n\r\n\t\t\t<grid-view api-url=\"admin/swatversions\"\r\n\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t   collection-description=\"SWAT versions\"\r\n\t\t\t\t\t   item-name=\"version\"\r\n\t\t\t\t\t   show-create create-route=\"create\"></grid-view>\r\n\r\n\t\t\t<hr class=\"my-4\" />\r\n\t\t\t<h3 class=\"mb-3\">Upload executable files</h3>\r\n\t\t\t<p>Note: existing files with the same name will be overwritten.</p>\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\t\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\r\n\t\t\t<vue-dropzone id=\"fileUpload\" :options=\"dropzoneOptions\" @vdropzone-success=\"fileUploaded\" @vdropzone-error=\"uploadError\"></vue-dropzone>\r\n\t\t</div>\r\n\t\t<router-view></router-view>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport vue2Dropzone from 'vue2-dropzone';\r\n\timport 'vue2-dropzone/dist/vue2Dropzone.min.css';\r\n\timport GridView from '@/components/helpers/GridView';\r\n\r\n\texport default {\r\n\t\tname: 'AdminSwatVersionList',\r\n\t\tcomponents: {\r\n\t\t\tvueDropzone: vue2Dropzone, GridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\tsaveErrors: []\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true },\r\n\t\t\t\t\t\t{ key: 'releaseFileName', sortable: true },\r\n\t\t\t\t\t\t{ key: 'debugFileName', sortable: true },\r\n\t\t\t\t\t\t{ key: 'isDefault', label: 'Default?', sortable: true, formatter: (value) => { return value ? 'Yes' : 'No' } },\r\n\t\t\t\t\t\t{ key: 'isDisabled', label: 'Disabled?', sortable: true, formatter: (value) => { return value ? 'Yes' : 'No' } }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'name',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t},\r\n\t\t\t\tdropzoneOptions: {\r\n\t\t\t\t\turl: `/api/admin/swatversions/upload`,\r\n\t\t\t\t\theaders: this.getTokenHeaderPart(),\r\n\t\t\t\t\tacceptedFiles: '.exe',\r\n\t\t\t\t\ttimeout: 300000\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync fileUploaded(file, response) {\r\n\t\t\t\tthis.log(response);\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t},\r\n\t\t\tuploadError(file, message, xhr) {\r\n\t\t\t\tthis.log(file);\r\n\t\t\t\tthis.log(xhr);\r\n\t\t\t\tthis.page.saveErrors.push(message);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminSwatVersionList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminSwatVersionList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminSwatVersionList.vue?vue&type=template&id=4f54ccbe&\"\nimport script from \"./AdminSwatVersionList.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminSwatVersionList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Edit SWAT version\")]),_c('admin-swat-version-form',{attrs:{\"is-update\":\"\",\"data\":_vm.data}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('success-alert',{ref:\"savedAlert\",attrs:{\"text\":\"Changes saved.\"}}),_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),_c('b-form',[_c('b-form-group',{attrs:{\"label\":\"Name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.name)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.name)},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}})],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Release executable file name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.releaseFileName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.releaseFileName)},model:{value:(_vm.form.releaseFileName),callback:function ($$v) {_vm.$set(_vm.form, \"releaseFileName\", $$v)},expression:\"form.releaseFileName\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Debug executable file name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.debugFileName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.debugFileName)},model:{value:(_vm.form.debugFileName),callback:function ($$v) {_vm.$set(_vm.form, \"debugFileName\", $$v)},expression:\"form.debugFileName\"}})],1)],1)],1),_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.form.isDefault),callback:function ($$v) {_vm.$set(_vm.form, \"isDefault\", $$v)},expression:\"form.isDefault\"}},[_vm._v(\"Set as default version?\")])],1),_c('b-form-group',{staticClass:\"mb-4\"},[_c('b-checkbox',{model:{value:(_vm.form.isDisabled),callback:function ($$v) {_vm.$set(_vm.form, \"isDisabled\", $$v)},expression:\"form.isDisabled\"}},[_vm._v(\"Disabled? Check to not include in drop-down form.\")])],1)],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving},nativeOn:{\"click\":function($event){return _vm.save.apply(null, arguments)}}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(_vm.isUpdate && _vm.isAuthorized(_vm.roleNames.admin))?_c('b-button',{staticClass:\"ml-auto\",attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")]):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this SWAT version? This action is permanent and cannot be undone. Files will not be removed from the server. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<success-alert ref=\"savedAlert\" text=\"Changes saved.\" />\r\n\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t<b-form>\r\n\t\t\t<b-form-group label=\"Name\" :invalid-feedback=\"requiredFeedback($v.form.name)\">\r\n\t\t\t\t<b-form-input v-model=\"form.name\" type=\"text\" autofocus :state=\"getValidState($v.form.name)\"></b-form-input>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<b-row>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"Release executable file name\" :invalid-feedback=\"requiredFeedback($v.form.releaseFileName)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.releaseFileName\" type=\"text\" :state=\"getValidState($v.form.releaseFileName)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t\t<b-col md>\r\n\t\t\t\t\t<b-form-group label=\"Debug executable file name\" :invalid-feedback=\"requiredFeedback($v.form.debugFileName)\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"form.debugFileName\" type=\"text\" :state=\"getValidState($v.form.debugFileName)\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t</b-col>\r\n\t\t\t</b-row>\r\n\r\n\t\t\t<b-form-group>\r\n\t\t\t\t<b-checkbox v-model=\"form.isDefault\">Set as default version?</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\r\n\t\t\t<b-form-group class=\"mb-4\">\r\n\t\t\t\t<b-checkbox v-model=\"form.isDisabled\">Disabled? Check to not include in drop-down form.</b-checkbox>\r\n\t\t\t</b-form-group>\r\n\t\t</b-form>\r\n\r\n\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" @click.native=\"save\" />\r\n\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t<b-button v-if=\"isUpdate && isAuthorized(roleNames.admin)\" variant=\"danger\" @click=\"page.delete.show = true\" class=\"ml-auto\">Delete</b-button>\r\n\t\t</fixed-action-bar>\r\n\r\n\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t<p>\r\n\t\t\t\tAre you sure you want to delete this SWAT version?\r\n\t\t\t\tThis action is permanent and cannot be undone. Files will not be removed from the server.\r\n\t\t\t</p>\r\n\r\n\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t</div>\r\n\t\t</b-modal>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\r\n\texport default {\r\n\t\tname: 'AdminSwatVersionForm',\r\n\t\tprops: {\r\n\t\t\tisUpdate: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tdata: {\r\n\t\t\t\ttype: Object,\r\n\t\t\t\trequired: true\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tform: this.data\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tname: { required },\r\n\t\t\t\treleaseFileName: { required },\r\n\t\t\t\tdebugFileName: { required },\r\n\t\t\t\tisDefault: {},\r\n\t\t\t\tisDisabled: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.$v.$touch();\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.page.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tif (!this.isUpdate) {\r\n\t\t\t\t\t\t\tawait this.$http.post('admin/swatversions', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\t\tthis.$router.push({ name: 'AdminSwatVersionList' }).catch(err => { this.log(err); });\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tawait this.$http.put(`admin/swatversions/${this.form.id}`, this.form, this.getTokenHeader());\r\n\t\t\t\t\t\t\tthis.$refs.savedAlert.startAlert();\r\n\t\t\t\t\t\t\tthis.$v.$reset();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.delete(`admin/swatversions/${this.form.id}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'AdminSwatVersionList' }).catch(err => { this.log(err); });\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminSwatVersionForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminSwatVersionForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminSwatVersionForm.vue?vue&type=template&id=a1b784d0&\"\nimport script from \"./AdminSwatVersionForm.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminSwatVersionForm.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Edit SWAT version</h2>\r\n\r\n\t\t\t<admin-swat-version-form is-update :data=\"data\"></admin-swat-version-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport AdminSwatVersionForm from '@/views/admin/datasets/swatversions/AdminSwatVersionForm';\r\n\r\n\texport default {\r\n\t\tname: 'AdminSwatVersionView',\r\n\t\tcomponents: {\r\n\t\t\tAdminSwatVersionForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tversionID: this.$route.params.id,\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\t\t\t\tthis.versionID = this.$route.params.id;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`admin/swatversions/${this.versionID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminSwatVersionView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminSwatVersionView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminSwatVersionView.vue?vue&type=template&id=6a49d9ba&\"\nimport script from \"./AdminSwatVersionView.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminSwatVersionView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"require-admin\":\"\"}},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Create a new SWAT version\")]),_c('p',[_vm._v(\"Files must be uploaded or placed on the server.\")]),_c('admin-swat-version-form',{attrs:{\"data\":_vm.data}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" require-admin>\r\n\t\t\t<h2 class=\"mb-4\">Create a new SWAT version</h2>\n\t\t\t<p>Files must be uploaded or placed on the server.</p>\r\n\r\n\t\t\t<admin-swat-version-form :data=\"data\"></admin-swat-version-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport AdminSwatVersionForm from '@/views/admin/datasets/swatversions/AdminSwatVersionForm';\r\n\r\n\texport default {\r\n\t\tname: 'AdminSwatVersionCreate',\r\n\t\tcomponents: {\r\n\t\t\tAdminSwatVersionForm\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminSwatVersionCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminSwatVersionCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminSwatVersionCreate.vue?vue&type=template&id=12b977ca&\"\nimport script from \"./AdminSwatVersionCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminSwatVersionCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('div',{attrs:{\"id\":\"main-panel\"}},[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',{staticClass:\"max-w-400 mx-auto py-4\"},[_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),(_vm.page.success)?_c('div',[_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(\" We verified your account from version 1 and sent an email to the address on file. The email will contain a link with instructions on how to proceed. If you do not receive an email within a few hours, check your junk folders, then please contact support if you cannot find it. \")])],1):_c('div',[_c('p',[_vm._v(\" If you were a user from version 1 of HAWQS, enter either your user name or email address for your account below. If we find your account, we'll send an email to the address on file. \")]),_c('p',[_vm._v(\" After your email is confirmed, you will set up your account in the new version of HAWQS and import your projects from version 1. \")]),_c('b-form',{staticClass:\"my-4\",on:{\"submit\":function($event){$event.preventDefault();return _vm.checkUser.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"HAWQS version 1 user name\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.form.userName),callback:function ($$v) {_vm.$set(_vm.form, \"userName\", $$v)},expression:\"form.userName\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Or, enter your email address\"}},[_c('b-form-input',{attrs:{\"type\":\"email\"},model:{value:(_vm.form.email),callback:function ($$v) {_vm.$set(_vm.form, \"email\", $$v)},expression:\"form.email\"}})],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.saving,\"text\":\"Find my account\",\"size\":\"lg\"}})],1)],1)],1)],1):_vm._e()],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t\t\t<div v-if=\"!page.loading\" class=\"max-w-400 mx-auto py-4\">\r\n\t\t\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t\t\t<div v-if=\"page.success\">\r\n\t\t\t\t\t\t<b-alert show variant=\"info\">\r\n\t\t\t\t\t\t\tWe verified your account from version 1 and sent an email to the address on file.\n\t\t\t\t\t\t\tThe email will contain a link with instructions on how to proceed.\n\t\t\t\t\t\t\tIf you do not receive an email within a few hours, check your junk folders, then please contact support if you cannot find it. \r\n\t\t\t\t\t\t</b-alert>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else>\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\tIf you were a user from version 1 of HAWQS, enter either your user name or\n\t\t\t\t\t\t\temail address for your account below. If we find your account, we'll send an email to\n\t\t\t\t\t\t\tthe address on file. \n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\tAfter your email is confirmed, you will set up your account in the new version of HAWQS\n\t\t\t\t\t\t\tand import your projects from version 1.\n\t\t\t\t\t\t</p>\n\r\n\t\t\t\t\t\t<b-form @submit.prevent=\"checkUser\" class=\"my-4\">\r\n\t\t\t\t\t\t\t<b-form-group label=\"HAWQS version 1 user name\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.userName\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Or, enter your email address\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.email\" type=\"email\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" text=\"Find my account\" size=\"lg\" />\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\texport default {\r\n\t\tname: 'Version1CheckUser',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tsuccess: false\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tuserName: null,\r\n\t\t\t\t\temail: null\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync checkUser() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\n\t\t\t\tthis.page.success = false;\r\n\r\n\t\t\t\tif (this.isNullOrEmpty(this.form.userName) && this.isNullOrEmpty(this.form.email)) {\r\n\t\t\t\t\tthis.page.errors.push('Please enter either your user name or email address from HAWQS version 1.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tawait this.$http.post('version1/checkuser', this.form);\r\n\t\t\t\t\t\tthis.page.success = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Version1CheckUser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Version1CheckUser.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Version1CheckUser.vue?vue&type=template&id=011e4ae8&\"\nimport script from \"./Version1CheckUser.vue?vue&type=script&lang=js&\"\nexport * from \"./Version1CheckUser.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('div',{attrs:{\"id\":\"main-panel\"}},[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',[(_vm.page.registered)?_c('div',{staticClass:\"max-w-400 mx-auto py-4\"},[_c('b-alert',{staticClass:\"mb-3\",attrs:{\"show\":\"\",\"variant\":\"success\"}},[_vm._v(\" Account successfully registered. If you selected projects to import, this will finish in the background over the next several hours. \")]),_c('p',[_c('b-button',{attrs:{\"to\":\"/projects\"}},[_vm._v(\"Log in\")])],1)],1):(_vm.page.verified)?_c('div',{staticClass:\"container py-5\"},[_c('h2',{staticClass:\"mb-4\"},[_vm._v(\"Account registration from HAWQS version 1\")]),_c('p',[_vm._v(\" Update your information below and select a new password. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),_c('b-form',{staticClass:\"my-4\",on:{\"submit\":function($event){$event.preventDefault();return _vm.register.apply(null, arguments)}}},[_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"First name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.register.firstName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"autofocus\":\"\",\"state\":_vm.getValidState(_vm.$v.form.register.firstName)},model:{value:(_vm.$v.form.register.firstName.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.firstName, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.firstName.$model\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Last name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.register.lastName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.register.lastName)},model:{value:(_vm.$v.form.register.lastName.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.lastName, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.lastName.$model\"}})],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Email address\",\"description\":\"Cannot be changed during registration. You may update your email after the registration process is complete.\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"readonly\":\"\"},model:{value:(_vm.$v.form.register.email.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.email, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.email.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Company or organization\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.register.affiliation)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.register.affiliation)},model:{value:(_vm.$v.form.register.affiliation.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.affiliation, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.affiliation.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Category\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.register.organizationCategory)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.organizationCategories,\"state\":_vm.getValidState(_vm.$v.form.register.organizationCategory)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a category --\")])]},proxy:true}],null,false,404444676),model:{value:(_vm.$v.form.register.organizationCategory.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.organizationCategory, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.organizationCategory.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"What is your reason for trying HAWQS?\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.register.reasonForUse)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.register.reasonForUse)},model:{value:(_vm.$v.form.register.reasonForUse.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.reasonForUse, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.reasonForUse.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"In what country are you located?\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.register.country)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.countries,\"state\":_vm.getValidState(_vm.$v.form.register.country)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a country --\")])]},proxy:true}],null,false,584122172),model:{value:(_vm.$v.form.register.country.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.country, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.country.$model\"}})],1),(_vm.form.register.country === 'United States')?_c('b-form-group',{attrs:{\"label\":\"Select your state or territory\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.register.state)}},[_c('b-form-select',{attrs:{\"options\":_vm.location.states,\"state\":_vm.getValidState(_vm.$v.form.register.state)},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('option',{attrs:{\"disabled\":\"\"},domProps:{\"value\":null}},[_vm._v(\"-- Select a state or territory --\")])]},proxy:true}],null,false,2159271862),model:{value:(_vm.$v.form.register.state.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.state, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.state.$model\"}})],1):_vm._e(),_c('hr',{staticClass:\"my-3\"}),_c('b-form-group',{attrs:{\"label\":\"Enter a user name\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.register.userName)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.register.userName)},model:{value:(_vm.$v.form.register.userName.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.userName, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.userName.$model\"}})],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Password\",\"description\":\"Minimum 10 characters with a number and special character\"}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.form.register.password)},model:{value:(_vm.$v.form.register.password.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.password, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.password.$model\"}}),(!_vm.$v.form.register.password.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.form.register.password.strongPassword)?_c('b-form-invalid-feedback',[_vm._v(\"Must be at least 10 characters with a number and special character\")]):_vm._e()],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Confirm your password\"}},[_c('b-form-input',{attrs:{\"type\":\"password\",\"state\":_vm.getValidState(_vm.$v.form.register.comparePassword)},model:{value:(_vm.$v.form.register.comparePassword.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.comparePassword, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.comparePassword.$model\"}}),(!_vm.$v.form.register.comparePassword.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.form.register.comparePassword.sameAsPassword)?_c('b-form-invalid-feedback',[_vm._v(\"Passwords must match\")]):_vm._e()],1)],1)],1),(_vm.projects.length > 0)?_c('div',[_c('p',[_vm._v(\" We can import your project and scenario settings from version 1 of HAWQS. This will import input settings only, and you will need to re-run scenarios as needed once imported. The following inputs cannot be imported: landuse update, point source, and print variables. You will need to visit the old version of HAWQS and upload this data to your projects after they are imported. Please select which projects you want to import from the list below. \")]),_c('div',{staticClass:\"checklist-header\"},[_c('b-form-checkbox',{on:{\"change\":_vm.toggleAllProjects},model:{value:(_vm.$v.form.register.importAllProjects.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.register.importAllProjects, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.register.importAllProjects.$model\"}},[_vm._v(\" Import Projects \")])],1),_c('div',{staticClass:\"checklist\"},[_c('b-form-checkbox-group',{attrs:{\"stacked\":\"\"},model:{value:(_vm.form.register.projectsToImport),callback:function ($$v) {_vm.$set(_vm.form.register, \"projectsToImport\", $$v)},expression:\"form.register.projectsToImport\"}},_vm._l((_vm.projects),function(p,i){return _c('div',{key:i,staticClass:\"item\"},[_c('b-form-checkbox',{attrs:{\"value\":p.id}},[_vm._v(_vm._s(p.name))])],1)}),0)],1)]):_vm._e(),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.saving,\"text\":\"Register\",\"size\":\"lg\"}})],1)],1)],1):_c('div',{staticClass:\"max-w-400 mx-auto py-4\"},[_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),_c('p',[_vm._v(\" Please submit your verification code and email address to continue. \")]),_c('b-form',{staticClass:\"my-4\",on:{\"submit\":function($event){$event.preventDefault();return _vm.verifyUser.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"Verification code\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.verify.code)}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.verify.code)},model:{value:(_vm.$v.form.verify.code.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.verify.code, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.verify.code.$model\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Email address\"}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.getValidState(_vm.$v.form.verify.email)},model:{value:(_vm.$v.form.verify.email.$model),callback:function ($$v) {_vm.$set(_vm.$v.form.verify.email, \"$model\", (typeof $$v === 'string'? $$v.trim(): $$v))},expression:\"$v.form.verify.email.$model\"}}),(!_vm.$v.form.verify.email.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.form.verify.email.email)?_c('b-form-invalid-feedback',[_vm._v(\"Please enter a valid email address\")]):_vm._e()],1),_c('div',{staticClass:\"mt-4\"},[_c('save-button',{attrs:{\"saving\":_vm.page.saving,\"text\":\"Verify my account\",\"size\":\"lg\"}})],1)],1)],1)]):_vm._e()],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t\t\t<div v-if=\"!page.loading\">\r\n\t\t\t\t\t<div v-if=\"page.registered\" class=\"max-w-400 mx-auto py-4\">\r\n\t\t\t\t\t\t<b-alert show variant=\"success\" class=\"mb-3\">\r\n\t\t\t\t\t\t\tAccount successfully registered. If you selected projects to import, this will\n\t\t\t\t\t\t\tfinish in the background over the next several hours.\r\n\t\t\t\t\t\t</b-alert>\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<b-button to=\"/projects\">Log in</b-button>\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else-if=\"page.verified\" class=\"container py-5\">\r\n\t\t\t\t\t\t<h2 class=\"mb-4\">Account registration from HAWQS version 1</h2>\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tUpdate your information below and select a new password.\r\n\t\t\t\t\t\t</p>\n\r\n\t\t\t\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<b-form @submit.prevent=\"register\" class=\"my-4\">\r\n\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"First name\" :invalid-feedback=\"requiredFeedback($v.form.register.firstName)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.register.firstName.$model\" type=\"text\" autofocus :state=\"getValidState($v.form.register.firstName)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Last name\" :invalid-feedback=\"requiredFeedback($v.form.register.lastName)\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.register.lastName.$model\" type=\"text\" :state=\"getValidState($v.form.register.lastName)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Email address\" description=\"Cannot be changed during registration. You may update your email after the registration process is complete.\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.register.email.$model\" type=\"email\" readonly></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Company or organization\" :invalid-feedback=\"requiredFeedback($v.form.register.affiliation)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.register.affiliation.$model\" type=\"text\" :state=\"getValidState($v.form.register.affiliation)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Category\" :invalid-feedback=\"requiredFeedback($v.form.register.organizationCategory)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.form.register.organizationCategory.$model\" :options=\"location.organizationCategories\" :state=\"getValidState($v.form.register.organizationCategory)\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a category --</option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"What is your reason for trying HAWQS?\" :invalid-feedback=\"requiredFeedback($v.form.register.reasonForUse)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.register.reasonForUse.$model\" type=\"text\" :state=\"getValidState($v.form.register.reasonForUse)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"In what country are you located?\" :invalid-feedback=\"requiredFeedback($v.form.register.country)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.form.register.country.$model\" :options=\"location.countries\" :state=\"getValidState($v.form.register.country)\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a country --</option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group v-if=\"form.register.country === 'United States'\" label=\"Select your state or territory\" :invalid-feedback=\"requiredFeedback($v.form.register.state)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model.trim=\"$v.form.register.state.$model\" :options=\"location.states\" :state=\"getValidState($v.form.register.state)\">\r\n\t\t\t\t\t\t\t\t\t<template v-slot:first>\r\n\t\t\t\t\t\t\t\t\t\t<option :value=\"null\" disabled>-- Select a state or territory --</option>\r\n\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<hr class=\"my-3\" />\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Enter a user name\" :invalid-feedback=\"requiredFeedback($v.form.register.userName)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.register.userName.$model\" type=\"text\" :state=\"getValidState($v.form.register.userName)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Password\" description=\"Minimum 10 characters with a number and special character\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.register.password.$model\" type=\"password\" :state=\"getValidState($v.form.register.password)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.register.password.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.register.password.strongPassword\">Must be at least 10 characters with a number and special character</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t\t\t<b-form-group label=\"Confirm your password\">\r\n\t\t\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.register.comparePassword.$model\" type=\"password\" :state=\"getValidState($v.form.register.comparePassword)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.register.comparePassword.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.register.comparePassword.sameAsPassword\">Passwords must match</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t\t\t<div v-if=\"projects.length > 0\">\r\n\t\t\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\t\t\tWe can import your project and scenario settings from version 1 of HAWQS. This will import input settings only, and you will need to re-run scenarios as needed once imported.\r\n\t\t\t\t\t\t\t\t\tThe following inputs cannot be imported: landuse update, point source, and print variables.\r\n\t\t\t\t\t\t\t\t\tYou will need to visit the old version of HAWQS and upload this data to your projects after they are imported.\r\n\t\t\t\t\t\t\t\t\tPlease select which projects you want to import from the list below.\r\n\t\t\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t\t\t<div class=\"checklist-header\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox v-model.trim=\"$v.form.register.importAllProjects.$model\" @change=\"toggleAllProjects\">\r\n\t\t\t\t\t\t\t\t\t\tImport Projects\r\n\t\t\t\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div class=\"checklist\">\r\n\t\t\t\t\t\t\t\t\t<b-form-checkbox-group v-model=\"form.register.projectsToImport\" stacked>\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"item\" v-for=\"(p, i) in projects\" :key=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t\t<b-form-checkbox :value=\"p.id\">{{p.name}}</b-form-checkbox>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</b-form-checkbox-group>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" text=\"Register\" size=\"lg\" />\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else class=\"max-w-400 mx-auto py-4\">\r\n\t\t\t\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tPlease submit your verification code and email address to continue.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<b-form @submit.prevent=\"verifyUser\" class=\"my-4\">\r\n\t\t\t\t\t\t\t<b-form-group label=\"Verification code\" :invalid-feedback=\"requiredFeedback($v.form.verify.code)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.verify.code.$model\" type=\"text\" :state=\"getValidState($v.form.verify.code)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<b-form-group label=\"Email address\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model.trim=\"$v.form.verify.email.$model\" type=\"email\" :state=\"getValidState($v.form.verify.email)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.verify.email.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.verify.email.email\">Please enter a valid email address</b-form-invalid-feedback>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t\t\t<div class=\"mt-4\">\r\n\t\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" text=\"Verify my account\" size=\"lg\" />\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</b-form>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required, requiredIf, email, sameAs } from 'vuelidate/lib/validators';\r\n\timport DashboardHeader from '@/components/DashboardHeader';\n\r\n\texport default {\r\n\t\tname: 'Version1VerifyUser',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tsaving: false,\r\n\t\t\t\t\tverified: false,\n\t\t\t\t\tregistered: false\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tverify: {\n\t\t\t\t\t\temail: null,\n\t\t\t\t\t\tcode: this.$route.params.code\r\n\t\t\t\t\t},\n\t\t\t\t\tregister: {\n\t\t\t\t\t\tfirstName: null,\r\n\t\t\t\t\t\tlastName: null,\r\n\t\t\t\t\t\temail: null,\r\n\t\t\t\t\t\tuserName: null,\r\n\t\t\t\t\t\tpassword: null,\r\n\t\t\t\t\t\tcomparePassword: null,\r\n\t\t\t\t\t\tcountry: 'United States',\r\n\t\t\t\t\t\tstate: null,\r\n\t\t\t\t\t\taffiliation: null,\r\n\t\t\t\t\t\torganizationCategory: null,\r\n\t\t\t\t\t\treasonForUse: null,\n\t\t\t\t\t\timportAllProjects: false,\n\t\t\t\t\t\tprojectsToImport: []\r\n\t\t\t\t\t}\r\n\t\t\t\t},\n\t\t\t\tprojects: [],\n\t\t\t\tlocation: {\n\t\t\t\t\tcountries: [],\n\t\t\t\t\tstates: [],\n\t\t\t\t\torganizationCategories: []\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tregister: {\r\n\t\t\t\t\tfirstName: { required },\r\n\t\t\t\t\tlastName: { required },\r\n\t\t\t\t\temail: { required, email },\r\n\t\t\t\t\tuserName: { required },\r\n\t\t\t\t\tpassword: {\r\n\t\t\t\t\t\trequired,\r\n\t\t\t\t\t\tstrongPassword(password) {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t/[a-z]/.test(password) && // checks for a-z\r\n\t\t\t\t\t\t\t\t/[0-9]/.test(password) && // checks for 0-9\r\n\t\t\t\t\t\t\t\t/\\W|_/.test(password) && // checks for special char\r\n\t\t\t\t\t\t\t\tpassword.length >= 10\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tcomparePassword: { required, sameAsPassword: sameAs('password') },\r\n\t\t\t\t\tcountry: { required },\r\n\t\t\t\t\tstate: { required: requiredIf(function () { return this.form.register.country == 'United States'; }) },\r\n\t\t\t\t\torganizationCategory: { required },\r\n\t\t\t\t\taffiliation: { required },\r\n\t\t\t\t\treasonForUse: { required },\n\t\t\t\t\timportAllProjects: {},\n\t\t\t\t\tprojectsToImport: {}\r\n\t\t\t\t},\n\t\t\t\tverify: {\n\t\t\t\t\temail: { required, email },\n\t\t\t\t\tcode: { required }\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync verifyUser() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.page.verified = false;\r\n\t\t\t\tthis.page.registered = false;\n\t\t\t\tthis.$v.form.verify.$touch();\r\n\r\n\t\t\t\tif (this.$v.form.verify.$invalid) {\r\n\t\t\t\t\tthis.page.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.post('version1/verify', this.form.verify);\n\t\t\t\t\t\tthis.form.register = {\n\t\t\t\t\t\t\tfirstName: response.data.firstName,\r\n\t\t\t\t\t\t\tlastName: response.data.lastName,\r\n\t\t\t\t\t\t\temail: response.data.email,\r\n\t\t\t\t\t\t\tuserName: response.data.userName,\r\n\t\t\t\t\t\t\tpassword: null,\r\n\t\t\t\t\t\t\tcomparePassword: null,\r\n\t\t\t\t\t\t\tcountry: 'United States',\r\n\t\t\t\t\t\t\tstate: null,\r\n\t\t\t\t\t\t\torganizationCategory: null,\r\n\t\t\t\t\t\t\taffiliation: response.data.affiliation,\r\n\t\t\t\t\t\t\treasonForUse: response.data.reasonForUse,\n\t\t\t\t\t\t\timportAllProjects: false,\n\t\t\t\t\t\t\tprojectsToImport: []\r\n\t\t\t\t\t\t};\n\t\t\t\t\t\tthis.projects = response.data.projects;\n\t\t\t\t\t\tthis.location = response.data.location;\r\n\t\t\t\t\t\tthis.page.verified = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\tasync register() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.page.registered = false;\n\t\t\t\tthis.$v.form.register.$touch();\r\n\r\n\t\t\t\tif (this.$v.form.register.$invalid) {\r\n\t\t\t\t\tthis.page.errors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\n\t\t\t\t\t\tvar data = {\r\n\t\t\t\t\t\t\tfirstName: this.form.register.firstName,\r\n\t\t\t\t\t\t\tlastName: this.form.register.lastName,\r\n\t\t\t\t\t\t\temail: this.form.register.email,\r\n\t\t\t\t\t\t\tuserName: this.form.register.userName,\r\n\t\t\t\t\t\t\tpassword: this.form.register.password,\r\n\t\t\t\t\t\t\tcountry: this.form.register.country,\r\n\t\t\t\t\t\t\tstate: this.form.register.state,\r\n\t\t\t\t\t\t\torganizationCategory: this.form.register.organizationCategory,\r\n\t\t\t\t\t\t\taffiliation: this.form.register.affiliation,\r\n\t\t\t\t\t\t\treasonForUse: this.form.register.reasonForUse,\r\n\t\t\t\t\t\t\timportAllProjects: this.form.register.importAllProjects,\r\n\t\t\t\t\t\t\tprojectsToImport: this.form.register.projectsToImport\r\n\t\t\t\t\t\t};\n\t\t\t\t\t\tthis.log(data);\n\r\n\t\t\t\t\t\tawait this.$http.post('version1/register', data);\t\t\t\t\t\t\r\n\t\t\t\t\t\tthis.page.registered = true;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\tasync toggleAllProjects(checked) {\r\n\t\t\t\tthis.form.register.projectsToImport = checked ? this.projects.map(function (i) { return i.id }) : [];\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Version1VerifyUser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Version1VerifyUser.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Version1VerifyUser.vue?vue&type=template&id=590ad0cf&\"\nimport script from \"./Version1VerifyUser.vue?vue&type=script&lang=js&\"\nexport * from \"./Version1VerifyUser.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('dashboard-header'),_c('div',{attrs:{\"id\":\"content-frame\"}},[_c('div',{attrs:{\"id\":\"main-panel\"}},[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[_c('b-container',{staticClass:\"p-0\",attrs:{\"fluid\":\"\"}},[_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{staticClass:\"fixed-height bg-light\",attrs:{\"md\":\"3\",\"lg\":\"2\",\"order\":\"2\",\"order-md\":\"1\"}},[_c('div',{staticClass:\"px-3 pt-md-4\"},[_c('b-nav',{staticClass:\"dash-items-nav nav-lg\",attrs:{\"vertical\":\"\"}},[(_vm.hasFeatureAccess(_vm.featureNames.batchProjects) && _vm.isAuthorized(_vm.roleNames.apiUser))?_c('b-nav-item',{attrs:{\"to\":\"/api/batch\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'tasks'],\"fixed-width\":\"\"}}),_vm._v(\" Batch project runs\")],1):_vm._e(),(_vm.hasFeatureAccess(_vm.featureNames.regionalProjects))?_c('b-nav-item',{attrs:{\"to\":\"/api/regional\"}},[_c('font-awesome-icon',{staticClass:\"mr-3\",attrs:{\"icon\":['fas', 'map-location'],\"fixed-width\":\"\"}}),_vm._v(\" Regional project runs\")],1):_vm._e()],1)],1)]),_c('b-col',{staticClass:\"fixed-height shadow-sm no-shadow-sm\",staticStyle:{\"z-index\":\"500\"},attrs:{\"md\":\"9\",\"lg\":\"10\",\"order\":\"1\",\"order-md\":\"2\"}},[_c('b-breadcrumb',{staticClass:\"no-curves bg-white px-md-4\",attrs:{\"items\":_vm.breadCrumbs}}),_c('div',{staticClass:\"container-fluid px-md-4 pb-4\"},[(_vm.$route.name == 'ApiDashboard')?_c('div'):_vm._e(),_c('router-view')],1)],1)],1)],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<dashboard-header></dashboard-header>\r\n\r\n\t\t<div id=\"content-frame\">\r\n\t\t\t<div id=\"main-panel\">\r\n\t\t\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t\t\t<b-container fluid class=\"p-0\">\r\n\t\t\t\t\t\t<b-row no-gutters>\r\n\t\t\t\t\t\t\t<b-col md=\"3\" lg=\"2\" order=\"2\" order-md=\"1\" class=\"fixed-height bg-light\">\r\n\t\t\t\t\t\t\t\t<div class=\"px-3 pt-md-4\">\r\n\t\t\t\t\t\t\t\t\t<b-nav vertical class=\"dash-items-nav nav-lg\">\r\n\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/api/batch\" v-if=\"hasFeatureAccess(featureNames.batchProjects) && isAuthorized(roleNames.apiUser)\"><font-awesome-icon :icon=\"['fas', 'tasks']\" fixed-width class=\"mr-3\" /> Batch project runs</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t\t<b-nav-item to=\"/api/regional\" v-if=\"hasFeatureAccess(featureNames.regionalProjects)\"><font-awesome-icon :icon=\"['fas', 'map-location']\" fixed-width class=\"mr-3\" /> Regional project runs</b-nav-item>\r\n\t\t\t\t\t\t\t\t\t</b-nav>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t\t<b-col md=\"9\" lg=\"10\" order=\"1\" order-md=\"2\" class=\"fixed-height shadow-sm no-shadow-sm\" style=\"z-index:500\">\r\n\t\t\t\t\t\t\t\t<b-breadcrumb :items=\"breadCrumbs\" class=\"no-curves bg-white px-md-4\"></b-breadcrumb>\r\n\t\t\t\t\t\t\t\t<div class=\"container-fluid px-md-4 pb-4\">\r\n\t\t\t\t\t\t\t\t\t<div v-if=\"$route.name == 'ApiDashboard'\">\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<router-view></router-view>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t</b-row>\r\n\t\t\t\t\t</b-container>\r\n\t\t\t\t</page-authorization-container>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport DashboardHeader from '@/components/DashboardHeader';\r\n\r\n\texport default {\r\n\t\tname: 'ApiDashboard',\r\n\t\tcomponents: {\r\n\t\t\tDashboardHeader\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\tdata: {\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\t//await this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get('admin/dashboard', this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tbreadCrumbs() {\r\n\t\t\t\tvar crumbs = [];\r\n\t\t\t\tfor (var i = 0; i < this.$route.matched.length; i++) {\r\n\t\t\t\t\tvar item = this.$route.matched[i];\r\n\t\t\t\t\tvar name = item.meta.title ? item.meta.title : item.name;\r\n\r\n\t\t\t\t\tcrumbs.push({\r\n\t\t\t\t\t\ttext: name,\r\n\t\t\t\t\t\tto: { name: item.name }\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\treturn crumbs;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiDashboard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiDashboard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ApiDashboard.vue?vue&type=template&id=7cf29f24&\"\nimport script from \"./ApiDashboard.vue?vue&type=script&lang=js&\"\nexport * from \"./ApiDashboard.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[(_vm.$route.name == 'ApiBatchList')?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Batch project runs\")]),_c('grid-view',{attrs:{\"api-url\":\"api-requests/batch\",\"fields\":_vm.table.fields,\"default-sort\":_vm.table.sort,\"default-reverse\":_vm.table.reverse,\"collection-description\":\"batch requests\",\"item-name\":\"batch request\"}}),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('b-button',{staticClass:\"mr-2\",attrs:{\"to\":\"create\",\"append\":\"\"}},[_vm._v(\"Create a batch request\")]),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1):_vm._e(),_c('router-view')],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<div v-if=\"$route.name == 'ApiBatchList'\">\r\n\t\t\t\t<h2 class=\"mb-3\">Batch project runs</h2>\r\n\r\n\t\t\t\t<grid-view api-url=\"api-requests/batch\"\r\n\t\t\t\t\t\t   :fields=\"table.fields\"\r\n\t\t\t\t\t\t   :default-sort=\"table.sort\" :default-reverse=\"table.reverse\"\r\n\t\t\t\t\t\t   collection-description=\"batch requests\"\r\n\t\t\t\t\t\t   item-name=\"batch request\"></grid-view>\r\n\r\n\t\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t<b-button to=\"create\" append class=\"mr-2\">Create a batch request</b-button>\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</div>\r\n\t\t\t<router-view></router-view>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport GridView from '@/components/helpers/GridView';\n\timport moment from 'moment';\r\n\r\n\texport default {\r\n\t\tname: 'ApiBatchList',\r\n\t\tcomponents: {\r\n\t\t\tGridView\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\n\t\t\t\tpage: {\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false\r\n\t\t\t\t},\r\n\t\t\t\ttable: {\r\n\t\t\t\t\tfields: [\r\n\t\t\t\t\t\t{ key: 'edit', label: '' },\r\n\t\t\t\t\t\t{ key: 'name', sortable: true, class: 'min-w-200' },\r\n\t\t\t\t\t\t{ key: 'status', sortable: true },\r\n\t\t\t\t\t\t{ key: 'lastModifiedDate', sortable: true, class: 'nowrap' },\r\n\t\t\t\t\t\t{ key: 'createdDate', sortable: true, class: 'nowrap', formatter: (value) => { return moment(value).format('M/D/YYYY h:mm') } }\r\n\t\t\t\t\t],\r\n\t\t\t\t\tsort: 'lastModifiedDate',\r\n\t\t\t\t\treverse: true,\r\n\t\t\t\t\titemsPerPage: 50\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiBatchList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiBatchList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ApiBatchList.vue?vue&type=template&id=37271a72&\"\nimport script from \"./ApiBatchList.vue?vue&type=script&lang=js&\"\nexport * from \"./ApiBatchList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"show-errors-with-object\":\"\"}},[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Create a new batch\")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('div',{staticClass:\"mb-3\"},[_c('p',[_vm._v(\" Drag and drop a CSV file into the space below. Must contain a column named \\\"Ending_Subbasin\\\". If you want the project to start from somewhere other than the head, include a column \\\"Starting_Subbasins\\\". Values in this column should be comma-separated if more than one. Please include leading zeros in subbasin names. \")]),_c('vue-dropzone',{ref:\"addFile\",attrs:{\"id\":\"addFile\",\"options\":_vm.dropzoneOptions},on:{\"vdropzone-success\":_vm.fileUploaded,\"vdropzone-error\":_vm.uploadError}})],1),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":\"Batch name\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.name)},model:{value:(_vm.form.name),callback:function ($$v) {_vm.$set(_vm.form, \"name\", $$v)},expression:\"form.name\"}}),(!_vm.$v.form.name.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.form.name.hasAlphaNumeric)?_c('b-form-invalid-feedback',[_vm._v(\"Must contain at least one letter or number\")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":`${_vm.siteText.siteName} dataset`,\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.datasetID)}},[_c('b-form-select',{attrs:{\"state\":_vm.getValidState(_vm.$v.form.batch.datasetID)},on:{\"change\":_vm.getDataset},model:{value:(_vm.form.batch.datasetID),callback:function ($$v) {_vm.$set(_vm.form.batch, \"datasetID\", $$v)},expression:\"form.batch.datasetID\"}},[_vm._l((_vm.options.datasets),function(o,i){return _c('b-form-select-option-group',{key:i,attrs:{\"label\":_vm.isNullOrEmpty(o.label) ? 'System datasets' : o.label,\"options\":o.options}})}),(_vm.options.userDatasets.length > 0)?_c('b-form-select-option-group',{attrs:{\"label\":\"User-submitted datasets\",\"options\":_vm.options.userDatasets}}):_vm._e()],2)],1),_c('page-loading',{attrs:{\"loading\":_vm.page.dataset.loading}}),(!_vm.isNullOrEmpty(_vm.form.batch.datasetID) && !_vm.page.dataset.loading)?_c('div',[_c('h3',{staticClass:\"mt-4 mb-3 h5\"},[_vm._v(\"Batch options\")]),_c('div',{staticClass:\"my-3\"},[_c('b-form-checkbox',{model:{value:(_vm.form.batch.setAsSingleSubbasinProjects),callback:function ($$v) {_vm.$set(_vm.form.batch, \"setAsSingleSubbasinProjects\", $$v)},expression:\"form.batch.setAsSingleSubbasinProjects\"}},[_vm._v(\"Create single subbasin projects (no routing to head of watershed; \\\"Starting_Subbasins\\\" column in CSV will be ignored)\")])],1),_c('div',{staticClass:\"my-3\"},[_c('b-form-checkbox',{model:{value:(_vm.form.batch.useSubbasinAsNames),callback:function ($$v) {_vm.$set(_vm.form.batch, \"useSubbasinAsNames\", $$v)},expression:\"form.batch.useSubbasinAsNames\"}},[_vm._v(\"Use subbasin name as the project and scenario name\")])],1),(false)?_c('div',{staticClass:\"my-3\"},[_c('b-form-checkbox',{model:{value:(_vm.form.batch.deleteProjectsWhenDone),callback:function ($$v) {_vm.$set(_vm.form.batch, \"deleteProjectsWhenDone\", $$v)},expression:\"form.batch.deleteProjectsWhenDone\"}},[_vm._v(\"Delete projects from \"+_vm._s(_vm.siteText.siteName)+\" system when done (recommended unless you plan to use the project in the website GUI)\")])],1):_vm._e(),_c('h3',{staticClass:\"mt-4 mb-3 h5\"},[_vm._v(\"HRU settings\")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Select a method for reducing HRUs\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.setHruMethod)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.hruMethods,\"state\":_vm.getValidState(_vm.$v.form.batch.setHruMethod)},model:{value:(_vm.form.batch.setHruMethod),callback:function ($$v) {_vm.$set(_vm.form.batch, \"setHruMethod\", $$v)},expression:\"form.batch.setHruMethod\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Amount/Target\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.targetThreshold)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"any\",\"state\":_vm.getValidState(_vm.$v.form.batch.targetThreshold)},model:{value:(_vm.form.batch.targetThreshold),callback:function ($$v) {_vm.$set(_vm.form.batch, \"targetThreshold\", $$v)},expression:\"form.batch.targetThreshold\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Units\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.setHruUnits)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.hruUnits,\"state\":_vm.getValidState(_vm.$v.form.batch.setHruUnits)},model:{value:(_vm.form.batch.setHruUnits),callback:function ($$v) {_vm.$set(_vm.form.batch, \"setHruUnits\", $$v)},expression:\"form.batch.setHruUnits\"}})],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"Exempt land use\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.formattedForm.exemptLanduse),callback:function ($$v) {_vm.$set(_vm.formattedForm, \"exemptLanduse\", $$v)},expression:\"formattedForm.exemptLanduse\"}})],1),_c('b-form-group',{attrs:{\"label\":\"Land use to NOT redistribute area to\"}},[_c('b-form-input',{attrs:{\"type\":\"text\"},model:{value:(_vm.formattedForm.noAreaRedistribution),callback:function ($$v) {_vm.$set(_vm.formattedForm, \"noAreaRedistribution\", $$v)},expression:\"formattedForm.noAreaRedistribution\"}})],1),_c('h3',{staticClass:\"mt-4 mb-3 h5\"},[_vm._v(\"Simulation settings\")]),_c('b-form-group',{attrs:{\"label\":\"Weather data\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.weatherDatasetID)}},[_c('b-form-select',{attrs:{\"state\":_vm.getValidState(_vm.$v.form.batch.weatherDatasetID)},on:{\"change\":_vm.updateWeatherOptions},model:{value:(_vm.form.batch.weatherDatasetID),callback:function ($$v) {_vm.$set(_vm.form.batch, \"weatherDatasetID\", $$v)},expression:\"form.batch.weatherDatasetID\"}},_vm._l((_vm.datasetOptions.weatherDatasets),function(group,i){return _c('optgroup',{key:i,attrs:{\"label\":group.label}},_vm._l((group.options),function(opt,j){return _c('option',{key:j,domProps:{\"value\":opt.id}},[_vm._v(_vm._s(opt.name))])}),0)}),0)],1),(_vm.weatherOptions.showClimateChange)?_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Climate time period\"}},[_c('b-form-select',{on:{\"change\":_vm.updateClimateTimePeriod},model:{value:(_vm.form.batch.climateChangeTimePeriodID),callback:function ($$v) {_vm.$set(_vm.form.batch, \"climateChangeTimePeriodID\", $$v)},expression:\"form.batch.climateChangeTimePeriodID\"}},_vm._l((_vm.climateTimePeriodOptions),function(opt,i){return _c('option',{key:i,domProps:{\"value\":opt.id}},[_vm._v(_vm._s(opt.name))])}),0)],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Climate scenario\"}},[_c('b-form-select',{model:{value:(_vm.form.batch.climateChangeScenarioID),callback:function ($$v) {_vm.$set(_vm.form.batch, \"climateChangeScenarioID\", $$v)},expression:\"form.batch.climateChangeScenarioID\"}},_vm._l((_vm.climateScenarioOptions),function(opt,i){return _c('option',{key:i,domProps:{\"value\":opt.id}},[_vm._v(_vm._s(opt.name))])}),0)],1)],1)],1):_vm._e(),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Simulation start date\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.startingSimulationDate)}},[_c('b-form-input',{attrs:{\"type\":\"date\",\"state\":_vm.getValidState(_vm.$v.form.batch.startingSimulationDate)},model:{value:(_vm.form.batch.startingSimulationDate),callback:function ($$v) {_vm.$set(_vm.form.batch, \"startingSimulationDate\", $$v)},expression:\"form.batch.startingSimulationDate\"}}),_c('small',{staticClass:\"form-text text-muted\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.weatherOptions.minDate,'MM/DD/YYYY'))+\" or later\")])],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Simulation end date\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.endingSimulationDate)}},[_c('b-form-input',{attrs:{\"type\":\"date\",\"state\":_vm.getValidState(_vm.$v.form.batch.endingSimulationDate)},model:{value:(_vm.form.batch.endingSimulationDate),callback:function ($$v) {_vm.$set(_vm.form.batch, \"endingSimulationDate\", $$v)},expression:\"form.batch.endingSimulationDate\"}}),_c('small',{staticClass:\"form-text text-muted\"},[_vm._v(_vm._s(_vm._f(\"date\")(_vm.weatherOptions.maxDate,'MM/DD/YYYY'))+\" or earlier\")])],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"Set-up/warm-up years\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.skipYears)}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.getValidState(_vm.$v.form.batch.skipYears)},model:{value:(_vm.form.batch.skipYears),callback:function ($$v) {_vm.$set(_vm.form.batch, \"skipYears\", $$v)},expression:\"form.batch.skipYears\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"\"}},[_c('b-form-group',{attrs:{\"label\":\"SWAT output print setting\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.printSetting)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.printSettings,\"state\":_vm.getValidState(_vm.$v.form.batch.printSetting)},model:{value:(_vm.form.batch.printSetting),callback:function ($$v) {_vm.$set(_vm.form.batch, \"printSetting\", $$v)},expression:\"form.batch.printSetting\"}})],1)],1)],1),_c('b-form-group',{attrs:{\"label\":\"SWAT model version to run\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.batch.swatVersionID)}},[_c('b-form-select',{attrs:{\"options\":_vm.datasetOptions.swatVersions,\"state\":_vm.getValidState(_vm.$v.form.batch.swatVersionID)},model:{value:(_vm.form.batch.swatVersionID),callback:function ($$v) {_vm.$set(_vm.form.batch, \"swatVersionID\", $$v)},expression:\"form.batch.swatVersionID\"}})],1),_c('div',{staticClass:\"my-3\"},[_c('b-form-checkbox',{model:{value:(_vm.form.batch.writeSwatEditor),callback:function ($$v) {_vm.$set(_vm.form.batch, \"writeSwatEditor\", $$v)},expression:\"form.batch.writeSwatEditor\"}},[_vm._v(\"Write SWAT editor tables\")])],1),_c('div',{staticClass:\"my-3\"},[_c('b-form-checkbox',{model:{value:(_vm.form.batch.noModelRun),callback:function ($$v) {_vm.$set(_vm.form.batch, \"noModelRun\", $$v)},expression:\"form.batch.noModelRun\"}},[_vm._v(\"Do NOT run the model (create input files only)\")])],1),_c('div',{staticClass:\"my-3\"},[_c('b-form-checkbox',{model:{value:(_vm.form.batch.noOutputProcessing),callback:function ($$v) {_vm.$set(_vm.form.batch, \"noOutputProcessing\", $$v)},expression:\"form.batch.noOutputProcessing\"}},[_vm._v(\"Do NOT process model output files into SQLite\")])],1)],1):_vm._e(),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":_vm.form.batch.projectSubbasins.length < 1,\"text\":\"Submit Batch\"}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\" show-errors-with-object>\r\n\t\t\t<h2 class=\"mb-3\">Create a new batch</h2>\r\n\r\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\r\n\r\n\t\t\t<div class=\"mb-3\">\r\n\t\t\t\t<p>\r\n\t\t\t\t\tDrag and drop a CSV file into the space below.\r\n\t\t\t\t\tMust contain a column named \"Ending_Subbasin\".\r\n\t\t\t\t\tIf you want the project to start from somewhere other than the head, include a column \"Starting_Subbasins\".\r\n\t\t\t\t\tValues in this column should be comma-separated if more than one.\r\n\t\t\t\t\tPlease include leading zeros in subbasin names.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<vue-dropzone ref=\"addFile\" id=\"addFile\" :options=\"dropzoneOptions\" @vdropzone-success=\"fileUploaded\" @vdropzone-error=\"uploadError\"></vue-dropzone>\r\n\t\t\t</div>\r\n\r\n\t\t\t<b-form @submit.prevent=\"save\">\r\n\t\t\t\t<b-form-group label=\"Batch name\">\r\n\t\t\t\t\t<b-form-input v-model=\"form.name\" type=\"text\" :state=\"getValidState($v.form.name)\"></b-form-input>\r\n\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.name.required\">Required</b-form-invalid-feedback>\r\n\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.name.hasAlphaNumeric\">Must contain at least one letter or number</b-form-invalid-feedback>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<b-form-group :label=\"`${siteText.siteName} dataset`\" :invalid-feedback=\"requiredFeedback($v.form.batch.datasetID)\">\r\n\t\t\t\t\t<b-form-select v-model=\"form.batch.datasetID\" @change=\"getDataset\" :state=\"getValidState($v.form.batch.datasetID)\">\r\n\t\t\t\t\t\t<b-form-select-option-group v-for=\"(o, i) in options.datasets\" :key=\"i\" :label=\"isNullOrEmpty(o.label) ? 'System datasets' : o.label\" :options=\"o.options\"></b-form-select-option-group>\r\n\t\t\t\t\t\t<b-form-select-option-group v-if=\"options.userDatasets.length > 0\" label=\"User-submitted datasets\" :options=\"options.userDatasets\"></b-form-select-option-group>\r\n\t\t\t\t\t</b-form-select>\r\n\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t<page-loading :loading=\"page.dataset.loading\"></page-loading>\r\n\t\t\t\t<div v-if=\"!isNullOrEmpty(form.batch.datasetID) && !page.dataset.loading\">\r\n\t\t\t\t\t<h3 class=\"mt-4 mb-3 h5\">Batch options</h3>\r\n\t\t\t\t\t<div class=\"my-3\">\r\n\t\t\t\t\t\t<b-form-checkbox v-model=\"form.batch.setAsSingleSubbasinProjects\">Create single subbasin projects (no routing to head of watershed; \"Starting_Subbasins\" column in CSV will be ignored)</b-form-checkbox>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"my-3\">\r\n\t\t\t\t\t\t<b-form-checkbox v-model=\"form.batch.useSubbasinAsNames\">Use subbasin name as the project and scenario name</b-form-checkbox>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"my-3\" v-if=\"false\">\r\n\t\t\t\t\t\t<b-form-checkbox v-model=\"form.batch.deleteProjectsWhenDone\">Delete projects from {{siteText.siteName}} system when done (recommended unless you plan to use the project in the website GUI)</b-form-checkbox>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<h3 class=\"mt-4 mb-3 h5\">HRU settings</h3>\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Select a method for reducing HRUs\" :invalid-feedback=\"requiredFeedback($v.form.batch.setHruMethod)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"form.batch.setHruMethod\" :options=\"options.hruMethods\" :state=\"getValidState($v.form.batch.setHruMethod)\"></b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Amount/Target\" :invalid-feedback=\"requiredFeedback($v.form.batch.targetThreshold)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.batch.targetThreshold\" type=\"number\" step=\"any\" :state=\"getValidState($v.form.batch.targetThreshold)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Units\" :invalid-feedback=\"requiredFeedback($v.form.batch.setHruUnits)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"form.batch.setHruUnits\" :options=\"options.hruUnits\" :state=\"getValidState($v.form.batch.setHruUnits)\"></b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-form-group label=\"Exempt land use\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"formattedForm.exemptLanduse\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t<b-form-group label=\"Land use to NOT redistribute area to\">\r\n\t\t\t\t\t\t<b-form-input v-model=\"formattedForm.noAreaRedistribution\" type=\"text\"></b-form-input>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<h3 class=\"mt-4 mb-3 h5\">Simulation settings</h3>\r\n\t\t\t\t\t<b-form-group label=\"Weather data\" :invalid-feedback=\"requiredFeedback($v.form.batch.weatherDatasetID)\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"form.batch.weatherDatasetID\" :state=\"getValidState($v.form.batch.weatherDatasetID)\" @change=\"updateWeatherOptions\">\r\n\t\t\t\t\t\t\t<optgroup v-for=\"(group, i) in datasetOptions.weatherDatasets\" :key=\"i\" :label=\"group.label\">\r\n\t\t\t\t\t\t\t\t<option v-for=\"(opt, j) in group.options\" :key=\"j\" :value=\"opt.id\">{{opt.name}}</option>\r\n\t\t\t\t\t\t\t</optgroup>\r\n\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<b-row v-if=\"weatherOptions.showClimateChange\">\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Climate time period\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"form.batch.climateChangeTimePeriodID\" @change=\"updateClimateTimePeriod\">\r\n\t\t\t\t\t\t\t\t\t<option v-for=\"(opt, i) in climateTimePeriodOptions\" :key=\"i\" :value=\"opt.id\">{{opt.name}}</option>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Climate scenario\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"form.batch.climateChangeScenarioID\">\r\n\t\t\t\t\t\t\t\t\t<option v-for=\"(opt, i) in climateScenarioOptions\" :key=\"i\" :value=\"opt.id\">{{opt.name}}</option>\r\n\t\t\t\t\t\t\t\t</b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Simulation start date\" :invalid-feedback=\"requiredFeedback($v.form.batch.startingSimulationDate)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.batch.startingSimulationDate\" type=\"date\" :state=\"getValidState($v.form.batch.startingSimulationDate)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t<small class=\"form-text text-muted\">{{weatherOptions.minDate | date('MM/DD/YYYY')}} or later</small>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Simulation end date\" :invalid-feedback=\"requiredFeedback($v.form.batch.endingSimulationDate)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.batch.endingSimulationDate\" type=\"date\" :state=\"getValidState($v.form.batch.endingSimulationDate)\"></b-form-input>\r\n\t\t\t\t\t\t\t\t<small class=\"form-text text-muted\">{{weatherOptions.maxDate | date('MM/DD/YYYY')}} or earlier</small>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-row>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"Set-up/warm-up years\" :invalid-feedback=\"requiredFeedback($v.form.batch.skipYears)\">\r\n\t\t\t\t\t\t\t\t<b-form-input v-model=\"form.batch.skipYears\" type=\"number\" :state=\"getValidState($v.form.batch.skipYears)\"></b-form-input>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t\t<b-form-group label=\"SWAT output print setting\" :invalid-feedback=\"requiredFeedback($v.form.batch.printSetting)\">\r\n\t\t\t\t\t\t\t\t<b-form-select v-model=\"form.batch.printSetting\" :options=\"options.printSettings\" :state=\"getValidState($v.form.batch.printSetting)\"></b-form-select>\r\n\t\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t</b-col>\r\n\t\t\t\t\t</b-row>\r\n\r\n\t\t\t\t\t<b-form-group label=\"SWAT model version to run\" :invalid-feedback=\"requiredFeedback($v.form.batch.swatVersionID)\">\r\n\t\t\t\t\t\t<b-form-select v-model=\"form.batch.swatVersionID\" :options=\"datasetOptions.swatVersions\" :state=\"getValidState($v.form.batch.swatVersionID)\"></b-form-select>\r\n\t\t\t\t\t</b-form-group>\r\n\r\n\t\t\t\t\t<div class=\"my-3\">\r\n\t\t\t\t\t\t<b-form-checkbox v-model=\"form.batch.writeSwatEditor\">Write SWAT editor tables</b-form-checkbox>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"my-3\">\r\n\t\t\t\t\t\t<b-form-checkbox v-model=\"form.batch.noModelRun\">Do NOT run the model (create input files only)</b-form-checkbox>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"my-3\">\r\n\t\t\t\t\t\t<b-form-checkbox v-model=\"form.batch.noOutputProcessing\">Do NOT process model output files into SQLite</b-form-checkbox>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" :disabled=\"form.batch.projectSubbasins.length < 1\" text=\"Submit Batch\" />\r\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t</fixed-action-bar>\r\n\t\t\t</b-form>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport { required } from 'vuelidate/lib/validators';\r\n\timport vue2Dropzone from 'vue2-dropzone';\r\n\timport 'vue2-dropzone/dist/vue2Dropzone.min.css';\r\n\timport moment from 'moment';\n\r\n\texport default {\r\n\t\tname: 'ApiBatchCreate',\r\n\t\tcomponents: {\r\n\t\t\tvueDropzone: vue2Dropzone\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\n\t\t\t\t\tuploadOk: false,\n\t\t\t\t\tdataset: {\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tloading: false\r\n\t\t\t\t\t},\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tsaveErrors: []\r\n\t\t\t\t},\r\n\t\t\t\tdropzoneOptions: {\r\n\t\t\t\t\turl: '/api/api-requests/uploadbatch',\r\n\t\t\t\t\theaders: this.getTokenHeaderPart(),\r\n\t\t\t\t\tacceptedFiles: '.csv',\n\t\t\t\t\ttimeout: 3600000,\n\t\t\t\t\tmaxFilesize: 1000\r\n\t\t\t\t},\n\t\t\t\toptions: {\n\t\t\t\t\tdatasets: [],\n\t\t\t\t\tuserDatasets: [],\r\n\t\t\t\t\tprintSettings: [],\n\t\t\t\t\thruMethods: [],\n\t\t\t\t\thruUnits: [],\n\t\t\t\t\tdefaultDataset: null,\n\t\t\t\t\tdefaultWetlands: null,\n\t\t\t\t\tdefaultSetHruMethod: null,\n\t\t\t\t\tdefaultSetHruUnits: null\r\n\t\t\t\t},\n\t\t\t\tdatasetOptions: {\n\t\t\t\t\tclimateChangeScenarios: [],\r\n\t\t\t\t\tclimateChangeTimePeriods: [],\r\n\t\t\t\t\tswatVersions: [],\r\n\t\t\t\t\tweatherDatasets: [],\n\t\t\t\t\tdefaultSwatVersion: null,\n\t\t\t\t\tdefaultWeatherDataset: null\r\n\t\t\t\t},\r\n\t\t\t\tweatherOptions: {\r\n\t\t\t\t\tselectedDataset: undefined,\r\n\t\t\t\t\tminDate: undefined,\r\n\t\t\t\t\tmaxDate: undefined,\r\n\t\t\t\t\tshowClimateChange: false\r\n\t\t\t\t},\n\t\t\t\tform: {\n\t\t\t\t\tname: null,\n\t\t\t\t\tbatch: {\n\t\t\t\t\t\tdatasetID: null,\n\t\t\t\t\t\tprojectSubbasins: [],\n\t\t\t\t\t\tsetAsSingleSubbasinProjects: false,\n\t\t\t\t\t\tuseSubbasinAsNames: true,\n\t\t\t\t\t\tstartYear: null,\n\t\t\t\t\t\tendYear: null,\n\t\t\t\t\t\tskipYears: 2,\n\t\t\t\t\t\tprintSetting: 0,\n\t\t\t\t\t\tsetHruMethod: 'area',\n\t\t\t\t\t\tsetHruUnits: 'area',\n\t\t\t\t\t\texemptLanduse: [],\n\t\t\t\t\t\tnoAreaRedistribution: [],\n\t\t\t\t\t\ttargetThreshold: 0.5,\n\t\t\t\t\t\tweatherDatasetID: null,\n\t\t\t\t\t\tclimateChangeScenarioID: null,\n\t\t\t\t\t\tclimateChangeTimePeriodID: null,\n\t\t\t\t\t\tswatVersionID: null,\n\t\t\t\t\t\tnoOutputProcessing: true,\n\t\t\t\t\t\tnoModelRun: false,\n\t\t\t\t\t\twriteSwatEditor: false,\n\t\t\t\t\t\tdeleteProjectsWhenDone: false\n\t\t\t\t\t}\r\n\t\t\t\t},\n\t\t\t\tformattedForm: {\n\t\t\t\t\texemptLanduse: null,\n\t\t\t\t\tnoAreaRedistribution: null\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tvalidations: {\r\n\t\t\tform: {\r\n\t\t\t\tname: {\r\n\t\t\t\t\trequired,\r\n\t\t\t\t\thasAlphaNumeric(value) {\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t/[a-z]/.test(value) || // checks for a-z\r\n\t\t\t\t\t\t\t/[0-9]/.test(value) // checks for 0-9\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tbatch: {\n\t\t\t\t\tdatasetID: { required },\n\t\t\t\t\tprojectSubbasins: {},\n\t\t\t\t\tsetAsSingleSubbasinProjects: {},\n\t\t\t\t\tuseSubbasinAsNames: {},\n\t\t\t\t\tstartingSimulationDate: { required },\n\t\t\t\t\tendingSimulationDate: { required },\n\t\t\t\t\tskipYears: { required },\n\t\t\t\t\tprintSetting: { required },\n\t\t\t\t\tsetHruMethod: {},\n\t\t\t\t\tsetHruUnits: {},\n\t\t\t\t\texemptLanduse: {},\n\t\t\t\t\tnoAreaRedistribution: {},\n\t\t\t\t\ttargetThreshold: {},\n\t\t\t\t\tweatherDatasetID: { required },\n\t\t\t\t\tclimateChangeScenarioID: {},\n\t\t\t\t\tclimateChangeTimePeriodID: {},\n\t\t\t\t\tswatVersionID: { required },\n\t\t\t\t\tnoOutputProcessing: {},\n\t\t\t\t\tnoModelRun: {},\n\t\t\t\t\twriteSwatEditor: {},\n\t\t\t\t\tdeleteProjectsWhenDone: {}\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`api-requests/batchoptions`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.options = response.data;\n\n\t\t\t\t\tthis.form.batch.datasetID = response.data.defaultDataset;\n\t\t\t\t\tthis.form.batch.setHruMethod = response.data.defaultSetHruMethod;\n\t\t\t\t\tthis.form.batch.setHruUnits = response.data.defaultSetHruUnits;\n\n\t\t\t\t\tif (this.isNullOrEmpty(this.form.batch.datasetID) && this.options.datasets.length > 0 && this.options.datasets[0].options.length > 0) {\r\n\t\t\t\t\t\tthis.form.batch.datasetID = this.options.datasets[0].options[0].value;\r\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!this.isNullOrEmpty(this.form.batch.datasetID)) {\n\t\t\t\t\t\tawait this.getDataset();\r\n\t\t\t\t\t}\n\n\t\t\t\t\tlet wetlands = response.data.defaultWetlands;\n\t\t\t\t\tif (!this.isNullOrEmpty(wetlands) && wetlands.length > 0) {\n\t\t\t\t\t\tthis.formattedForm.exemptLanduse = wetlands.join(', ');\n\t\t\t\t\t\tthis.formattedForm.noAreaRedistribution = wetlands.join(', ');\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getDataset() {\r\n\t\t\t\tthis.page.dataset.errors = [];\r\n\t\t\t\tthis.page.dataset.loading = true;\r\n\n\t\t\t\tif (this.isNullOrEmpty(this.form.batch.datasetID)) {\n\t\t\t\t\tthis.page.dataset.errors.push('Please select a dataset.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get(`api-requests/batchdatasetoptions/${this.form.batch.datasetID}`, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.datasetOptions = response.data;\n\t\t\t\t\t\tthis.form.batch.weatherDatasetID = response.data.defaultWeatherDataset;\n\t\t\t\t\t\tthis.form.batch.swatVersionID = response.data.defaultSWATVersion;\n\t\t\t\t\t\tthis.updateWeatherOptions(true);\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.dataset.errors = this.logError(error);\r\n\t\t\t\t\t}\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.dataset.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\n\t\t\t\t\t\tthis.form.batch.exemptLanduse = this.splitString(this.formattedForm.exemptLanduse);\n\t\t\t\t\t\tthis.form.batch.noAreaRedistribution = this.splitString(this.formattedForm.noAreaRedistribution);\n\r\n\t\t\t\t\t\tconst response = await this.$http.post('api-requests/createbatch', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ApiBatchView', params: { id: response.data } }).catch(err => { });\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tfileUploaded(file, response) {\r\n\t\t\t\tthis.log(response);\r\n\t\t\t\tthis.form.batch.projectSubbasins = response.projectSubbasins;\n\t\t\t\tthis.form.name = response.name;\r\n\t\t\t\tthis.page.uploadOk = true;\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t},\r\n\t\t\tuploadError(file, message, xhr) {\n\t\t\t\tthis.form.batch.projectSubbasins = [];\r\n\t\t\t\tthis.page.uploadOk = false;\r\n\t\t\t\tthis.log(file);\r\n\t\t\t\tthis.log(xhr);\r\n\t\t\t\tthis.log(message);\r\n\t\t\t\tthis.page.saveErrors.push(message.errors.exception[0]);\r\n\t\t\t},\r\n\t\t\tupdateWeatherOptions(setDefaults = true) {\r\n\t\t\t\tfor (var i = 0; i < this.datasetOptions.weatherDatasets.length; i++) {\r\n\t\t\t\t\tvar index = this.datasetOptions.weatherDatasets[i].options.findIndex(x => x.id == this.form.batch.weatherDatasetID);\r\n\t\t\t\t\tif (index > -1) {\r\n\t\t\t\t\t\tvar dataset = this.datasetOptions.weatherDatasets[i].options[index];\r\n\t\t\t\t\t\tthis.weatherOptions.selectedDataset = dataset;\r\n\t\t\t\t\t\tthis.weatherOptions.minDate = moment(dataset.startDate).format('YYYY-MM-DD');\r\n\t\t\t\t\t\tthis.weatherOptions.maxDate = moment(dataset.endDate).format('YYYY-MM-DD');\r\n\t\t\t\t\t\tthis.weatherOptions.showClimateChange = !this.isNullOrEmpty(dataset.cmipVersion);\r\n\r\n\t\t\t\t\t\tif (setDefaults) {\r\n\t\t\t\t\t\t\tthis.form.batch.startingSimulationDate = this.weatherOptions.minDate;\r\n\t\t\t\t\t\t\tthis.form.batch.endingSimulationDate = this.weatherOptions.maxDate;\r\n\r\n\t\t\t\t\t\t\tif (this.weatherOptions.showClimateChange) {\r\n\t\t\t\t\t\t\t\tthis.form.batch.climateChangeScenarioID = this.climateScenarioOptions[0].id;\r\n\t\t\t\t\t\t\t\tthis.form.batch.climateChangeTimePeriodID = this.climateTimePeriodOptions[0].id;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} \r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tupdateClimateTimePeriod() {\r\n\t\t\t\tvar index = this.datasetOptions.climateChangeTimePeriods.findIndex(x => x.id == this.form.batch.climateChangeTimePeriodID);\r\n\t\t\t\tif (index > -1) {\r\n\t\t\t\t\tvar dataset = this.datasetOptions.climateChangeTimePeriods[index];\r\n\t\t\t\t\tthis.weatherOptions.minDate = moment(dataset.startDate).format('YYYY-MM-DD');\r\n\t\t\t\t\tthis.weatherOptions.maxDate = moment(dataset.endDate).format('YYYY-MM-DD');\r\n\t\t\t\t\tthis.form.batch.startingSimulationDate = this.weatherOptions.minDate;\r\n\t\t\t\t\tthis.form.batch.endingSimulationDate = this.weatherOptions.maxDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tclimateScenarioOptions() {\r\n\t\t\t\tif (this.weatherOptions.showClimateChange) {\r\n\t\t\t\t\tvar selectedCMIP = this.weatherOptions.selectedDataset.cmipVersion;\r\n\t\t\t\t\treturn this.datasetOptions.climateChangeScenarios.filter(function (el) { return el.cmipVersion == selectedCMIP; });\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn this.datasetOptions.climateChangeScenarios;\r\n\t\t\t},\r\n\t\t\tclimateTimePeriodOptions() {\r\n\t\t\t\tif (this.weatherOptions.showClimateChange) {\r\n\t\t\t\t\tvar selectedCMIP = this.weatherOptions.selectedDataset.cmipVersion;\r\n\t\t\t\t\treturn this.datasetOptions.climateChangeTimePeriods.filter(function (el) { return el.cmipVersion == selectedCMIP; });\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn this.datasetOptions.climateChangeTimePeriods;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiBatchCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiBatchCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ApiBatchCreate.vue?vue&type=template&id=08d5caa4&\"\nimport script from \"./ApiBatchCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./ApiBatchCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page}},[(_vm.data.status.hasError)?_c('div',[_c('h2',{staticClass:\"mb-3\"},[_c('font-awesome-icon',{staticClass:\"icon mr-1 text-warning\",attrs:{\"icon\":['fas', 'exclamation-triangle']}}),_vm._v(\" An error occurred while running \"+_vm._s(_vm.data.name)+\" \")],1),_c('p',[_vm._v(\" Please see the full exception message below and contact support. \")]),_c('hr',{staticClass:\"my-4\"}),_c('h5',[_vm._v(_vm._s(_vm.data.status.statusMessage))]),_c('p',[_c('b-form-textarea',{attrs:{\"rows\":\"15\"},model:{value:(_vm.data.status.exceptionMessage),callback:function ($$v) {_vm.$set(_vm.data.status, \"exceptionMessage\", $$v)},expression:\"data.status.exceptionMessage\"}})],1)]):_c('div',[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Batch \"+_vm._s(_vm.data.name))]),(_vm.data.status.isRunning)?_c('div',{staticClass:\"max-w-400 py-5 mx-auto text-center\"},[_c('b-progress',{attrs:{\"value\":_vm.progress.percent,\"max\":100,\"animated\":\"\"}}),_c('p',[_vm._v(\" \"+_vm._s(_vm.progress.message)+\" \")]),_c('p',{staticClass:\"text-muted mt-5\"},[_c('small',[(!_vm.isNullOrEmpty(this.currentRunTime))?_c('span',[_vm._v(\"Time elapsed: \"+_vm._s(this.currentRunTime)),_c('br')]):_vm._e(),_vm._v(\" Progress not updating? \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get(false)}}},[_vm._v(\"Refresh now.\")]),_c('br'),_c('a',{staticClass:\"text-danger\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.page.abort.show = true}}},[_vm._v(\"Cancel batch.\")])])])],1):_vm._e(),_c('b-alert',{attrs:{\"variant\":\"success\",\"show\":_vm.data.status.hasRun}},[_vm._v(\"Batch run completed in \"+_vm._s(_vm.data.status.runtime))]),_c('b-alert',{attrs:{\"variant\":\"danger\",\"show\":_vm.data.status.isAborting}},[_vm._v(\"Batch run aborted.\")]),_c('hr',{staticClass:\"my-4\"}),_c('h3',{staticClass:\"mt-4 mb-3 h5\"},[_vm._v(\"Batch settings\")]),_c('b-row',[_c('b-col',{attrs:{\"md\":\"\"}},[_c('table',{staticClass:\"table table-inner-borders\"},[_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(_vm._s(_vm.siteText.siteName)+\" dataset\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.dataset))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Single subbasin projects\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.setAsSingleSubbasinProjects ? 'Yes' : 'No'))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"HRU reduction method\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.setHruMethod))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"HRU reduction threshold\")]),_c('td',[_vm._v(\" \"+_vm._s(_vm._f(\"number\")(_vm.data.batch.targetThreshold,2))+\" \"),(_vm.data.batch.setHruUnits == 'Percent')?_c('span',[_vm._v(\" % of each subbasin \")]):_c('span',[_vm._v(\" km\"),_c('sup',[_vm._v(\"2\")])])])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"HRU land use exemptions\")]),_c('td',[_vm._v(_vm._s(_vm.joinArray(_vm.data.batch.ExemptLanduse)))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"HRU land use exempt from area redistribution\")]),_c('td',[_vm._v(_vm._s(_vm.joinArray(_vm.data.batch.NoAreaRedistribution)))])])])]),_c('b-col',{attrs:{\"md\":\"\"}},[_c('table',{staticClass:\"table table-inner-borders\"},[_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Weather dataset\")]),_c('td',[_vm._v(_vm._s(_vm.weatherDatasetDescription))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Simulation dates\")]),_c('td',[_vm._v(_vm._s(_vm._f(\"date\")(_vm.data.batch.startingSimulationDate,'M/D/YYYY'))+\" - \"+_vm._s(_vm._f(\"date\")(_vm.data.batch.endingSimulationDate,'M/D/YYYY')))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Set-up/warm-up years\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.skipYears))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"SWAT output print setting\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.printSetting))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"SWAT model version\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.swatVersion))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Run model\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.noModelRun ? 'No' : 'Yes'))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Process output database\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.noOutputProcessing ? 'No' : 'Yes'))])]),_c('tr',[_c('th',{staticClass:\"min\"},[_vm._v(\"Write to SWAT editor tables\")]),_c('td',[_vm._v(_vm._s(_vm.data.batch.writeSwatEditor ? 'Yes' : 'No'))])])])])],1),_c('hr',{staticClass:\"my-4\"}),_c('h3',{staticClass:\"mt-4 mb-3 h5\"},[_vm._v(\"Batch projects\")]),_c('p',[_vm._v(\" You can download files individually below, or log into the server and grab from this directory: \"),_c('code',[_vm._v(_vm._s(_vm.data.batch.serverPath))])]),(_vm.data.status.isRunning)?_c('p',[_vm._v(\" Individual project status is shown below, but the page does not refresh the status automatically. \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.get(false)}}},[_vm._v(\"Refresh now.\")])]):(_vm.data.status.hasRun)?_c('p',[_c('a',{staticClass:\"btn btn-primary mr-2\",attrs:{\"href\":_vm.data.batch.geojsonDownload}},[_vm._v(\"Download GeoJson\")]),_c('a',{staticClass:\"btn btn-primary mr-2\",attrs:{\"href\":_vm.data.batch.cumulativeAreasDownload}},[_vm._v(\"Download Cumulative Areas\")])]):_vm._e(),_c('b-table-simple',{attrs:{\"small\":\"\",\"responsive\":\"\",\"hover\":\"\"}},[_c('b-thead',[_c('b-tr',[_c('b-th'),_c('b-th',[_vm._v(\"Downstream Subbasin\")]),_c('b-th',[_vm._v(\"Starting Subbasins\")]),_c('b-th',[_vm._v(\"Status\")])],1)],1),_c('b-tbody',_vm._l((_vm.data.projects),function(p){return _c('b-tr',{key:p.id},[_c('b-td',[_c('router-link',{attrs:{\"to\":`/projects/${p.id}`,\"title\":\"Edit/View\",\"target\":\"_blank\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1)],1),_c('b-td',[_vm._v(_vm._s(p.endingSubbasin))]),_c('b-td',[_vm._v(_vm._s(p.startingSubbasins.join(', ')))]),_c('b-td',[(p.status.isRunning)?_c('div',[_vm._v(_vm._s(p.status.statusMessage))]):_c('div',_vm._l((p.scenarios),function(s){return _c('div',{key:s.id},[(s.hasRun)?_c('div',[_c('a',{attrs:{\"href\":s.download}},[_vm._v(\"Download\")]),_vm._v(\" (completed in \"+_vm._s(s.runtime)+\")\")]):_c('div',[_c('router-link',{attrs:{\"to\":`/projects/${p.id}/scenarios/${s.id}`,\"title\":\"Edit/View\",\"target\":\"_blank\"}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_vm._v(\" \"+_vm._s(s.statusMessage)+\" \")],1)])}),0)])],1)}),1)],1)],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('back-button',{staticClass:\"btn btn-secondary mr-2\"}),(!_vm.data.status.isRunning)?_c('b-button',{staticClass:\"ml-auto\",attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){_vm.page.delete.show = true}}},[_vm._v(\"Delete\")]):_vm._e()],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm run cancellation\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.abort.show),callback:function ($$v) {_vm.$set(_vm.page.abort, \"show\", $$v)},expression:\"page.abort.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to abort the batch? We'll keep files of progress so far and no projects will be deleted. But you will not be able to restart the batch; a new batch will need to be submitted. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.abort.saving,\"text\":\"Yes, Abort\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.abortRun.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.abort.show = false}}},[_vm._v(\"No\")])],1)],1),_c('b-modal',{attrs:{\"size\":\"md\",\"title\":\"Confirm delete\",\"no-close-on-backdrop\":\"\",\"no-close-on-esc\":\"\",\"hide-header-close\":\"\"},model:{value:(_vm.page.delete.show),callback:function ($$v) {_vm.$set(_vm.page.delete, \"show\", $$v)},expression:\"page.delete.show\"}},[_c('error-list',{attrs:{\"errors\":_vm.page.delete.errors}}),_c('p',[_vm._v(\" Are you sure you want to delete this batch? This action is permanent and cannot be undone. All files and projects related to this batch will be removed. \")]),_c('div',{attrs:{\"slot\":\"modal-footer\"},slot:\"modal-footer\"},[_c('save-button',{attrs:{\"type\":\"button\",\"saving\":_vm.page.delete.saving,\"text\":\"Delete\",\"variant\":\"danger\"},nativeOn:{\"click\":function($event){return _vm.confirmDelete.apply(null, arguments)}}}),_c('b-button',{staticClass:\"ml-1\",attrs:{\"type\":\"button\",\"variant\":\"secondary\"},on:{\"click\":function($event){_vm.page.delete.show = false}}},[_vm._v(\"Cancel\")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-authorization-container :page=\"page\">\r\n\t\t\t<div v-if=\"data.status.hasError\">\r\n\t\t\t\t<h2 class=\"mb-3\">\r\n\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" class=\"icon mr-1 text-warning\" />\r\n\t\t\t\t\tAn error occurred while running {{data.name}}\r\n\t\t\t\t</h2>\r\n\t\t\t\t<p>\r\n\t\t\t\t\tPlease see the full exception message below and contact support.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t<h5>{{data.status.statusMessage}}</h5>\r\n\t\t\t\t<p>\r\n\t\t\t\t\t<b-form-textarea v-model=\"data.status.exceptionMessage\" rows=\"15\"></b-form-textarea>\r\n\t\t\t\t</p>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<h2 class=\"mb-3\">Batch {{data.name}}</h2>\r\n\r\n\t\t\t\t<div v-if=\"data.status.isRunning\" class=\"max-w-400 py-5 mx-auto text-center\">\r\n\t\t\t\t\t<b-progress :value=\"progress.percent\" :max=\"100\" animated></b-progress>\r\n\t\t\t\t\t<p>\r\n\t\t\t\t\t\t{{progress.message}}\r\n\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t<p class=\"text-muted mt-5\">\r\n\t\t\t\t\t\t<small>\r\n\t\t\t\t\t\t\t<span v-if=\"!isNullOrEmpty(this.currentRunTime)\">Time elapsed: {{this.currentRunTime}}<br /></span>\r\n\t\t\t\t\t\t\tProgress not updating? <a href=\"#\" @click.prevent=\"get(false)\">Refresh now.</a>\r\n\t\t\t\t\t\t\t<br /><a href=\"#\" @click.prevent=\"page.abort.show = true\" class=\"text-danger\">Cancel batch.</a>\r\n\t\t\t\t\t\t</small>\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<b-alert variant=\"success\" :show=\"data.status.hasRun\">Batch run completed in {{data.status.runtime}}</b-alert>\r\n\t\t\t\t<b-alert variant=\"danger\" :show=\"data.status.isAborting\">Batch run aborted.</b-alert>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t<h3 class=\"mt-4 mb-3 h5\">Batch settings</h3>\r\n\r\n\t\t\t\t<b-row>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<table class=\"table table-inner-borders\">\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">{{siteText.siteName}} dataset</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.dataset}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">Single subbasin projects</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.setAsSingleSubbasinProjects ? 'Yes' : 'No'}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">HRU reduction method</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.setHruMethod}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">HRU reduction threshold</th>\r\n\t\t\t\t\t\t\t\t<td>\r\n\t\t\t\t\t\t\t\t\t{{data.batch.targetThreshold | number(2)}}\r\n\t\t\t\t\t\t\t\t\t<span v-if=\"data.batch.setHruUnits == 'Percent'\">\r\n\t\t\t\t\t\t\t\t\t\t% of each subbasin\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t<span v-else>\r\n\t\t\t\t\t\t\t\t\t\tkm<sup>2</sup>\r\n\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">HRU land use exemptions</th>\r\n\t\t\t\t\t\t\t\t<td>{{joinArray(data.batch.ExemptLanduse)}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">HRU land use exempt from area redistribution</th>\r\n\t\t\t\t\t\t\t\t<td>{{joinArray(data.batch.NoAreaRedistribution)}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t\t<b-col md>\r\n\t\t\t\t\t\t<table class=\"table table-inner-borders\">\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">Weather dataset</th>\r\n\t\t\t\t\t\t\t\t<td>{{weatherDatasetDescription}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">Simulation dates</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.startingSimulationDate | date('M/D/YYYY')}} - {{data.batch.endingSimulationDate | date('M/D/YYYY')}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">Set-up/warm-up years</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.skipYears}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">SWAT output print setting</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.printSetting}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">SWAT model version</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.swatVersion}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">Run model</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.noModelRun ? 'No' : 'Yes'}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">Process output database</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.noOutputProcessing ? 'No' : 'Yes'}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t<th class=\"min\">Write to SWAT editor tables</th>\r\n\t\t\t\t\t\t\t\t<td>{{data.batch.writeSwatEditor ? 'Yes' : 'No'}}</td>\r\n\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t</table>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\r\n\t\t\t\t<hr class=\"my-4\" />\r\n\r\n\t\t\t\t<h3 class=\"mt-4 mb-3 h5\">Batch projects</h3>\n\n\t\t\t\t<p>\n\t\t\t\t\tYou can download files individually below, or log into the server and grab from this directory:\n\t\t\t\t\t<code>{{data.batch.serverPath}}</code>\n\t\t\t\t</p>\n\r\n\t\t\t\t<p v-if=\"data.status.isRunning\">\r\n\t\t\t\t\tIndividual project status is shown below, but the page does not refresh the status automatically.\r\n\t\t\t\t\t<a href=\"#\" @click.prevent=\"get(false)\">Refresh now.</a>\r\n\t\t\t\t</p>\n\t\t\t\t<p v-else-if=\"data.status.hasRun\">\r\n\t\t\t\t\t<a :href=\"data.batch.geojsonDownload\" class=\"btn btn-primary mr-2\">Download GeoJson</a>\r\n\t\t\t\t\t<a :href=\"data.batch.cumulativeAreasDownload\" class=\"btn btn-primary mr-2\">Download Cumulative Areas</a>\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<b-table-simple small responsive hover>\r\n\t\t\t\t\t<b-thead>\r\n\t\t\t\t\t\t<b-tr>\r\n\t\t\t\t\t\t\t<b-th></b-th>\r\n\t\t\t\t\t\t\t<b-th>Downstream Subbasin</b-th>\r\n\t\t\t\t\t\t\t<b-th>Starting Subbasins</b-th>\r\n\t\t\t\t\t\t\t<b-th>Status</b-th>\r\n\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t</b-thead>\r\n\t\t\t\t\t<b-tbody>\r\n\t\t\t\t\t\t<b-tr v-for=\"p in data.projects\" :key=\"p.id\">\r\n\t\t\t\t\t\t\t<b-td>\r\n\t\t\t\t\t\t\t\t<router-link :to=\"`/projects/${p.id}`\" title=\"Edit/View\" target=\"_blank\">\r\n\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'edit']\" />\r\n\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t</b-td>\r\n\t\t\t\t\t\t\t<b-td>{{p.endingSubbasin}}</b-td>\r\n\t\t\t\t\t\t\t<b-td>{{p.startingSubbasins.join(', ')}}</b-td>\r\n\t\t\t\t\t\t\t<b-td>\r\n\t\t\t\t\t\t\t\t<div v-if=\"p.status.isRunning\">{{p.status.statusMessage}}</div>\r\n\t\t\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t\t\t<div v-for=\"s in p.scenarios\" :key=\"s.id\">\r\n\t\t\t\t\t\t\t\t\t\t<div v-if=\"s.hasRun\"><a :href=\"s.download\">Download</a> (completed in {{s.runtime}})</div>\r\n\t\t\t\t\t\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t\t\t\t\t\t<router-link :to=\"`/projects/${p.id}/scenarios/${s.id}`\" title=\"Edit/View\" target=\"_blank\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<font-awesome-icon :icon=\"['fas', 'edit']\" />\r\n\t\t\t\t\t\t\t\t\t\t\t</router-link>\r\n\t\t\t\t\t\t\t\t\t\t\t{{s.statusMessage}}\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</b-td>\r\n\t\t\t\t\t\t</b-tr>\r\n\t\t\t\t\t</b-tbody>\r\n\t\t\t\t</b-table-simple>\r\n\t\t\t</div>\r\n\r\n\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\r\n\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\r\n\t\t\t\t<b-button v-if=\"!data.status.isRunning\" variant=\"danger\" @click=\"page.delete.show = true\" class=\"ml-auto\">Delete</b-button>\r\n\t\t\t</fixed-action-bar>\r\n\r\n\t\t\t<b-modal v-model=\"page.abort.show\" size=\"md\" title=\"Confirm run cancellation\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to abort the batch?\r\n\t\t\t\t\tWe'll keep files of progress so far and no projects will be deleted.\r\n\t\t\t\t\tBut you will not be able to restart the batch; a new batch will need to be submitted.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.abort.saving\" @click.native=\"abortRun\" text=\"Yes, Abort\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.abort.show = false\" class=\"ml-1\">No</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\r\n\t\t\t<b-modal v-model=\"page.delete.show\" size=\"md\" title=\"Confirm delete\" no-close-on-backdrop no-close-on-esc hide-header-close>\r\n\t\t\t\t<error-list :errors=\"page.delete.errors\"></error-list>\r\n\r\n\t\t\t\t<p>\r\n\t\t\t\t\tAre you sure you want to delete this batch?\r\n\t\t\t\t\tThis action is permanent and cannot be undone. All files and projects related to this batch will be removed.\r\n\t\t\t\t</p>\r\n\r\n\t\t\t\t<div slot=\"modal-footer\">\r\n\t\t\t\t\t<save-button type=\"button\" :saving=\"page.delete.saving\" @click.native=\"confirmDelete\" text=\"Delete\" variant=\"danger\" />\r\n\t\t\t\t\t<b-button type=\"button\" variant=\"secondary\" @click=\"page.delete.show = false\" class=\"ml-1\">Cancel</b-button>\r\n\t\t\t\t</div>\r\n\t\t\t</b-modal>\r\n\t\t</page-authorization-container>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\timport moment from 'moment';\n\r\n\texport default {\r\n\t\tname: 'ApiBatchView',\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tbatchID: this.$route.params.id,\n\t\t\t\tcurrentRunTime: '',\n\t\t\t\ttimer: '',\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\n\t\t\t\t\tdelete: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\tabort: {\r\n\t\t\t\t\t\tshow: false,\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tprogress: {\r\n\t\t\t\t\tpercent: 0,\r\n\t\t\t\t\tmessage: 'Please wait...'\r\n\t\t\t\t},\n\t\t\t\tdata: {\n\t\t\t\t\tname: null,\n\t\t\t\t\tstatus: {},\n\t\t\t\t\tprojects: [],\n\t\t\t\t\tbatch: {}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\r\n\t\tbeforeDestroy() {\r\n\t\t\tthis.$statusHub.batchClosed(this.batchID);\r\n\t\t\tthis.$statusHub.$off('batch-status-changed', this.onStatusChanged);\n\t\t\tthis.cancelTimer();\r\n\t\t},\r\n\t\twatch: {\r\n\t\t\t'$route': 'get'\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync get(initialize = true) {\r\n\t\t\t\tthis.batchID = this.$route.params.id;\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`api-requests/batch/${this.batchID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.data = response.data;\r\n\r\n\t\t\t\t\tif (this.data.status.isRunning) {\r\n\t\t\t\t\t\tthis.progress.message = this.data.status.statusMessage;\r\n\t\t\t\t\t\tthis.progress.percent = this.data.status.currentProgress;\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\r\n\t\t\t\tif (initialize) {\r\n\t\t\t\t\tthis.$statusHub.batchOpened(this.batchID);\r\n\t\t\t\t\tthis.$statusHub.$on('batch-status-changed', this.onStatusChanged);\n\n\t\t\t\t\tthis.setCurrentRunTime();\r\n\t\t\t\t\tthis.timer = setInterval(this.setCurrentRunTime, 1000);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync onStatusChanged(data) {\r\n\t\t\t\tif (this.batchID != data.requestID) return;\r\n\t\t\t\tif (data.progress == 100) {\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.progress.percent = data.progress;\r\n\t\t\t\tthis.progress.message = data.statusMessage;\r\n\t\t\t},\r\n\t\t\tasync abortRun() {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.get(`api-requests/abortbatch/${this.batchID}`, this.getTokenHeader());\n\t\t\t\t\tthis.page.abort.show = false;\r\n\t\t\t\t\tawait this.get(false);\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.abort.errors = this.logError(error);\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tasync confirmDelete() {\r\n\t\t\t\tthis.page.delete.errors = [];\r\n\t\t\t\tthis.page.delete.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait this.$http.delete(`api-requests/deletebatch/${this.batchID}`, this.getTokenHeader());\r\n\t\t\t\t\tthis.$router.push({ name: 'ApiBatchList' }).catch(err => { this.log(err) });\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.delete.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.delete.saving = false;\r\n\t\t\t},\n\t\t\tsetCurrentRunTime() {\n\t\t\t\tthis.currentRunTime = this.isNullOrEmpty(this.data.status.startRunDate) ? '' : moment(this.data.status.startRunDate).fromNow(true);\r\n\t\t\t},\r\n\t\t\tcancelTimer() {\r\n\t\t\t\tclearInterval(this.timer);\r\n\t\t\t}\r\n\t\t},\r\n\t\tcomputed: {\r\n\t\t\tweatherDatasetDescription() {\r\n\t\t\t\tvar d = this.data.batch.weatherDataset;\r\n\r\n\t\t\t\tif (!this.isNullOrEmpty(this.data.batch.climateChangeScenario))\r\n\t\t\t\t\td += ', ' + this.data.batch.climateChangeScenario;\r\n\r\n\t\t\t\tif (!this.isNullOrEmpty(this.data.batch.climateChangeTimePeriod))\r\n\t\t\t\t\td += ', ' + this.data.batch.climateChangeTimePeriod;\r\n\r\n\t\t\t\treturn d;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiBatchView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiBatchView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ApiBatchView.vue?vue&type=template&id=40cb7c48&\"\nimport script from \"./ApiBatchView.vue?vue&type=script&lang=js&\"\nexport * from \"./ApiBatchView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-authorization-container',{attrs:{\"page\":_vm.page,\"show-errors-with-object\":\"\"}},[_c('h2',{staticClass:\"mb-3\"},[_vm._v(\"Create a new regional project\")]),_c('p',[_vm._v(\" This form allows you to create a project for an entire region. Once created, regional projects may be accessed through the normal \"+_vm._s(_vm.siteText.siteName)+\" interface and project list. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.saveErrors}}),_c('b-form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_c('b-form-group',{attrs:{\"label\":`${_vm.siteText.siteName} dataset`,\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.datasetID)}},[_c('b-form-select',{attrs:{\"state\":_vm.getValidState(_vm.$v.form.datasetID)},on:{\"change\":_vm.getRegions},model:{value:(_vm.form.datasetID),callback:function ($$v) {_vm.$set(_vm.form, \"datasetID\", $$v)},expression:\"form.datasetID\"}},[_vm._l((_vm.options.datasets),function(o,i){return _c('b-form-select-option-group',{key:i,attrs:{\"label\":_vm.isNullOrEmpty(o.label) ? 'System datasets' : o.label,\"options\":o.options}})}),(_vm.options.userDatasets.length > 0)?_c('b-form-select-option-group',{attrs:{\"label\":\"User-submitted datasets\",\"options\":_vm.options.userDatasets}}):_vm._e()],2)],1),_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":_vm.options.regions.length < 1}},[_vm._v(\" There are no regions configured for the selected dataset. Please contact the developer if it is needed. \")]),_c('b-form-group',{attrs:{\"label\":\"Region\",\"invalid-feedback\":_vm.requiredFeedback(_vm.$v.form.regionID)}},[_c('b-form-select',{attrs:{\"options\":_vm.options.regions,\"state\":_vm.getValidState(_vm.$v.form.regionID)},on:{\"change\":_vm.setProjectName},scopedSlots:_vm._u([{key:\"first\",fn:function(){return [_c('b-form-select-option',{attrs:{\"value\":null,\"disabled\":\"\"}},[_vm._v(\"-- Select a region --\")])]},proxy:true}]),model:{value:(_vm.form.regionID),callback:function ($$v) {_vm.$set(_vm.form, \"regionID\", $$v)},expression:\"form.regionID\"}})],1),_c('b-form-group',{staticClass:\"mt-4\",attrs:{\"label\":\"Give your project a name\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"state\":_vm.getValidState(_vm.$v.form.projectName)},model:{value:(_vm.form.projectName),callback:function ($$v) {_vm.$set(_vm.form, \"projectName\", $$v)},expression:\"form.projectName\"}}),(!_vm.$v.form.projectName.required)?_c('b-form-invalid-feedback',[_vm._v(\"Required\")]):_vm._e(),(!_vm.$v.form.projectName.maxLength)?_c('b-form-invalid-feedback',[_vm._v(\"Must be fewer than 100 characters\")]):_vm._e(),(!_vm.$v.form.projectName.hasAlphaNumeric)?_c('b-form-invalid-feedback',[_vm._v(\"Must contain at least one letter or number\")]):_vm._e()],1),_c('fixed-action-bar',{attrs:{\"cols-lg\":10,\"offset-lg\":2}},[_c('save-button',{staticClass:\"mr-2\",attrs:{\"saving\":_vm.page.saving,\"disabled\":_vm.options.regions.length < 1,\"text\":\"Create Project\"}}),_c('back-button',{staticClass:\"btn btn-secondary mr-2\"})],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\t<div>\n\t\t<page-authorization-container :page=\"page\" show-errors-with-object>\n\t\t\t<h2 class=\"mb-3\">Create a new regional project</h2>\n\n\t\t\t<p>\n\t\t\t\tThis form allows you to create a project for an entire region.\n\t\t\t\tOnce created, regional projects may be accessed through the normal {{siteText.siteName}} interface and project list.\n\t\t\t</p>\n\n\t\t\t<error-list :errors=\"page.saveErrors\"></error-list>\n\n\t\t\t<b-form @submit.prevent=\"save\">\n\t\t\t\t<b-form-group :label=\"`${siteText.siteName} dataset`\" :invalid-feedback=\"requiredFeedback($v.form.datasetID)\">\n\t\t\t\t\t<b-form-select v-model=\"form.datasetID\" @change=\"getRegions\" :state=\"getValidState($v.form.datasetID)\">\n\t\t\t\t\t\t<b-form-select-option-group v-for=\"(o, i) in options.datasets\" :key=\"i\" :label=\"isNullOrEmpty(o.label) ? 'System datasets' : o.label\" :options=\"o.options\"></b-form-select-option-group>\n\t\t\t\t\t\t<b-form-select-option-group v-if=\"options.userDatasets.length > 0\" label=\"User-submitted datasets\" :options=\"options.userDatasets\"></b-form-select-option-group>\n\t\t\t\t\t</b-form-select>\n\t\t\t\t</b-form-group>\n\n\t\t\t\t<b-alert variant=\"warning\" :show=\"options.regions.length < 1\">\n\t\t\t\t\tThere are no regions configured for the selected dataset. Please contact the developer if it is needed.\n\t\t\t\t</b-alert>\n\n\t\t\t\t<b-form-group label=\"Region\" :invalid-feedback=\"requiredFeedback($v.form.regionID)\">\n\t\t\t\t\t<b-form-select v-model=\"form.regionID\" :options=\"options.regions\" @change=\"setProjectName\" :state=\"getValidState($v.form.regionID)\">\n\t\t\t\t\t\t<template #first>\n\t\t\t\t\t\t\t<b-form-select-option :value=\"null\" disabled>-- Select a region --</b-form-select-option>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</b-form-select>\n\t\t\t\t</b-form-group>\n\n\t\t\t\t<b-form-group label=\"Give your project a name\" class=\"mt-4\">\n\t\t\t\t\t<b-form-input v-model=\"form.projectName\" type=\"text\" :state=\"getValidState($v.form.projectName)\"></b-form-input>\n\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.projectName.required\">Required</b-form-invalid-feedback>\n\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.projectName.maxLength\">Must be fewer than 100 characters</b-form-invalid-feedback>\n\t\t\t\t\t<b-form-invalid-feedback v-if=\"!$v.form.projectName.hasAlphaNumeric\">Must contain at least one letter or number</b-form-invalid-feedback>\n\t\t\t\t</b-form-group>\n\n\t\t\t\t<fixed-action-bar :cols-lg=\"10\" :offset-lg=\"2\">\n\t\t\t\t\t<save-button :saving=\"page.saving\" class=\"mr-2\" :disabled=\"options.regions.length < 1\" text=\"Create Project\" />\n\t\t\t\t\t<back-button class=\"btn btn-secondary mr-2\" />\n\t\t\t\t</fixed-action-bar>\n\t\t\t</b-form>\n\t\t</page-authorization-container>\n\t</div>\n</template>\n\n<script>\n\timport { required, maxLength } from 'vuelidate/lib/validators';\n\n\texport default {\n\t\tname: 'ApiRegionalCreate',\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tshowLogin: false,\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tsaveErrors: [],\n\t\t\t\t\tregions: {\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tloading: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\n\t\t\t\toptions: {\n\t\t\t\t\tdatasets: [],\n\t\t\t\t\tuserDatasets: [],\r\n\t\t\t\t\tregions: []\r\n\t\t\t\t},\n\t\t\t\tform: {\n\t\t\t\t\tdatasetID: null,\n\t\t\t\t\tregionID: null,\n\t\t\t\t\tprojectName: null\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\n\t\tvalidations: {\n\t\t\tform: {\n\t\t\t\tdatasetID: { required },\n\t\t\t\tregionID: { required },\n\t\t\t\tprojectName: {\n\t\t\t\t\trequired,\r\n\t\t\t\t\tmaxLength: maxLength(100),\r\n\t\t\t\t\thasAlphaNumeric(value) {\r\n\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t/[a-z]/.test(value) || // checks for a-z\r\n\t\t\t\t\t\t\t/[0-9]/.test(value) // checks for 0-9\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t}\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tasync created() {\r\n\t\t\tawait this.get();\r\n\t\t},\n\t\tmethods: {\n\t\t\tasync get() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.loading = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.get(`api-requests/regionaloptions`, this.getTokenHeader());\r\n\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\tthis.options.datasets = response.data.datasets;\r\n\t\t\t\t\tthis.options.userDatasets = response.data.userDatasets;\n\n\t\t\t\t\tthis.form.datasetID = response.data.defaultDataset;\n\n\t\t\t\t\tif (this.isNullOrEmpty(this.form.datasetID) && this.options.datasets.length > 0 && this.options.datasets[0].options.length > 0) {\r\n\t\t\t\t\t\tthis.form.datasetID = this.options.datasets[0].options[0].value;\r\n\t\t\t\t\t}\n\n\t\t\t\t\tif (!this.isNullOrEmpty(this.form.datasetID)) {\n\t\t\t\t\t\tawait this.getRegions();\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\telse this.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.loading = false;\r\n\t\t\t},\r\n\t\t\tasync getRegions() {\r\n\t\t\t\tthis.page.regions.errors = [];\r\n\t\t\t\tthis.page.regions.loading = true;\r\n\n\t\t\t\tif (this.isNullOrEmpty(this.form.datasetID)) {\n\t\t\t\t\tthis.page.regions.errors.push('Please select a dataset.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tconst response = await this.$http.get(`api-requests/datasetregionoptions/${this.form.datasetID}`, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.log(response.data);\r\n\t\t\t\t\t\tthis.options.regions = response.data.regions;\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.regions.errors = this.logError(error);\r\n\t\t\t\t\t}\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.regions.loading = false;\r\n\t\t\t},\r\n\t\t\tasync save() {\r\n\t\t\t\tthis.page.saveErrors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\r\n\t\t\t\tif (this.$v.$invalid) {\r\n\t\t\t\t\tthis.$v.$touch();\r\n\t\t\t\t\tthis.page.saveErrors.push('Please fix the errors below and try again.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst response = await this.$http.post('api-requests/createregionalproject', this.form, this.getTokenHeader());\r\n\t\t\t\t\t\tthis.$router.push({ name: 'ProjectView', params: { id: response.data } }).catch(err => { });\r\n\t\t\t\t\t} catch (error) {\r\n\t\t\t\t\t\tif (this.isApiUnauthorized(error)) this.page.showLogin = true;\r\n\t\t\t\t\t\telse this.page.saveErrors = this.logError(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\tgetSelectedDataset() {\r\n\t\t\t\tlet id = this.form.datasetID;\r\n\t\t\t\tlet matches = [];\r\n\t\t\t\tfor (let group of this.options.datasets) {\r\n\t\t\t\t\tmatches = group.options.filter(function (el) { return el.value == id; });\r\n\t\t\t\t\tif (matches.length > 0) break;\r\n\t\t\t\t}\r\n\t\t\t\tif (matches.length == 0) {\r\n\t\t\t\t\tmatches = this.options.userDatasets.filter(function (el) { return el.value == id; });\r\n\t\t\t\t}\r\n\t\t\t\tthis.selectedDataset = matches[0];\r\n\t\t\t\treturn matches[0]; \r\n\t\t\t},\n\t\t\tgetSelectedRegion() {\n\t\t\t\tlet id = this.form.regionID;\r\n\t\t\t\treturn this.options.regions.filter(function (el) { return el.value == id; })[0]; \r\n\t\t\t},\n\t\t\tsetProjectName() {\n\t\t\t\tlet dataset = this.getSelectedDataset();\n\t\t\t\tlet region = this.getSelectedRegion();\n\n\t\t\t\tthis.form.projectName = `${dataset.text} - Region ${region.text}`;\n\t\t\t\tthis.log('set name');\n\t\t\t\tthis.log(this.form.projectName);\r\n\t\t\t}\r\n\t\t}\r\n\t}\n</script>\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiRegionalCreate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ApiRegionalCreate.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ApiRegionalCreate.vue?vue&type=template&id=ec293598&\"\nimport script from \"./ApiRegionalCreate.vue?vue&type=script&lang=js&\"\nexport * from \"./ApiRegionalCreate.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","import Vue from 'vue';\r\nimport Router from 'vue-router';\r\nimport Home from './views/Home.vue';\r\nimport Help from './views/Help.vue';\r\nimport HelpLanduse from './views/HelpLanduse.vue';\r\n\r\nimport AccountProfile from './views/account/AccountProfile.vue';\r\nimport AccountConfirm from './views/account/AccountConfirm.vue';\r\nimport AccountReset from './views/account/AccountReset.vue';\r\nimport AccountChangeEmail from './views/account/AccountChangeEmail.vue';\r\n\r\nimport FeedbackList from './views/account/feedback/FeedbackList.vue';\r\nimport FeedbackView from './views/account/feedback/FeedbackView.vue';\r\nimport FeedbackCreate from './views/account/feedback/FeedbackCreate.vue';\r\n\r\nimport HruTable from './views/projects/HruTable.vue';\r\nimport ProjectList from './views/projects/ProjectList.vue';\r\nimport ProjectCreate from './views/projects/ProjectCreate.vue';\r\nimport ProjectView from './views/projects/ProjectView.vue';\r\nimport ProjectHrus from './views/projects/ProjectHrus.vue';\r\nimport ProjectDocuments from './views/projects/ProjectDocuments.vue';\r\nimport ProjectMetadata from './views/projects/ProjectMetadata.vue';\r\nimport ProjectDownloads from './views/projects/ProjectDownloads.vue';\r\nimport ScenarioList from './views/projects/scenarios/ScenarioList.vue';\r\nimport ScenarioView from './views/projects/scenarios/ScenarioView.vue';\r\nimport ScenarioCreate from './views/projects/scenarios/ScenarioCreate.vue';\r\n\r\nimport ErrorReportList from './views/projects/errors/ErrorReportList.vue';\r\nimport ErrorReportView from './views/projects/errors/ErrorReportView.vue';\r\nimport ErrorReportCreate from './views/projects/errors/ErrorReportCreate.vue';\r\n\r\nimport EditBsn from './views/projects/scenarios/edit/general/EditBsn.vue';\r\nimport EditFerts from './views/projects/scenarios/edit/general/EditFerts.vue';\r\nimport EditFert from './views/projects/scenarios/edit/general/EditFert.vue';\r\nimport EditUrbans from './views/projects/scenarios/edit/general/EditUrbans.vue';\r\nimport EditUrban from './views/projects/scenarios/edit/general/EditUrban.vue';\r\nimport EditNutrientEfficiency from './views/projects/scenarios/edit/general/EditNutrientEfficiency.vue';\r\nimport EditLup from './views/projects/scenarios/edit/general/EditLup.vue';\r\nimport EditCalibration from './views/projects/scenarios/edit/general/EditCalibration.vue';\r\n\r\nimport EditWgn from './views/projects/scenarios/edit/weather/EditWgn.vue';\r\nimport EditClimateSensitivity from './views/projects/scenarios/edit/weather/EditClimateSensitivity.vue';\r\n\r\nimport EditMgtGeneral from './views/projects/scenarios/edit/mgt/EditMgtGeneral.vue';\r\nimport EditMgtOperations from './views/projects/scenarios/edit/mgt/EditMgtOperations.vue';\r\n\r\nimport EditCurveNumber from './views/projects/scenarios/edit/subbasin/EditCurveNumber.vue';\r\nimport EditSedimentRouting from './views/projects/scenarios/edit/subbasin/EditSedimentRouting.vue';\r\nimport EditPointSource from './views/projects/scenarios/edit/subbasin/EditPointSource.vue';\r\nimport EditPotholes from './views/projects/scenarios/edit/subbasin/EditPotholes.vue';\r\n\r\nimport EditHruVars from './views/projects/scenarios/edit/print/EditHruVars.vue';\r\nimport EditHruPrint from './views/projects/scenarios/edit/print/EditHruPrint.vue';\r\n\r\nimport OutputMaps from './views/projects/scenarios/output/OutputMaps.vue';\r\nimport OutputCharts from './views/projects/scenarios/output/OutputCharts.vue';\r\nimport OutputCheck from './views/projects/scenarios/output/OutputCheck.vue';\r\nimport OutputCeQual from './views/projects/scenarios/output/OutputCeQual.vue';\r\nimport OutputFfa from './views/projects/scenarios/output/OutputFfa.vue';\r\nimport OutputBaseflowSeparation from './views/projects/scenarios/output/OutputBaseflowSeparation.vue';\r\n\r\nimport GroupList from './views/groups/GroupList.vue';\r\nimport GroupInvites from './views/groups/GroupInvites.vue';\r\nimport GroupView from './views/groups/GroupView.vue';\r\nimport GroupCreate from './views/groups/GroupCreate.vue';\r\n\r\nimport DatasetList from './views/datasets/DatasetList.vue';\r\nimport DatasetView from './views/datasets/DatasetView.vue';\r\nimport DatasetCreate from './views/datasets/DatasetCreate.vue';\r\n\r\nimport AdminDashboard from './views/admin/AdminDashboard.vue';\r\nimport AdminDatabase from './views/admin/AdminDatabase.vue';\r\nimport AdminReports from './views/admin/AdminReports.vue';\r\nimport AdminUsers from './views/admin/users/AdminUsers.vue';\r\nimport AdminUser from './views/admin/users/AdminUser.vue';\r\nimport AdminUserCreate from './views/admin/users/AdminUserCreate.vue';\r\nimport AdminGroups from './views/admin/users/groups/AdminGroups.vue';\r\nimport AdminGroupView from './views/admin/users/groups/AdminGroupView.vue';\r\nimport AdminTiers from './views/admin/users/tiers/AdminTiers.vue';\r\nimport AdminTierView from './views/admin/users/tiers/AdminTierView.vue';\r\nimport AdminTierCreate from './views/admin/users/tiers/AdminTierCreate.vue';\r\nimport AdminUserCategories from './views/admin/users/AdminUserCategories.vue';\r\nimport AdminEmailUsers from './views/admin/users/emails/AdminEmailUsers.vue';\n\r\nimport AdminErrors from './views/admin/errors/AdminErrors.vue';\r\nimport AdminErrorView from './views/admin/errors/AdminErrorView.vue';\r\nimport AdminProjects from './views/admin/projects/AdminProjects.vue';\r\nimport AdminScenarios from './views/admin/projects/AdminScenarios.vue';\r\nimport AdminDatasets from './views/admin/datasets/AdminDatasets.vue';\r\nimport AdminDatasetView from './views/admin/datasets/AdminDatasetView.vue';\r\nimport AdminWebsiteText from './views/admin/AdminWebsiteText.vue';\r\nimport AdminWebsiteTextPage from './views/admin/AdminWebsiteTextPage.vue';\r\nimport AdminWebsiteSettings from './views/admin/AdminWebsiteSettings.vue';\r\nimport AdminJobs from './views/admin/AdminJobs.vue';\r\nimport AdminImportHuc2 from './views/admin/AdminImportHuc2.vue';\r\nimport AdminWeatherList from './views/admin/datasets/weather/AdminWeatherList.vue';\r\nimport AdminWeatherView from './views/admin/datasets/weather/AdminWeatherView.vue';\r\nimport AdminWeatherCreate from './views/admin/datasets/weather/AdminWeatherCreate.vue';\n\r\nimport AdminSwatVersionList from './views/admin/datasets/swatversions/AdminSwatVersionList.vue';\r\nimport AdminSwatVersionView from './views/admin/datasets/swatversions/AdminSwatVersionView.vue';\r\nimport AdminSwatVersionCreate from './views/admin/datasets/swatversions/AdminSwatVersionCreate.vue';\r\n\r\nimport Version1CheckUser from './views/v1/Version1CheckUser.vue';\r\nimport Version1VerifyUser from './views/v1/Version1VerifyUser.vue';\n\nimport ApiDashboard from './views/api/ApiDashboard.vue';\r\nimport ApiBatchList from './views/api/batch/ApiBatchList.vue';\r\nimport ApiBatchCreate from './views/api/batch/ApiBatchCreate.vue';\r\nimport ApiBatchView from './views/api/batch/ApiBatchView.vue';\r\nimport ApiRegionalCreate from './views/api/regional/ApiRegionalCreate.vue';\n\r\nVue.use(Router)\r\n\r\nexport default new Router({\r\n\troutes: [\r\n\t\t{\r\n\t\t\tpath: '/', name: 'Home', component: Home\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/help', name: 'Help', component: Help, meta: { title: 'Documentation & Support' },\n\t\t\tchildren: [\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'landuse', name: 'HelpLanduse', component: HelpLanduse, meta: { title: 'Land Use Definitions' }\r\n\t\t\t\t}\n\t\t\t]\r\n\t\t},\n\t\t{\r\n\t\t\tpath: '/v1/check', name: 'Version1CheckUser', component: Version1CheckUser\r\n\t\t},\n\t\t{\r\n\t\t\tpath: '/v1/verify/:code', name: 'Version1VerifyUser', component: Version1VerifyUser\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/account', name: 'AccountProfile', component: AccountProfile,\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'confirm/:userId/:code', name: 'AccountConfirm', component: AccountConfirm\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'reset/:code', name: 'AccountReset', component: AccountReset\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'changeemail/:userId/:code/:email', name: 'AccountChangeEmail', component: AccountChangeEmail\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/groups', name: 'GroupList', component: GroupList, meta: { title: 'Groups' },\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'invites', name: 'GroupInvites', component: GroupInvites, meta: { title: 'Invitations' }\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'create', name: 'GroupCreate', component: GroupCreate, meta: { title: 'Create' }\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: ':id', name: 'GroupView', component: GroupView, meta: { title: 'View' }\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/feedback', name: 'FeedbackList', component: FeedbackList, meta: { title: 'Feedbacks' },\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'create', name: 'FeedbackCreate', component: FeedbackCreate, meta: { title: 'Create' }\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: ':reportID', name: 'FeedbackView', component: FeedbackView, meta: { title: 'View' }\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/datasets', name: 'DatasetList', component: DatasetList, meta: { title: 'Project Datasets' },\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'create', name: 'DatasetCreate', component: DatasetCreate, meta: { title: 'Upload' }\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: ':id', name: 'DatasetView', component: DatasetView, meta: { title: 'View' }\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t},\t\t\r\n\t\t{\r\n\t\t\tpath: '/hrus/:id', name: 'HruTable', component: HruTable\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/projects', name: 'ProjectList', component: ProjectList, meta: { title: 'Projects' },\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'create', name: 'ProjectCreate', component: ProjectCreate\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: ':id', name: 'ProjectView', component: ProjectView, meta: { title: 'View' },\r\n\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'hrus', name: 'ProjectHrus', component: ProjectHrus, meta: { title: 'HRUs' }\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'scenarios', name: 'ScenarioList', component: ScenarioList, meta: { title: 'Scenarios' },\r\n\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: 'create', name: 'ScenarioCreate', component: ScenarioCreate, meta: { title: 'Create' }\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: ':scenarioID', name: 'ScenarioView', component: ScenarioView, meta: { title: 'Scenario' },\r\n\t\t\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'bsn', name: 'EditBsn', component: EditBsn, meta: { title: 'Basin' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'fert', name: 'EditFerts', component: EditFerts, meta: { title: 'Fertilizers' },\r\n\t\t\t\t\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tpath: ':fertID', name: 'EditFert', component: EditFert, meta: { title: 'Edit' }\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'nutrient-efficiency', name: 'EditNutrientEfficiency', component: EditNutrientEfficiency, meta: { title: 'Nutrient Efficiency' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'lup', name: 'EditLup', component: EditLup, meta: { title: 'Land Use Update' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'urban', name: 'EditUrbans', component: EditUrbans, meta: { title: 'Urban' },\r\n\t\t\t\t\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tpath: ':urbanID', name: 'EditUrban', component: EditUrban, meta: { title: 'Edit' }\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'calibration', name: 'EditCalibration', component: EditCalibration, meta: { title: 'Calibration Data' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'mgt-general', name: 'EditMgtGeneral', component: EditMgtGeneral, meta: { title: 'General Management' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'mgt-operations', name: 'EditMgtOperations', component: EditMgtOperations, meta: { title: 'Operations Management' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'curve-number', name: 'EditCurveNumber', component: EditCurveNumber, meta: { title: 'Curve Number' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'sediment-routing', name: 'EditSedimentRouting', component: EditSedimentRouting, meta: { title: 'Sediment Routing Method' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'point-source', name: 'EditPointSource', component: EditPointSource, meta: { title: 'Point Source' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'potholes', name: 'EditPotholes', component: EditPotholes, meta: { title: 'Pothole Variables' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'climate-sensitivity', name: 'EditClimateSensitivity', component: EditClimateSensitivity, meta: { title: 'Climate Sensitivity/Variability Analysis' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'weather-generator', name: 'EditWgn', component: EditWgn, meta: { title: 'Weather Generator' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'hru-vars', name: 'EditHruVars', component: EditHruVars, meta: { title: 'HRU Variables to Print' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'hru-print', name: 'EditHruPrint', component: EditHruPrint, meta: { title: 'HRUs to Print' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'output/maps', name: 'OutputMaps', component: OutputMaps, meta: { title: 'Output Maps' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'output/charts', name: 'OutputCharts', component: OutputCharts, meta: { title: 'Output Charts' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'output/swat-check', name: 'OutputCheck', component: OutputCheck, meta: { title: 'SWAT Check' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'output/ce-qual', name: 'OutputCeQual', component: OutputCeQual, meta: { title: 'CE-QUAL' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'output/ffa', name: 'OutputFfa', component: OutputFfa, meta: { title: 'Flood Frequency Analysis' }\r\n\t\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\t\t\tpath: 'output/baseflowseparation', name: 'OutputBaseflowSeparation', component: OutputBaseflowSeparation, meta: { title: 'Baseflow Separation' }\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'documents', name: 'ProjectDocuments', component: ProjectDocuments, meta: { title: 'Uploaded Documents' }\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'metadata', name: 'ProjectMetadata', component: ProjectMetadata, meta: { title: 'Metadata' }\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'downloads', name: 'ProjectDownloads', component: ProjectDownloads, meta: { title: 'Downloads' }\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'errors', name: 'ErrorReportList', component: ErrorReportList, meta: { title: 'Error Reports' },\r\n\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: 'create', name: 'ErrorReportCreate', component: ErrorReportCreate, meta: { title: 'Create' }\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: ':reportID', name: 'ErrorReportView', component: ErrorReportView, meta: { title: 'View' }\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t]\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '/admin', name: 'AdminDashboard', component: AdminDashboard, meta: { title: 'Admin Dashboard' },\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'users', name: 'AdminUsers', component: AdminUsers, meta: { title: 'Users' },\r\n\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'tiers', name: 'AdminTiers', component: AdminTiers, meta: { title: 'Tiers' },\r\n\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: 'create', name: 'AdminTierCreate', component: AdminTierCreate, meta: { title: 'Create' }\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: ':id', name: 'AdminTierView', component: AdminTierView, meta: { title: 'Details' }\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'groups', name: 'AdminGroups', component: AdminGroups, meta: { title: 'Groups' },\r\n\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: ':id', name: 'AdminGroupView', component: AdminGroupView, meta: { title: 'Details' }\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'categories', name: 'AdminUserCategories', component: AdminUserCategories, meta: { title: 'Categories' }\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'email', name: 'AdminEmailUsers', component: AdminEmailUsers, meta: { title: 'Send Email' }\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'create', name: 'AdminUserCreate', component: AdminUserCreate, meta: { title: 'Create' }\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: ':id', name: 'AdminUser', component: AdminUser, meta: { title: 'Account Information' }\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'projects', name: 'AdminProjects', component: AdminProjects, meta: { title: 'Projects' },\r\n\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'scenarios', name: 'AdminScenarios', component: AdminScenarios, meta: { title: 'Scenarios' }\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'errors', name: 'AdminErrors', component: AdminErrors, meta: { title: 'Error Reports' },\r\n\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: ':id', name: 'AdminErrorView', component: AdminErrorView, meta: { title: 'Update' }\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'reports', name: 'AdminReports', component: AdminReports, meta: { title: 'Reports' }\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'database', name: 'AdminDatabase', component: AdminDatabase, meta: { title: 'Database' }\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'datasets', name: 'AdminDatasets', component: AdminDatasets, meta: { title: 'Datasets' },\r\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'weather', name: 'AdminWeatherList', component: AdminWeatherList, meta: { title: 'Weather' },\r\n\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: 'create', name: 'AdminWeatherCreate', component: AdminWeatherCreate, meta: { title: 'Create' }\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: ':id', name: 'AdminWeatherView', component: AdminWeatherView, meta: { title: 'Details' }\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'swatversions', name: 'AdminSwatVersionList', component: AdminSwatVersionList, meta: { title: 'SWAT Versions' },\r\n\t\t\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: 'create', name: 'AdminSwatVersionCreate', component: AdminSwatVersionCreate, meta: { title: 'Create' }\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tpath: ':id', name: 'AdminSwatVersionView', component: AdminSwatVersionView, meta: { title: 'Details' }\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t]\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: ':id', name: 'AdminDatasetView', component: AdminDatasetView, meta: { title: 'Details' }\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'website', name: 'AdminWebsiteText', component: AdminWebsiteText, meta: { title: 'Website Text' },\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: ':id', name: 'AdminWebsiteTextPage', component: AdminWebsiteTextPage, meta: { title: 'Page' }\r\n\t\t\t\t\t\t}\n\t\t\t\t\t]\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'website-settings', name: 'AdminWebsiteSettings', component: AdminWebsiteSettings, meta: { title: 'Website Settings' }\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'special-jobs', name: 'AdminJobs', component: AdminJobs, meta: { title: 'Special Jobs' }\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'import-huc-v2', name: 'AdminImportHuc2', component: AdminImportHuc2, meta: { title: 'Import HUC Data Version 2' }\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t},\n\t\t{\r\n\t\t\tpath: '/api', name: 'ApiDashboard', component: ApiDashboard, meta: { title: 'Advanced Features' },\r\n\t\t\tchildren: [\r\n\t\t\t\t{\r\n\t\t\t\t\tpath: 'batch', name: 'ApiBatchList', component: ApiBatchList, meta: { title: 'Batch Projects' },\r\n\t\t\t\t\tchildren: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: 'create', name: 'ApiBatchCreate', component: ApiBatchCreate, meta: { title: 'Create' }\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tpath: ':id', name: 'ApiBatchView', component: ApiBatchView, meta: { title: 'View' }\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t]\r\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tpath: 'regional', name: 'ApiRegionalCreate', component: ApiRegionalCreate, meta: { title: 'Regional Projects' }\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t},\r\n\t\t{\r\n\t\t\tpath: '*',\r\n\t\t\tredirect: '/'\r\n\t\t}\r\n\t]\r\n})\r\n","import Vue from 'vue'\r\nimport Vuex from 'vuex'\r\n\r\nVue.use(Vuex)\r\n\r\nexport default new Vuex.Store({\r\n\tstate: {\r\n\t\ttoken: localStorage.getItem('auth_token') || '',\r\n\t\tuser: {\r\n\t\t\tuserName: undefined,\r\n\t\t\temail: undefined,\r\n\t\t\tfirstName: undefined,\r\n\t\t\tlastName: undefined,\r\n\t\t\temailConfirmed: undefined,\r\n\t\t\ttoken: undefined,\r\n\t\t\troles: [],\n\t\t\tfeatureAccess: []\r\n\t\t},\r\n\t\tsiteText: {\r\n\t\t\tappName: undefined,\r\n\t\t\tsiteName: undefined,\r\n\t\t\tsiteLongName: undefined,\r\n\t\t\tsiteNameDescription: undefined,\r\n\t\t\thomePageIntro: undefined,\r\n\t\t\thomePageText: undefined,\r\n\t\t\thomePageWorkLists: undefined,\r\n\t\t\tfooter: undefined,\r\n\t\t\thelpPageText: undefined\r\n\t\t},\n\t\tsiteSettings: {\n\t\t\tappName: undefined,\r\n\t\t\tisOffline: undefined,\n\t\t\tuseCustomHelpPage: undefined,\n\t\t\tcustomTileProviders: undefined,\n\t\t\tincludeCeQual: undefined,\n\t\t\tincludeFfa: undefined,\n\t\t\tcustomMapBounds: undefined,\n\t\t\tcustomMapZoom: undefined,\n\t\t\tapiConnectivityEnabled: undefined,\n\t\t\tenableAlertNotification: undefined,\n\t\t\talertNotification: undefined,\r\n\t\t},\r\n\t\tmapColors: {\r\n\t\t\tsubbasin: undefined,\r\n\t\t\tdownstream: undefined,\r\n\t\t\tnearby: undefined,\r\n\t\t\tstream: undefined,\r\n\t\t\tselected: undefined,\r\n\t\t\thighContrast: undefined\r\n\t\t},\n\t\trememberMeToken: undefined\r\n\t},\r\n\tmutations: {\r\n\t\tsetupSite(state, payload) {\r\n\t\t\tstate.siteText = payload.siteText;\n\t\t\tstate.siteSettings = payload.siteSettings;\r\n\t\t},\r\n\t\tlogin(state, payload) {\r\n\t\t\tstate.token = payload.token;\r\n\t\t\tstate.user = payload.user;\r\n\t\t},\r\n\t\tlogout(state) {\r\n\t\t\tstate.token = '';\r\n\t\t\tstate.user = {\r\n\t\t\t\tuserName: undefined,\r\n\t\t\t\temail: undefined,\r\n\t\t\t\tfirstName: undefined,\r\n\t\t\t\tlastName: undefined,\r\n\t\t\t\temailConfirmed: undefined,\r\n\t\t\t\ttoken: undefined,\r\n\t\t\t\troles: []\r\n\t\t\t};\r\n\t\t},\r\n\t\tsetMapColors(state, payload) {\r\n\t\t\tstate.mapColors = payload;\r\n\t\t},\n\t\tstoreRememberMeToken(state, payload) {\n\t\t\tstate.rememberMeToken = payload.token;\r\n\t\t}\r\n\t},\r\n\tgetters: {\r\n\t\tisAuthenticated: state => !!state.token,\r\n\t\tuser: state => state.user,\r\n\t\troles: state => state.user.roles,\r\n\t\ttoken: state => state.token,\r\n\t\tsiteText: state => state.siteText,\r\n\t\tsiteSettings: state => state.siteSettings,\r\n\t\tmapColors: state => state.mapColors,\n\t\trememberMeToken: state => state.rememberMeToken\r\n\t},\r\n})\r\n","import Vue from 'vue';\r\n\r\nimport BootstrapVue from 'bootstrap-vue';\r\nimport VueTypeaheadBootstrap from 'vue-typeahead-bootstrap';\r\n\r\nVue.use(BootstrapVue, {\r\n\tBButton: { variant: 'success' }\r\n});\r\nVue.component('b-typeahead', VueTypeaheadBootstrap);\r\n","import Vue from 'vue';\r\n\r\nimport { library } from '@fortawesome/fontawesome-svg-core';\r\nimport { fas } from '@fortawesome/free-solid-svg-icons';\r\nimport { far } from '@fortawesome/free-regular-svg-icons';\r\nimport { FontAwesomeIcon, FontAwesomeLayers, FontAwesomeLayersText } from '@fortawesome/vue-fontawesome';\r\n\r\nlibrary.add(fas, far);\r\nVue.component('font-awesome-icon', FontAwesomeIcon);\r\nVue.component('font-awesome-layers', FontAwesomeLayers);\r\nVue.component('font-awesome-layers-text', FontAwesomeLayersText);\r\n","import Vue from 'vue';\r\n\r\nimport HighchartsVue from 'highcharts-vue';\r\nimport Highcharts from 'highcharts';\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport exportingInit from 'highcharts/modules/exporting';\r\nimport exportDataInit from 'highcharts/modules/export-data';\r\nimport offlineExportInit from 'highcharts/modules/offline-exporting';\r\nimport mapInit from 'highcharts/modules/map';\r\n\r\nVue.use(HighchartsVue);\r\nHighcharts.setOptions({\r\n\tchart: {\r\n\t\tstyle: {\r\n\t\t\tfontFamily: '\"Roboto\", Arial, Helvetica, sans-serif'\r\n\t\t},\n\t\tzoomType: 'x'\r\n\t},\r\n\tlang: {\r\n\t\tthousandsSep: '\\u002c'\r\n\t}\r\n});\r\nHighchartsMore(Highcharts);\r\nexportingInit(Highcharts);\r\nexportDataInit(Highcharts);\r\nofflineExportInit(Highcharts);\r\nmapInit(Highcharts);\r\n\r\n(function (H) {\r\n\tH.addEvent(H.Axis, 'init', function (e) {\r\n\t\tthis.allowNegativeLog = e.userOptions.allowNegativeLog;\r\n\t});\r\n\r\n\t// Override conversions\r\n\tH.wrap(H.Axis.prototype, 'log2lin', function (proceed, num) {\r\n\r\n\t\tif (!this.allowNegativeLog) {\r\n\t\t\treturn proceed.call(this, num);\r\n\t\t}\r\n\r\n\t\tvar isNegative = num < 0,\r\n\t\t\tadjustedNum = Math.abs(num),\r\n\t\t\tresult;\r\n\t\tif (adjustedNum < 10) {\r\n\t\t\tadjustedNum += (10 - adjustedNum) / 10;\r\n\t\t}\r\n\t\tresult = Math.log(adjustedNum) / Math.LN10;\r\n\t\treturn isNegative ? -result : result;\r\n\t});\r\n\tH.wrap(H.Axis.prototype, 'lin2log', function (proceed, num) {\r\n\t\tif (!this.allowNegativeLog) {\r\n\t\t\treturn proceed.call(this, num);\r\n\t\t}\r\n\r\n\t\tvar isNegative = num < 0,\r\n\t\t\tabsNum = Math.abs(num),\r\n\t\t\tresult = Math.pow(10, absNum);\r\n\t\tif (result < 10) {\r\n\t\t\tresult = (10 * (result - 1)) / (10 - 1);\r\n\t\t}\r\n\t\treturn isNegative ? -result : result;\r\n\t});\r\n}(Highcharts));\r\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.loading)?_c('div',{staticClass:\"text-center p-5\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\",\"size\":\"2x\"}})],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div v-if=\"loading\" class=\"text-center p-5\">\n\t\t<font-awesome-icon :icon=\"['fas', 'spinner']\" spin size=\"2x\" />\n\t</div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: 'PageLoading',\r\n\tprops: {\r\n\t\tloading: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t}\r\n\t}\r\n}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PageLoading.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PageLoading.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PageLoading.vue?vue&type=template&id=e9458274&\"\nimport script from \"./PageLoading.vue?vue&type=script&lang=js&\"\nexport * from \"./PageLoading.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" This \"+_vm._s(_vm.isProject ? 'project' : 'scenario')+\" is currently running and cannot be modified at this time. \")])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<b-alert variant=\"warning\" show>\r\n\t\tThis {{isProject ? 'project' : 'scenario'}} is currently running and cannot be modified at this time.\r\n\t</b-alert>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: 'PageRunning',\r\n\tprops: {\r\n\t\tisProject: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t}\r\n\t}\r\n}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PageRunning.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PageRunning.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PageRunning.vue?vue&type=template&id=4b0c9e90&\"\nimport script from \"./PageRunning.vue?vue&type=script&lang=js&\"\nexport * from \"./PageRunning.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-alert',{class:_vm.noBottomMarg ? 'mb-0' : 'mb-3',attrs:{\"variant\":\"warning\",\"show\":_vm.errors.length > 0}},[_vm._l((_vm.errors),function(error,i){return _c('div',{key:i},[_vm._v(_vm._s(error))])}),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<b-alert variant=\"warning\" :show=\"errors.length > 0\" :class=\"noBottomMarg ? 'mb-0' : 'mb-3'\">\r\n\t\t<div v-for=\"(error, i) in errors\" :key=\"i\">{{error}}</div>\r\n\t\t<slot></slot>\r\n\t</b-alert>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: 'ErrorList',\r\n\tprops: {\r\n\t\terrors: {\r\n\t\t\ttype: Array,\r\n\t\t\trequired: true\r\n\t\t},\n\t\tnoBottomMarg: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t}\r\n\t}\r\n}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ErrorList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ErrorList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ErrorList.vue?vue&type=template&id=7c7dd8cf&\"\nimport script from \"./ErrorList.vue?vue&type=script&lang=js&\"\nexport * from \"./ErrorList.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-button',{attrs:{\"type\":_vm.type,\"variant\":_vm.variant,\"size\":_vm.size,\"disabled\":_vm.saving || _vm.disabled}},[(_vm.saving)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'spinner'],\"spin\":\"\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.text)+\" \")],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<b-button :type=\"type\" :variant=\"variant\" :size=\"size\" :disabled=\"saving || disabled\">\r\n\t\t<font-awesome-icon v-if=\"saving\" :icon=\"['fas', 'spinner']\" spin />\r\n\t\t{{ text }}\r\n\t</b-button>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: 'SaveButton',\r\n\tprops: {\r\n\t\tsaving: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t},\r\n\t\tdisabled: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t},\r\n\t\ttext: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: 'Save Changes'\r\n\t\t},\r\n\t\ttype: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: 'submit'\r\n        },\r\n        variant: {\r\n            type: String,\r\n            default: 'success'\r\n        },\r\n        size: {\r\n            type: String,\r\n            default: 'md'\r\n        }\r\n\t}\r\n}\r\n</script>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SaveButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SaveButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SaveButton.vue?vue&type=template&id=32601f40&\"\nimport script from \"./SaveButton.vue?vue&type=script&lang=js&\"\nexport * from \"./SaveButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-btn',{attrs:{\"variant\":\"secondary\"},on:{\"click\":_vm.goBack}},[_vm._v(\" \"+_vm._s(_vm.text)+\" \")])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<b-btn variant=\"secondary\" @click=\"goBack\">\r\n\t\t{{ text }}\r\n\t</b-btn>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: 'BackButton',\r\n\tprops: {\r\n\t\ttext: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: 'Back'\r\n\t\t}\r\n\t},\r\n\tmethods: {\r\n\t\tgoBack: function() {\r\n\t\t\tthis.$router.go(-1);\r\n\t\t}\r\n\t}\r\n}\r\n</script>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BackButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BackButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BackButton.vue?vue&type=template&id=cd39894a&\"\nimport script from \"./BackButton.vue?vue&type=script&lang=js&\"\nexport * from \"./BackButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-alert',{attrs:{\"show\":_vm.dismissCountDown,\"dismissible\":\"\",\"variant\":\"success\"},on:{\"dismiss-count-down\":_vm.countDownChanged,\"dismissed\":function($event){_vm.dismissCountDown=0}}},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'check']}}),_vm._v(\" \"+_vm._s(_vm.text)+\" \")],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<b-alert :show=\"dismissCountDown\"\r\n\t\t\t dismissible\r\n\t\t\t variant=\"success\"\r\n\t\t\t @dismiss-count-down=\"countDownChanged\"\r\n\t\t\t @dismissed=\"dismissCountDown=0\">\r\n\t\t<font-awesome-icon :icon=\"['fas', 'check']\" />\r\n\t\t{{text}}\r\n\t</b-alert>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'SuccessAlert',\r\n\t\tprops: {\r\n\t\t\ttext: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\trequired: true\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tdismissCountDown: 0,\r\n\t\t\t\tdismissSecs: 3\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tcountDownChanged (dismissCountDown) {\r\n\t\t\t\tthis.dismissCountDown = dismissCountDown;\r\n\t\t\t},\r\n\t\t\tstartAlert() {\r\n\t\t\t\tthis.dismissCountDown = this.dismissSecs;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SuccessAlert.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SuccessAlert.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SuccessAlert.vue?vue&type=template&id=eedb2070&\"\nimport script from \"./SuccessAlert.vue?vue&type=script&lang=js&\"\nexport * from \"./SuccessAlert.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticStyle:{\"height\":\"100px\"}}),_c('div',{staticClass:\"fixed-bottom\"},[_c('b-container',{staticClass:\"p-0\",attrs:{\"fluid\":\"\"}},[_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{staticClass:\"bg-light border-top\",attrs:{\"md\":_vm.cols,\"offset-md\":_vm.offset,\"lg\":_vm.colsLg,\"offset-lg\":_vm.offsetLg}},[_c('div',{staticClass:\"py-3 d-flex px-3 px-md-4 align-items-center\"},[_vm._t(\"default\")],2)])],1)],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<div style=\"height:100px\"></div>\r\n\t\t<div class=\"fixed-bottom\">\r\n\t\t\t<b-container fluid class=\"p-0\">\r\n\t\t\t\t<b-row no-gutters>\r\n\t\t\t\t\t<b-col :md=\"cols\" :offset-md=\"offset\" :lg=\"colsLg\" :offset-lg=\"offsetLg\" class=\"bg-light border-top\">\r\n\t\t\t\t\t\t<div class=\"py-3 d-flex px-3 px-md-4 align-items-center\">\r\n\t\t\t\t\t\t\t<slot></slot>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</b-col>\r\n\t\t\t\t</b-row>\r\n\t\t\t</b-container>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: 'FixedActionBar',\r\n\tprops: {\r\n\t\tcols: {\r\n\t\t\ttype: Number,\r\n\t\t\tdefault: 9\r\n\t\t},\n\t\toffset: {\r\n\t\t\ttype: Number,\r\n\t\t\tdefault: 3\r\n\t\t},\n\t\tcolsLg: {\r\n\t\t\ttype: Number,\r\n\t\t\tdefault: 9\r\n\t\t},\n\t\toffsetLg: {\r\n\t\t\ttype: Number,\r\n\t\t\tdefault: 3\r\n\t\t}\r\n\t}\r\n}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FixedActionBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FixedActionBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FixedActionBar.vue?vue&type=template&id=95820432&\"\nimport script from \"./FixedActionBar.vue?vue&type=script&lang=js&\"\nexport * from \"./FixedActionBar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('font-awesome-icon',{staticClass:\"icon ml-2 text-success\",attrs:{\"icon\":['fas', 'check']}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<font-awesome-icon :icon=\"['fas', 'check']\" class=\"icon ml-2 text-success\" />\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n\tname: 'CheckIcon'\r\n}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CheckIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CheckIcon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CheckIcon.vue?vue&type=template&id=cc228b0e&\"\nimport script from \"./CheckIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./CheckIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',[(!_vm.isAuthenticated || _vm.page.showLogin)?_c('login-form',{attrs:{\"show-header\":\"\"}}):(!_vm.isAuthorized(_vm.roleNames.registered))?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" Your account is pending approval. You will receive a notification by email when it is approved. \")])],1):(_vm.requireAdmin && !(_vm.isAuthorized(_vm.roleNames.admin) || _vm.isAuthorized(_vm.roleNames.partialAdmin)))?_c('div',[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" You are not authorized to view this page. \")])],1):(!_vm.showErrorsWithObject && _vm.page.errors.length > 0)?_c('error-list',{attrs:{\"errors\":_vm.page.errors}}):_c('div',[(_vm.showErrorsWithObject)?_c('error-list',{attrs:{\"errors\":_vm.page.errors,\"no-bottom-marg\":_vm.noBottomMarg}}):_vm._e(),_vm._t(\"default\")],2)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div>\r\n\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t<div v-if=\"!page.loading\">\r\n\t\t\t<login-form v-if=\"!isAuthenticated || page.showLogin\" show-header></login-form>\r\n\t\t\t<div v-else-if=\"!isAuthorized(roleNames.registered)\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\tYour account is pending approval. You will receive a notification by email when it is approved.\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<div v-else-if=\"requireAdmin && !(isAuthorized(roleNames.admin) || isAuthorized(roleNames.partialAdmin))\">\r\n\t\t\t\t<b-alert variant=\"warning\" show>\r\n\t\t\t\t\tYou are not authorized to view this page.\r\n\t\t\t\t</b-alert>\r\n\t\t\t</div>\r\n\t\t\t<error-list v-else-if=\"!showErrorsWithObject && page.errors.length > 0\" :errors=\"page.errors\"></error-list>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<error-list v-if=\"showErrorsWithObject\" :errors=\"page.errors\" :no-bottom-marg=\"noBottomMarg\"></error-list>\r\n\t\t\t\t<slot></slot>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'PageAuthorizationContainer',\r\n\t\tprops: {\r\n\t\t\tpage: {\r\n\t\t\t\ttype: Object,\r\n\t\t\t\trequired: true\r\n\t\t\t},\n\t\t\tshowErrorsWithObject: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\n\t\t\trequireAdmin: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\n\t\t\tnoBottomMarg: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PageAuthorizationContainer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PageAuthorizationContainer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PageAuthorizationContainer.vue?vue&type=template&id=0c942896&\"\nimport script from \"./PageAuthorizationContainer.vue?vue&type=script&lang=js&\"\nexport * from \"./PageAuthorizationContainer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"login\"}},[_c('page-loading',{attrs:{\"loading\":_vm.page.loading}}),(!_vm.page.loading)?_c('div',[(_vm.user.userName !== undefined && !_vm.user.emailConfirmed)?_c('div',{staticClass:\"container-fluid py-4\"},[_c('b-card',{staticClass:\"mx-auto text-center\",staticStyle:{\"max-width\":\"400px\"},attrs:{\"bg-variant\":\"light\"}},[_c('error-list',{attrs:{\"errors\":_vm.account.confirm.errors}}),(!_vm.account.confirm.sent)?_c('b-card-text',[_vm._v(\" Please check your email to confirm your account. \")]):_c('b-card-text',[_vm._v(\" Confirmation sent! Please check your email. If you do not receive anything after one hour, please try again or \"),_c('router-link',{attrs:{\"to\":\"/help\"}},[_vm._v(\"contact support\")]),_vm._v(\". \")],1),_c('save-button',{attrs:{\"saving\":_vm.account.confirm.saving,\"text\":\"Re-send email\"},nativeOn:{\"click\":function($event){return _vm.resendConfirmation.apply(null, arguments)}}})],1)],1):(_vm.mfa.show)?_c('div',[_c('b-card',{staticClass:\"mx-auto text-center mb-3\",staticStyle:{\"max-width\":\"400px\"},attrs:{\"bg-variant\":\"light\"}},[_c('error-list',{attrs:{\"errors\":_vm.mfa.errors}}),_c('b-card-text',[_c('h5',[_vm._v(\"Account Verification Required\")]),_c('p',[_vm._v(\" Please check your email address, \"),_c('strong',[_vm._v(_vm._s(_vm.mungeEmailAddress(_vm.loginData.user.email)))]),_vm._v(\", and enter the code from the email into the box below to verify ownership of your account. \")]),_c('b-form-group',{attrs:{\"label\":\"Verification code\"}},[_c('b-form-input',{attrs:{\"type\":\"text\",\"required\":\"\",\"autofocus\":\"\"},model:{value:(_vm.mfa.form.code),callback:function ($$v) {_vm.$set(_vm.mfa.form, \"code\", $$v)},expression:\"mfa.form.code\"}})],1),_c('b-form-checkbox',{model:{value:(_vm.mfa.form.rememberMe),callback:function ($$v) {_vm.$set(_vm.mfa.form, \"rememberMe\", $$v)},expression:\"mfa.form.rememberMe\"}},[_vm._v(\" Remember this device? \"),_c('span',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottom\",modifiers:{\"hover\":true,\"bottom\":true}}],staticClass:\"ml-1\",attrs:{\"title\":\"Keep this checked if you want to log in without verifying your account through email on this browser/device.\"}},[_c('font-awesome-icon',{staticClass:\"text-info\",attrs:{\"icon\":\"info-circle\"}})],1)])],1),_c('save-button',{attrs:{\"saving\":_vm.mfa.saving,\"text\":\"Submit\"},nativeOn:{\"click\":function($event){return _vm.confirmMfa.apply(null, arguments)}}}),_c('b-card-text',[_c('p',{staticClass:\"text-muted mt-2 mb-0\",staticStyle:{\"font-size\":\"0.8rem\"}},[_vm._v(\" Didn't get the code or can't access the email associated with your account? Email us at \"),_c('a',{attrs:{\"href\":\"mailto:eco.web@tamu.edu\"}},[_vm._v(\"eco.web@tamu.edu\")]),_vm._v(\". \")])])],1)],1):_c('div',[(!_vm.recovery.show)?_c('b-form',{staticClass:\"form-signin py-3\",attrs:{\"validated\":_vm.page.validated},on:{\"submit\":function($event){$event.preventDefault();return _vm.login.apply(null, arguments)}}},[(_vm.showHeader)?_c('h1',{staticClass:\"h3 my-3 font-weight-normal\"},[_vm._v(\"Please log in\")]):_vm._e(),_c('error-list',{attrs:{\"errors\":_vm.page.errors}},[(_vm.page.v1Error)?_c('div',[_c('router-link',{attrs:{\"to\":\"/v1/check\"}},[_vm._v(\"Set up your account and import old projects.\")])],1):_vm._e()]),_c('label',{staticClass:\"sr-only\",attrs:{\"for\":\"userName\"}},[_vm._v(\"User name\")]),_c('b-form-input',{attrs:{\"id\":\"userName\",\"type\":\"text\",\"placeholder\":\"User name\",\"required\":\"\",\"autofocus\":\"\"},model:{value:(_vm.form.userName),callback:function ($$v) {_vm.$set(_vm.form, \"userName\", $$v)},expression:\"form.userName\"}}),_c('label',{staticClass:\"sr-only\",attrs:{\"for\":\"password\"}},[_vm._v(\"Password\")]),_c('b-form-input',{attrs:{\"id\":\"password\",\"type\":\"password\",\"placeholder\":\"Password\",\"required\":\"\"},model:{value:(_vm.form.password),callback:function ($$v) {_vm.$set(_vm.form, \"password\", $$v)},expression:\"form.password\"}}),_c('div',{staticClass:\"mt-3\"},[_c('save-button',{attrs:{\"saving\":_vm.page.saving,\"text\":\"Log in\"},nativeOn:{\"click\":function($event){_vm.page.validated = true}}})],1),_c('p',{staticClass:\"mt-3 mb-0\"},[_c('b-link',{on:{\"click\":_vm.loadRecoveryForm}},[_vm._v(\"Forgot your password?\")])],1)],1):_vm._e(),(_vm.recovery.show)?_c('b-form',{staticClass:\"form-signin py-3\",attrs:{\"validated\":_vm.page.validated},on:{\"submit\":function($event){$event.preventDefault();return _vm.recover.apply(null, arguments)}}},[(_vm.showHeader)?_c('h1',{staticClass:\"h3 my-3 font-weight-normal\"},[_vm._v(\"Recover your account\")]):_vm._e(),(_vm.recovery.sent)?_c('div',[_c('p',[_vm._v(\" Request received. If an account matches the email address provided, you will receive instructions for resetting your password. Please contact support if you have any problems. \")])]):_c('div',[_c('p',[_vm._v(\" Enter the email address associated with your account and we'll send you instructions for resetting your password. \")]),_c('error-list',{attrs:{\"errors\":_vm.page.errors}}),_c('label',{staticClass:\"sr-only\",attrs:{\"for\":\"email\"}},[_vm._v(\"Email address\")]),_c('b-form-input',{attrs:{\"id\":\"email\",\"type\":\"email\",\"placeholder\":\"Email address\",\"required\":\"\",\"autofocus\":\"\"},model:{value:(_vm.recovery.email),callback:function ($$v) {_vm.$set(_vm.recovery, \"email\", $$v)},expression:\"recovery.email\"}}),_c('div',{staticClass:\"mt-3\"},[_c('save-button',{attrs:{\"saving\":_vm.page.saving,\"text\":\"Send recovery information\"},nativeOn:{\"click\":function($event){_vm.page.validated = true}}})],1)],1),_c('p',{staticClass:\"mt-3 mb-0\"},[_c('b-link',{on:{\"click\":function($event){_vm.recovery.show = false}}},[_vm._v(\"Back to log-in form\")])],1)]):_vm._e()],1)]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n\t<div id=\"login\">\r\n\t\t<page-loading :loading=\"page.loading\"></page-loading>\r\n\t\t<div v-if=\"!page.loading\">\r\n\t\t\t<div v-if=\"user.userName !== undefined && !user.emailConfirmed\" class=\"container-fluid py-4\">\r\n\t\t\t\t<b-card bg-variant=\"light\" style=\"max-width:400px\" class=\"mx-auto text-center\">\r\n\t\t\t\t\t<error-list :errors=\"account.confirm.errors\"></error-list>\r\n\t\t\t\t\t<b-card-text v-if=\"!account.confirm.sent\">\r\n\t\t\t\t\t\tPlease check your email to confirm your account.\r\n\t\t\t\t\t</b-card-text>\r\n\t\t\t\t\t<b-card-text v-else>\r\n\t\t\t\t\t\tConfirmation sent! Please check your email.\r\n\t\t\t\t\t\tIf you do not receive anything after one hour, please try again or <router-link to=\"/help\">contact support</router-link>.\r\n\t\t\t\t\t</b-card-text>\r\n\t\t\t\t\t<save-button :saving=\"account.confirm.saving\" text=\"Re-send email\" @click.native=\"resendConfirmation\" />\r\n\t\t\t\t</b-card>\r\n\t\t\t</div>\n\t\t\t<div v-else-if=\"mfa.show\">\r\n\t\t\t\t<b-card bg-variant=\"light\" style=\"max-width:400px\" class=\"mx-auto text-center mb-3\">\r\n\t\t\t\t\t<error-list :errors=\"mfa.errors\"></error-list>\r\n\t\t\t\t\t<b-card-text>\n\t\t\t\t\t\t<h5>Account Verification Required</h5>\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tPlease check your email address, <strong>{{ mungeEmailAddress(loginData.user.email) }}</strong>,\r\n\t\t\t\t\t\t\tand enter the code from the email into the box below to verify ownership of your account.\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t<b-form-group label=\"Verification code\">\r\n\t\t\t\t\t\t\t<b-form-input v-model=\"mfa.form.code\" type=\"text\" required autofocus></b-form-input>\r\n\t\t\t\t\t\t</b-form-group>\r\n\t\t\t\t\t\t<b-form-checkbox v-model=\"mfa.form.rememberMe\">\r\n\t\t\t\t\t\t\tRemember this device?\r\n\t\t\t\t\t\t\t<span v-b-tooltip.hover.bottom title=\"Keep this checked if you want to log in without verifying your account through email on this browser/device.\" class=\"ml-1\">\r\n\t\t\t\t\t\t\t\t<font-awesome-icon icon=\"info-circle\" class=\"text-info\" />\r\n\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t</b-form-checkbox>\r\n\t\t\t\t\t</b-card-text>\r\n\t\t\t\t\t<save-button :saving=\"mfa.saving\" text=\"Submit\" @click.native=\"confirmMfa\" />\n\n\t\t\t\t\t<b-card-text>\n\t\t\t\t\t\t<p class=\"text-muted mt-2 mb-0\" style=\"font-size: 0.8rem\">\n\t\t\t\t\t\tDidn't get the code or can't access the email associated with your account?\n\t\t\t\t\t\tEmail us at <a href=\"mailto:eco.web@tamu.edu\">eco.web@tamu.edu</a>.\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</b-card-text>\r\n\t\t\t\t</b-card>\r\n\t\t\t</div>\r\n\t\t\t<div v-else>\r\n\t\t\t\t<b-form :validated=\"page.validated\" @submit.prevent=\"login\" class=\"form-signin py-3\" v-if=\"!recovery.show\">\r\n\t\t\t\t\t<h1 v-if=\"showHeader\" class=\"h3 my-3 font-weight-normal\">Please log in</h1>\r\n\r\n\t\t\t\t\t<error-list :errors=\"page.errors\">\n\t\t\t\t\t\t<div v-if=\"page.v1Error\">\n\t\t\t\t\t\t\t<router-link to=\"/v1/check\">Set up your account and import old projects.</router-link> \n\t\t\t\t\t\t</div>\n\t\t\t\t\t</error-list>\r\n\r\n\t\t\t\t\t<label for=\"userName\" class=\"sr-only\">User name</label>\r\n\t\t\t\t\t<b-form-input id=\"userName\" type=\"text\" v-model=\"form.userName\" placeholder=\"User name\" required autofocus />\r\n\r\n\t\t\t\t\t<label for=\"password\" class=\"sr-only\">Password</label>\r\n\t\t\t\t\t<b-form-input id=\"password\" type=\"password\" v-model=\"form.password\" placeholder=\"Password\" required />\r\n\r\n\t\t\t\t\t<div class=\"mt-3\">\r\n\t\t\t\t\t\t<save-button :saving=\"page.saving\" @click.native=\"page.validated = true\" text=\"Log in\" />\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<p class=\"mt-3 mb-0\">\r\n\t\t\t\t\t\t<b-link @click=\"loadRecoveryForm\">Forgot your password?</b-link>\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</b-form>\r\n\r\n\t\t\t\t<b-form :validated=\"page.validated\" @submit.prevent=\"recover\" class=\"form-signin py-3\" v-if=\"recovery.show\">\r\n\t\t\t\t\t<h1 v-if=\"showHeader\" class=\"h3 my-3 font-weight-normal\">Recover your account</h1>\r\n\r\n\t\t\t\t\t<div v-if=\"recovery.sent\">\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tRequest received. If an account matches the email address provided, you will receive instructions for resetting your password.\r\n\t\t\t\t\t\t\tPlease contact support if you have any problems.\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div v-else>\r\n\t\t\t\t\t\t<p>\r\n\t\t\t\t\t\t\tEnter the email address associated with your account and we'll send you instructions for resetting your password.\r\n\t\t\t\t\t\t</p>\r\n\r\n\t\t\t\t\t\t<error-list :errors=\"page.errors\"></error-list>\r\n\r\n\t\t\t\t\t\t<label for=\"email\" class=\"sr-only\">Email address</label>\r\n\t\t\t\t\t\t<b-form-input id=\"email\" type=\"email\" v-model=\"recovery.email\" placeholder=\"Email address\" required autofocus />\r\n\r\n\t\t\t\t\t\t<div class=\"mt-3\">\r\n\t\t\t\t\t\t\t<save-button :saving=\"page.saving\" @click.native=\"page.validated = true\" text=\"Send recovery information\" />\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<p class=\"mt-3 mb-0\">\r\n\t\t\t\t\t\t<b-link @click=\"recovery.show = false\">Back to log-in form</b-link>\r\n\t\t\t\t\t</p>\r\n\t\t\t\t</b-form>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<script>\r\n\texport default {\r\n\t\tname: 'LoginForm',\r\n\t\tprops: {\r\n\t\t\tshowHeader: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\tredirect: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: '/projects'\r\n\t\t\t},\r\n\t\t\tnoRedirect: {\r\n\t\t\t\ttype: Boolean,\r\n\t\t\t\tdefault: false\r\n\t\t\t},\r\n\t\t\texplicitRedirect: {\r\n\t\t\t\ttype: String,\r\n\t\t\t\tdefault: ''\r\n\t\t\t}\r\n\t\t},\r\n\t\tdata: function() {\r\n\t\t\treturn {\r\n\t\t\t\tpage: {\r\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\tvalidated: false,\r\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tv1Error: false\r\n\t\t\t\t},\r\n\t\t\t\tform: {\r\n\t\t\t\t\tuserName: '',\r\n\t\t\t\t\tpassword: '',\n\t\t\t\t\tdeviceToken: null\r\n\t\t\t\t},\r\n\t\t\t\trecovery: {\r\n\t\t\t\t\temail: '',\r\n\t\t\t\t\tshow: false,\r\n\t\t\t\t\tsent: false\r\n\t\t\t\t},\r\n\t\t\t\taccount: {\r\n\t\t\t\t\tconfirm: {\r\n\t\t\t\t\t\terrors: [],\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tsent: false\r\n\t\t\t\t\t}\r\n\t\t\t\t},\n\t\t\t\tloginData: {},\n\t\t\t\tmfa: {\n\t\t\t\t\tshow: false,\n\t\t\t\t\terrors: [],\r\n\t\t\t\t\tsaving: false,\n\t\t\t\t\tform: {\n\t\t\t\t\t\tcode: null,\n\t\t\t\t\t\trememberMe: true\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\tmethods: {\r\n\t\t\tasync login() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.page.validated = true;\n\t\t\t\tthis.page.v1Error = false;\r\n\r\n\t\t\t\ttry {\n\t\t\t\t\tthis.form.deviceToken = this.getRememberMe(this.form.userName);\n\t\t\t\t\tthis.log(this.form);\r\n\t\t\t\t\tconst response = await this.$http.post('auth/login', this.form);\r\n\t\t\t\t\tthis.log(response.data);\n\n\t\t\t\t\tthis.loginData = {\r\n\t\t\t\t\t\ttoken: response.data.auth_token,\r\n\t\t\t\t\t\tuser: response.data.identity\r\n\t\t\t\t\t};\n\n\t\t\t\t\tif (response.data.multiFactorValidated) {\r\n\t\t\t\t\t\tthis.loginUser();\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.mfa.show = true;\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t\tif (this.page.errors.length > 0 && this.page.errors[0].includes('version 1')) {\n\t\t\t\t\t\tthis.page.v1Error = true;\r\n\t\t\t\t\t}\n\t\t\t\t\tthis.logout(false);\r\n\t\t\t\t\tthis.$emit('success', false);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\n\t\t\tasync confirmMfa() {\r\n\t\t\t\tthis.mfa.errors = [];\r\n\t\t\t\tthis.mfa.saving = true;\r\n\n\t\t\t\tif (this.isNullOrEmpty(this.mfa.form.code)) {\n\t\t\t\t\tthis.page.errors.push('Please enter the code from your email.');\r\n\t\t\t\t} else {\r\n\t\t\t\t\ttry {\n\t\t\t\t\t\tlet data = {\n\t\t\t\t\t\t\tcode: this.mfa.form.code,\n\t\t\t\t\t\t\ttoken: null\r\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tif (this.mfa.form.rememberMe) {\n\t\t\t\t\t\t\tlet token = this.setRememberMe(this.loginData.user.userName);\n\t\t\t\t\t\t\tdata.token = token;\r\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet tempHeaders = {\r\n\t\t\t\t\t\t\theaders: { 'Authorization': 'Bearer ' + this.loginData.token }\r\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tthis.log(data);\n\n\t\t\t\t\t\tconst response = await this.$http.post('auth/confirmmfa', data, tempHeaders);\r\n\t\t\t\t\t\tthis.log(response.data);\n\n\t\t\t\t\t\tthis.loginUser();\r\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tthis.mfa.errors = this.logError(error);\n\t\t\t\t\t\tthis.logout(false);\r\n\t\t\t\t\t\tthis.$emit('success', false);\r\n\t\t\t\t\t}\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.mfa.saving = false;\r\n\t\t\t},\n\t\t\tloginUser() {\n\t\t\t\tlocalStorage.setItem('auth_token', this.loginData.token);\r\n\t\t\t\tthis.$store.commit('login', this.loginData);\r\n\t\t\t\tthis.page.validated = false;\r\n\r\n\t\t\t\tif (!this.noRedirect) {\r\n\t\t\t\t\tif (!this.isNullOrEmpty(this.explicitRedirect)) {\r\n\t\t\t\t\t\tthis.$router.push(this.explicitRedirect).catch(err => { });\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.page.loading = true;\r\n\t\t\t\t\t\twindow.location.reload(true);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.$emit('success', true);\r\n\t\t\t},\r\n\t\t\tloadRecoveryForm() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.validated = false;\r\n\t\t\t\tthis.recovery.show = true;\r\n\t\t\t},\r\n\t\t\tasync recover() {\r\n\t\t\t\tthis.page.errors = [];\r\n\t\t\t\tthis.page.saving = true;\r\n\t\t\t\tthis.page.validated = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post('account/forgotpassword', { email: this.recovery.email });\r\n\t\t\t\t\tthis.recovery.sent = true;\r\n\t\t\t\t\tthis.page.validated = false;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.page.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.page.saving = false;\r\n\t\t\t},\r\n\t\t\tasync resendConfirmation() {\r\n\t\t\t\tthis.account.confirm.errors = [];\r\n\t\t\t\tthis.account.confirm.saving = true;\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tconst response = await this.$http.post('account/resendconfirmation', {}, this.getTokenHeader());\r\n\t\t\t\t\tthis.account.confirm.sent = true;\r\n\t\t\t\t} catch (error) {\r\n\t\t\t\t\tthis.account.confirm.errors = this.logError(error);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.account.confirm.saving = false;\r\n\t\t\t},\n\t\t\tmungeEmailAddress(s) {\r\n\t\t\t\tvar i = s.indexOf('@');\r\n\t\t\t\tvar startIndex = i * .2 | 0;\r\n\t\t\t\tvar endIndex = i * .9 | 0;\r\n\t\t\t\treturn s.slice(0, startIndex) +\r\n\t\t\t\t\ts.slice(startIndex, endIndex).replace(/./g, '*') +\r\n\t\t\t\t\ts.slice(endIndex);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style scoped>\r\n\t.form-signin {\r\n\t\twidth: 100%;\r\n\t\tmax-width: 400px;\r\n\t\tmargin: auto;\r\n\t}\r\n\r\n\t.form-signin .form-control {\r\n\t\tposition: relative;\r\n\t\tbox-sizing: border-box;\r\n\t\theight: auto;\r\n\t\tpadding: 10px;\r\n\t}\r\n\r\n\t\t.form-signin .form-control:focus {\r\n\t\t\tz-index: 2;\r\n\t\t}\r\n\r\n\t.form-signin input[type=\"text\"] {\r\n\t\tmargin-bottom: -1px;\r\n\t\tborder-bottom-right-radius: 0;\r\n\t\tborder-bottom-left-radius: 0;\r\n\t}\r\n\r\n\t.form-signin input[type=\"password\"] {\r\n\t\tmargin-bottom: 10px;\r\n\t\tborder-top-left-radius: 0;\r\n\t\tborder-top-right-radius: 0;\r\n\t}\r\n</style>\r\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LoginForm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LoginForm.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LoginForm.vue?vue&type=template&id=48411eec&scoped=true&\"\nimport script from \"./LoginForm.vue?vue&type=script&lang=js&\"\nexport * from \"./LoginForm.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LoginForm.vue?vue&type=style&index=0&id=48411eec&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"48411eec\",\n  null\n  \n)\n\nexport default component.exports","import Vue from 'vue';\r\n\r\nimport PageLoading from '@/components/helpers/PageLoading';\r\nimport PageRunning from '@/components/helpers/PageRunning';\r\nimport ErrorList from '@/components/helpers/ErrorList';\r\nimport SaveButton from '@/components/helpers/SaveButton';\r\nimport BackButton from '@/components/helpers/BackButton';\r\nimport SuccessAlert from '@/components/helpers/SuccessAlert';\r\nimport FixedActionBar from '@/components/helpers/FixedActionBar';\r\nimport CheckIcon from '@/components/helpers/CheckIcon';\r\nimport PageAuthorizationContainer from '@/components/helpers/PageAuthorizationContainer';\r\nimport LoginForm from '@/components/LoginForm';\r\n\r\nVue.component('page-loading', PageLoading);\r\nVue.component('page-running', PageRunning);\r\nVue.component('error-list', ErrorList);\r\nVue.component('save-button', SaveButton);\r\nVue.component('back-button', BackButton);\r\nVue.component('success-alert', SuccessAlert);\r\nVue.component('fixed-action-bar', FixedActionBar);\r\nVue.component('check-icon', CheckIcon);\r\nVue.component('page-authorization-container', PageAuthorizationContainer);\r\nVue.component('login-form', LoginForm);\r\n","import Vue from 'vue';\r\nimport moment from 'moment';\r\n\r\nVue.filter('number', function (value, decimals, includeCommas = true) {\r\n\tif (isNaN(Number(value))) return value;\r\n\tvar x = Number(value).toFixed(decimals);\r\n\tif (includeCommas) {\r\n\t\tvar parts = x.toString().split(\".\");\r\n\t\tparts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\r\n\t\treturn parts.join(\".\");\r\n\t}\r\n\treturn x;\r\n});\r\n\r\nVue.filter('date', function (value, format = 'llll') {\r\n\tif (value) {\r\n\t\treturn moment(String(value)).format(format);\r\n\t}\r\n});\r\n\r\nVue.filter('dateFromNow', function (value) {\r\n\tif (value) {\r\n\t\treturn moment(String(value)).fromNow();\r\n\t}\r\n});\r\n\r\nVue.filter('ifnull', function (value, nullvalue) {\r\n\tif (value == '' || value == null || value == undefined)\r\n\t\treturn nullvalue;\r\n\r\n\treturn value;\r\n});\r\n\r\nVue.directive('autofocus', {\r\n\tinserted: function (el, binding) {\r\n\t\tif (binding.value || binding.value == undefined) {\r\n\t\t\tel.focus();\r\n\t\t}\r\n\t}\r\n});\n","import Vue from 'vue';\nimport { mapGetters } from 'vuex';\nimport moment from 'moment';\r\n\r\nVue.mixin({\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\troleNames: {\r\n\t\t\t\tpending: 'Pending',\r\n\t\t\t\tregistered: 'Registered',\r\n\t\t\t\tadmin: 'Admin',\r\n\t\t\t\tpartialAdmin: 'PartialAdmin',\r\n\t\t\t\tapiUser: 'ApiUser'\r\n\t\t\t},\n\t\t\tfeatureNames: {\n\t\t\t\tbatchProjects: 'BatchProjects',\n\t\t\t\tregionalProjects: 'RegionalProjects'\r\n\t\t\t},\n\t\t\tglobals: {\r\n\t\t\t\tmapColors: {\r\n\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\tsubbasin: '#e4fabe',\r\n\t\t\t\t\t\tdownstream: '#b6dd6c',\r\n\t\t\t\t\t\tnearby: '#fff1d6',\r\n\t\t\t\t\t\tstream: '#006da0',\r\n\t\t\t\t\t\tselected: '#6fedda',\r\n\t\t\t\t\t\thighContrast: false\r\n\t\t\t\t\t},\r\n\t\t\t\t\thighContrast: {\r\n\t\t\t\t\t\tsubbasin: '#FFB061',\r\n\t\t\t\t\t\tdownstream: '#FF8000',\r\n\t\t\t\t\t\tnearby: '#fff1d6',\r\n\t\t\t\t\t\tstream: '#000FFF',\r\n\t\t\t\t\t\tselected: '#6fedda',\r\n\t\t\t\t\t\thighContrast: true\r\n\t\t\t\t\t}\r\n\t\t\t\t},\n\t\t\t\tpasswordRequirements: 'Minimum 10 characters with at least one number, upper and lowercase letter, and special character',\n\t\t\t\tmaxSubbasinsForMap: 2000\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\twatch: {\r\n\t\t'$route'() {\r\n\t\t\tvar storedToken = localStorage.getItem('auth_token');\r\n\t\t\tif (!storedToken || (storedToken !== this.token)) this.$store.commit('logout');\r\n\t\t}\r\n\t},\r\n\tcomputed: {\r\n\t\t...mapGetters(['isAuthenticated', 'user', 'roles', 'token', 'siteText', 'siteSettings', 'mapColors', 'rememberMeToken']),\r\n\t\tlocalStorageToken() {\r\n\t\t\treturn localStorage.getItem('auth_token');\r\n\t\t},\n\t\tgetValidState() {\r\n\t\t\treturn (prop) => {\r\n\t\t\t\treturn prop.$dirty ? !prop.$error : null;\r\n\t\t\t}\r\n\t\t},\r\n\t\trequiredFeedback() {\r\n\t\t\treturn (prop) => {\r\n\t\t\t\tif (!prop.required) return 'Required';\r\n\t\t\t}\r\n\t\t},\n\t\tdefaultMapBounds() {\n\t\t\tif (this.isNullOrEmpty(this.siteSettings.customMapBounds) || this.siteSettings.customMapBounds.length < 1) return [39.8282, -98.5795];\n\t\t\treturn this.siteSettings.customMapBounds;\r\n\t\t},\n\t\tdefaultMapZoom() {\n\t\t\tif (this.isNullOrEmpty(this.siteSettings.customMapZoom) || this.siteSettings.customMapZoom === 0) return 5;\n\t\t\treturn this.siteSettings.customMapZoom;\r\n\t\t},\n\t\tdefaultMapTileProviders() {\n\t\t\tif (this.isNullOrEmpty(this.siteSettings.customTileProviders) || this.siteSettings.customTileProviders.length < 1) {\n\t\t\t\treturn [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tname: 'Default map',\r\n\t\t\t\t\t\tvisible: true,\r\n\t\t\t\t\t\tattribution: '&copy; <a target=\"_blank\" href=\"http://osm.org/copyright\">OpenStreetMap</a> contributors',\r\n\t\t\t\t\t\turl: 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tname: 'Topography map',\r\n\t\t\t\t\t\tvisible: false,\r\n\t\t\t\t\t\turl: 'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png',\r\n\t\t\t\t\t\tattribution: 'Map data: &copy; <a href=\"http://www.openstreetmap.org/copyright\">OpenStreetMap</a>, <a href=\"http://viewfinderpanoramas.org\">SRTM</a> | Map style: &copy; <a href=\"https://opentopomap.org\">OpenTopoMap</a> (<a href=\"https://creativecommons.org/licenses/by-sa/3.0/\">CC-BY-SA</a>)'\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tname: 'Satellite map',\r\n\t\t\t\t\t\tvisible: false,\r\n\t\t\t\t\t\turl: 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}',\r\n\t\t\t\t\t\tattribution: 'Tiles &copy; Esri &mdash; Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community'\r\n\t\t\t\t\t}\r\n\t\t\t\t];\n\t\t\t}\n\t\t\treturn this.siteSettings.customTileProviders;\r\n\t\t},\n\t\tgeneralBreadCrumbs() {\r\n\t\t\tvar crumbs = [];\r\n\t\t\tfor (var i = 0; i < this.$route.matched.length; i++) {\r\n\t\t\t\tvar item = this.$route.matched[i];\r\n\t\t\t\tvar name = item.meta.title ? item.meta.title : item.name;\r\n\r\n\t\t\t\tcrumbs.push({\r\n\t\t\t\t\ttext: name,\r\n\t\t\t\t\tto: { name: item.name }\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\treturn crumbs;\r\n\t\t}\r\n\t},\r\n\tmethods: {\n\t\tisDevMode() {\r\n\t\t\treturn process.env.NODE_ENV === 'development';\r\n\t\t},\r\n\t\tisNullOrEmpty(value) {\r\n\t\t\treturn value === undefined || value == null || value == '';\r\n\t\t},\r\n\t\tcapitalizeFirstLette(s) {\r\n\t\t\treturn s.charAt(0).toUpperCase() + s.slice(1);\r\n\t\t},\r\n\t\tnumberWithCommas(x) {\r\n\t\t\tvar parts = x.toString().split(\".\");\r\n\t\t\tparts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\r\n\t\t\treturn parts.join(\".\");\r\n\t\t},\r\n\t\ttoDate(value, format = 'llll') {\r\n\t\t\tif (value) {\r\n\t\t\t\treturn moment(String(value)).format(format);\r\n\t\t\t}\r\n\t\t},\r\n\t\tlog(message) {\r\n\t\t\tif (this.isDevMode()) {\r\n\t\t\t\tconsole.log(message);\r\n\t\t\t}\r\n\t\t},\r\n\t\tlogError(error, defaultMessage = undefined) {\r\n\t\t\tlet messages = [];\r\n\t\t\tif (defaultMessage) {\r\n\t\t\t\tmessages.push(defaultMessage);\r\n\t\t\t}\r\n\r\n\t\t\tif (error.response) {\r\n\t\t\t\t// The request was made and the server responded with a status code\r\n\t\t\t\t// that falls out of the range of 2xx\r\n\t\t\t\tconsole.log(error.response.data);\r\n\t\t\t\t//console.log(error.response.status);\r\n\t\t\t\t//console.log(error.response.headers);\r\n\r\n\t\t\t\tif (error.response.status === 401 || error.response.status === 403) {\r\n\t\t\t\t\tmessages.push('Invalid credentials. Either your user name or password is incorrect, or you do not have permission to view this page.');\r\n\t\t\t\t} else if (error.response.status === 404) {\r\n\t\t\t\t\tmessages.push('Requested data not found. Please check the URL in your browser and make sure you have the correct ID numbers if any.');\r\n\t\t\t\t} else if (error.response.data && error.response.data.errors) {\r\n\t\t\t\t\tlet errors = error.response.data.errors;\r\n\t\t\t\t\tfor (let key in errors) {\r\n\t\t\t\t\t\tfor (let j = 0; j < errors[key].length; j++) {\r\n\t\t\t\t\t\t\tmessages.push(errors[key][j]);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t} else if (error.response.data) {\r\n\t\t\t\t\tif (typeof error.response.data === 'string' || error.response.data instanceof String)\r\n\t\t\t\t\t\tmessages.push(error.response.data);\r\n\t\t\t\t\telse {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tlet errors = Object.keys(error.response.data);\n\t\t\t\t\t\t\tfor (let key of errors) {\n\t\t\t\t\t\t\t\tfor (let val of error.response.data[key])\n\t\t\t\t\t\t\t\t\tmessages.push(val);\r\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\tthis.log(e);\r\n\t\t\t\t\t\t\tmessages.push('There was an error processing your request.');\n\t\t\t\t\t\t}\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (error.response.data.stackTrace) {\r\n\t\t\t\t\tconsole.log(error.response.data.stackTrace);\r\n\t\t\t\t}\r\n\t\t\t} else if (error.request) {\r\n\t\t\t\t// The request was made but no response was received\r\n\t\t\t\t// `error.request` is an instance of XMLHttpRequest in the browser and an instance of\r\n\t\t\t\t// http.ClientRequest in node.js\r\n\t\t\t\tconsole.log(error.request);\r\n\t\t\t} else {\r\n\t\t\t\t// Something happened in setting up the request that triggered an Error\r\n\t\t\t\tconsole.log('Error', error.message);\r\n\t\t\t}\r\n\t\t\t//console.log(error.config);\r\n\r\n\t\t\treturn messages;\r\n\t\t},\r\n\t\terrorContainsKey(error, key) {\r\n\t\t\treturn error.response && error.response.data && error.response.data.errors && Object.prototype.hasOwnProperty.call(error.response.data.errors, key);\r\n\t\t},\r\n\t\tsetMapColors(highContrast = true) {\r\n\t\t\tvar colors = highContrast ? this.globals.mapColors.highContrast : this.globals.mapColors.default;\r\n\t\t\tlocalStorage.setItem('map_colors', JSON.stringify(colors));\r\n\t\t\tthis.$store.commit('setMapColors', colors);\r\n\t\t},\r\n\t\tloadMapColors() {\r\n\t\t\tvar storedColors = JSON.parse(localStorage.getItem('map_colors'));\r\n\t\t\tif (!storedColors) {\r\n\t\t\t\tstoredColors = this.globals.mapColors.default;\r\n\t\t\t\tlocalStorage.setItem('map_colors', JSON.stringify(storedColors));\r\n\t\t\t}\r\n\t\t\tthis.$store.commit('setMapColors', storedColors);\r\n\t\t\tthis.log(storedColors);\r\n\t\t\tthis.log(this.mapColors);\r\n\t\t},\r\n\t\tgetTokenHeader() {\r\n\t\t\treturn {\r\n\t\t\t\theaders: { 'Authorization': 'Bearer ' + localStorage.getItem('auth_token') }\r\n\t\t\t};\r\n\t\t},\r\n\t\tgetTokenHeaderPart() {\r\n\t\t\treturn { 'Authorization': 'Bearer ' + localStorage.getItem('auth_token') };\r\n\t\t},\r\n\t\tisAuthorized(role) {\r\n\t\t\treturn this.isAuthenticated && this.user.emailConfirmed && this.roles.includes(role);\r\n\t\t},\n\t\thasFeatureAccess(feature = '') {\n\t\t\tif (!this.user.featureAccess) return false;\n\t\t\tif (this.isNullOrEmpty(feature)) return this.user.featureAccess.length > 0;\n\t\t\treturn this.user.featureAccess.includes(feature);\r\n\t\t},\r\n\t\tlogout(redirect = true) {\r\n\t\t\tlocalStorage.removeItem('auth_token');\r\n\t\t\tthis.$store.commit('logout');\r\n\t\t\tif (redirect)\r\n\t\t\t\tthis.$router.push('/').catch(err => { });\r\n\t\t},\r\n\t\tisApiUnauthorized(error) {\r\n\t\t\treturn error.response && (error.response.status === 401 || error.response.status === 403);\r\n\t\t},\n\t\trand() {\n\t\t\treturn Math.random().toString(36).substr(2); // remove `0.`\r\n\t\t},\n\t\tgenerateRand() {\n\t\t\treturn this.rand() + this.rand();\r\n\t\t},\n\t\tsetRememberMe(userName) {\n\t\t\tlet storedRememberDeviceString = localStorage.getItem('remember_device');\n\t\t\tlet storedRememberDevice = [];\n\t\t\tif (storedRememberDeviceString !== undefined && storedRememberDeviceString !== null) {\n\t\t\t\tstoredRememberDevice = JSON.parse(storedRememberDeviceString);\n\t\t\t\tlet remembered = storedRememberDevice.filter(function (el) { return el.user !== userName; });\n\t\t\t\tstoredRememberDevice = remembered;\r\n\t\t\t}\n\n\t\t\tlet token = this.generateRand();\n\n\t\t\tstoredRememberDevice.push({\n\t\t\t\tuser: userName,\n\t\t\t\ttimestamp: moment().format(),\n\t\t\t\ttoken: token\r\n\t\t\t});\n\n\t\t\tlocalStorage.setItem('remember_device', JSON.stringify(storedRememberDevice));\n\n\t\t\tthis.$store.commit('storeRememberMeToken', {\n\t\t\t\ttoken: token\n\t\t\t});\n\n\t\t\tthis.log(storedRememberDevice);\n\t\t\tthis.log(token);\n\n\t\t\treturn token;\r\n\t\t},\n\t\tgetRememberMe(userName) {\n\t\t\tlet storedRememberDeviceString = localStorage.getItem('remember_device');\n\t\t\tthis.log(storedRememberDeviceString);\n\t\t\tif (storedRememberDeviceString === undefined || storedRememberDeviceString === null) {\n\t\t\t\treturn null;\r\n\t\t\t}\n\n\t\t\tlet storedRememberDevice = JSON.parse(storedRememberDeviceString);\n\t\t\tlet remembered = storedRememberDevice.filter(function (el) { return el.user === userName; });\n\t\t\tif (remembered === null || remembered.length < 1) {\n\t\t\t\treturn null;\r\n\t\t\t}\n\n\t\t\treturn remembered[0].token;\r\n\t\t},\n\t\tsplitString(str, separator = ',') {\n\t\t\tif (this.isNullOrEmpty(str)) return [];\n\t\t\treturn str\r\n\t\t\t\t.split(separator)\r\n\t\t\t\t.map(element => element.trim())\r\n\t\t\t\t.filter(element => element !== '');\r\n\t\t},\n\t\tjoinArray(arr, separator = ',') {\n\t\t\tif (this.isNullOrEmpty(arr)) return '';\n\t\t\treturn arr.join(separator);\r\n\t\t}\r\n\t}\r\n})\r\n","import Vue from 'vue';\r\nimport VueScrollTo from 'vue-scrollto';\r\n\r\nVue.use(VueScrollTo, {\r\n\tcontainer: \"body\",\r\n\tduration: 500,\r\n\teasing: \"ease\",\r\n\toffset: 0,\r\n\tforce: true,\r\n\tcancelable: true,\r\n\tonStart: false,\r\n\tonDone: false,\r\n\tonCancel: false,\r\n\tx: false,\r\n\ty: true\r\n});\r\n","const signalR = require(\"@microsoft/signalr\");\r\n\r\nexport default {\r\n\tinstall(Vue) {\r\n\t\tconst connection = new signalR.HubConnectionBuilder()\r\n\t\t\t.withUrl('/status-hub')\r\n\t\t\t.configureLogging(signalR.LogLevel.Debug)\r\n\t\t\t.build();\r\n\r\n\t\tconst statusHub = new Vue();\r\n\r\n\t\t// Forward hub events through the event, so we can listen for them in the Vue components\r\n\t\tconnection.on('CreateProjectStatusChange', (projectID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('create-project-status-changed', { projectID, progress, statusMessage })\r\n\t\t});\r\n\t\tconnection.on('SetHrusStatusChange', (projectID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('set-hrus-status-changed', { projectID, progress, statusMessage })\r\n\t\t});\r\n\t\tconnection.on('ZipProjectStatusChange', (projectID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('zip-project-status-changed', { projectID, progress, statusMessage })\r\n\t\t});\r\n\t\tconnection.on('CopyProjectStatusChange', (projectID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('copy-project-status-changed', { projectID, progress, statusMessage })\r\n\t\t});\r\n\t\tconnection.on('ScenarioStatusChange', (scenarioID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('scenario-status-changed', { scenarioID, progress, statusMessage })\r\n\t\t});\r\n\t\tconnection.on('UserNotificationStatusChange', (userName, notificationID) => {\r\n\t\t\tstatusHub.$emit('user-notification-status-changed', { userName, notificationID })\r\n\t\t});\r\n\t\tconnection.on('AdminReportStatusChange', (reportIDs) => {\r\n\t\t\tstatusHub.$emit('admin-report-status-change', { reportIDs })\r\n\t\t});\r\n\t\tconnection.on('ImportDatasetStatusChange', (importID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('import-dataset-status-changed', { importID, progress, statusMessage })\r\n\t\t});\r\n\t\tconnection.on('ImportHucVersion2StatusChange', (importID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('import-huc-version2-status-changed', { importID, progress, statusMessage })\r\n\t\t});\r\n\t\tconnection.on('CustomOutputRequestStatusChange', (requestIDs) => {\r\n\t\t\tstatusHub.$emit('custom-output-request-status-changed', { requestIDs })\r\n\t\t});\r\n\t\tconnection.on('BatchStatusChange', (requestID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('batch-status-changed', { requestID, progress, statusMessage })\r\n\t\t});\r\n\t\tconnection.on('ApiRequestStatusChange', (requestID, progress, statusMessage) => {\r\n\t\t\tstatusHub.$emit('api-request-status-changed', { requestID, progress, statusMessage })\r\n\t\t});\r\n\r\n\t\t// Provide methods for components to send messages back to server\r\n\t\t// Make sure no invocation happens until the connection is established\r\n\t\tstatusHub.projectOpened = (projectID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinProjectGroup', Number(projectID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.projectClosed = (projectID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveProjectGroup', Number(projectID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\r\n\t\tstatusHub.scenarioOpened = (scenarioID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinScenarioGroup', Number(scenarioID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.scenarioClosed = (scenarioID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveScenarioGroup', Number(scenarioID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\r\n\t\tstatusHub.adminReportOpened = () => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinAdminReportGroup'))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.adminReportClosed = () => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveAdminReportGroup'))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\r\n\t\tstatusHub.importDatasetOpened = (importID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinImportDatasetGroup', Number(importID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.importDatasetClosed = (importID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveImportDatasetGroup', Number(importID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\r\n\t\tstatusHub.userOpened = (userName) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinUserGroup', userName))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.userClosed = (userName) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveUserGroup', userName))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\n\n\t\tstatusHub.importHucVersion2Opened = () => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinHucVersion2ImportGroup'))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.importHucVersion2Closed = () => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveHucVersion2ImportGroup'))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\n\n\t\tstatusHub.customOutputRequestOpened = (scenarioID, requestType) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinCustomOutputRequestGroup', Number(scenarioID), requestType))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.customOutputRequestClosed = (scenarioID, requestType) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveCustomOutputRequestGroup', Number(scenarioID), requestType))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\n\n\t\tstatusHub.batchOpened = (requestID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinBatchGroup', Number(requestID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.batchClosed = (requestID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveBatchGroup', Number(requestID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\n\n\t\tstatusHub.apiRequestOpened = (requestID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('JoinApiRequestGroup', Number(requestID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\t\tstatusHub.apiRequestClosed = (requestID) => {\r\n\t\t\treturn startedPromise\r\n\t\t\t\t.then(() => connection.invoke('LeaveApiRequestGroup', Number(requestID)))\r\n\t\t\t\t.catch(console.error);\r\n\t\t}\r\n\r\n\t\tVue.prototype.$statusHub = statusHub;\r\n\r\n\t\t// You need to call connection.start() to establish the connection\r\n\t\t// the client wont handle reconnecting for you! Docs recommend listening onclose\r\n\t\t// and handling it there. This is the simplest of the strategies\r\n\t\tlet startedPromise = null;\r\n\t\tfunction start() {\r\n\t\t\tstartedPromise = connection.start()\r\n\t\t\t\t.catch(err => {\r\n\t\t\t\t\tconsole.error('Failed to connect with hub', err)\r\n\t\t\t\t\treturn new Promise((resolve, reject) => setTimeout(() => start().then(resolve).catch(reject), 5000))\r\n\t\t\t\t});\r\n\t\t\treturn startedPromise;\r\n\t\t}\r\n\t\tconnection.onclose(() => start());\r\n\r\n\t\tstart();\r\n\t}\r\n}\r\n","import Vue from 'vue';\r\nimport App from './App.vue';\r\nimport router from './router';\r\nimport store from './store';\nimport axios from 'axios';\n\nimport './plugins/bootstrap-vue';\r\nimport './plugins/font-awesome';\r\nimport './plugins/highcharts';\r\nimport './plugins/custom-components';\r\nimport './plugins/filters';\r\nimport './plugins/global-mixin';\r\nimport './plugins/scrollto';\r\nimport StatusHub from './plugins/status-hub';\r\nimport Vuelidate from 'vuelidate';\r\n\r\nVue.use(StatusHub);\r\nVue.use(Vuelidate);\n\r\nVue.prototype.$http = axios.create({ baseURL: '/api/' });\r\nVue.prototype.$httpRoot = axios.create();\r\n\r\nVue.config.productionTip = false;\r\n\r\nnew Vue({\r\n\trouter,\r\n\tstore,\r\n\trender: h => h(App)\r\n}).$mount('#app')\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkhawqs\"] = self[\"webpackChunkhawqs\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(7910); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","render","_vm","this","_c","_self","attrs","page","loading","_e","staticRenderFns","name","data","errors","methods","token","user","siteText","siteSettings","document","component","staticClass","_v","_s","siteName","siteLongName","siteNameDescription","isAuthorized","roleNames","registered","show","login","on","$event","$set","preventDefault","showRegister","apply","arguments","model","value","register","callback","$$v","expression","registration","submitted","requiredFeedback","$v","form","firstName","getValidState","lastName","email","required","compareEmail","sameAsEmail","affiliation","organizationCategory","location","organizationCategories","scopedSlots","_u","key","fn","domProps","proxy","reasonForUse","country","countries","state","states","userName","globals","passwordRequirements","password","strongPassword","comparePassword","sameAsPassword","ref","submitCaptcha","onCaptchaExpired","saving","slot","showLogin","homePageIntro","homePageText","homePageWorkLists","footer","publicPath","components","VueRecaptcha","FooterData","recaptchaToken","validations","$route","path","useCustomHelpPage","pageText","tiers","length","_m","_l","tier","i","subbasinLimit","numberWithCommas","hruLimit","taskLimit","concurrencyLimit","queuePriority","_f","datasetUploadLimit","datasets","join","hasFeatureAccess","featureNames","batchProjects","apiUser","regionalProjects","recentProjects","p","hasAccessToUploads","directives","rawName","modifiers","admin","partialAdmin","notifications","staticStyle","n","clearNotification","title","details","clearAndGo","url","urlText","notificationDate","clearNotifications","logout","beforeDestroy","watch","DashboardHeader","generalBreadCrumbs","cropCodes","getCrops","selectedDataset","isNullOrEmpty","label","options","table","filter","fields","loadingCrops","sortable","class","profile","tabIndex","saveProfile","units","address","saveEmail","confirm","savePassword","old","new","description","expirationDate","sent","requestTier","tierRequest","time","deleteAccount","confirmDelete","text","oldPassword","newPassword","account","confirmed","confirmAccount","reset","resetPassword","isAuthenticated","sort","reverse","itemsPerPage","breadCrumbs","hideIfEmpty","items","showHeading","heading","useFilter","customEmptyMessage","collectionDescription","showCreate","createRoute","createRouteAppend","itemName","showHelp","hasItemsIntro","allowExport","filterChg","exportUrl","localStorageToken","exportTitle","small","selectable","onRowSelected","sortChg","getEditRoute","item","editRouteAppend","linkName","linkUserName","userID","project","projectID","groupID","group","scenario","scenarioID","roles","r","pending","isLockedOut","isRunning","hasRun","lastModifiedDate","deleteIfField","askDelete","reportStatus","ignoreSortAndPage","pagingFixed","total","pageChg","currentPage","showingFirst","showingLast","showRefresh","get","delete","extraDeleteMessage","nativeOn","props","apiUrl","type","deleteApiUrl","routerLinkFields","default","route","useDynamicFields","defaultSort","defaultReverse","collectionName","editRoute","useEditRoutePieces","editRoutePieces","defaultPerPage","filterFlag","export","specialSort","computed","getDb","_","formatter","getMeta","css","GridView","invites","crumbs","to","status","dateSubmitted","resolvedDate","resolvedBy","developerComments","userComments","exception","reportID","save","saveErrors","$model","trim","numHrus","numOriginalHrus","hrusTrimmedCsv","hrusOriginalCsv","enableAlertNotification","alertNotification","loginSuccess","isImporting","refresh","recent","isRegional","numSubbasins","totalArea","scenarios","s","j","lastRunDate","projects","groupInvites","groups","hasGroups","customWidth","customHeight","style","height","width","refName","defaultMapZoom","defaultMapBounds","bounds","mapMove","showLayerControl","defaultMapTileProviders","tileProvider","visible","attribution","undefined","subbasins","geojson","mapSubbasinsOptions","mapSubbasinsStyle","streams","allowedExtraLayers","extraLayer","refInFor","includes","mapExtraLayersOptions","currentCoords","lat","lng","projectMap","connections","polylines","c","lineCoordinates","routeCoordinates","patterns","toggleColors","usgsSite","number","queryWaterServices","startDT","todaysDate","endDT","unitOptions","display","chartOptions","updateArgs","ready","_t","paths","custom","mounted","L","propsBinder","setVisible","addLatLng","LMap","LTileLayer","LGeoJson","LControl","LPolyline","LControlLayers","LLayerGroup","highlightSelected","selectMultiple","selectedSubbasins","showExtraLayers","loadOnlyOnView","weight","opacity","color","dashArray","offset","repeat","symbol","pixelSize","polygon","pathOptions","stroke","startingSubs","layerColors","isUsgsSite","latitude","longitude","variable","variableDescription","valueType","chart","zoomType","xAxis","labels","format","opposite","yAxis","gridLineWidth","series","tooltip","valueSuffix","valueDecimals","plotOptions","turboThreshold","exporting","csv","dateFormat","duration","usePeriod","period","baseUrl","__globalStartingSubs","mapSubbasinsClick","removeStartingSub","renderMap","window","self","setMapBounds","onEachFeature","pointToLayer","mapExtraLayersPointToLayer","radius","fillColor","fillOpacity","multiplier","zone","chartData","x","y","errorMessage","console","mapExtraLayersOnEachFeature","popText","layer","click","permanent","sticky","interactive","__globalColors","mapSubbasinsOnEachFeature","plArray","ProjectMap","fromNow","calibrationGroup","calibrationLayers","getCalibrationGroup","selected","endID","datasetChange","datasetID","userDatasets","loadMapFromSub","subbasinsSearch","hasWatershed","selectStart","showAdvanced","loadMapFromIds","numSubs","modals","isNumSubsValid","showRoute","maxLength","hasAlphaNumeric","isNumHrusValid","limits","createProject","mapClick","outline","hasCalibrations","mapCalibratedWatershedsOptions","mapCalibratedWatershedsStyle","hasCalibrationLocations","showCalibrationLocations","locationPoints","mapCalibrationLocationOptions","regions","mapRegionOptions","calibration","watershed","getLocationSitesTable","locationSites","setProjectToCalibration","startIDs","cacheID","selectedPoint","showCalibrationLayers","features","getSelectedDataset","matches","setBounds","getMapFromIdsDb","starting","setMapData","clearMapData","setEndingSubbasin","params","mapCalibratedWatershedsClick","mapCalibratedWatershedsOnEachFeature","mapCalibratedUsgsSitesOptions","mapCalibrationLocationPointToLayer","mapCalibrationLocationOnEachFeature","mapRegionOnEachFeature","isCreating","isSettingHrus","isZipping","progress","percent","message","abort","hasError","statusMessage","exceptionMessage","errorReport","clearError","errorForm","submitErrorReport","subbasinsCsv","hasSetHrus","totalLandArea","dataset","endingSubbasin","withinTierLimits","openNewScenario","share","copy","edit","startsWith","baseRoute","currentScenarioZipFile","includeCeQual","includeFfa","includeBaseflowSeparation","openHrus","modTables","maxSubbasinsForMap","scenarioForm","newScenario","cancelOpenScenario","copyProject","editProject","sharedSuccess","currentItem","closeShare","groupOptions","unsharedSuccess","g","unshareProject","shareProject","abortZip","create","weatherDatasetID","updateWeatherOptions","weatherDatasets","opt","weatherOptions","showClimateChange","updateClimateTimePeriod","climateChangeTimePeriodID","climateTimePeriodOptions","climateChangeScenarioID","climateScenarioOptions","startingSimulationDate","minDate","endingSimulationDate","maxDate","skipYears","printSetting","printSettings","swatVersionID","swatVersions","showCancelButton","cancel","showBackButton","isUpdate","climateChangeScenarios","climateChangeTimePeriods","response","ScenarioForm","isCreated","zip","hruWindow","onSetHrusStatusChanged","hasScenarios","originalGroups","landuse","landuseFields","slice","getLanduseDescription","area","charts","original","method","targetThreshold","exemptLanduse","trimmedLanduseArea","noAreaRedistribution","trimmed","landuseComparison","row","index","trimmedArea","trimmedPercent","originalArea","originalPercent","trimmedGroups","soil","soilFields","slope","slopeFields","$parent","formData","hruReductionMethods","iclusHruThreshold","hruReductionDescriptions","targetHrus","minimumArea","unitsOptions","setAreaLimit","setLSSLimit","landuseThreshold","soilThreshold","slopeThreshold","defaultWetlands","setIclus","getPieChart","pie","dataLabels","enabled","showInLegend","pointFormat","findGroupRow","landuses","maxFiles","files","dropzoneOptions","fileUploaded","uploadError","fileUrl","fileName","modified","vueDropzone","headers","acceptedFiles","maxFilesize","startingSubbasins","hruMethod","hruUnits","tables","modifications","values","k","writeArray","soils","slopes","isRunningScenarios","zipFile","canGetGisData","includeGisData","exists","createdOn","geoJsonUrls","geoJsonLayers","pointSourceConstant","zipProject","currentRunTime","tabs","weatherDatasetDescription","swatVersion","runSettings","writeSwatEditor","writeSwatEditorAsSqlite","noModelRun","noOutputProcessing","runtime","createdDate","keepUntilDate","run","openScenarioForm","saved","canRun","writeTables","runtimeEstimateWithEditor","runtimeEstimate","canDownloadSqlite","writeTablesFormat","canIncludeModflow","includeModflow","setModelRunOption","skipModelRun","skipOutputProcessing","emailMe","runLimit","copyScenario","abortRun","timer","numTabs","pathName","createEditorTables","sendEmailNotification","writeEditorTablesAsSqlite","setCurrentRunTime","cancelTimer","clearInterval","d","waterBalance","fieldsHeading","selectListFields","surfaceRunoff","nutrientCycling","reaches","nextTab","$anyDirty","changes","hasChanges","definitions","defaults","IPET","ICNT","ICRK","IRTE","IDEG","IWQ","valid_range","perPage","rowClass","editUrl","rows","fieldsData","FERTNAME","FERTNM","ferts","fertID","ignoreFields","fertFields","URBNAME","URBFLNM","urbans","urbanID","urbanFields","autoEffLanduses","applyToAll","setAll","$each","descriptions","between","iclus","isAvailable","saveIclusSetting","isUsing","hrusCsvUrl","hasMods","userDataUrl","calibrationOptions","refreshMap","customCalibrationID","loadingMap","selectedCalibration","selectedProjectMap","mods","tbl","toUpperCase","fld","getIndexConditions","getLanduseConditions","getType","ignoreCalibration","calibrationData","watershedBounds","extraLayers","useCalibration","set","sleep","min","max","Number","hruSelectionChange","modDeleted","validHruSelection","hideApplySelector","$emit","selection","dropDownLabel","subbasinAndMonths","subbasinOnly","toggleAllSubbasins","all","fromID","fromName","toggleAllMonths","months","toggleAllLanduse","toggleAllSoils","toggleAllSlopes","initialSelection","selectedSlopes","selectedMonths","selectedLanduse","selectedSoils","valueIsObject","showView","appendToValue","isMgt2","view","scheduleByHeatUnits","mgt2Lists","toMonthNames","valueLabel","m","YEAR","OP_NUM","MONTH","DAY","getTextFromList","lists","opList","MGT_OP","CURYR_MAT","HEATUNITS","LAI_INIT","BIO_INIT","HI_TARG","BIO_TARG","CNOP","IRR_AMT","IRR_SALT","IRR_EFM","IRR_SQ","IRR_SC","IRR_NO","fertList","FERT_ID","FRT_KG","FRT_SURFACE","pestList","PEST_ID","PST_KG","PST_DEP","HI_OVR","tillList","TILL_ID","IHV_GBM","HARVEFF","manureList","MANURE_ID","GRZ_DAYS","BIO_EAT","BIO_TRMP","MANURE_KG","WSTRS_ID","IRR_SCA","IRR_NOA","AUTO_WSTRS","IRR_EFF","IRR_MX","IRR_ASQ","AFERT_ID","AUTO_NSTRS","AUTO_NAPP","AUTO_NYR","AUTO_EFF","AFRT_SURFACE","SWEEPEFF","FR_CURB","IMP_TRIG","CFRT_ID","FERT_DAYS","IFRT_FREQ","CFRT_KG","CPST_ID","BURN_FRLB","plantList","PLANT_ID","HUSC","scheduleOptions","irrscList","ihvGbmList","wstrsList","impTrigList","Mgt2Viewer","names","HruSelector","ScenarioModViewer","hruSelection","RAINHHMX","TMPMX","TMPMN","TMPSTDMX","TMPSTDMN","PCPMM","PCPSTD","PCPSKW","PR_W1","PR_W2","PCPD","SOLARAV","DEWPT","WNDAV","modificationObject","rmin","rmax","RFINC","$params","tmin","tmax","TMPINC","showHruSelector","initialHru","subbasin","initialHruChange","validInitialHru","loadingData","getMgt","showData","loadingErrors","defaultPlantName","PHU_PLT","BIOMIX","cnEditOptions","CurveNumberEditMethod","CN2","cn2PercentAdjust","selectedDefaultCn2","USLE_P","BIO_MIN","FILTERW","urbanList","URBLU","defaultUrbanName","iurbanList","IURBAN","IRRSC","IRRNO","setIRRNO","FLOWMIN","DIVMAX","FLOWFR","DDRAIN","TDRAIN","GDRAIN","initSubID","selectedSlope","selectedSubbasin","selectedSoil","SingleHruSelector","IGRO","NROT","ISCROP","CN_SLOPE","HYD_GRP","findInList","initialHruName","orderedItems","showOp","isSorting","askDeleteOp","op","editItem","monthsList","getSubbasinId","TILLAGE_ID","setIRR_NOA","PEST_DAYS","IPEST_FREQ","CPST_KG","$anyError","confirmDeleteOp","addOp","showDefaults","importExport","hasEmptyHeatUnits","hasEmptyDate","listsObject","uploaded","isExport","initialHruUrl","timeout","projectConnections","getSubbasinIndex","sortArray","cn2","chEqn","sampleFiles","constant","daily","monthly","yearly","pothole","potholesFields","defaultSelection","showResults","hrus","getHrus","selectRows","outputType","outputTypes","types","parameter","statistic","statistics","parameters","maxToCompare","compareScenarios","maps","scenarioMaps","editColors","outMapColors","useDataClasses","showLabels","dataClasses","dc","from","removeColorDataClass","addColorDataClass","mid","riverSeries","nullColor","reverseColors","scale","drawMaps","hover","mapData","responseData","getColorAxis","allowNegativeLog","minColor","maxColor","stops","updateMaps","legend","colorAxis","mapNavigation","joinBy","outputTypeChg","subbasinHasHrus","hru","filteredHrus","h","slopeClass","checkYAxis","chartSelection","showChart","responseStatistic","boxChartOptions","yAxisType","chartTypes","drawChart","drawBoxChart","categories","getFilteredHrus","newYAxis","showForm","scrollLeft","scrollRight","setup","simulationLength","warmUp","outputTimestep","precipMethod","watershedArea","hydrology","monthlyBasinValues","mon","rain","snowFall","surfQ","latQ","waterYield","et","sedYield","pet","baseflowMap","warnings","warning","streamflowPrecipitation","baseflowTotalFlow","surfaceRunoffTotalFlow","percolationPrecipitation","deepRechargePrecipitation","etPrecipitation","precipitation","averageCN","lateralFlow","returnFlow","percolation","revap","recharge","sediment","maxUplandSedimentYield","avgUplandSedimentYield","inletSediment","inStreamSedimentChange","nitrogenCycle","initialNO3","finalNO3","volatilization","denitrification","nH4InOrgNFertilizer","nO3InOrgNFertilizer","plantUptake","nitrification","mineralization","initialOrgN","finalOrgN","orgNFertilizer","activeToStableOrgN","residueMineralization","totalFertilizerN","phosphorusCycle","initialMinP","finalMinP","initialOrgP","finalOrgP","totalFertilizerP","inOrgPFertilizer","stableActive","activeSolution","orgPFertilizer","plantGrowth","tempStressDays","waterStressDays","nStressDays","pStressDays","avgBiomass","avgYield","nRemoved","pRemoved","plantUptakeN","plantUptakeP","landscapeNutrientLosses","nLosses","totalLoss","orgN","leached","groundwaterYield","solubilityRatio","pLosses","orgP","landUseSummary","landUseRows","landUse","cn","awc","uslE_LS","irr","prec","surq","gwq","sed","nO3","orgn","biom","yld","hruLevelWarnings","instreamProcesses","phosphorus","nitrogen","uplandSedimentYield","instreamSedimentChange","channelErosion","channelDeposition","totalN","totalP","totalStreamflowLosses","evaporationLoss","seepageLoss","pointSources","subbasinLoad","flow","pointSourceInletLoad","fromInletAndPointSource","reservoirs","reservoirRows","volumeRatio","fractionEmpty","seepage","evapLoss","avgTrappingEfficiencies","avgWaterLosses","totalRemoved","evaporation","avgReservoirTrends","numberReservoirs","maxVolume","minVolume","resultsName","subID","content","showMonthlyAlgae","monthlyAlgae","month","a1","a2","a3","requests","downloadLink","anyRunning","numYears","filterParameter","bfiMax","accept","success","invitedOn","askReject","reject","confirmReject","selectedMember","isAdmin","isOwner","setAdmin","askRevokeAccess","members","memberSelectionChanged","invitedUsers","askDeleteInvite","invite","deleteInvite","confirmDeleteInvite","revokeAccess","confirmRevokeAccess","sendInvite","hasAccess","reachedLimit","uploadLimit","tdClass","thClass","defaultSWATVersionID","allowOnlyDefaultSWATVersion","isPublic","shareOptions","accessibility","unshare","publicRequest","requestedOn","adminMessage","requestPublic","isActive","activation","activate","hasProjects","deactivate","importID","upload","uploadedFileName","existingDatasetID","hasEndingSubKey","endingSubbasinName","canDoHawqsBased","isHawqsBased","databaseFile","hasSwatMdb","uploadDirectory","isSqlite","showImportV2","computedAt","statisticsTimeChart","numUsers","numProjects","numScenarios","numScenariosRunning","toDate","avgProjectsPerUser","avgHrusPerProject","avgScenariosPerProject","avgScenarioRunTime","buildDate","bar","reports","reportTypes","getDisplayName","runningReportIDs","onStatusChanged","numPending","showPending","isPending","approve","approveAccount","lockout","lockoutEndDate","setLockout","setRole","userHasRole","setRoles","isPartialAdmin","defaultTier","tierID","tierExpiration","lastLoginDate","registrationDate","stats","accessCodes","expiryDate","apiConnectivityEnabled","hasApiAccess","apiClient","sharedKey","secretKey","apiTable","grantApiAccess","deleteApiAccess","isDefault","hideFromDisplay","taskLimitIntervals","taskLimitInterval","queuePriorities","featureList","AdminTierForm","element","remove","newCategory","add","draggable","subject","body","bccSender","statusOptions","emailUser","ccEmail","selectedProject","rowSelectionChanged","userNames","usersSearch","importStatus","isUserSubmitted","t","activeClass","counts","version","optionGroup","optionOrder","configPath","weatherPath","loadByDefault","minLat","maxLat","minLon","maxLon","minCn2","maxCn2","restrictSelection","restrictionMessage","defaultHruThreshold","useSharedWeatherDirectoryForIclus","allowGisApiAccess","allowApiAccess","allowSqliteEditorTables","hideFromHelpTable","tinymce","api","init","calibrationPageText","userMessage","deny","reviewedBy","reviewedOn","selectedWeather","weather","settingsTab","saveSettings","permissionsTab","savePermissions","weatherTab","saveWeather","menubar","plugins","toolbar","appName","helpPageText","pageName","customMapBounds","customMapZoom","customTileProviders","isOffline","submit","resolutions","imports","abortImport","digits","importData","isComplete","importedDate","importTime","count","importSoils","importAll","region","res","pathToFiles","overrideDatasetPath","startDate","endDate","fileFormat","fileFormats","cmipVersion","sortOrder","canUseLowerResolution","isInSharedLocation","hasIclusFolder","hasPcp","hasTmp","hasHmd","hasSlr","hasWnd","nrgage","nrtot","nrgfil","ntgage","nttot","ntgfil","nstot","nhtot","nwtot","AdminWeatherForm","weatherID","releaseFileName","debugFileName","isDisabled","AdminSwatVersionForm","versionID","checkUser","verified","toggleAllProjects","importAllProjects","projectsToImport","verifyUser","verify","batch","getDataset","setAsSingleSubbasinProjects","useSubbasinAsNames","setHruMethod","hruMethods","setHruUnits","formattedForm","datasetOptions","projectSubbasins","uploadOk","defaultDataset","defaultSetHruMethod","defaultSetHruUnits","defaultSwatVersion","defaultWeatherDataset","startYear","endYear","deleteProjectsWhenDone","isAborting","joinArray","ExemptLanduse","NoAreaRedistribution","serverPath","geojsonDownload","cumulativeAreasDownload","download","batchID","getRegions","regionID","setProjectName","projectName","getSelectedRegion","Vue","Router","routes","Home","Help","meta","children","HelpLanduse","Version1CheckUser","Version1VerifyUser","AccountProfile","AccountConfirm","AccountReset","AccountChangeEmail","GroupList","GroupInvites","GroupCreate","GroupView","FeedbackList","FeedbackCreate","FeedbackView","DatasetList","DatasetCreate","DatasetView","HruTable","ProjectList","ProjectCreate","ProjectView","ProjectHrus","ScenarioList","ScenarioCreate","ScenarioView","EditBsn","EditFerts","EditFert","EditNutrientEfficiency","EditLup","EditUrbans","EditUrban","EditCalibration","EditMgtGeneral","EditMgtOperations","EditCurveNumber","EditSedimentRouting","EditPointSource","EditPotholes","EditClimateSensitivity","EditWgn","EditHruVars","EditHruPrint","OutputMaps","OutputCharts","OutputCheck","OutputCeQual","OutputFfa","OutputBaseflowSeparation","ProjectDocuments","ProjectMetadata","ProjectDownloads","ErrorReportList","ErrorReportCreate","ErrorReportView","AdminDashboard","AdminUsers","AdminTiers","AdminTierCreate","AdminTierView","AdminGroups","AdminGroupView","AdminUserCategories","AdminEmailUsers","AdminUserCreate","AdminUser","AdminProjects","AdminScenarios","AdminErrors","AdminErrorView","AdminReports","AdminDatabase","AdminDatasets","AdminWeatherList","AdminWeatherCreate","AdminWeatherView","AdminSwatVersionList","AdminSwatVersionCreate","AdminSwatVersionView","AdminDatasetView","AdminWebsiteText","AdminWebsiteTextPage","AdminWebsiteSettings","AdminJobs","AdminImportHuc2","ApiDashboard","ApiBatchList","ApiBatchCreate","ApiBatchView","ApiRegionalCreate","redirect","Vuex","localStorage","getItem","emailConfirmed","featureAccess","mapColors","downstream","nearby","stream","highContrast","rememberMeToken","mutations","setupSite","payload","setMapColors","storeRememberMeToken","getters","BootstrapVue","BButton","variant","VueTypeaheadBootstrap","library","fas","far","FontAwesomeIcon","FontAwesomeLayers","FontAwesomeLayersText","HighchartsVue","Highcharts","fontFamily","lang","thousandsSep","HighchartsMore","exportingInit","exportDataInit","offlineExportInit","mapInit","H","addEvent","Axis","userOptions","wrap","prototype","proceed","num","call","result","isNegative","adjustedNum","Math","abs","log","LN10","absNum","pow","isProject","noBottomMarg","error","size","disabled","goBack","dismissCountDown","countDownChanged","dismissSecs","startAlert","cols","colsLg","offsetLg","requireAdmin","showErrorsWithObject","mfa","mungeEmailAddress","loginData","rememberMe","confirmMfa","recovery","validated","showHeader","v1Error","loadRecoveryForm","recover","resendConfirmation","noRedirect","explicitRedirect","deviceToken","loginUser","PageLoading","PageRunning","ErrorList","SaveButton","BackButton","SuccessAlert","FixedActionBar","CheckIcon","PageAuthorizationContainer","LoginForm","decimals","includeCommas","isNaN","toFixed","parts","toString","split","replace","moment","String","nullvalue","inserted","el","binding","focus","storedToken","$store","commit","mapGetters","prop","$dirty","$error","matched","push","isDevMode","process","capitalizeFirstLette","charAt","logError","defaultMessage","messages","val","stackTrace","request","errorContainsKey","hasOwnProperty","colors","setItem","JSON","stringify","loadMapColors","storedColors","parse","getTokenHeader","getTokenHeaderPart","role","feature","removeItem","$router","catch","err","isApiUnauthorized","rand","random","substr","generateRand","setRememberMe","storedRememberDeviceString","storedRememberDevice","remembered","timestamp","getRememberMe","splitString","str","separator","arr","VueScrollTo","container","easing","force","cancelable","onStart","onDone","onCancel","signalR","require","install","connection","HubConnectionBuilder","withUrl","configureLogging","LogLevel","Debug","build","statusHub","notificationID","reportIDs","requestIDs","requestID","projectOpened","startedPromise","then","invoke","projectClosed","scenarioOpened","scenarioClosed","adminReportOpened","adminReportClosed","importDatasetOpened","importDatasetClosed","userOpened","userClosed","importHucVersion2Opened","importHucVersion2Closed","customOutputRequestOpened","requestType","customOutputRequestClosed","batchOpened","batchClosed","apiRequestOpened","apiRequestClosed","$statusHub","start","Promise","setTimeout","onclose","StatusHub","Vuelidate","axios","baseURL","router","store","App","$mount","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","every","splice","getter","__esModule","a","definition","defineProperty","enumerable","globalThis","Function","obj","Symbol","toStringTag","nmd","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","some","chunkLoadingGlobal","forEach","bind","__webpack_exports__"],"sourceRoot":""}