{"version":3,"file":"9629.cf0979b23374300d.js","mappings":"sdAMQA,MAAA,cAA+EA,MAAA,mBAAAA,MAAAC,GAAA,MAAAC,EAAAF,QAAA,OAAAA,MAAA,MAAAE,EAAAC,KAAAC,SAAA,KAAAF,EAAAC,KAAAC,SAAAC,SAAAC,QAAA,GAC7EN,MAAA,gBACFA,+BAEFA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAgEA,MAAhE,UAAAA,MAAA,+BAAAA,MAAA,EAAAO,IAAgEP,CAAD,qCAE3FA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAoFA,MAApF,UAAAA,MAAA,8DAAoFA,CAAD,qCAE/GA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAA8FA,MAA9F,UAAAA,MAAA,wEAA8FA,CAAD,uDAQrHA,MAAA,cAA+EA,MAAA,mBAAAA,MAAAQ,GAAA,MAAAN,EAAAF,MAAA,UAAAA,MAAA,MAAAE,EAAAC,KAAAC,SAAA,KAAAF,EAAAC,KAAAC,SAAAK,aAAAH,QAAA,GAC7EN,MAAA,gBACFA,+BAEFA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAgEA,MAAhE,UAAAA,MAAA,+BAAAA,MAAA,EAAAO,IAAgEP,CAAD,qCAE3FA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAiFA,MAAjF,UAAAA,MAAA,2DAAiFA,CAAD,wCAX5GA,MADF,qBACEA,CADiC,eACtBA,MAAA,2BAA4DA,QACvEA,MAAA,cASAA,MARA,EAAAU,EAAA,eAQAV,CARmD,EAAAW,EAAA,kBAQnDX,CAHyE,EAAAY,EAAA,mBAM3EZ,8BAbaA,MAAA,GAAAA,YAAA,8CAEXA,MAAA,GAAAA,MAAA,gBAAAE,EAAAC,KAAAC,UAAA,MAAAF,EAAAC,KAAAC,SAAAK,aAAA,KAAAP,EAAAC,KAAAC,SAAAK,aAAAI,OAAA,MAKYb,QAA+CA,MAA/C,+CAA+CA,CAAA,4CAG/CA,QAA+CA,MAA/C,+CAA+CA,CAAA,qFAgBzDA,MAAA,mBAAqCA,MAAA,2BAA+EA,kCAAxGA,MAAA,QAAAc,GAAyBd,cAAA,IAAAA,MAAA,8CAAAc,GAAA,+BARzCd,MADF,qBACEA,CADiC,eACtBA,MAAA,2BAA4EA,QACvFA,MAAA,wFAMEA,MAAA,EAAAe,EAAA,oBAAAf,OAIJA,gCAXaA,MAAA,GAAAA,YAAA,8DAITA,MAAA,GAAAA,MAAA,cAAAA,MAAA,oCAAAA,MAAA,GAAAgB,EAAAhB,MAAA,IAAAA,MAAA,iEAGAA,MAAA,GAAAA,MAAAE,EAAAe,yDAYEjB,MAAA,cAA+EA,MAAA,mBAAAA,MAAAkB,GAAA,MAAAhB,EAAAF,MAAA,UAAAA,MAAA,MAAAE,EAAAC,KAAAC,SAAA,KAAAF,EAAAC,KAAAC,SAAAe,eAAAb,QAAA,GAC7EN,MAAA,gBACFA,+BAEFA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAgEA,MAAhE,UAAAA,MAAA,+BAAAA,MAAA,EAAAoB,IAAgEpB,CAAD,qCAE3FA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAA8EA,MAA9E,UAAAA,MAAA,wDAA8EA,CAAD,wDAOvGA,MAAA,cAA+EA,MAAA,mBAAAA,MAAAqB,GAAA,MAAAnB,EAAAF,MAAA,UAAAA,MAAA,MAAAE,EAAAC,KAAAC,SAAA,KAAAF,EAAAC,KAAAC,SAAAkB,aAAAhB,QAAA,GAC7EN,MAAA,gBACFA,gCAEFA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAgEA,MAAhE,UAAAA,MAAA,+BAAAA,MAAA,EAAAoB,IAAgEpB,CAAD,sCAE3FA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAA8EA,MAA9E,UAAAA,MAAA,wDAA8EA,CAAD,yCA1BzGA,MAFJ,UAEIA,CAFyB,qBAEzBA,CADiC,eACtBA,MAAA,2BAA8DA,QACzEA,MAAA,cASAA,MARA,EAAAuB,EAAA,eAQAvB,CARqD,EAAAwB,EAAA,kBAQrDxB,CAH2E,EAAAyB,EAAA,mBAM7EzB,QAEEA,MADF,qBACEA,CADiC,gBACtBA,MAAA,6BAA4DA,QACvEA,MAAA,eASAA,MARA,GAAA0B,GAAA,eAQA1B,CARmD,GAAA2B,GAAA,kBAQnD3B,CAHyE,GAAA4B,GAAA,mBAO7E5B,gCA7BeA,MAAA,GAAAA,YAAA,iDAEXA,MAAA,GAAAA,MAAA,gBAAAE,EAAAC,KAAAC,UAAA,MAAAF,EAAAC,KAAAC,SAAAe,eAAA,KAAAjB,EAAAC,KAAAC,SAAAe,eAAAN,OAAA,MAKYb,QAAiDA,MAAjD,iDAAiDA,CAAA,4CAGjDA,QAAiDA,MAAjD,iDAAiDA,CAAA,wDAKlDA,MAAA,GAAAA,YAAA,gDAEXA,MAAA,GAAAA,MAAA,iBAAAE,EAAAC,KAAAC,UAAA,MAAAF,EAAAC,KAAAC,SAAAkB,aAAA,KAAApB,EAAAC,KAAAC,SAAAkB,aAAAT,OAAA,OAKYb,QAA+CA,MAA/C,+CAA+CA,CAAA,4CAG/CA,QAA+CA,MAA/C,+CAA+CA,CAAA,kGAU7DA,MAAA,eAAiEA,MAAA,mBAAAA,MAAA6B,GAAA,MAAA3B,EAAAF,QAAA,OAAAA,MAAA,MAAAE,EAAAC,KAAAC,SAAA,KAAAF,EAAAC,KAAAC,SAAA0B,YAAAxB,QAAA,GAC/DN,MAAA,gBACFA,gCAEFA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAgEA,MAAhE,UAAAA,MAAA,+BAAAA,MAAA,EAAAO,IAAgEP,CAAD,eCrFxF,IAAM+B,GAAkB,UAAAC,EAAzB,MAAOD,UAA0BE,MAUrCC,cACEC,QARKC,KAAAnB,eAAiBoB,MAAUC,cAAcC,KAExCH,KAAAI,iBAAmBJ,KAAKK,uBACxBL,KAAAM,sBAAwBN,KAAKO,2BAC7BP,KAAAQ,wBAA0BR,KAAKS,6BAC/BT,KAAAU,sBAAwBV,KAAKW,0BAIrC,CAEOC,WACLZ,KAAKa,kBAELb,KAAKjC,KAAKC,SAASC,SAAS6C,aAAaC,QAAKC,KAAUhB,KAAKiB,2BAAwB,EAAGC,KAAUlB,KAAKjC,KAAKC,SAASC,SAASQ,QAAQ0C,UAAWlD,KAC1ImD,MAAeC,kBAAkBpD,IAAaA,EAAW,GAC5D+B,KAAKjC,KAAKC,SAASC,SAASqD,cAActB,KAAKI,kBAC/CJ,KAAKjC,KAAKC,SAASK,aAAaiD,cAActB,KAAKM,uBACnDN,KAAKjC,KAAKC,SAASe,eAAeuC,cAActB,KAAKQ,yBACrDR,KAAKjC,KAAKC,SAASkB,aAAaoC,cAActB,KAAKU,yBAEnDV,KAAKjC,KAAKC,SAASC,SAASsD,iBAAiBvB,KAAKI,kBAClDJ,KAAKjC,KAAKC,SAASK,aAAakD,iBAAiBvB,KAAKM,uBACtDN,KAAKjC,KAAKC,SAASe,eAAewC,iBAAiBvB,KAAKQ,yBACxDR,KAAKjC,KAAKC,SAASkB,aAAaqC,iBAAiBvB,KAAKU,uBAAqB,EAGjF,CAEOc,2BACL,OAAOxB,KAAKjC,KAAKU,MAAMR,SAAW,CACpC,CAEQ4C,kBACNb,KAAKjC,KAAKC,SAASC,SAAS6C,aAAaC,QAAKU,KAAa,MAAG,EAAGT,KAAUhB,KAAKiB,2BAA2BE,UAAWlD,IACpH,MAAMI,EAAe2B,KAAKjC,KAAKC,SAASK,aACpC+C,MAAeC,kBAAkBhD,EAAaI,QAAUJ,EAAaqD,WAAazD,EAAW,GAC/FI,EAAasD,SAAS1D,GAGpBA,EAAW,GAA4B,IAAvBI,EAAaI,OAC/BJ,EAAasD,SAAS,KAAI,EAGhC,CAEQtB,uBACN,OAAQuB,IAAqD,IAAAC,EAAAC,EAAAC,EAC3D,MAAMtD,EAAQmD,EAAQnD,MAChBJ,EAAwB,QAAZwD,EAAG7B,KAAKjC,YAAI,IAAA8D,OAAA,EAATA,EAAWpD,MAAMJ,aAChCU,EAA0B,QAAZ+C,EAAG9B,KAAKjC,YAAI,IAAA+D,OAAA,EAATA,EAAWrD,MAAMM,eAClCG,EAAwB,QAAZ6C,EAAG/B,KAAKjC,YAAI,IAAAgE,OAAA,EAATA,EAAWtD,MAAMS,aAChC8C,EAA4BjD,EAAiBG,EAWnD,OATIb,GAAgBI,GAClBuB,KAAKiC,eAAe,eAAgB,sBAGlClD,GAAkBG,GAAgBT,IAAUuD,IAC9ChC,KAAKiC,eAAe,iBAAkB,mBACtCjC,KAAKiC,eAAe,eAAgB,oBAGlClD,GAAkBG,GAAgBT,IAAUuD,EACvC,CAACE,8BAA8B,GAGpC7D,GAAgBI,EAAQ,GAAKA,EAAQJ,EAChC,CAAC8D,uBAAuB,GAG1B,KAEX,CAEQ5B,2BACN,OAAQqB,IAAqD,IAAAQ,EAC3D,MAAM3D,EAAQmD,EAAQnD,MAChBR,EAAoB,QAAZmE,EAAGpC,KAAKjC,YAAI,IAAAqE,OAAA,EAATA,EAAW3D,MAAMR,SAMlC,OAJIQ,EAAQ,GAAKR,GAAYQ,GAC3BuB,KAAKiC,eAAe,WAAY,yBAG9BhE,GAAYQ,EAAQR,EACf,CAACoE,oBAAoB,GAGvB,KAEX,CAEQ5B,6BACN,OAAQmB,IAAqD,IAAAU,EAAAC,EAC3D,MAAM9D,EAAQmD,EAAQnD,MAChBR,EAAoB,QAAZqE,EAAGtC,KAAKjC,YAAI,IAAAuE,OAAA,EAATA,EAAW7D,MAAMR,SAC5BiB,EAAwB,QAAZqD,EAAGvC,KAAKjC,YAAI,IAAAwE,OAAA,EAATA,EAAW9D,MAAMS,aAChC8C,EAA4BvD,EAAQS,EAE1C,IAAKkC,MAAeC,kBAAkB5C,KAAW2C,MAAeC,kBAAkBnC,IAAiBjB,IAAa+D,EAC9G,MAAO,CAACQ,iBAAiB,GAM3B,GAJExC,KAAKiC,eAAe,WAAY,gCAChCjC,KAAKiC,eAAe,eAAgB,oBAGjCb,MAAeC,kBAAkB5C,IAAU2C,MAAeC,kBAAkBnC,GAC/Ec,KAAKyC,SAAS,eAAgB,CAACD,iBAAiB,QAC3C,IAAIpB,MAAeC,kBAAkB5C,KAAW2C,MAAeC,kBAAkBnC,GACtF,MAAO,CAACsD,iBAAiB,GAChBpB,MAAeC,kBAAkB5C,IAAU2C,MAAeC,kBAAkBnC,IACrFc,KAAKiC,eAAe,eAAgB,kBAAiB,CAGvD,OAAO,KAEX,CAEQtB,2BACN,OAAQiB,IAAqD,IAAAc,EAAAC,EAC3D,MAAMlE,EAAQmD,EAAQnD,MAChBR,EAAoB,QAAZyE,EAAG1C,KAAKjC,YAAI,IAAA2E,OAAA,EAATA,EAAWjE,MAAMR,SAC5Bc,EAA0B,QAAZ4D,EAAG3C,KAAKjC,YAAI,IAAA4E,OAAA,EAATA,EAAWlE,MAAMM,eAClCiD,EAA4BvD,EAAQM,EAE1C,IAAKqC,MAAeC,kBAAkB5C,KAAW2C,MAAeC,kBAAkBtC,IAAmBd,IAAa+D,EAChH,MAAO,CAACQ,iBAAiB,GAM3B,GAJExC,KAAKiC,eAAe,WAAY,gCAChCjC,KAAKiC,eAAe,iBAAkB,oBAGnCb,MAAeC,kBAAkB5C,IAAU2C,MAAeC,kBAAkBtC,GAC/EiB,KAAKyC,SAAS,iBAAkB,CAACD,iBAAiB,QAC7C,IAAIpB,MAAeC,kBAAkB5C,KAAW2C,MAAeC,kBAAkBtC,GACtF,MAAO,CAACyD,iBAAiB,GAChBpB,MAAeC,kBAAkB5C,IAAU2C,MAAeC,kBAAkBtC,IACrFiB,KAAKiC,eAAe,iBAAkB,kBAAiB,CAGzD,OAAO,KAEX,CAEQA,eAAeW,EAAyBC,GAAa,IAAAC,EAC9C,QAAbA,EAAI9C,KAAKjC,YAAI,IAAA+E,GAATA,EAAW9E,SAAS4E,GAAiBG,SAASF,IAChD7C,KAAKjC,KAAKC,SAAS4E,GAAiBI,UAAU,KAElD,CAEQP,SAASG,EAAyBC,GACxC7C,KAAKjC,KAAKC,SAAS4E,GAAiBI,UAAUH,EAChD,WA3JWlD,yCAAiB,0BAAjBA,EAAiBsD,UAAA,mBAAAC,OAAA,CAAAnF,KAAA,QAAAoF,SAAA,CAAAvF,OAAAwF,MAAA,GAAAC,KAAA,GAAAC,OAAA,qqCAAAC,SAAA,SAAAC,EAAAC,GAAA,EAAAD,IDRxB5F,MAHN,WAGMA,CAHuC,UAGvCA,CAFyB,qBAEzBA,CADiC,eACtBA,MAAA,2BAAuDA,QAClEA,MAAA,aAYAA,MAXA,EAAA8F,EAAA,eAWA9F,CAX+C,EAAA+F,EAAA,kBAW/C/F,CANqE,EAAAgG,EAAA,kBAMrEhG,CAHuF,GAAAiG,EAAA,mBAMzFjG,QACAA,MAAA,GAAAkG,EAAA,wBAiBFlG,QAgBAA,MAfA,GAAAmG,EAAA,yBAeAnG,CAfkC,GAAAoG,GAAA,eAkDhCpG,MADF,sBACEA,CADiC,gBACtBA,MAAA,6BAA2DA,QACtEA,MAAA,cAMAA,MALA,GAAAqG,GAAA,eAKArG,CALkD,GAAAsG,GAAA,mBAStDtG,iBAnGMA,MAAA,YAAA6F,EAAA1F,MAGWH,MAAA,GAAAA,YAAA,0CAEXA,MAAA,GAAAA,MAAA,gBAAA6F,EAAA1F,KAAAC,UAAA,MAAAyF,EAAA1F,KAAAC,SAAAC,SAAA,KAAAwF,EAAA1F,KAAAC,SAAAC,SAAAQ,OAAA,MAKYb,QAA2CA,MAA3C,2CAA2CA,CAAA,4CAG3CA,QAA2CA,MAA3C,2CAA2CA,CAAA,8DAG3CA,QAA2CA,MAA3C,2CAA2CA,CAAA,qEAIzDA,cAAA,GAAA6F,EAAAjC,2BAAA,OAkBF5D,cAAA,GAAA6F,EAAAjC,2BAAA,OAeA5D,cAAA,GAAA6F,EAAAjC,2BAAA,OAmCa5D,MAAA,GAAAA,YAAA,+CAEXA,MAAA,GAAAA,MAAA,iBAAA6F,EAAA1F,KAAAC,UAAA,MAAAyF,EAAA1F,KAAAC,SAAA0B,YAAA,KAAA+D,EAAA1F,KAAAC,SAAA0B,YAAAjB,OAAA,OAKYb,QAA8CA,MAA9C,8CAA8CA,CAAA,oLCpFjD+B,CAAkB,+JCuBxB,IAAMwE,GAAkB,UAAAC,EAAzB,MAAOD,UAA0BtE,MAmBrCC,YACmBuE,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,GAEjB7E,QATiBC,KAAAqE,wBACArE,KAAAsE,YACAtE,KAAAuE,8BACAvE,KAAAwE,0BACAxE,KAAAyE,wBACAzE,KAAA0E,gCACA1E,KAAA2E,iCACA3E,KAAA4E,UA1BH5E,KAAA6E,UAAoB,EACnB7E,KAAA8E,eAAiB,IAAIC,MAE/B/E,KAAAgF,WAAY,EAEHhF,KAAAiF,gBAAkB,kCAEjBjF,KAAAkF,gBAAkD,CACjE,CACEC,IAAK,aACLC,SAAUpF,KAAKsE,UAAUe,QAAQ,6BAA8B,CAACC,OAAQtF,KAAKsE,UAAUe,QAAQrF,KAAKiF,gBAAiB,CAACM,MAAO,IAAIC,gBACjIC,WAAW,IAKPzF,KAAA0F,iBAAqC,GAa3C1F,KAAK2E,+BAA+BgB,MAAK,EAC3C,CAEA,YAAoBC,CAASF,GAAkC,IAAAG,EAC7D7F,KAAKgF,WAAY,EACC,QAAlBa,EAAA7F,KAAK8F,qBAAa,IAAAD,GAAlBA,EAAoBE,cAAc,WAAW,GAE7C/F,KAAK0F,iBAAmBA,CAC1B,CAEO9E,WACLZ,KAAKgG,wBACLhG,KAAKiG,4BACLjG,KAAKkG,WACP,CAEOC,YAAYC,GACb,aAAcA,IAAYA,EAAQR,SAASS,iBAC7CrG,KAAKsG,WAAWF,EAAQR,SAASW,cAG/B,aAAcH,IAAYA,EAAQvB,SAASwB,iBAC7CrG,KAAKgG,uBAET,CAEOQ,iBACLxG,KAAK2E,+BACF8B,0BAA0BzG,KAAK0F,iBAAkB,CAACgB,UAAW1G,KAAK4E,QAAQ+B,iBAAkBC,KAAM5G,KAAK4E,QAAQiC,iBAAkBjB,SAAU5F,KAAK0F,mBAChJvE,UAAWyE,IACLxE,MAAeC,kBAAkBuE,IACpC5F,KAAK8E,eAAegC,KAAKlB,EAAQ,EAGzC,CAEQK,4BACNjG,KAAKqE,sBAAsB0C,uBAAuBhG,QAAKC,KAAUhB,KAAKiB,2BAA2BE,UAAW6F,IACtGA,IAAchH,KAAKkF,gBAAgB,GAAGC,KACxCnF,KAAKwG,gBAAc,EAGzB,CAEQN,YACN,MAAMe,EAAiBjH,KAAKyE,sBAAsByC,aAE7ClH,KAAK6E,UACRoC,EAAeE,mBAAmB,CAChCC,0BAA2BpH,KAAKwE,wBAAwB6C,iCAAiC,CACvFC,yBAA0BC,KAAWC,MAAMC,UAAUb,KAAKc,SAASC,mBACnEC,WAAaC,GAAiC7H,KAAK8H,OAAOD,GAC1DE,qBAAqB,MAK3Bd,EAAee,oBAAoBhI,KAAK0E,8BAA8BuD,eAAc,EAAOC,KAAuBC,QAASC,KAAeC,cAAe,KAAOC,GAC9JA,EACGC,gBAAiBC,IAChBxI,KAAK8F,cAAgB0C,EAAOC,IACxBzI,KAAKgF,UACPwD,EAAOC,IAAI1C,cAAc,WAAW,GAEpC/F,KAAKsG,YAAU,GAGlBoC,wBAAwB,IAAM1I,KAAK8F,cAAcC,cAAc,WAAW,IAC1E4C,kBAAiB,GACjBC,aAAcJ,GAA2BA,EAAOK,KAAKC,MACrDC,mBAAmB,CAClBC,MAAO,KAERC,kBAAkB,CACjBD,MAAO,EACPE,WAAYlJ,KAAKsE,UAAUe,QAAQrF,KAAKiF,gBAAiB,CAACM,MAAO,IACjE4D,iBAAiB,EACjBC,QAASpJ,KAAKkF,kBAEfmE,SAGLrJ,KAAKsJ,OAASrC,EAAeoC,OAC/B,CAEQvB,QAAQyB,UAASC,YACvBxJ,KAAKuE,4BACF2C,aACAuC,gBAAgB,CACfC,UAAW1J,KAAKsE,UAAUe,QAAQ,gCAAiC,CAACC,OAAQtF,KAAKsE,UAAUe,QAAQrF,KAAKiF,gBAAiB,CAACM,MAAO,IAAIC,gBACrImE,YAAa3J,KAAKsE,UAAUe,QAAQ,8CACpCuE,KAAMC,MAAWC,iBAElB/I,QACCgJ,MAAQC,GAA8BA,IAAWC,MAAkBC,UAAO,EAC1ElJ,KAAUhB,KAAKiB,2BAEhBE,UAAU,KACT,MAAMgJ,EAAe/I,MAAeC,kBAAkBmI,GAAkB,MAAPD,OAAO,EAAPA,EAASa,kBAAoB,CAACZ,EAAQX,MACvG7I,KAAK8F,cAAcuE,iBAAiB,CAACC,OAAQH,IAE7CnK,KAAK8E,eAAegC,KAAK9G,KAAK0F,iBAAiBqE,OAAQQ,IAA6BJ,EAAaK,SAASD,IAAS,EAEzH,CAEQjE,WAAWV,EAA6B5F,KAAK0F,kBAAgB,IAAA+E,EACjD,QAAlBA,EAAAzK,KAAK8F,qBAAa,IAAA2E,GAAlBA,EAAoB1E,cAAc,UAAWH,GAC7C5F,KAAKsJ,OAAOoB,QAAU9E,CACxB,CAEQI,wBACNhG,KAAKkF,gBAAgByF,QAASC,GAAyCA,EAAMC,SAAW7K,KAAK6E,SAC/F,WA9IWV,0CAAiBvG,MAAAkN,OAAAlN,MAAAkN,OAAAlN,MAAAkN,OAAAlN,MAAAmN,MAAAnN,MAAAkN,OAAAlN,MAAAoN,MAAApN,MAAAqN,MAAArN,MAAAsN,KAAA,0BAAjB/G,EAAiBlB,UAAA,mBAAAC,OAAA,CAAA2B,SAAA,WAAAe,SAAA,YAAAuF,QAAA,CAAArG,eAAA,kBAAA3B,SAAA,CAAAvF,aAAAwF,MAAA,GAAAC,KAAA,GAAAC,OAAA,gOAAAC,SAAA,SAAAC,EAAAC,GAAA,EAAAD,IChC1B5F,MAFJ,UAEIA,CAFwC,UAExCA,CAD8B,SACKA,MAAA,2BAAgEA,QACnGA,MAAA,cAAsDA,MAAA,0BAAS6F,EAAA+C,gBAAgB,GAC7E5I,MAAA,gBACAA,MAAA,yEAEJA,UACAA,MAAA,oCACFA,eAPuCA,MAAA,GAAAA,YAAA,kDAChBA,MAAA,GAAAA,MAAA,WAAA6F,EAAAuB,WAAAvB,EAAAoB,UAEjBjH,MAAA,GAAAA,MAAA,IAAAA,MAAA,mCAAAA,MAAA,GAAAgB,GAAAhB,MAAA,KAAAA,MAAA,IAAA6F,EAAAwB,gBAAArH,MAAA,GAAAO,QAAA,KAG0DP,MAAA,GAAkBA,MAAlB,SAAA6F,EAAA6F,OAAkB1L,CAAD,gFD0BpEuG,CAAkB,sFE7BzBvG,MAAA,eAAoHA,MAAA,mBAAAA,MAAAC,GAAA,MAAAC,EAAAF,MAAA,UAAAA,MAAA,MAAAE,EAAAC,KAAAC,SAAA,KAAAF,EAAAC,KAAAC,SAAAoN,YAAAlN,QAAA,GAClHN,MAAA,iBACFA,mCACAA,MAAA,eACEA,MAAA,yDACFA,+BAD4BA,QAAiFA,MAAjF,UAAAA,MAAA,oCAAAA,MAAA,EAAAO,GAAAL,EAAA4B,cAAiF9B,CAAD,yCAN5GA,MADF,qBACEA,CADiC,eACtBA,MAAA,2BAAwDA,QACnEA,MAAA,aAIAA,MAHA,EAAAyN,GAAA,eAGAzN,CAHiK,EAAA0N,GAAA,mBAMnK1N,8BARaA,MAAA,GAAAA,YAAA,0CAEFA,MAAA,GAAAA,MAAA,qBAAAE,EAAAC,KAAAC,UAAA,MAAAF,EAAAC,KAAAC,SAAAoN,YAAA,KAAAtN,EAAAC,KAAAC,SAAAoN,YAAA3M,QAGGb,QAA8CA,MAA9C,8CAA8CA,CAAA,2FAS1DA,MAAA,eAAgIA,MAAA,mBAAAA,MAAAQ,GAAA,MAAAN,EAAAF,QAAA,OAAAA,MAAA,MAAAE,EAAAC,KAAAC,SAAA,KAAAF,EAAAC,KAAAC,SAAAuN,UAAArN,QAAA,GAC9HN,MAAA,iBACFA,gCAIAA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAgEA,MAAhE,UAAAA,MAAA,+BAAAA,MAAA,EAAAgB,IAAgEhB,CAAD,wDAM3FA,MAAA,eAAmIA,MAAA,mBAAAA,MAAA4N,GAAA,MAAA1N,EAAAF,QAAA,OAAAA,MAAA,MAAAE,EAAAC,KAAAC,SAAA,KAAAF,EAAAC,KAAAC,SAAAyN,aAAAvN,QAAA,GACjIN,MAAA,iBACFA,gCAIAA,MAAA,eACEA,MAAA,yDACFA,eAD4BA,QAAgEA,MAAhE,UAAAA,MAAA,+BAAAA,MAAA,EAAAgB,IAAgEhB,CAAD,eC9B1F,IAAM8N,GAAc,UAAAC,EAArB,MAAOD,qDAAc,0BAAdA,EAAczI,UAAA,gBAAAC,OAAA,CAAAnF,KAAA,OAAA2B,YAAA,eAAA0D,MAAA,GAAAC,KAAA,GAAAC,OAAA,s4BAAAC,SAAA,SAAAC,EAAAC,GAAA,EAAAD,IDP3B5F,MAAA,YACEA,MAAA,EAAAgO,GAAA,wBAcIhO,MAFJ,UAEIA,CAFyB,qBAEzBA,CADiC,eACtBA,MAAA,2BAAsDA,QACjEA,MAAA,aACAA,MAAA,EAAAiO,GAAA,gBAGAjO,MAAA,YACEA,MAAA,6BACFA,QACAA,MAAA,GAAAkO,GAAA,mBAGFlO,QAEEA,MADF,sBACEA,CADiC,gBACtBA,MAAA,6BAAyDA,QACpEA,MAAA,cACAA,MAAA,GAAAmO,GAAA,gBAGAnO,MAAA,aACEA,MAAA,6BACFA,QACAA,MAAA,GAAAoO,GAAA,mBAKNpO,mBAzCMA,MAAA,YAAA6F,EAAA1F,MACJH,cAAA,EAAA6F,EAAA/D,YAAA,MAce9B,MAAA,GAAAA,YAAA,yCAEFA,MAAA,GAAAA,MAAA,qBAAA6F,EAAA1F,KAAAC,UAAA,MAAAyF,EAAA1F,KAAAC,SAAAuN,UAAA,KAAA9H,EAAA1F,KAAAC,SAAAuN,UAAA9M,QAIPb,MAAA,GAAAA,MAAA,IAAAA,MAAA,kCAEUA,MAAA,GAA4CA,MAA5C,4CAA4CA,CAAA,4CAK7CA,MAAA,GAAAA,YAAA,6CAEFA,MAAA,GAAAA,MAAA,qBAAA6F,EAAA1F,KAAAC,UAAA,MAAAyF,EAAA1F,KAAAC,SAAAyN,aAAA,KAAAhI,EAAA1F,KAAAC,SAAAyN,aAAAhN,QAIPb,MAAA,GAAAA,MAAA,IAAAA,MAAA,kCAEUA,MAAA,GAA+CA,MAA/C,+CAA+CA,CAAA,+KC7BpD8N,CAAc,iHCErB9N,MAAA,kBAA0EA,MAAA,2BAAgEA,kCAAtFA,MAAA,QAAAqO,GAAsBrO,cAAA,IAAAA,MAAA,kCAAAqO,GAAA,6BAC1ErO,MAAA,kBAAiDA,MAAA,2BAAwDA,eAAxDA,oBAAA,kEAEnDA,MAAA,eACEA,MAAA,wDACFA,eAD4BA,QAAqDA,MAArD,UAAAA,MAAA,+BAAqDA,CAAD,wDAKhFA,MADF,qBACEA,CADwD,eAC7CA,MAAA,2BAAgEA,QAC3EA,MAAA,0EAMEA,MAAA,2BAAAA,MAAAsO,GAAA,MAAAC,EAAAvO,QAAA,OAAAA,MAAiBuO,EAAAC,sBAAqB,GAE1CxO,gBATaA,MAAA,GAAAA,YAAA,oCAAAA,MAAA,GAAAgB,KAGThB,MAAA,GAGAA,MAHA,aAAAA,MAAA,KAAAA,MAAA,oCAAAA,MAAA,GAAAgB,KAGAhB,CAHqF,mCAGrFA,CAFuC,qBAEvCA,CADwB,iCCTvB,IAAMyO,GAAoB,UAAAC,EAA3B,MAAOD,UAA4BxM,MAKvCC,YACmB8E,EACA2H,GAEjBxM,QAHiBC,KAAA4E,UACA5E,KAAAuM,yBAJZvM,KAAAwM,aAAevM,MAAUC,cAAcuM,KAAY1C,OAAQ2C,GAAuBA,IAAWD,IAAWE,OAO/G,CAEA,iBAAWC,GACT,OAAO5M,KAAKjC,KAAK8O,cAAcH,SAAWD,IAAWE,MACvD,CAEOP,sBACL,MAAMU,EAAQ9M,KAAKjC,KAAKC,SAAS+O,cAEjC/M,KAAKuM,uBACF9F,0BAA0BqG,EAAMrO,MAAO,CAACiI,UAAW1G,KAAK4E,QAAQ+B,iBAAkBC,KAAM5G,KAAK4E,QAAQiC,iBAAkBjB,SAAU5F,KAAK4E,QAAQgB,WAC9I7E,QAAKC,KAAUhB,KAAKiB,2BACpBE,UAAW6L,GAAuBF,EAAMnL,SAASP,MAAe6L,QAAQD,GAAYF,EAAMrO,MAAQuO,EAAS,IAChH,WAvBWX,0CAAmBzO,MAAAkN,KAAAlN,MAAAmN,MAAA,0BAAnBsB,EAAmBpJ,UAAA,sBAAAC,OAAA,CAAAnF,KAAA,QAAAoF,SAAA,CAAAvF,OAAAwF,MAAA,GAAAC,KAAA,GAAAC,OAAA,wgBAAAC,SAAA,SAAAC,EAAAC,GAAA,EAAAD,IDZ5B5F,MAFJ,WAEIA,CAF6C,qBAE7CA,CADiC,eACtBA,MAAA,2BAAqCA,QAChDA,MAAA,uFAOEA,MADA,EAAAsP,GAAA,mBACAtP,CADyE,GAAAuP,GAAA,oBAE3EvP,QACAA,MAAA,GAAAwP,GAAA,mBAGFxP,QAEAA,MAAA,GAAAyP,GAAA,yBAWFzP,eA5BMA,MAAA,YAAA6F,EAAA1F,MAESH,MAAA,GAAAA,YAAA,uBAITA,MAAA,GAAAA,MAAA,cAAAA,MAAA,qCAAAA,MAAA,GAAAO,GAAAP,MAAA,KAAAA,MAAA,2BAGmCA,MAAA,GAAAA,MAAA,UAAA6F,EAAA+I,cACtB5O,cAAA,OAAA6F,EAAAmJ,eAEHhP,QAAyCA,MAAzC,yCAAyCA,CAAA,iDAKtCA,cAAA,QAAA6F,EAAAmJ,oICHNP,CAAoB,iICM1B,IAAMiB,GAAU,UAAAC,EAAjB,MAAOD,qDAAU,yBAAVA,gCAHDE,IAAyBC,KAAwBC,KAAaC,MAAoBC,MAAwBC,MAAmBC,KAAqBC,OAGjJT,CAAU,WAFNU,IAAoB,kBAAAjD,KAAAC,KAAAC,oBAAAC,KAAA+C,KAAAC,KAAAC,MAAAC,wCAAAC,IAAAC,KAAAC,IAAAC,IAAAC,KAAAC,KAAAC,KAAAC,KAAAC,KAAAC,KAAEnP,GAAmB+L,GAAgBW,GAA2ElI,GAAiB,oBAAA4K,KAAAC,IAAA","names":["i0","_r1","ctx_r1","form","controls","cavities","reset","_c0","_r3","usedCavities","CavitiesComponent_Conditional_11_Conditional_5_Template","CavitiesComponent_Conditional_11_mat_error_6_Template","CavitiesComponent_Conditional_11_mat_error_7_Template","value","numberingMode_r4","CavitiesComponent_Conditional_12_For_9_Template","_c1","numberingModes","_r5","cavitiesAcross","_c2","_r6","cavitiesDown","CavitiesComponent_Conditional_13_Conditional_6_Template","CavitiesComponent_Conditional_13_mat_error_7_Template","CavitiesComponent_Conditional_13_mat_error_8_Template","CavitiesComponent_Conditional_13_Conditional_14_Template","CavitiesComponent_Conditional_13_mat_error_15_Template","CavitiesComponent_Conditional_13_mat_error_16_Template","_r7","pieceCycles","CavitiesComponent","_CavitiesComponent","BaseComponent","constructor","super","this","EnumUtils","getEnumValues","NumberingMode","cavitesValidator","getCavitiesValidator","usedCavitiesValidator","getUsedCavitiesValidator","cavitiesAcrossValidator","getCavitiesAcrossValidator","cavitiesDownValidator","getCavitiesDownValidator","ngOnInit","setUsedCavities","valueChanges","pipe","takeUntil","unSubscribeOnViewDestroy","startWith","subscribe","AssertionUtils","isNullOrUndefined","setValidators","removeValidators","isCavitiesGreaterThanOne","debounceTime","untouched","setValue","control","_this$form","_this$form2","_this$form3","expectedProductOfCavities","setErrorAsNull","equalToCavitiesAcrossAndDown","lowerThanUsedCavities","_this$form4","higherThanCavities","_this$form5","_this$form6","equalToCavities","setError","_this$form7","_this$form8","formControlName","error","_this$form9","hasError","setErrors","selectors","inputs","features","decls","vars","consts","template","rf","ctx","CavitiesComponent_Conditional_7_Template","CavitiesComponent_mat_error_8_Template","CavitiesComponent_mat_error_9_Template","CavitiesComponent_mat_error_10_Template","CavitiesComponent_Conditional_11_Template","CavitiesComponent_Conditional_12_Template","CavitiesComponent_Conditional_13_Template","CavitiesComponent_Conditional_19_Template","CavitiesComponent_mat_error_20_Template","ProductsComponent","_ProductsComponent","overlayActionsService","translate","dialogBuilderFactoryService","gridActionButtonsHelper","builderFactoryService","plasticProductOverviewService","plasticProductSelectionService","addPage","isLocked","productsChange","EventEmitter","isLoading","TRANSLATION_KEY","noOverlayAction","key","titleKey","instant","object","count","toLowerCase","isPrimary","selectedProducts","init","products","_this$configGridApi","configGridApi","setGridOption","setDisabledForOverlay","subscribeToOverlayActions","setConfig","ngOnChanges","changes","isFirstChange","setRowData","currentValue","selectProducts","openContentSwitcherDialog","activeTab","selectedMenuItem","tool","getCurrentTool","emit","actionTriggeredEmitter","actionKey","builderFactory","getBuilder","withDefaultButtons","crudOverviewButtonConfigs","getActionButtonsForGridSelection","requiredPermissionToEdit","RouteUtils","paths","utilities","editTool","requiredPermission","withDelete","grid","delete","allowDeleteMultiple","withCrudGridOptions","getColumnDefs","PlasticProductGridType","INLINE","GridIdentifier","TOOL_PRODUCTS","builder","withOnGridReady","params","api","withOnFirstDataRendered","withRowSelection","withGetRowId","data","name","withLoadingOverlay","scale","withNoRowsOverlay","titleParam","hideDescription","actions","build","config","gridApi","rowNode","openAlertDialog","titleText","messageText","type","DialogType","CONFIRM_DELETE","filter","result","AlertDialogResult","CONFIRM","rowsToRemove","getSelectedRows","applyTransaction","remove","product","includes","_this$configGridApi2","rowData","forEach","param","disabled","i1","i2","i3","i4","i5","outputs","waiveCycles","SetupComponent_Conditional_1_button_5_Template","SetupComponent_Conditional_1_mat_error_6_Template","mountTime","_r4","dismountTime","SetupComponent","_SetupComponent","SetupComponent_Conditional_1_Template","SetupComponent_button_8_Template","SetupComponent_mat_error_12_Template","SetupComponent_button_18_Template","SetupComponent_mat_error_22_Template","toolStatus_r1","_r2","ctx_r2","selectStockLocation","ToolStatusComponent","_ToolStatusComponent","stockLocationSelection","toolStatuses","ToolStatus","status","IN_USE","isStatusInUse","getRawValue","field","stockLocation","location","isEmpty","ToolStatusComponent_mat_option_9_Template","ToolStatusComponent_mat_option_10_Template","ToolStatusComponent_mat_error_11_Template","ToolStatusComponent_mat_form_field_12_Template","ToolModule","_ToolModule","TextileDataSharedModule","MatchingCriteriaModule","toolRouting","EditorHeaderModule","CrudOverviewDataModule","SplitButtonModule","ToolSelectionModule","CustomSettingsDialogHeaderComponent","AddToolPageComponent","i6","i7","i8","i9","i10","i11","i12","i13","i14","i15","i16","i17","i18","i19","i20","i21"],"ignoreList":[],"sourceRoot":"webpack:///","sources":["./apps/texconnect/src/app/presentation/pages/utilities/tool/add/cavities/cavities.component.html","./apps/texconnect/src/app/presentation/pages/utilities/tool/add/cavities/cavities.component.ts","./apps/texconnect/src/app/presentation/pages/utilities/tool/add/products/products.component.ts","./apps/texconnect/src/app/presentation/pages/utilities/tool/add/products/products.component.html","./apps/texconnect/src/app/presentation/pages/utilities/tool/add/setup/setup.component.html","./apps/texconnect/src/app/presentation/pages/utilities/tool/add/setup/setup.component.ts","./apps/texconnect/src/app/presentation/pages/utilities/tool/add/tool-status/tool-status.component.html","./apps/texconnect/src/app/presentation/pages/utilities/tool/add/tool-status/tool-status.component.ts","./apps/texconnect/src/app/presentation/pages/utilities/tool/tool.module.ts"],"sourcesContent":["
\n
\n \n {{ 'UTILITIES.TOOL.CAVITIES.CAVITIES' | bmsTranslate }}\n \n @if (form.controls?.cavities?.value !== null) {\n \n }\n \n \n \n \n \n \n \n \n \n \n @if (isCavitiesGreaterThanOne()) {\n \n {{ 'UTILITIES.TOOL.CAVITIES.USED_CAVITIES' | bmsTranslate }}\n \n @if (form.controls?.usedCavities?.value !== null) {\n \n }\n \n \n \n \n \n \n \n }\n
\n @if (isCavitiesGreaterThanOne()) {\n \n {{ 'UTILITIES.TOOL.CAVITIES.NUMBERING_MODE.NUMBERING_MODE' | bmsTranslate }}\n \n @for (numberingMode of numberingModes; track $index) {\n {{ 'UTILITIES.TOOL.CAVITIES.NUMBERING_MODE.' + numberingMode | bmsTranslate }} \n }\n \n \n }\n @if (isCavitiesGreaterThanOne()) {\n
\n \n {{ 'UTILITIES.TOOL.CAVITIES.CAVITIES_ACROSS' | bmsTranslate }}\n \n @if (form.controls?.cavitiesAcross?.value !== null) {\n \n }\n \n \n \n \n \n \n \n \n {{ 'UTILITIES.TOOL.CAVITIES.CAVITIES_DOWN' | bmsTranslate }}\n \n @if (form.controls?.cavitiesDown?.value !== null) {\n \n }\n \n \n \n \n \n \n \n
\n }\n \n {{ 'UTILITIES.TOOL.CAVITIES.PIECE_CYCLES' | bmsTranslate }}\n \n @if (form.controls?.pieceCycles?.value !== null) {\n \n }\n \n \n \n \n
\n","import {Component, Input, OnInit} from '@angular/core';\nimport {AbstractControl, ValidationErrors, ValidatorFn} from '@angular/forms';\nimport {NumberingMode} from '@domain/machine/numbering-mode.enum';\nimport {AssertionUtils, BaseComponent, EnumUtils} from '@vdw/angular-component-library';\nimport {debounceTime, startWith, takeUntil} from 'rxjs';\nimport {ToolCavitiesForm} from '../tool.form';\n\n@Component({\n selector: 'app-cavities',\n templateUrl: './cavities.component.html'\n})\nexport class CavitiesComponent extends BaseComponent implements OnInit {\n @Input() public form: ToolCavitiesForm;\n\n public numberingModes = EnumUtils.getEnumValues(NumberingMode);\n\n private cavitesValidator = this.getCavitiesValidator();\n private usedCavitiesValidator = this.getUsedCavitiesValidator();\n private cavitiesAcrossValidator = this.getCavitiesAcrossValidator();\n private cavitiesDownValidator = this.getCavitiesDownValidator();\n\n public constructor() {\n super();\n }\n\n public ngOnInit(): void {\n this.setUsedCavities();\n\n this.form.controls.cavities.valueChanges.pipe(takeUntil(this.unSubscribeOnViewDestroy), startWith(this.form.controls.cavities.value)).subscribe((cavities: number) => {\n if (!AssertionUtils.isNullOrUndefined(cavities) && cavities > 1) {\n this.form.controls.cavities.setValidators(this.cavitesValidator);\n this.form.controls.usedCavities.setValidators(this.usedCavitiesValidator);\n this.form.controls.cavitiesAcross.setValidators(this.cavitiesAcrossValidator);\n this.form.controls.cavitiesDown.setValidators(this.cavitiesDownValidator);\n } else {\n this.form.controls.cavities.removeValidators(this.cavitesValidator);\n this.form.controls.usedCavities.removeValidators(this.usedCavitiesValidator);\n this.form.controls.cavitiesAcross.removeValidators(this.cavitiesAcrossValidator);\n this.form.controls.cavitiesDown.removeValidators(this.cavitiesDownValidator);\n }\n });\n }\n\n public isCavitiesGreaterThanOne(): boolean {\n return this.form.value.cavities > 1;\n }\n\n private setUsedCavities(): void {\n this.form.controls.cavities.valueChanges.pipe(debounceTime(500), takeUntil(this.unSubscribeOnViewDestroy)).subscribe((cavities: number) => {\n const usedCavities = this.form.controls.usedCavities;\n if (AssertionUtils.isNullOrUndefined(usedCavities.value) && usedCavities.untouched && cavities > 1) {\n usedCavities.setValue(cavities);\n }\n\n if (cavities < 1 && usedCavities.value === 0) {\n usedCavities.setValue(null);\n }\n });\n }\n\n private getCavitiesValidator(): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const value = control.value;\n const usedCavities = this.form?.value.usedCavities;\n const cavitiesAcross = this.form?.value.cavitiesAcross;\n const cavitiesDown = this.form?.value.cavitiesDown;\n const expectedProductOfCavities = cavitiesAcross * cavitiesDown;\n\n if (usedCavities <= value) {\n this.setErrorAsNull('usedCavities', 'higherThanCavities');\n }\n\n if (cavitiesAcross && cavitiesDown && value === expectedProductOfCavities) {\n this.setErrorAsNull('cavitiesAcross', 'equalToCavities');\n this.setErrorAsNull('cavitiesDown', 'equalToCavities');\n }\n\n if (cavitiesAcross && cavitiesDown && value !== expectedProductOfCavities) {\n return {equalToCavitiesAcrossAndDown: true};\n }\n\n if (usedCavities && value > 1 && value < usedCavities) {\n return {lowerThanUsedCavities: true};\n }\n\n return null;\n };\n }\n\n private getUsedCavitiesValidator(): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const value = control.value;\n const cavities = this.form?.value.cavities;\n\n if (value > 1 && cavities >= value) {\n this.setErrorAsNull('cavities', 'lowerThanUsedCavities');\n }\n\n if (cavities && value > cavities) {\n return {higherThanCavities: true};\n }\n\n return null;\n };\n }\n\n private getCavitiesAcrossValidator(): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const value = control.value;\n const cavities = this.form?.value.cavities;\n const cavitiesDown = this.form?.value.cavitiesDown;\n const expectedProductOfCavities = value * cavitiesDown;\n\n if (!AssertionUtils.isNullOrUndefined(value) && !AssertionUtils.isNullOrUndefined(cavitiesDown) && cavities !== expectedProductOfCavities) {\n return {equalToCavities: true};\n } else {\n this.setErrorAsNull('cavities', 'equalToCavitiesAcrossAndDown');\n this.setErrorAsNull('cavitiesDown', 'equalToCavities');\n }\n\n if (!AssertionUtils.isNullOrUndefined(value) && AssertionUtils.isNullOrUndefined(cavitiesDown)) {\n this.setError('cavitiesDown', {equalToCavities: true});\n } else if (AssertionUtils.isNullOrUndefined(value) && !AssertionUtils.isNullOrUndefined(cavitiesDown)) {\n return {equalToCavities: true};\n } else if (AssertionUtils.isNullOrUndefined(value) && AssertionUtils.isNullOrUndefined(cavitiesDown)) {\n this.setErrorAsNull('cavitiesDown', 'equalToCavities');\n }\n\n return null;\n };\n }\n\n private getCavitiesDownValidator(): ValidatorFn {\n return (control: AbstractControl): ValidationErrors | null => {\n const value = control.value;\n const cavities = this.form?.value.cavities;\n const cavitiesAcross = this.form?.value.cavitiesAcross;\n const expectedProductOfCavities = value * cavitiesAcross;\n\n if (!AssertionUtils.isNullOrUndefined(value) && !AssertionUtils.isNullOrUndefined(cavitiesAcross) && cavities !== expectedProductOfCavities) {\n return {equalToCavities: true};\n } else {\n this.setErrorAsNull('cavities', 'equalToCavitiesAcrossAndDown');\n this.setErrorAsNull('cavitiesAcross', 'equalToCavities');\n }\n\n if (!AssertionUtils.isNullOrUndefined(value) && AssertionUtils.isNullOrUndefined(cavitiesAcross)) {\n this.setError('cavitiesAcross', {equalToCavities: true});\n } else if (AssertionUtils.isNullOrUndefined(value) && !AssertionUtils.isNullOrUndefined(cavitiesAcross)) {\n return {equalToCavities: true};\n } else if (AssertionUtils.isNullOrUndefined(value) && AssertionUtils.isNullOrUndefined(cavitiesAcross)) {\n this.setErrorAsNull('cavitiesAcross', 'equalToCavities');\n }\n\n return null;\n };\n }\n\n private setErrorAsNull(formControlName: string, error: string): void {\n if (this.form?.controls[formControlName].hasError(error)) {\n this.form.controls[formControlName].setErrors(null);\n }\n }\n\n private setError(formControlName: string, error: ValidationErrors): void {\n this.form.controls[formControlName].setErrors(error);\n }\n}\n","import {Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges} from '@angular/core';\nimport {GridIdentifier} from '@application/grids/grid-identifier.enum';\nimport {CrudActions} from '@application/helper/grid-action-buttons-helper/crud-actions.interface';\nimport {GridActionButtonsHelper} from '@application/helper/grid-action-buttons-helper/grid-action-buttons-helper';\nimport {RouteUtils} from '@application/helper/routing/route-utils';\nimport {PlasticProduct} from '@domain/textile-data/plastic-product/plastic-product';\nimport {PlasticProductGridType} from '@presentation/pages/textile-data/plastic-product/overview/plastic-product-grid-type.enum';\nimport {PlasticProductOverviewService} from '@presentation/pages/textile-data/plastic-product/overview/plastic-product-overview.service';\nimport {PlasticProductSelectionService} from '@presentation/pages/textile-data/plastic-product/plastic-product-selection.service';\nimport {\n AlertDialogResult,\n AssertionUtils,\n BaseComponent,\n CrudOverviewDataBuilderFactoryService,\n CrudOverviewDataConfig,\n DialogBuilderFactoryService,\n DialogType,\n GridButtonClickedEvent,\n GridOptionsBuilder,\n NoDataOverlayComponentParams,\n OverlayActionsService,\n OverlayComponentParams,\n OverlayComponentParamsAction,\n TranslateService\n} from '@vdw/angular-component-library';\nimport {GetRowIdParams, GridApi, GridReadyEvent} from 'ag-grid-community';\nimport {filter, takeUntil} from 'rxjs';\nimport {AddToolNavigationData} from '../add-tool-navigation-data.interface';\nimport {AddToolPageComponent} from '../add-tool-page.component';\n\n@Component({\n selector: 'app-products',\n templateUrl: './products.component.html'\n})\nexport class ProductsComponent extends BaseComponent implements OnInit, OnChanges {\n @Input() public isLocked: boolean = false;\n @Output() public productsChange = new EventEmitter();\n\n public isLoading = true;\n public config: CrudOverviewDataConfig;\n public readonly TRANSLATION_KEY = 'UTILITIES.TOOL.PRODUCTS.PRODUCT';\n\n private readonly noOverlayAction: OverlayComponentParamsAction[] = [\n {\n key: 'addProduct',\n titleKey: this.translate.instant('GENERAL.ACTIONS.ADD_OBJECT', {object: this.translate.instant(this.TRANSLATION_KEY, {count: 2}).toLowerCase()}),\n isPrimary: true\n }\n ];\n\n private configGridApi: GridApi;\n private selectedProducts: PlasticProduct[] = [];\n\n public constructor(\n private readonly overlayActionsService: OverlayActionsService,\n private readonly translate: TranslateService,\n private readonly dialogBuilderFactoryService: DialogBuilderFactoryService,\n private readonly gridActionButtonsHelper: GridActionButtonsHelper,\n private readonly builderFactoryService: CrudOverviewDataBuilderFactoryService,\n private readonly plasticProductOverviewService: PlasticProductOverviewService,\n private readonly plasticProductSelectionService: PlasticProductSelectionService,\n private readonly addPage: AddToolPageComponent\n ) {\n super();\n this.plasticProductSelectionService.init(true);\n }\n\n @Input() public set products(selectedProducts: PlasticProduct[]) {\n this.isLoading = false;\n this.configGridApi?.setGridOption('loading', false);\n\n this.selectedProducts = selectedProducts;\n }\n\n public ngOnInit(): void {\n this.setDisabledForOverlay();\n this.subscribeToOverlayActions();\n this.setConfig();\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if ('products' in changes && !changes.products.isFirstChange()) {\n this.setRowData(changes.products.currentValue);\n }\n\n if ('isLocked' in changes && !changes.isLocked.isFirstChange()) {\n this.setDisabledForOverlay();\n }\n }\n\n public selectProducts(): void {\n this.plasticProductSelectionService\n .openContentSwitcherDialog(this.selectedProducts, {activeTab: this.addPage.selectedMenuItem, tool: this.addPage.getCurrentTool(), products: this.selectedProducts} as AddToolNavigationData)\n .subscribe((products: PlasticProduct[]) => {\n if (!AssertionUtils.isNullOrUndefined(products)) {\n this.productsChange.emit(products);\n }\n });\n }\n\n private subscribeToOverlayActions(): void {\n this.overlayActionsService.actionTriggeredEmitter.pipe(takeUntil(this.unSubscribeOnViewDestroy)).subscribe((actionKey: string) => {\n if (actionKey === this.noOverlayAction[0].key) {\n this.selectProducts();\n }\n });\n }\n\n private setConfig(): void {\n const builderFactory = this.builderFactoryService.getBuilder();\n\n if (!this.isLocked) {\n builderFactory.withDefaultButtons({\n crudOverviewButtonConfigs: this.gridActionButtonsHelper.getActionButtonsForGridSelection({\n requiredPermissionToEdit: RouteUtils.paths.utilities.tool.editTool.requiredPermission,\n withDelete: (grid: GridButtonClickedEvent) => this.delete(grid),\n allowDeleteMultiple: true\n } as CrudActions)\n });\n }\n\n builderFactory.withCrudGridOptions(this.plasticProductOverviewService.getColumnDefs(false, PlasticProductGridType.INLINE), GridIdentifier.TOOL_PRODUCTS, null, (builder: GridOptionsBuilder) =>\n builder\n .withOnGridReady((params: GridReadyEvent) => {\n this.configGridApi = params.api;\n if (this.isLoading) {\n params.api.setGridOption('loading', true);\n } else {\n this.setRowData();\n }\n })\n .withOnFirstDataRendered(() => this.configGridApi.setGridOption('loading', false))\n .withRowSelection(true)\n .withGetRowId((params: GetRowIdParams) => params.data.name)\n .withLoadingOverlay({\n scale: 0.7\n } as OverlayComponentParams)\n .withNoRowsOverlay({\n scale: 1,\n titleParam: this.translate.instant(this.TRANSLATION_KEY, {count: 2}),\n hideDescription: false,\n actions: this.noOverlayAction\n } as NoDataOverlayComponentParams)\n .build()\n );\n\n this.config = builderFactory.build();\n }\n\n private delete({gridApi, rowNode}: GridButtonClickedEvent): void {\n this.dialogBuilderFactoryService\n .getBuilder()\n .openAlertDialog({\n titleText: this.translate.instant('GENERAL.ACTIONS.DELETE_OBJECT', {object: this.translate.instant(this.TRANSLATION_KEY, {count: 1}).toLowerCase()}),\n messageText: this.translate.instant('GENERAL.ACTIONS.CONFIRM_DELETE_DESCRIPTION'),\n type: DialogType.CONFIRM_DELETE\n })\n .pipe(\n filter((result: AlertDialogResult) => result === AlertDialogResult.CONFIRM),\n takeUntil(this.unSubscribeOnViewDestroy)\n )\n .subscribe(() => {\n const rowsToRemove = AssertionUtils.isNullOrUndefined(rowNode) ? gridApi?.getSelectedRows() : [rowNode.data];\n this.configGridApi.applyTransaction({remove: rowsToRemove});\n\n this.productsChange.emit(this.selectedProducts.filter((product: PlasticProduct) => !rowsToRemove.includes(product)));\n });\n }\n\n private setRowData(products: PlasticProduct[] = this.selectedProducts): void {\n this.configGridApi?.setGridOption('rowData', products);\n this.config.rowData = products;\n }\n\n private setDisabledForOverlay(): void {\n this.noOverlayAction.forEach((param: OverlayComponentParamsAction) => (param.disabled = this.isLocked));\n }\n}\n","
\n
\n

{{ 'UTILITIES.TOOL.PRODUCTS.MATCHING_PRODUCTS' | bmsTranslate }}

\n \n
\n \n
\n","
\n @if (pieceCycles) {\n \n {{ 'UTILITIES.TOOL.SETUP.WAIVE_CYCLES' | bmsTranslate }}\n \n \n \n \n \n \n }\n
\n \n {{ 'UTILITIES.TOOL.SETUP.MOUNT_TIME' | bmsTranslate }}\n \n \n \n {{ 'GENERAL.UNIT.MINUTE' | bmsTranslate }}\n \n \n \n \n \n \n {{ 'UTILITIES.TOOL.SETUP.DISMOUNT_TIME' | bmsTranslate }}\n \n \n \n {{ 'GENERAL.UNIT.MINUTE' | bmsTranslate }}\n \n \n \n \n \n
\n
\n","import {Component, Input} from '@angular/core';\nimport {ToolSetupForm} from '../tool.form';\n\n@Component({\n selector: 'app-setup',\n templateUrl: './setup.component.html'\n})\nexport class SetupComponent {\n @Input() public form: ToolSetupForm;\n @Input() public pieceCycles: number;\n}\n","
\n \n {{ 'GENERAL.STATUS' | bmsTranslate }}\n \n {{ 'UTILITIES.TOOL.TOOL_STATUS.' + toolStatus | bmsTranslate }} \n {{ 'UTILITIES.TOOL.TOOL_STATUS.IN_USE' | bmsTranslate }}\n \n \n \n \n \n\n \n {{ 'UTILITIES.TOOL.STOCK_LOCATION' | bmsTranslate: {count: 1} }}\n \n \n
\n","import {Component, Input} from '@angular/core';\nimport {IdName} from '@domain/id-name';\nimport {ToolStatus} from '@domain/machine/tool-status.enum';\nimport {AssertionUtils, BaseComponent, EnumUtils} from '@vdw/angular-component-library';\nimport {takeUntil} from 'rxjs';\nimport {AddToolNavigationData} from '../add-tool-navigation-data.interface';\nimport {AddToolPageComponent} from '../add-tool-page.component';\nimport {ToolStatusForm} from '../tool.form';\nimport {StockLocationSelectionService} from './stock-location-selection.service';\n\n@Component({\n selector: 'app-tool-status',\n templateUrl: './tool-status.component.html'\n})\nexport class ToolStatusComponent extends BaseComponent {\n @Input() public form: ToolStatusForm;\n\n public toolStatuses = EnumUtils.getEnumValues(ToolStatus).filter((status: ToolStatus) => status !== ToolStatus.IN_USE);\n\n public constructor(\n private readonly addPage: AddToolPageComponent,\n private readonly stockLocationSelection: StockLocationSelectionService\n ) {\n super();\n }\n\n public get isStatusInUse(): boolean {\n return this.form.getRawValue().status === ToolStatus.IN_USE;\n }\n\n public selectStockLocation(): void {\n const field = this.form.controls.stockLocation;\n\n this.stockLocationSelection\n .openContentSwitcherDialog(field.value, {activeTab: this.addPage.selectedMenuItem, tool: this.addPage.getCurrentTool(), products: this.addPage.products} as AddToolNavigationData)\n .pipe(takeUntil(this.unSubscribeOnViewDestroy))\n .subscribe((location: IdName[]) => field.setValue(AssertionUtils.isEmpty(location) ? field.value : location[0]));\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CustomSettingsDialogHeaderComponent} from '@presentation/components/custom-settings-dialog/custom-settings-dialog-header.component';\nimport {TextileDataSharedModule} from '@presentation/pages/textile-data/textile-data-shared.module';\nimport {CrudOverviewDataModule, EditorHeaderModule, SplitButtonModule} from '@vdw/angular-component-library';\nimport {AddToolPageComponent} from './add/add-tool-page.component';\nimport {CavitiesComponent} from './add/cavities/cavities.component';\nimport {MatchingCriteriaModule} from './add/matching-criteria/matching-criteria.module';\nimport {ProductsComponent} from './add/products/products.component';\nimport {SetupComponent} from './add/setup/setup.component';\nimport {AddStockLocationComponent} from './add/tool-status/add-stock-location/add-stock-location.component';\nimport {ToolStatusComponent} from './add/tool-status/tool-status.component';\nimport {ToolOverviewPageComponent} from './overview/tool-overview-page.component';\nimport {ToolCustomSettingsComponent} from './settings/tool-custom-settings.component';\nimport {ToolSelectionModule} from './tool-selection.module';\nimport {toolRouting} from './tool.routing';\n\n@NgModule({\n imports: [TextileDataSharedModule, MatchingCriteriaModule, toolRouting, EditorHeaderModule, CrudOverviewDataModule, SplitButtonModule, ToolSelectionModule, CustomSettingsDialogHeaderComponent],\n declarations: [AddToolPageComponent, CavitiesComponent, SetupComponent, ToolStatusComponent, ToolOverviewPageComponent, AddStockLocationComponent, ProductsComponent, ToolCustomSettingsComponent]\n})\nexport class ToolModule {}\n"],"x_google_ignoreList":[]}