{"version":3,"file":"static/js/133.f7f6c728.chunk.js","mappings":"iYAwBMA,EAAqBC,EAAAA,GAAAA,IAAH,qEAKXC,EAAgB,SAACC,GAC5B,MAAO,CACLC,YAAa,SAACC,GACZ,IAAMC,EAAUD,EAAOE,KACvB,MAAM,GAAN,OAAUD,EAAQE,KAAlB,aAA2BF,EAAQG,YAAnC,aAAmDH,EAAQI,YAA3D,aAA2EJ,EAAQK,GAAnF,IACD,EACDC,WAAYT,EAAE,WACdU,cAAeV,EAAE,WACjBW,MAAO,IACPC,mBAAoB,SAACV,GACnB,IAAMC,EAAUD,EAAOE,KACvB,MAAM,GAAN,OAAUD,EAAQE,KAAlB,aAA2BF,EAAQG,YAAnC,aAAmDH,EAAQI,YAA3D,aAA2EJ,EAAQK,GAAnF,IACD,EAEJ,EAEYK,EAAqD,SAACC,GACjE,IAAQd,GAAMe,EAAAA,EAAAA,KAANf,EAER,YAAoBgB,IAAhBF,EAAMG,MACD,MAIP,SAACpB,EAAD,WACE,SAACqB,EAAA,GAAD,CACEC,oBAAqB,SAACjB,GACJA,EAAOkB,UAAUC,iBAE/BnB,EAAOoB,IAAIC,kBAEd,EACDC,WAAYV,EAAMU,WAAWC,KAAI,SAACC,GAChC,MAAqB,uBAAjBA,EAAOC,OACF,gBACLA,MAAO,kBACPC,MACGd,EAAMe,mCACNf,EAAMgB,sBACNhB,EAAMiB,uBACNC,EAAAA,EAAAA,IAA6BhC,EAAE,eAAgBA,EAAE,yBANtD,IAOEiC,YAAa,+BACbC,SAAU,IACVC,aAAcC,EAAAA,EACdC,mBAAoB,SAACnC,GACnB,IAAMoC,EAAMpC,EAAOE,KACbiC,GAAyC,kBAC1CnC,GAD0C,IAE7CqC,SAAUzB,EAAMgB,qBAAuBhB,EAAMiB,qBAC7CS,QAAS,WACP1B,EAAM2B,uBAAuB,CAC3BC,2BAA4BJ,EAAII,4BAEnC,EACDC,KAAM,qBAER,OAAON,CACR,EACDzB,mBAAoB,SAACV,GACnB,IAAKA,EAAOE,KACV,MAAO,GAET,IAAMwC,EAAmC,GAQzC,OAPI9B,EAAMiB,sBACRa,EAAuBC,KAAK7C,EAAE,uBAE5Bc,EAAMgB,qBACRc,EAAuBC,KAAK7C,EAAE,gCAEpB4C,EAAuBE,KAAK,KAEzC,IAEMpB,EAAOC,QAAUoB,EAAAA,qBACnB,kBAAKrB,GAAZ,IAAoBE,MAAOd,EAAMkC,yBAE5BtB,CACR,IACDuB,QAAS,EAAC,kBAAKnC,EAAMX,SAAYW,EAAMG,QACvCiC,UAAU,aACVlD,EAAGA,KAIV,E,sFC3FKmD,EAAUrD,EAAAA,GAAAA,IAAH,8CACK,SAACgB,GAAD,OAAWA,EAAMsC,MAAMC,MAAMC,EAA7B,IAGZC,EAAgBzD,EAAAA,GAAAA,IAAH,mLACD,SAACgB,GAAD,OAAWA,EAAMsC,MAAMC,MAAMC,EAA7B,IAcZE,EAA2C,CAC/CC,YAAa,GACbC,cAAU1C,GA2FN2C,EAA4BC,EAAAA,KAAaC,MAAM,CACnDJ,YAAaG,EAAAA,KAAaE,IAAI,EAAG,yBAAyBC,WAC1DL,SAAUE,EAAAA,KAAaG,SAAS,sBAkBlC,GAfkCC,EAAAA,EAAAA,IAGhC,CACAC,iBAAkB,WAChB,OAAOT,CACR,EACDU,iBAAiB,EACjBC,oBAAoB,EACpBC,iBAAkBT,EAClBU,aAAc,SAACC,EAAQxD,GACrBA,EAAMA,MAAMyD,qBAAqBD,EAClC,GAZ+BN,EA3F9B,SAAClD,GAAW,IAAD,IACP0D,EAA2B1D,EAAM2D,mBAAmBC,QAC1DC,EAAAA,EAAAA,YAAU,WACJH,IAA6BI,EAAAA,EAAAA,YAC/B9D,EAAM+D,YACN/D,EAAMgE,UAET,GAAE,CAACN,EAA0B1D,IAE9B,IAAMiE,GAAoBC,EAAAA,EAAAA,GAAqB,KACvChF,GAAMe,EAAAA,EAAAA,KAANf,EAER,OACE,SAACiF,EAAA,EAAD,CACEC,MAAOlF,EAAE,0BACTmF,OAAQrE,EAAMqE,OACdC,eAAa,EACbN,QAAShE,EAAMgE,QACfO,iBACGN,EAAqD,kCAAjC,+BANzB,UASE,UAACxB,EAAD,YACE,SAACJ,EAAD,WACE,SAAC,EAAAmC,MAAD,CACEC,MAAOvF,EAAE,eACTwF,SAAS,WACTC,MAAO3E,EAAMwD,OAAOb,YACpBiC,+BAA6B,EAC7BC,UAAW,kBAAMC,EAAAA,EAAAA,IAAiB9E,EAAO,cAA9B,EACX+E,cAAe,SAACC,IACdC,EAAAA,EAAAA,IAAsBjF,EAAO,cAAegF,EAC7C,OAGL,SAAC3C,EAAD,WACE,SAAC,EAAA6C,SAAD,CACEC,YAAU,EACVV,MAAOvF,EAAE,UACTkG,WAAS,EACTT,MAAO,CACL,CACEA,MAAO3E,EAAMwD,OAAOZ,SACpB6B,MAAK,oBACHzE,EAAMqF,QAAQC,MAAK,SAACC,GAAD,aAAO,UAAAA,EAAE3C,gBAAF,eAAY4C,cAAexF,EAAMwD,OAAOZ,QAA/C,WADhB,aACH,EACID,mBAFD,QAEgB,KAGzB8C,SAAU,SACRC,IAMAT,EAAAA,EAAAA,IACEjF,EACA,WACA0F,EAAUC,OAAS,EAAID,EAAU,GAAGf,MAAQ,GAE/C,EAxBH,SA0BG3E,EAAMqF,QAAQ1E,KAAI,SAACiF,GAAD,eACjB,SAAC,EAAAC,eAAD,CAEElB,MAAK,UAAEiB,EAAOhD,gBAAT,aAAE,EAAiB4C,WACxBf,MAAK,UAAEmB,EAAOjD,mBAAT,QAAwB,IAFxBiD,EAAOhD,SAFG,SASvB,SAACP,EAAD,CAASyD,MAAO,CAAEC,WAAY,QAA9B,UACE,SAACC,EAAA,EAAD,CACEC,KAAM/G,EAAE,QACRgH,UAAU,SACVC,WAAW,UACXC,UAAW1C,IAA6BI,EAAAA,EAAAA,QACxCuC,UAAWrG,EAAMsG,QACjB5E,QAAS1B,EAAMuG,mBAM1B,I,uDC1GYC,GAAmE,SAACxG,GAAW,IAAD,EACjFd,GAAMe,EAAAA,EAAAA,KAANf,EAEFuH,EAAiB,SAACC,EAAaC,GACnC,OAAKC,MAAMF,IAAYE,MAAMD,GAEjBC,MAAMF,IAAYE,MAAMD,IAG3BE,EAAAA,GAAAA,GAAcH,EAAkBC,GAFhC,GAFAE,EAAAA,GAAAA,GAAcC,SAASJ,EAAQ,IAAKI,SAASH,EAAQ,IAM/D,EACKI,EAAgC,kBAQlClG,MAAO,OACPmG,aAAc,SACX9F,EAAAA,EAAAA,IAA6BhC,EAAE,gBAVA,IAWlC+H,WAAYR,EACZrF,SAAU,OAZwB,gBAelCP,MAAO,eACPmG,aAAc,iBACX9F,EAAAA,EAAAA,IAA6BhC,EAAE,qBAjBA,IAkBlC+H,WAAYR,EACZrF,SAAU,OAnBwB,gBAsBlCP,MAAO,qBACPmG,aAAc,qBACdlG,MAAOd,EAAMkC,yBACVhB,EAAAA,EAAAA,IAA6BhC,EAAE,0BAzBA,IA0BlCgI,SAAU,OA1BwB,gBA6BlCrG,MAAO,uBACPC,MAAOd,EAAMkC,yBACVhB,EAAAA,EAAAA,IAA6BhC,EAAE,4BA/BA,IAgClCgI,SAAU,OAhCwB,gBAmClCrG,MAAO,cACPC,MAAOd,EAAMkC,yBACVhB,EAAAA,EAAAA,IAA6BhC,EAAE,iBArCA,IAsClCW,MAAO,OAtC2B,gBAyClCgB,MAAO,oBACJK,EAAAA,EAAAA,IAA6BhC,EAAE,eAAgBA,EAAE,yBA1ClB,IA2ClCiC,YAAa,+BACb+F,SAAU,GACV9F,SAAU,IACVN,MAAOd,EAAMmH,2BACb9F,aAAcC,EAAAA,EACdC,mBAAoB,SAACnC,GAAiC,IAAD,EAC7CgI,EAAYhI,EAAOE,KACnBiC,GAAyC,kBAC1CnC,GAD0C,IAE7CqC,SAAQ,UAAG2F,EAAUpG,qBAAuBoG,EAAUnG,4BAA9C,SACRS,QAAS,WACP1B,EAAM2B,uBAAuB,CAC3BC,2BAA4BwF,EAAUxF,2BACtCyF,cAAeD,EAAUE,MAE5B,EACDzF,KAAM,qBAER,OAAON,CACR,EACDzB,mBAAoB,SAACV,GACnB,IAAKA,EAAOE,KACV,MAAO,GAET,IAAM8H,EAAYhI,EAAOE,KACnBwC,EAAmC,GAQzC,OAPA,OAAIsF,QAAJ,IAAIA,GAAAA,EAAWnG,sBACba,EAAuBC,KAAK7C,EAAE,uBAEhC,OAAIkI,QAAJ,IAAIA,GAAAA,EAAWpG,qBACbc,EAAuBC,KAAK7C,EAAE,gCAEpB4C,EAAuBE,KAAK,KAEzC,KA7EiC,gBAgFlCnB,MAAO,aACJK,EAAAA,EAAAA,IAA6BhC,EAAE,SAjFA,IAkFlCkC,SAAU,MAlFwB,gBAqFlCP,MAAO,mBACJK,EAAAA,EAAAA,IAA6BhC,EAAE,2BAtFA,IAuFlCgI,SAAU,IACV9F,SAAU,IACVmG,eAAgB,SAACnI,GACf,OAAKA,EAAOuF,MAGL6C,IAAOpI,EAAOuF,OAAO8C,QAAOC,EAAAA,GAAAA,OAF1B,EAGV,KA9FiC,gBAiGlC7G,MAAO,YACJK,EAAAA,EAAAA,IAA6BhC,EAAE,2BAlGA,IAmGlCgI,SAAU,IACV9F,SAAU,IACVmG,eAAgB,SAACnI,GACf,OAAKA,EAAOuF,MAGL6C,IAAOpI,EAAOuF,OAAO8C,QAAOC,EAAAA,GAAAA,OAF1B,EAGV,KA1GiC,gBA6GlC7G,MAAO,gBACJK,EAAAA,EAAAA,IAA6BhC,EAAE,sBA9GA,IA+GlCkC,SAAU,OA/GwB,gBAkHlCP,MAAO,SACP8G,OAAQ,oBACRC,SAAU,CAAC,gBAAiB,iBAAkB,oBAC3C1G,EAAAA,EAAAA,IAA6BhC,EAAE,YArHA,IAsHlCqI,eAAgB,SAACnI,GAAD,OAA0CF,EAAEE,EAAOuF,MAAnD,EAChBuC,SAAU,IACV9F,SAAU,OAId,OACE,SAAChB,EAAA,GAAD,CACEC,oBAAqB,SAACjB,GACpBA,EAAOkB,UAAUuH,iBAAiB,CAChCC,MAAO,CAAC,CAAEC,MAAO,OAAQC,KAAM,UAGjC5I,EAAOoB,IAAIyH,gBACK7I,EAAOkB,UAAUC,iBAE/BnB,EAAOoB,IAAIC,kBAEd,EACDC,WAAYqG,EACZ5E,QAAO,UAAEnC,EAAMmC,eAAR,QAAmB,GAC1BiC,MAAOlF,EAAE,eACTgJ,kBAAmB,EACnB9F,UAAU,aACVlD,EAAGA,GAGR,E,wBC5JYiJ,GAAyE,SAACnI,GAAW,IAAD,EACvFd,GAAMe,EAAAA,EAAAA,KAANf,EACFkJ,EAAsC,EAAC,QAEzCvH,MAAO,mBACJK,EAAAA,EAAAA,IAA6BhC,EAAE,sBAHM,QAMxC2B,MAAO,kBACJK,EAAAA,EAAAA,IAA6BhC,EAAE,qBAPM,gBAUxC2B,MAAO,oBACJK,EAAAA,EAAAA,IAA6BhC,EAAE,iBAXM,IAYxCkC,SAAU,OAZ8B,gBAexCP,MAAO,YACJK,EAAAA,EAAAA,IAA6BhC,EAAE,mBAhBM,IAiBxCqI,eAAgB,SAACnI,GACf,OAAIA,EAAOuF,MACF6C,IAAOpI,EAAOuF,OAAO8C,QAAOC,EAAAA,GAAAA,OAE9B,EACR,EACDtG,SAAU,IACV8F,SAAU,OAxB8B,mBA2BrChG,EAAAA,EAAAA,IAA6BhC,EAAE,kBA3BM,IA4BxC2B,MAAO,gCACPM,YAAa,+BACbL,MAAOd,EAAMkC,uBACbb,aAAcC,EAAAA,EACdC,mBAAoB,SAACnC,GACnB,IAAMiJ,EAAiBjJ,EAAOE,KACxBiC,GAAyC,kBAC1CnC,GAD0C,IAE7CqC,SAAU4G,EAAeC,8BACzB5G,QAAS,WACP1B,EAAMuI,2BACJF,EAAeG,eACfH,EAAezG,2BACf,CACE6G,GAAAA,GAAAA,YACAA,GAAAA,GAAAA,oBAGL,EACD5G,KAAM,iBAER,OAAON,CACR,KAlDuC,mBAqDrCL,EAAAA,EAAAA,IAA6BhC,EAAE,qBArDM,IAsDxC2B,MAAO,mCACPM,YAAa,+BACbL,MAAOd,EAAMkC,uBACbb,aAAcC,EAAAA,EACdC,mBAAoB,SAACnC,GACnB,IAAMiJ,EAAiBjJ,EAAOE,KACxBiC,GAAyC,kBAC1CnC,GAD0C,IAE7CqC,SAAU4G,EAAeK,iCAEzBhH,QAAS,WACP1B,EAAMuI,2BACJF,EAAeG,eACfH,EAAezG,2BACf,CAAC6G,GAAAA,GAAAA,gBAEJ,EACD5G,KAAM,iBAER,OAAON,CACR,KA1EuC,QA6ExCV,MAAO,cACJK,EAAAA,EAAAA,IAA6BhC,EAAE,gBA9EM,gBAiFxC2B,MAAO,mBACJK,EAAAA,EAAAA,IAA6BhC,EAAE,qBAlFM,IAmFxCmC,aAAcsH,GAAAA,EACdpH,mBAAoB,SAACnC,GAAiC,IAAD,EAC7CiJ,EAAiBjJ,EAAOE,KACxBiC,GAAyC,kBAC1CnC,GAD0C,IAE7C6G,KAAI,UAAEoC,EAAeO,sBAAjB,QAAmC,GACvCC,KAAMR,EAAeS,eAEvB,OAAOvH,CACR,KAIL,OACE,SAACnB,EAAA,GAAD,CACEC,oBAAqB,SAACjB,GACJA,EAAOkB,UAAUC,iBAE/BnB,EAAOoB,IAAIC,kBAEd,EACDC,WAAY0H,EACZjG,QAAO,UAAEnC,EAAMmC,eAAR,QAAmB,GAC1BiC,MAAOlF,EAAE,oBACTgJ,kBAAmB,EACnB9F,UAAU,aACVlD,EAAGA,GAGR,E,oCCtIY6J,GAAY,SAAC,GAA2C,IAAzCC,EAAwC,EAAxCA,KACpB1G,GAAQ2G,EAAAA,EAAAA,MACd,OACE,iBACEC,QAAQ,MACRC,EAAE,MACFC,EAAE,MACFJ,KAAMA,EACNnJ,MAAOyC,EAAMC,MAAM8G,IACnBC,OAAQhH,EAAMC,MAAM8G,IACpBE,QAAQ,YACRC,iBAAiB,gBACjBC,SAAS,WACTC,WAAW,+BACXC,MAAM,6BAXR,WAaE,cAAGjK,GAAG,YAAN,UACE,iBACEkK,EAAE,okBAON,cAAGlK,GAAG,OAAOmK,QAAQ,OAArB,UACE,eAAGA,QAAQ,SAAX,WACE,iBACEb,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,KACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,IACHC,GAAG,IACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,IACHC,GAAG,IACHC,GAAG,OAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,QAEL,iBACEpB,KAAK,OACLc,OAAO,UACPC,YAAY,OACZC,iBAAiB,KACjBC,GAAG,KACHC,GAAG,KACHC,GAAG,IACHC,GAAG,cAMd,E,YCn/BKC,GAAcrL,EAAAA,GAAAA,GAAH,2TASD,SAACgB,GAAD,OAAWA,EAAMsC,MAAMC,MAAM+H,CAA7B,IACG,SAACtK,GAAD,OAAWA,EAAMsC,MAAMC,MAAM+H,CAA7B,IAGbC,GAAWvL,EAAAA,GAAAA,GAAH,sOACC,SAACgB,GAAD,OAAYA,EAAMwK,OAAS,EAAI,CAA/B,IAMO,SAACxK,GACnB,OAAIA,EAAMwK,OACDxK,EAAMsC,MAAMmI,OAAOC,aAExB1K,EAAM2K,SACD3K,EAAMsC,MAAMmI,OAAOG,aAErB5K,EAAMsC,MAAMmI,OAAOI,MAC3B,IAMUC,GAAgB9L,EAAAA,GAAAA,IAAH,kQAUd,SAACgB,GACT,OAAIA,EAAM2K,UAAY3K,EAAMwK,OACpB,eAAN,OAAsBxK,EAAMsC,MAAMmI,OAAOM,aAEvC/K,EAAM2K,SACF,eAAN,OAAsB3K,EAAMsC,MAAMmI,OAAOO,cAEvChL,EAAMiL,YACF,eAAN,OAAsBjL,EAAMsC,MAAMmI,OAAOG,cAErC,eAAN,OAAsB5K,EAAMsC,MAAMmI,OAAOI,OAC1C,IAGa,SAAC7K,GAAD,OAAWA,EAAMsC,MAAMmI,OAAOC,YAA9B,IAMVQ,IAAalM,EAAAA,EAAAA,IAAOmM,EAAAA,KAAPnM,CAAH,8IAEC,SAAAgB,GAAK,OAAIA,EAAMsC,MAAM8I,MAAM7I,MAAM8I,UAA5B,IACT,SAAArL,GAAK,OAAIA,EAAMsC,MAAMC,MAAM+H,CAAtB,IACJ,SAAAtK,GAAK,OAAIA,EAAMsC,MAAMC,MAAM+H,CAAtB,IAGR,SAACtK,GAAD,OACPA,EAAM2K,SAAW3K,EAAMsC,MAAMmI,OAAOG,aAAe5K,EAAMsC,MAAMmI,OAAOI,MAD/D,IAILS,IAAkBtM,EAAAA,EAAAA,IAAOmM,EAAAA,KAAPnM,CAAH,6EAURuM,GAAkB,SAAC,GAAyD,IAAvDC,EAAsD,EAAtDA,aACxBtM,GAAMe,EAAAA,EAAAA,KAANf,EACR,OACE,UAACmL,GAAD,YACE,SAACE,GAAD,CAAUI,SAAUa,EAAe,EAAnC,UACE,UAAC,EAAAC,YAAD,YACE,SAACX,GAAD,CAAeH,SAA2B,IAAjBa,EAAoBP,YAAaO,EAAe,EAAzE,UACE,SAACN,GAAD,CAAY3L,KAAK,eAAeoL,SAAUa,EAAe,OAE3D,SAAC,EAAAE,QAAD,WACE,uBAAIxM,EAAE,+BAKZ,SAACqL,GAAD,CAAUI,SAAUa,EAAe,EAAnC,UACE,UAAC,EAAAC,YAAD,YACE,SAACX,GAAD,CAAeH,SAA2B,IAAjBa,EAAoBP,YAAaO,EAAe,EAAzE,UACE,SAACN,GAAD,CAAY3L,KAAK,6BAA6BoL,SAAUa,EAAe,OAEzE,SAAC,EAAAE,QAAD,WACE,uBAAIxM,EAAE,gCAKZ,SAACqL,GAAD,CAAUI,SAAUa,EAAe,EAAnC,UACE,UAAC,EAAAC,YAAD,YACE,SAACX,GAAD,CAAeH,SAA2B,IAAjBa,EAAoBP,YAAaO,EAAe,EAAzE,UACE,SAACN,GAAD,CAAY3L,KAAK,YAAYoL,SAAUa,EAAe,OAExD,SAAC,EAAAE,QAAD,WACE,uBAAIxM,EAAE,oCAKZ,SAACqL,GAAD,CAAUI,SAAUa,EAAe,EAAnC,UACE,UAAC,EAAAC,YAAD,YACE,UAACX,GAAD,CACEH,SAA2B,IAAjBa,GAAuC,IAAjBA,EAChCP,YAAaO,EAAe,EAF9B,WAIE,SAACzC,GAAD,CACEC,KACEwC,EAAe,EAAIG,GAAAA,EAAAA,OAAAA,aAAoCA,GAAAA,EAAAA,OAAAA,SAGzC,IAAjBH,GACC,SAACF,GAAD,CAAiB/L,KAAK,uBAAuB2G,UAAU,UACrD,SAEN,SAAC,EAAAwF,QAAD,UACoB,IAAjBF,GACC,uBAAItM,EAAE,mCAEN,uBAAIA,EAAE,8BAMd,SAACqL,GAAD,CAAUC,QAAQ,EAAlB,UACE,UAAC,EAAAiB,YAAD,YACE,SAACX,GAAD,CAAeH,SAA2B,IAAjBa,EAAoBhB,QAAQ,EAArD,UACE,SAACU,GAAD,CAAY3L,KAAK,iBAAiBoL,SAA2B,IAAjBa,OAE9C,SAAC,EAAAE,QAAD,WACE,uBAAIxM,EAAE,iCAMjB,ECtKY0M,GAA+C,CAC1DC,UAAW,EACX,iBAAkB,EAClBC,UAAW,EACXC,WAAY,EACZC,QAAS,EACT,mBAAoB,EACpBC,UAAW,G,YCDPC,GAAYlN,EAAAA,GAAAA,IAAH,8FAMTmN,GAAkBnN,EAAAA,GAAAA,IAAH,kJAMZ,SAAAgB,GAAK,OAAIA,EAAMsC,MAAMC,MAAM6J,CAAtB,IAGDC,GAAqB,WAChC,IAAQnN,GAAMe,EAAAA,EAAAA,KAANf,EAER,OACE,SAACgN,GAAD,WACE,UAACC,GAAD,YACE,SAAC,EAAAhB,KAAD,CAAM5L,KAAK,uBAAuB2G,UAAU,WAC5C,SAACoG,GAAA,EAAD,CAAWrG,KAAM/G,EAAE,yBAI1B,ECDKqN,IAAqBvN,EAAAA,EAAAA,IAAOgH,EAAAA,EAAPhH,CAAH,4CACR,SAACgB,GAAD,OAAWA,EAAMsC,MAAMC,MAAMC,EAA7B,IAGVgK,GAAkBxN,EAAAA,GAAAA,IAAH,wFAMfyN,GAAkBzN,EAAAA,GAAAA,IAAH,sMAGL,SAACgB,GAAD,OAAWA,EAAMsC,MAAMC,MAAM+H,CAA7B,IACG,SAACtK,GAAD,OAAWA,EAAMsC,MAAMC,MAAM+H,CAA7B,IAsBboC,GAAU1N,EAAAA,GAAAA,IAAH,4DACG,SAACgB,GAAD,OAAYA,EAAM2M,SAAW,MAAQ3M,EAAMsC,MAAMC,MAAMqK,EAAvD,IAMVC,GAAwB7N,EAAAA,GAAAA,IAAH,uMAUrB8N,GAA4B9N,EAAAA,GAAAA,IAAH,yCAqK/B,GA5JyB,WAAoB,IAAD,IACpC+N,GAAWC,EAAAA,EAAAA,MACXC,GAAUC,EAAAA,EAAAA,MAEhB,GAA0EC,EAAAA,EAAAA,WAAS,GAAnF,eAAOC,EAAP,KAAsCC,EAAtC,KAEQC,GAAoBC,EAAAA,EAAAA,MAApBD,gBAEFE,GAAiBC,EAAAA,EAAAA,IAAYC,EAAAA,IAC7BC,GAAyBF,EAAAA,EAAAA,IAAYG,EAAAA,IACrCC,GAA0BJ,EAAAA,EAAAA,IAAYK,EAAAA,IACtCC,GAAmBN,EAAAA,EAAAA,IAAYO,GAAAA,IAE7B9O,GAAMe,EAAAA,EAAAA,KAANf,GAMR2E,EAAAA,EAAAA,YAAU,WACJyJ,GACFP,EACEkB,EAAAA,EAAAA,gBAAAA,aAAwC,CACtCX,gBAAiBA,IAIxB,GAAE,CAACA,EAAiBP,IAGrB,IAWMmB,OACgChO,KAAtB,OAAdsN,QAAc,IAAdA,OAAA,EAAAA,EAAgBW,kBAAiCX,EAAeW,gBAAgBxI,OAAS,EAErFhE,EAAyB,SAACvC,GAC9B6N,EAAQlL,KAAK,CACXqM,SAAUC,GAAAA,EAAAA,WAAAA,mBAAAA,MACVvG,MAAO,CACLwG,kCAAiC,UAAMlP,KAG5C,EAEK8C,GAAyBqM,EAAAA,GAAAA,IAAwBR,EAAkB,CACvES,UAAW,MACXC,WAAU,OAAEjB,QAAF,IAAEA,OAAF,EAAEA,EAAgBrN,MAAMuO,UAClCC,aAAc,CAACC,EAAAA,IAAAA,yBAGXC,GAAoCN,EAAAA,GAAAA,IAAwBR,EAAkB,CAClFS,UAAW,MACXC,gBAAYvO,EACZyO,aAAc,CAACC,EAAAA,IAAAA,4BAGX5N,EAAmB,iBACvBwM,QADuB,IACvBA,OADuB,EACvBA,EAAgBsB,WAAWC,MAAK,SAACC,GAAD,OAAQA,EAAGhO,mBAAX,WADT,SAGnBC,EAAoB,iBACxBuM,QADwB,IACxBA,OADwB,EACxBA,EAAgBsB,WAAWC,MAAK,SAACC,GAAD,OAAQA,EAAG/N,oBAAX,WADR,SAiB1B,GAAI0M,EAAuB/J,SAAWE,EAAAA,EAAAA,OACpC,OAAO,4CAGT,IAlI0BF,EAkIpBqL,GAAsBC,EAAAA,EAAAA,wBAAuBhQ,EAAGgD,GAEtD,OACE,SAACiN,EAAA,EAAD,CAAmBC,UAAWlQ,EAAE,SAAhC,SACGyO,EAAuB/J,SAAWE,EAAAA,EAAAA,SACjC,SAACgJ,GAAD,WACE,SAAC,EAAAuC,iBAAD,CAAkBC,KAAK,SAASpJ,UAAU,QAAQqJ,aAAa,OAGjE,UAAC1C,GAAD,YACE,SAAC,EAAD,CACExI,OAAQ+I,EACRpJ,QAAS,kBAAMqJ,GAAiC,EAAvC,EACThI,QAvF4B,WAAO,IAAD,EAC1C,wBAAOmI,QAAP,IAAOA,OAAP,EAAOA,EAAgBgC,kCAAvB,QAAqD,EACtD,CAqFkBC,GACThM,qBAzE2B,SAACiM,GACpC,IAAMC,EAAwE,CAC5EC,2BAA4B,CAC1BhO,2BAA0B,OAAE4L,QAAF,IAAEA,OAAF,EAAEA,EAAgBrN,MAAMyB,2BAClDiO,QAASH,EAAO/M,YAChBiD,OAAQ8J,EAAO9M,WAGnBmK,EAASkB,EAAAA,EAAAA,iBAAAA,aAAyC0B,GACnD,EAiEShM,mBAAoBkK,KAEtB,UAACnB,GAAD,CAASC,UAAQ,EAAjB,WACE,SAAC5M,EAAD,CACEW,WACgB,OAAd8M,QAAc,IAAdA,GAAAA,EAAgBnO,QAAhB,CACKJ,EAAcC,IADnB,eAC0B+P,IACtBA,EAEN9O,MAAK,OAAEqN,QAAF,IAAEA,OAAF,EAAEA,EAAgBrN,MACvBd,QAAO,OAAEmO,QAAF,IAAEA,OAAF,EAAEA,EAAgBnO,QACzB0B,iCAAkC8N,EAClC7N,oBAAqBA,EACrBC,qBAAsBA,EACtBU,uBAAwBA,EACxBO,uBAAwBA,IAEzBA,GACC,SAACsK,GAAD,WACE,SAACD,GAAD,CACErG,UAAU,SACVC,WAAW,YACXF,KAAM/G,EAAE,0BACRwC,QAAS,kBAAM2L,GAAiC,EAAvC,MAGX,MA3KYzJ,EA4KG,OAAC4J,QAAD,IAACA,OAAD,EAACA,EAAgBrN,MAAMyD,OA3KhDA,GAEA,SAAC6I,GAAD,UACc,cAAX7I,GACC,SAACyI,GAAD,KAEA,SAACd,GAAD,CAAiBC,aAAcI,GAAkBhI,QAKlD,SAAC6I,GAAD,SAkKC,SAACC,GAAD,CAASC,SAAUzK,EAAnB,UACE,SAACsE,GAAD,CACErE,QAAO,OAAEqL,QAAF,IAAEA,OAAF,EAAEA,EAAgBsB,WACzBnN,uBAAwBA,EACxBwF,2BAA4BlG,GAAwB4N,EACpD3M,uBAAwBA,MAG3BgM,GACC,SAACxB,GAAD,WACE,SAACvE,GAAD,CACEhG,QAAO,OAAEqL,QAAF,IAAEA,OAAF,EAAEA,EAAgBW,gBACzBjM,uBAAwBA,EACxBqG,2BA3EuB,SACnCC,EACA5G,EACAkO,GAEA/C,EACEkB,EAAAA,EAAAA,4BAAAA,aAAoD,CAClDzF,eAAgBA,EAChB5G,2BAA4BA,EAC5BkO,cAAeA,IAGpB,MAkEW,SAKb,C,2ZCvMY7N,EAAsB,iBAEtBiN,EAAyB,SAAChQ,EAAc6Q,GAiEnD,MAhE8B,CAC5B,CACElP,MAAOoB,EACPrC,cAAeV,EAAE,mBACjBS,WAAYT,EAAE,mBACd8H,aAAc,kBAEhB,CACEnG,MAAO,6BACPmG,aAAc,6BACdrH,WAAYT,EAAE,6BACdU,cAAeV,EAAE,6BACjBkC,SAAU,IACV8F,SAAU,KAEZ,CACErG,MAAO,sBACPmG,aAAc,sBACdrH,WAAYT,EAAE,sBACdU,cAAeV,EAAE,sBACjB8Q,KAAM,GAER,CACEnP,MAAO,iCACPmG,aAAc,iCACdrH,WAAYT,EAAE,mCACdU,cAAeV,EAAE,oCAEnB,CACE2B,MAAO,iBACPmG,aAAc,iBACdrH,WAAYT,EAAE,mBACdU,cAAeV,EAAE,mBACjB4B,MAAOiP,GAET,CACElP,MAAO,UACPlB,WAAYT,EAAE,gBACdU,cAAeV,EAAE,gBACjBgI,SAAU,IACV9F,SAAU,IACVmG,eAAgB,SAACnI,GACf,OAAKA,EAAOuF,MAGL6C,IAAOpI,EAAOuF,OAAO8C,QAAOC,EAAAA,EAAAA,OAF1B,EAGV,EACD5H,mBAAoB,SAACV,GAAD,OAClBoI,IAAOpI,EAAOuF,OAAO8C,QAAOC,EAAAA,EAAAA,MADV,GAGtB,CAAE7G,MAAO,qBAAsBlB,WAAYT,EAAE,uBAAwB4B,MAAM,EAAMjB,MAAO,KACxF,CACEgB,MAAO,SACPlB,WAAYT,EAAE,UACdU,cAAeV,EAAE,UACjBgI,SAAU,IACV9F,SAAU,IACVmG,eAAgB,SAACnI,GACf,OAAOF,EAAEE,EAAOuF,MACjB,EACD9E,MAAO,KAKZ,EAEKoQ,EAAoB,SAACC,GACzB,GAAIA,EAAavK,QAA8B,OAApBuK,EAAa,GACtC,OAAOA,EAAavP,KAAI,SAACwP,GACvB,MAAO,CAAE1L,MAAO0L,EAAGxL,MAAOwL,EAC3B,GAEJ,EAEKC,EAAkB,SAACC,GACvB,GAAIA,EAAO1K,QAAwB,OAAd0K,EAAO,GAC1B,OAAOA,EAAO1P,KAAI,SAACwP,GACjB,MAAO,CAAE1L,MAAO0L,EAAE5Q,KAAMoF,MAAOwL,EAAEzQ,GAAG8F,WACrC,GAEJ,EA+MD,UA7MuB,WAAoB,IAAD,EAClCuH,GAAWC,EAAAA,EAAAA,MACXsD,GAAkB7C,EAAAA,EAAAA,IAAY8C,EAAAA,IAC9BtD,GAAUC,EAAAA,EAAAA,MACV5M,GAAYkQ,EAAAA,EAAAA,UAEZH,GAAS5C,EAAAA,EAAAA,IAAYgD,EAAAA,IAAqBJ,OAC1CK,GAA0BjD,EAAAA,EAAAA,IAAYkD,EAAAA,IACtCC,GAAWnD,EAAAA,EAAAA,IAAYoD,EAAAA,IACvBC,GAAqBrD,EAAAA,EAAAA,IAAYsD,EAAAA,IACjCb,GAAezC,EAAAA,EAAAA,IAAYgD,EAAAA,IAAqBP,aAChDnC,GAAmBN,EAAAA,EAAAA,IAAYO,EAAAA,KAErCnK,EAAAA,EAAAA,YAAU,YAEN0K,EAAAA,EAAAA,IAAwBR,EAAkB,CACxCS,UAAW,MACXG,aAAc,CAACC,EAAAA,IAAAA,0BAAwCA,EAAAA,IAAAA,uBACvDH,WAAYuC,EAAAA,EAAAA,wBAGdjE,EAASkB,EAAAA,EAAAA,iBAAAA,kBAAyC/N,GAErD,GAAE,CAAC6N,EAAkBhB,IAEtB,OAA0CI,EAAAA,EAAAA,eAA8BjN,GAAxE,eAAO+Q,EAAP,KAAsBC,EAAtB,KACMC,GAA2BC,EAAAA,EAAAA,cAAY,SAACC,GAC5CH,EAAiBG,EAClB,GAAE,IAEKnS,GAAMe,EAAAA,EAAAA,KAANf,EAEFoS,EAAmB,SAAC1P,EAAoC2P,GAC5DxE,EAASyE,EAAAA,EAAAA,sBAAA,OAAwCD,QAAxC,IAAwCA,EAAAA,OAAgBrR,IACjE+M,EAAQlL,KAAK0P,EAAAA,EAAAA,aAAuB7P,GACrC,EAEKM,GAAyBqM,EAAAA,EAAAA,IAAwBR,EAAkB,CACvES,UAAW,MACXC,WAAU,iBAAE6B,QAAF,IAAEA,OAAF,EAAEA,EAAiB3L,aAAnB,QAA4B,IACtCgK,aAAc,CAACC,EAAAA,IAAAA,sBAAoCA,EAAAA,IAAAA,6BAwFrD,OACE,SAAC,IAAD,CACE8C,SACE,SAAC,KAAD,CACEC,UAAW1B,EAAkBC,GAC7BG,OAAQD,EAAgBC,GACxBuB,QAASX,EACTY,SAAU,SAACrO,EAA2BkL,GACpC3B,EAASyE,EAAAA,EAAAA,mBAAqChO,IA5BxB,WAAO,IAAD,EAQlC,EAPIsO,EAAa,UAAGxR,EAAUyR,eAAb,aAAG,EAAmBC,iBACnCC,EAAYH,GAAgBI,EAAAA,EAAAA,IAAaJ,QAAiB5R,GAE7DgC,QACahC,IAAd+R,GACAA,EAAUE,aAAelQ,GACzBmQ,EAAAA,GAAAA,qBAEA,UAAA9R,EAAUyR,eAAV,SAAmBlK,iBAAiB,CAClCC,MAAO,CACL,CACEC,MAAOqK,EAAAA,GAAAA,mBACPpK,KAAMoK,EAAAA,GAAAA,yBAAgD,MAAQ,WAKvE,CAWSC,GACa,OAAbpB,QAAa,IAAbA,GAAAA,EAAeqB,cA/FN,SACjBC,EACAzB,GAEA,IAAI0B,GAAe,EACfC,EAA2C,KAC/C,MAAO,CACLC,QAAS,SAACtT,GACR,IAAMuT,EAAOC,KAAKC,MAAMzT,EAAO0T,SAAWlC,EAASmC,kBAC7CvS,GAAMwS,EAAAA,EAAAA,KAAiBC,SAEvBhB,GAAYC,EAAAA,EAAAA,IAAa9S,EAAO6S,WAEhCiB,GAAcC,EAAAA,EAAAA,IAAQZ,GAAe,SAACa,GAC1CA,EAAMC,mBAAN,OAA2BpB,QAA3B,IAA2BA,OAA3B,EAA2BA,EAAWE,WACtCiB,EAAME,aAAeX,EACrBS,EAAMG,yBAAN,OAAiCtB,QAAjC,IAAiCA,OAAjC,EAAiCA,EAAWuB,KAC7C,IAEDzG,EAASyE,EAAAA,EAAAA,oBAAsC0B,IAClC,OAAbjC,QAAa,IAAbA,GAAAA,EAAewC,qBAEfjT,EACGkT,YAAYR,GACZS,MAAK,SAACC,GAmBL,GAlBgC,IAA5BA,EAAIhD,SAASiD,iBAA2C3T,IAAvB4Q,GACnCQ,EAAiBsC,EAAIE,OAAO,GAAGrF,WAAY,GAGnB,IAAtBmF,EAAIE,OAAOnO,OACA,OAAbsL,QAAa,IAAbA,GAAAA,EAAe8C,oBAEF,OAAb9C,QAAa,IAAbA,GAAAA,EAAe+C,cAGjB5U,EAAO6U,gBAAgBL,EAAIE,OAAQF,EAAIhD,SAASiD,iBAErB3T,IAAvB4Q,GAAqC0B,IACvCC,EAAY,OAAGxB,QAAH,IAAGA,OAAH,EAAGA,EAAeiD,uBAAuBpD,GACrD0B,GAAe,EACfzF,EAASyE,EAAAA,EAAAA,2BAAwCtR,KAG/CuS,GAAsC,MAAtB3B,EAA4B,CACjC,OAAbG,QAAa,IAAbA,GAAAA,EAAekD,mBAAmBrD,EAAoB,UACtD2B,EAAa2B,aAAY,GAAM,GAC/B,IAAMC,EAAY,OAAGpD,QAAH,IAAGA,OAAH,EAAGA,EAAeqD,kBAChCD,GAAgBA,EAAa1O,OAAS,IAExC8M,EAAe,KAElB,CAGF,IACA8B,OAAM,SAACC,GACO,OAAbvD,QAAa,IAAbA,GAAAA,EAAe+C,eACfS,EAAAA,EAAAA,GAAoBD,EAAKzH,EAC1B,GACJ,EAEJ,CAmCW2H,EACEC,EAAAA,EAAAA,IACGjG,GAAD,kBAAkClL,GAAlC,IAA0C/D,iBAAaS,KAAvD,UAAkBsD,GAClBoN,EACAlC,GAEFoC,GAGL,EACDR,gBAAiBA,EACjBsE,kBAAmBlE,IAGvBmE,aAAc3V,EAAE,eAChBkQ,UAAWlQ,EAAE,UAzBf,UA2BE,SAAC,KAAD,CACE4V,iBAAiB,EACjBC,aAAaC,EAAAA,EAAAA,IACX5C,EAAAA,GAAAA,yBACAA,EAAAA,GAAAA,oBAEF6C,oBAAoB,EACpBC,cAAe,CAAEC,iBAAiB,EAAMC,cAAc,GACtD1U,WAAYwO,EAAuBhQ,GAAGyB,KAAI,SAACC,GACzC,MAAqB,mBAAjBA,EAAOC,OACF,kBACFD,GADL,IAEEE,MAAOoB,GAA0BwO,EAAwB2E,gBAGtDzU,CACR,IACD0U,aAAc,WACdC,eAAgB,IAChBC,iBAAkB,EAClBC,wBAAyB,EACzBC,cAAY,EACZC,uBAAqB,EACrBC,aAAc,SAACC,GACb,IAAM1V,EAAQ0V,EAAMvW,KACpBgS,EAAiBnR,EAAMsO,WAAYoH,EAAMC,SAC1C,EACDC,uBAAqB,EACrBC,YAAa,SAACH,GACZvV,EAAUyR,QAAU8D,EAAMvV,UAC1B6Q,EAAyB0E,EAAMrV,KAC/B,IAAMyV,EAAyC,CAC7CnO,MAAO8I,EAASyC,mBACZ,CACE,CACEtL,MAAO6I,EAASyC,mBAChBrL,KAAM4I,EAAS2C,yBAA2B,MAAQ,cAGtDrT,GAEN2V,EAAMvV,UAAUuH,iBAAiBoO,EAClC,EACD/W,EAAGA,KAIV,C,uEC7UYuS,EAAY,CACvByE,aAAc,SAACtU,GAAD,gBACTyM,EAAAA,EAAAA,WAAAA,OAAAA,MADS,YACyBzM,EADzB,EAEdkS,OAAQ,2BAAiBzF,EAAAA,EAAAA,WAAAA,OAAAA,MAAjB,EACR8H,uBAAwB,SAACC,EAA0BC,GAA3B,gBANTC,GAMS,2DACwCF,EADxC,yBACyEC,EADzE,E,kICQbE,GAAwBvX,EAAAA,EAAAA,IAAOmM,EAAAA,KAAPnM,CAAH,wCACtB,SAACgB,GAAD,OAAYA,EAAMwW,QAAU,gBAAkB,MAA9C,IAGNC,EAAmBzX,EAAAA,GAAAA,IAAH,mFAED,SAACgB,GAAD,OAAYA,EAAMwW,QAAU,gBAAkB,QAA9C,IACT,SAACxW,GAAD,OAAYA,EAAM0W,YAAc,qBAAuB,SAAvD,IAGNC,EAAW,SAACC,GAChB,IAAmB,IAAfA,EACF,OAAOjL,EAAAA,EAAAA,OAAAA,MAEV,EAEYrK,GAAmBuV,EAAAA,EAAAA,OAAK,SAAC7W,GACpC,OAAKA,EAAMyB,UAAazB,EAAMiG,MAK5B,UAACwQ,EAAD,CACEC,cAAe1W,EAAM0B,WAAa1B,EAAM0W,YACxC5Q,MAAO,CACLwD,OAAQtJ,EAAM8W,KAAKC,UAAY,MAEjCrV,QAAS1B,EAAM0B,QACf8U,aAAwBtW,IAAfF,EAAMiG,KANjB,UAQGjG,EAAMiG,MAAO,yBAAMjG,EAAMiG,OAAc,KACvCjG,EAAMyB,UACL,SAAC8U,EAAD,CACEhX,KAAMS,EAAM6B,KACZmV,MAAOhX,EAAMgX,MAAQhX,EAAMgX,MAAQL,EAAS3W,EAAM4W,YAClDJ,aAAwBtW,IAAfF,EAAMiG,OAEf,QAnBC,IAsBV,G,wGC3CY0C,GAAmBkO,EAAAA,EAAAA,OAAK,SAAC7W,GAAkC,IAAD,EAC/DiN,GAAUC,EAAAA,EAAAA,MAChB,OACE,gBACEpH,MAAO,CACLjG,MAAO,OACPgK,QAAS,OACToN,eAAgBjX,EAAM6B,KAAO,SAAW,aACxCqV,WAAY,SACZ5N,OAAQ,QAEV6N,UAAU,gBARZ,UAUE,SAAC,EAAAC,KAAD,CACEC,OAAO,SACPC,UAAQ,EACRC,KAAI,UAAEvX,EAAM6I,YAAR,aAAgB3I,EACpBsX,iBAAiBxX,EAAMyX,YACvB/V,QAAS,WACH1B,EAAM6I,OAAS7I,EAAMyX,aACvBxK,EAAQlL,KAAK/B,EAAM6I,KAEtB,EACD6O,WAAY1X,EAAM6B,KAVpB,SAYG7B,EAAMiG,QAId,G,6FC1BY/B,EAAuB,SAACyT,GACnC,OAA8CxK,EAAAA,EAAAA,UAC5CyK,OAAOC,YAAcF,GADvB,eAAOG,EAAP,KAAwBC,EAAxB,KAOA,OAHAC,EAAAA,EAAAA,GAAiBJ,OAAQ,UAAU,SAAC5S,GAAD,OAlBnB,SAChBA,EACA8S,EACAC,EACAJ,GACI,IAAD,KACE,OAAD3S,QAAC,IAADA,GAAA,UAAAA,EAAGqS,cAAH,eAAWQ,cAAeF,IAAcG,EAC1CC,GAAmB,IACT,OAAD/S,QAAC,IAADA,GAAA,UAAAA,EAAGqS,cAAH,eAAWQ,aAAcF,GAAaG,GAC/CC,GAAmB,EAEtB,CAQGE,CAAUjT,EAAG8S,EAAiBC,EAAoBJ,EADjB,IAG5BG,CACR,C,wBCzBM,SAASjR,EACdqR,EACAC,GAEA,OAAID,IAAMC,EACD,OAECjY,IAANgY,EACK,OAEChY,IAANiY,GAIGD,EAAIC,GAHD,EAGU,CACrB,C","sources":["applications/deliveries/orders/components/OrderInfo.tsx","applications/deliveries/orders/components/ContactSalesSupportDialog.tsx","applications/deliveries/orders/components/OrderDetailsGrid.tsx","applications/deliveries/orders/components/ShippingDetailsGrid.tsx","applications/deliveries/orders/components/TruckIcon.tsx","applications/deliveries/orders/components/GraphicalStatus.tsx","constants/orderStatusConstant.ts","applications/deliveries/orders/components/OrderCancelledInfo.tsx","applications/deliveries/orders/containers/OrderDetailsView.tsx","applications/deliveries/orders/containers/OrdersView.tsx","applications/deliveries/orders/orderUrls.ts","framework/components/grid/GridIconRenderer.tsx","framework/components/grid/GridLinkRenderer.tsx","framework/hooks/useWindowIsMaxHeight.ts","utilities/sorting.ts"],"sourcesContent":["import React from \"react\";\r\nimport { OrderDto, CompanyDto } from \"../../../../api\";\r\nimport { ColDef, ICellRendererParams, ITooltipParams } from \"ag-grid-community\";\r\nimport styled from \"styled-components\";\r\nimport { ProductInformationLinkParameters } from \"../containers/OrderDetailsView\";\r\nimport { Grid, createHeaderAndHeaderTooltip } from \"../../../../framework/components/grid/Grid\";\r\nimport {\r\n GridIconRenderer,\r\n GridIconRendererProps\r\n} from \"../../../../framework/components/grid/GridIconRenderer\";\r\nimport { supplyingPlantField } from \"../containers/OrdersView\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nexport interface OrderInfoProps {\r\n order: OrderDto | undefined;\r\n company?: CompanyDto | undefined;\r\n columnDefs: ColDef[];\r\n hasProductInformationAccessRight: boolean;\r\n hasOrderTrackingRights: boolean;\r\n hasTestCertificates: boolean;\r\n hasSoftwareDocuments: boolean;\r\n goToProductInformation: (params: ProductInformationLinkParameters) => void;\r\n}\r\n\r\nconst OrderInfoContainer = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n`;\r\n\r\nexport const getCompanyCol = (t: (text: string) => string) => {\r\n return {\r\n valueGetter: (params: any): string => {\r\n const company = params.data as CompanyDto;\r\n return `${company.name}, ${company.addressCity}, ${company.countryCode} (${company.id})`;\r\n },\r\n headerName: t(\"Company\"),\r\n headerTooltip: t(\"Company\"),\r\n width: 300,\r\n tooltipValueGetter: (params: any) => {\r\n const company = params.data as CompanyDto;\r\n return `${company.name}, ${company.addressCity}, ${company.countryCode} (${company.id})`;\r\n }\r\n };\r\n};\r\n\r\nexport const OrderInfo: React.FunctionComponent = (props) => {\r\n const { t } = useTranslation();\r\n\r\n if (props.order === undefined) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {\r\n const columns = params.columnApi.getAllColumns();\r\n if (columns) {\r\n params.api.sizeColumnsToFit();\r\n }\r\n }}\r\n columnDefs={props.columnDefs.map((colDef) => {\r\n if (colDef.field === \"productInformation\") {\r\n return {\r\n field: \"hasProductItems\",\r\n hide:\r\n !props.hasProductInformationAccessRight &&\r\n !props.hasTestCertificates &&\r\n !props.hasSoftwareDocuments,\r\n ...createHeaderAndHeaderTooltip(t(\"Prod. Info.\"), t(\"Product information\")),\r\n headerClass: \"grid-header-center-with-menu\",\r\n maxWidth: 130,\r\n cellRenderer: GridIconRenderer,\r\n cellRendererParams: (params: ICellRendererParams) => {\r\n const row = params.data as OrderDto;\r\n const cellRendererParams: GridIconRendererProps = {\r\n ...params,\r\n showIcon: props.hasTestCertificates || props.hasSoftwareDocuments,\r\n onClick: () => {\r\n props.goToProductInformation({\r\n orderAcknowledgementNumber: row.orderAcknowledgementNumber\r\n });\r\n },\r\n icon: \"abb/double-right\"\r\n };\r\n return cellRendererParams;\r\n },\r\n tooltipValueGetter: (params: ITooltipParams) => {\r\n if (!params.data) {\r\n return \"\";\r\n }\r\n const availableDocumentTypes: string[] = [];\r\n if (props.hasSoftwareDocuments) {\r\n availableDocumentTypes.push(t(\"Software available\"));\r\n }\r\n if (props.hasTestCertificates) {\r\n availableDocumentTypes.push(t(\"Test certificates available\"));\r\n }\r\n const ret = availableDocumentTypes.join(\", \");\r\n return ret;\r\n }\r\n };\r\n } else if (colDef.field === supplyingPlantField) {\r\n return { ...colDef, hide: !props.hasOrderTrackingRights };\r\n }\r\n return colDef;\r\n })}\r\n rowData={[{ ...props.company, ...props.order }]}\r\n domLayout=\"autoHeight\"\r\n t={t}\r\n />\r\n \r\n );\r\n};\r\n","import React, { useEffect } from \"react\";\r\nimport { Input, DropdownOption, Dropdown } from \"@abb/abb-common-ux-react\";\r\nimport styled from \"styled-components\";\r\nimport { FormikProps, withFormik } from \"formik\";\r\nimport * as Yup from \"yup\";\r\nimport { handleFormValueChange, isFormFieldValid } from \"../../../../utilities/formikUtils\";\r\nimport { RequestState } from \"../../../../framework/state/requestState\";\r\nimport { RequestStatus } from \"../../../../framework/state/requestStatus\";\r\nimport { ContactSalesSupportReasonDto, ContactSalesSupportReasons } from \"../../../../api\";\r\nimport { useWindowIsMaxHeight } from \"../../../../framework/hooks/useWindowIsMaxHeight\";\r\nimport { Button } from \"framework/components/Button\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { Dialog } from \"framework/components/Dialog\";\r\n\r\nexport interface ContactSalesSupportDialogProps {\r\n isOpen: boolean;\r\n reasons: ContactSalesSupportReasonDto[];\r\n sendSupportRequest: RequestState;\r\n onClose: () => void;\r\n onSendSupportRequest: (fields: ContactSalesSupportFields) => void;\r\n}\r\n\r\nconst FormRow = styled.div`\r\n margin-block: ${(props) => props.theme.sizes.sm};\r\n`;\r\n\r\nconst FormContainer = styled.div`\r\n margin-block: ${(props) => props.theme.sizes.sm};\r\n display: flex;\r\n flex-direction: column;\r\n textarea {\r\n min-height: 200px !important;\r\n min-width: 400px !important;\r\n }\r\n`;\r\n\r\nexport interface ContactSalesSupportFields {\r\n description: string;\r\n reasonId: ContactSalesSupportReasons | undefined;\r\n}\r\n\r\nconst initialFields: ContactSalesSupportFields = {\r\n description: \"\",\r\n reasonId: undefined\r\n};\r\n\r\nconst Inner: React.FunctionComponent<\r\n ContactSalesSupportDialogProps & FormikProps\r\n> = (props) => {\r\n const sendSupportRequestStatus = props.sendSupportRequest.status;\r\n useEffect(() => {\r\n if (sendSupportRequestStatus === RequestStatus.Completed) {\r\n props.resetForm();\r\n props.onClose();\r\n }\r\n }, [sendSupportRequestStatus, props]);\r\n\r\n const isOverflowVisible = useWindowIsMaxHeight(600);\r\n const { t } = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n isFormFieldValid(props, \"description\")}\r\n onValueChange={(e: string) => {\r\n handleFormValueChange(props, \"description\", e);\r\n }}\r\n />\r\n \r\n \r\n r.reasonId?.toString() === props.values.reasonId)\r\n ?.description ?? \"\"\r\n }\r\n ]}\r\n onChange={(\r\n selection: Array<{\r\n value: any;\r\n label: string;\r\n isNew: boolean;\r\n }>\r\n ) => {\r\n handleFormValueChange(\r\n props,\r\n \"reasonId\",\r\n selection.length > 0 ? selection[0].value : \"\"\r\n );\r\n }}\r\n >\r\n {props.reasons.map((reason) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nconst ContactSalesSupportSchema = Yup.object().shape({\r\n description: Yup.string().min(5, \"Provide a description\").required(),\r\n reasonId: Yup.string().required(\"Provide a reason\")\r\n});\r\n\r\nconst ContactSalesSupportDialog = withFormik<\r\n ContactSalesSupportDialogProps,\r\n ContactSalesSupportFields\r\n>({\r\n mapPropsToValues: () => {\r\n return initialFields;\r\n },\r\n validateOnMount: true,\r\n enableReinitialize: true,\r\n validationSchema: ContactSalesSupportSchema,\r\n handleSubmit: (values, props) => {\r\n props.props.onSendSupportRequest(values);\r\n }\r\n})(Inner);\r\n\r\nexport default ContactSalesSupportDialog;\r\n","import React from \"react\";\r\nimport { OrderLineDto } from \"../../../../api\";\r\nimport {\r\n ColDef,\r\n ICellRendererParams,\r\n ITooltipParams,\r\n ValueFormatterParams\r\n} from \"ag-grid-community\";\r\nimport {\r\n GridIconRenderer,\r\n GridIconRendererProps\r\n} from \"../../../../framework/components/grid/GridIconRenderer\";\r\nimport moment from \"moment\";\r\nimport { getValidDateFormat } from \"../../../../utilities/dateUtils\";\r\nimport { Grid, createHeaderAndHeaderTooltip } from \"../../../../framework/components/grid/Grid\";\r\nimport { ProductInformationLinkParameters } from \"../containers/OrderDetailsView\";\r\nimport { primitiveSort } from \"../../../../utilities/sorting\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nexport interface OrderDetailsGridProps {\r\n rowData: Array | undefined;\r\n showProductInformationLink: boolean;\r\n hasOrderTrackingRights: boolean;\r\n goToProductInformation: (params: ProductInformationLinkParameters) => void;\r\n}\r\n\r\nexport const OrderDetailsGrid: React.FunctionComponent = (props) => {\r\n const { t } = useTranslation();\r\n\r\n const handleItemSort = (valueA: any, valueB: any): number => {\r\n if (!isNaN(valueA) && !isNaN(valueB)) {\r\n return primitiveSort(parseInt(valueA, 10), parseInt(valueB, 10));\r\n } else if (!isNaN(valueA) || !isNaN(valueB)) {\r\n return 1;\r\n } else {\r\n return primitiveSort(valueA as string, valueB as string);\r\n }\r\n };\r\n const orderLineColumnDefs: ColDef[] = [\r\n /*When grid is stetched horizontally to fit the screen using sizeColumnsToFit()\r\n Afrer all columns with maxWidth reach maxWidth point,\r\n remaining empty space is divided to columns without maxWidth according to their width or minWidth.\r\n For example, empty space divided to 100px/100px/500px/500px -> 8%/8%/41/41%\r\n maxWidth is just enough to show whole column header\r\n */\r\n {\r\n field: \"item\",\r\n tooltipField: \"item\",\r\n ...createHeaderAndHeaderTooltip(t(\"Item (ABB)\")),\r\n comparator: handleItemSort,\r\n maxWidth: 125\r\n },\r\n {\r\n field: \"itemCustomer\",\r\n tooltipField: \"itemCustomer\",\r\n ...createHeaderAndHeaderTooltip(t(\"Item (Customer)\")),\r\n comparator: handleItemSort,\r\n maxWidth: 145\r\n },\r\n {\r\n field: \"vendorOrderingCode\",\r\n tooltipField: \"vendorOrderingCode\",\r\n hide: !props.hasOrderTrackingRights,\r\n ...createHeaderAndHeaderTooltip(t(\"Vendor ordering code\")),\r\n minWidth: 100\r\n },\r\n {\r\n field: \"customerOrderingCode\",\r\n hide: !props.hasOrderTrackingRights,\r\n ...createHeaderAndHeaderTooltip(t(\"Customer ordering code\")),\r\n minWidth: 100\r\n },\r\n {\r\n field: \"description\",\r\n hide: !props.hasOrderTrackingRights,\r\n ...createHeaderAndHeaderTooltip(t(\"Description\")),\r\n width: 500\r\n },\r\n {\r\n field: \"hasProductItems\",\r\n ...createHeaderAndHeaderTooltip(t(\"Prod. Info.\"), t(\"Product information\")),\r\n headerClass: \"grid-header-center-with-menu\",\r\n minWidth: 48,\r\n maxWidth: 145,\r\n hide: !props.showProductInformationLink,\r\n cellRenderer: GridIconRenderer,\r\n cellRendererParams: (params: ICellRendererParams) => {\r\n const orderLine = params.data as OrderLineDto;\r\n const cellRendererParams: GridIconRendererProps = {\r\n ...params,\r\n showIcon: (orderLine.hasTestCertificates || orderLine.hasSoftwareDocuments) ?? false,\r\n onClick: () => {\r\n props.goToProductInformation({\r\n orderAcknowledgementNumber: orderLine.orderAcknowledgementNumber,\r\n orderLineItem: orderLine.item\r\n });\r\n },\r\n icon: \"abb/double-right\"\r\n };\r\n return cellRendererParams;\r\n },\r\n tooltipValueGetter: (params: ITooltipParams) => {\r\n if (!params.data) {\r\n return \"\";\r\n }\r\n const orderLine = params.data as OrderLineDto;\r\n const availableDocumentTypes: string[] = [];\r\n if (orderLine?.hasSoftwareDocuments) {\r\n availableDocumentTypes.push(t(\"Software available\"));\r\n }\r\n if (orderLine?.hasTestCertificates) {\r\n availableDocumentTypes.push(t(\"Test certificates available\"));\r\n }\r\n const ret = availableDocumentTypes.join(\", \");\r\n return ret;\r\n }\r\n },\r\n {\r\n field: \"quantity\",\r\n ...createHeaderAndHeaderTooltip(t(\"Qty\")),\r\n maxWidth: 70\r\n },\r\n {\r\n field: \"shippedPlanned\",\r\n ...createHeaderAndHeaderTooltip(t(\"Planned shipping date\")),\r\n minWidth: 120,\r\n maxWidth: 190,\r\n valueFormatter: (params: ValueFormatterParams) => {\r\n if (!params.value) {\r\n return \"\";\r\n }\r\n return moment(params.value).format(getValidDateFormat());\r\n }\r\n },\r\n {\r\n field: \"shipped\",\r\n ...createHeaderAndHeaderTooltip(t(\"Updated shipping date\")),\r\n minWidth: 120,\r\n maxWidth: 190,\r\n valueFormatter: (params: ValueFormatterParams) => {\r\n if (!params.value) {\r\n return \"\";\r\n }\r\n return moment(params.value).format(getValidDateFormat());\r\n }\r\n },\r\n {\r\n field: \"delayReason\",\r\n ...createHeaderAndHeaderTooltip(t(\"Reason for delay\")),\r\n maxWidth: 400\r\n },\r\n {\r\n field: \"status\",\r\n filter: \"agSetColumnFilter\",\r\n menuTabs: [\"filterMenuTab\", \"generalMenuTab\", \"columnsMenuTab\"],\r\n ...createHeaderAndHeaderTooltip(t(\"Status\")),\r\n valueFormatter: (params: ValueFormatterParams): string => t(params.value),\r\n minWidth: 100,\r\n maxWidth: 180\r\n }\r\n ];\r\n\r\n return (\r\n {\r\n params.columnApi.applyColumnState({\r\n state: [{ colId: \"item\", sort: \"asc\" }]\r\n });\r\n // Have to call onSortChanged so that it uses the custom comparator for sorting\r\n params.api.onSortChanged();\r\n const columns = params.columnApi.getAllColumns();\r\n if (columns) {\r\n params.api.sizeColumnsToFit();\r\n }\r\n }}\r\n columnDefs={orderLineColumnDefs}\r\n rowData={props.rowData ?? []}\r\n title={t(\"Order lines\")}\r\n titleHeadingLevel={3}\r\n domLayout=\"autoHeight\"\r\n t={t}\r\n />\r\n );\r\n};\r\n","import React from \"react\";\r\nimport { ShippingDetailsDto } from \"../../../../api\";\r\nimport { ColDef, ICellRendererParams, ValueFormatterParams } from \"ag-grid-community\";\r\nimport {\r\n GridIconRenderer,\r\n GridIconRendererProps\r\n} from \"../../../../framework/components/grid/GridIconRenderer\";\r\nimport moment from \"moment\";\r\nimport { getValidDateFormat } from \"../../../../utilities/dateUtils\";\r\nimport { Grid, createHeaderAndHeaderTooltip } from \"../../../../framework/components/grid/Grid\";\r\nimport {\r\n GridLinkRenderer,\r\n GridLinkRendererProps\r\n} from \"../../../../framework/components/grid/GridLinkRenderer\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { ShippingDetailDocumentTypes } from \"../../../../api/models/ShippingDetailDocumentTypes\";\r\n\r\nexport interface ShippingDetailsGridProps {\r\n hasOrderTrackingRights: boolean;\r\n rowData: Array | undefined;\r\n downloadShippingDetailFile: (\r\n shippingNumber: string,\r\n orderAcknowledgementNumber: string,\r\n documentTypes: ShippingDetailDocumentTypes[]\r\n ) => void;\r\n}\r\n\r\nexport const ShippingDetailsGrid: React.FunctionComponent = (props) => {\r\n const { t } = useTranslation();\r\n const shippingDetailsColumnDefs: ColDef[] = [\r\n {\r\n field: \"shippingNumber\",\r\n ...createHeaderAndHeaderTooltip(t(\"Shipping number\"))\r\n },\r\n {\r\n field: \"invoiceNumber\",\r\n ...createHeaderAndHeaderTooltip(t(\"Invoice number\"))\r\n },\r\n {\r\n field: \"shippedQuantity\",\r\n ...createHeaderAndHeaderTooltip(t(\"Qty shipped\")),\r\n maxWidth: 125\r\n },\r\n {\r\n field: \"shipped\",\r\n ...createHeaderAndHeaderTooltip(t(\"Shipping date\")),\r\n valueFormatter: (params: ValueFormatterParams) => {\r\n if (params.value) {\r\n return moment(params.value).format(getValidDateFormat());\r\n }\r\n return \"\";\r\n },\r\n maxWidth: 150,\r\n minWidth: 120\r\n },\r\n {\r\n ...createHeaderAndHeaderTooltip(t(\"Packing list\")),\r\n field: \"packingListDocumentsAvailable\",\r\n headerClass: \"grid-header-center-with-menu\",\r\n hide: !props.hasOrderTrackingRights,\r\n cellRenderer: GridIconRenderer,\r\n cellRendererParams: (params: ICellRendererParams) => {\r\n const shippingDetail = params.data as ShippingDetailsDto;\r\n const cellRendererParams: GridIconRendererProps = {\r\n ...params,\r\n showIcon: shippingDetail.packingListDocumentsAvailable,\r\n onClick: () => {\r\n props.downloadShippingDetailFile(\r\n shippingDetail.shippingNumber,\r\n shippingDetail.orderAcknowledgementNumber,\r\n [\r\n ShippingDetailDocumentTypes.PackingList,\r\n ShippingDetailDocumentTypes.PackingListService\r\n ]\r\n );\r\n },\r\n icon: \"abb/download\"\r\n };\r\n return cellRendererParams;\r\n }\r\n },\r\n {\r\n ...createHeaderAndHeaderTooltip(t(\"Packing details\")),\r\n field: \"packingDetailsDocumentsAvailable\",\r\n headerClass: \"grid-header-center-with-menu\",\r\n hide: !props.hasOrderTrackingRights,\r\n cellRenderer: GridIconRenderer,\r\n cellRendererParams: (params: ICellRendererParams) => {\r\n const shippingDetail = params.data as ShippingDetailsDto;\r\n const cellRendererParams: GridIconRendererProps = {\r\n ...params,\r\n showIcon: shippingDetail.packingDetailsDocumentsAvailable,\r\n\r\n onClick: () => {\r\n props.downloadShippingDetailFile(\r\n shippingDetail.shippingNumber,\r\n shippingDetail.orderAcknowledgementNumber,\r\n [ShippingDetailDocumentTypes.PackingDetails]\r\n );\r\n },\r\n icon: \"abb/download\"\r\n };\r\n return cellRendererParams;\r\n }\r\n },\r\n {\r\n field: \"forwarder\",\r\n ...createHeaderAndHeaderTooltip(t(\"Forwarder\"))\r\n },\r\n {\r\n field: \"trackingNumber\",\r\n ...createHeaderAndHeaderTooltip(t(\"Tracking number\")),\r\n cellRenderer: GridLinkRenderer,\r\n cellRendererParams: (params: ICellRendererParams) => {\r\n const shippingDetail = params.data as ShippingDetailsDto;\r\n const cellRendererParams: GridLinkRendererProps = {\r\n ...params,\r\n text: shippingDetail.trackingNumber ?? \"\",\r\n link: shippingDetail.trackingLink\r\n };\r\n return cellRendererParams;\r\n }\r\n }\r\n ];\r\n\r\n return (\r\n {\r\n const columns = params.columnApi.getAllColumns();\r\n if (columns) {\r\n params.api.sizeColumnsToFit();\r\n }\r\n }}\r\n columnDefs={shippingDetailsColumnDefs}\r\n rowData={props.rowData ?? []}\r\n title={t(\"Shipping details\")}\r\n titleHeadingLevel={3}\r\n domLayout=\"autoHeight\"\r\n t={t}\r\n />\r\n );\r\n};\r\n","import React from \"react\";\r\nimport { useTheme } from \"styled-components\";\r\n\r\ninterface TruckIconProps {\r\n fill: string;\r\n}\r\n\r\nexport const TruckIcon = ({ fill }: TruckIconProps): JSX.Element => {\r\n const theme = useTheme();\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import React from \"react\";\r\nimport { Icon, WithTooltip, Tooltip } from \"@abb/abb-common-ux-react\";\r\nimport styled from \"styled-components\";\r\nimport { TruckIcon } from \"./TruckIcon\";\r\nimport { commonUXTheme } from \"../../../../styles/commonUXVariables\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst IconWrapper = styled.ul`\r\n align-content: center;\r\n align-items: center;\r\n display: flex;\r\n justify-content: space-around;\r\n height: 100px;\r\n width: 100%;\r\n // margin-right is needed to offset the size of the right most icon container (80px)\r\n padding-right: 80px;\r\n margin-top: ${(props) => props.theme.sizes.l};\r\n margin-bottom: ${(props) => props.theme.sizes.l};\r\n`;\r\n\r\nconst ListItem = styled.li<{ isActive?: boolean; isLast?: boolean }>`\r\n flex-grow: ${(props) => (props.isLast ? 0 : 1)};\r\n height: 0.2em;\r\n line-height: 1em;\r\n margin: 0;\r\n position: relative;\r\n text-align: right;\r\n background-color: ${(props) => {\r\n if (props.isLast) {\r\n return props.theme.colors.whitePrimary;\r\n }\r\n if (props.isActive) {\r\n return props.theme.colors.blackPrimary;\r\n }\r\n return props.theme.colors.grey20;\r\n }};\r\n .ABB_CommonUX_Tooltip__trigger {\r\n display: inline;\r\n }\r\n`;\r\n\r\nexport const IconContainer = styled.div<{\r\n isActive?: boolean;\r\n isCompleted?: boolean;\r\n isLast?: boolean;\r\n}>`\r\n position: absolute;\r\n top: -40px;\r\n z-index: 1;\r\n width: 80px;\r\n height: 80px;\r\n border: ${(props) => {\r\n if (props.isActive && props.isLast) {\r\n return `0.2em solid ${props.theme.colors.statusGreen}`;\r\n }\r\n if (props.isActive) {\r\n return `0.2em solid ${props.theme.colors.statusYellow}`;\r\n }\r\n if (props.isCompleted) {\r\n return `0.2em solid ${props.theme.colors.blackPrimary}`;\r\n }\r\n return `0.2em solid ${props.theme.colors.grey20}`;\r\n }};\r\n border-radius: 50%;\r\n padding: 0.5em;\r\n background: ${(props) => props.theme.colors.whitePrimary};\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n`;\r\n\r\nconst StatusIcon = styled(Icon)<{ isActive?: boolean }>`\r\n i {\r\n font-size: ${props => props.theme.fonts.sizes.fontSizeXl} !important;\r\n width: ${props => props.theme.sizes.l} !important;\r\n height: ${props => props.theme.sizes.l} !important;\r\n }\r\n\r\n color: ${(props) =>\r\n props.isActive ? props.theme.colors.blackPrimary : props.theme.colors.grey20};\r\n`;\r\n\r\nconst ExclamationIcon = styled(Icon)`\r\n position: absolute;\r\n left: 45px;\r\n top: -13px;\r\n`;\r\n\r\ninterface GraphicalStatusProps {\r\n statusNumber: number;\r\n}\r\n\r\nexport const GraphicalStatus = ({ statusNumber }: GraphicalStatusProps): JSX.Element => {\r\n const { t } = useTranslation();\r\n return (\r\n \r\n 1}>\r\n \r\n 1}>\r\n 0} />\r\n \r\n \r\n

{t(\"Order is received\")}

\r\n
\r\n
\r\n
\r\n\r\n 2}>\r\n \r\n 2}>\r\n 1} />\r\n \r\n \r\n

{t(\"Order is confirmed\")}

\r\n
\r\n
\r\n
\r\n\r\n 3}>\r\n \r\n 3}>\r\n 2} />\r\n \r\n \r\n

{t(\"Order is in production\")}

\r\n
\r\n
\r\n
\r\n\r\n 5}>\r\n \r\n 4}\r\n >\r\n 3 ? commonUXTheme.colors.blackPrimary : commonUXTheme.colors.grey10\r\n }\r\n />\r\n {statusNumber === 5 ? (\r\n \r\n ) : null}\r\n \r\n \r\n {statusNumber === 5 ? (\r\n

{t(\"Order is partially delivered\")}

\r\n ) : (\r\n

{t(\"Order is shipped\")}

\r\n )}\r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n

{t(\"Order is delivered\")}

\r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","export const orderStatusLookup: { [key: string]: number } = {\r\n Cancelled: 0,\r\n \"Order received\": 1,\r\n Confirmed: 2,\r\n Production: 3,\r\n Shipped: 4,\r\n \"Partial delivery\": 5,\r\n Delivered: 6\r\n};\r\n","import React from \"react\";\r\nimport styled from \"styled-components\";\r\nimport { Icon } from \"@abb/abb-common-ux-react\";\r\nimport { SubHeader } from \"../../../../framework/components/styled/SubHeader\";\r\nimport { useTranslation } from \"react-i18next\";\r\n\r\nconst Container = styled.div`\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n`;\r\n\r\nconst IconTextWrapper = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: center;\r\n color: red;\r\n gap: ${props => props.theme.sizes.s};\r\n`;\r\n\r\nexport const OrderCancelledInfo = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import React, { useEffect, useState } from \"react\";\r\nimport { useParams, useHistory } from \"react-router-dom\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport {\r\n selectOrderDetailsVm,\r\n selectGetOrderDetailsRequest,\r\n selectSendSalesSupportRequest\r\n} from \"../reducers/orderDetailsViewReducer\";\r\nimport { orderSagas } from \"../sagas/orderSagas\";\r\nimport { AppContentWrapper } from \"../../../../framework/components/AppContentWrapper\";\r\nimport { getOrderViewcolumnDefs } from \"./OrdersView\";\r\nimport styled from \"styled-components\";\r\nimport { OrderInfo, getCompanyCol } from \"../components/OrderInfo\";\r\nimport { RequestStatus } from \"../../../../framework/state/requestStatus\";\r\nimport { LoadingIndicator } from \"@abb/abb-common-ux-react\";\r\nimport ContactSalesSupportDialog, {\r\n ContactSalesSupportFields\r\n} from \"../components/ContactSalesSupportDialog\";\r\nimport { ApiOrderSalesSupportRequestPostRequest, AccessRights } from \"../../../../api\";\r\nimport { OrderDetailsGrid } from \"../components/OrderDetailsGrid\";\r\nimport { ShippingDetailsGrid } from \"../components/ShippingDetailsGrid\";\r\nimport { routes } from \"../../../../utilities/routes\";\r\nimport { getUserAccessRights } from \"../../../common/reducers/userReducer\";\r\nimport { isAuthorizedToComponent } from \"../../../../utilities/authUtils\";\r\nimport { GraphicalStatus } from \"../components/GraphicalStatus\";\r\nimport { orderStatusLookup } from \"../../../../constants/orderStatusConstant\";\r\nimport { OrderCancelledInfo } from \"../components/OrderCancelledInfo\";\r\nimport { Button } from \"framework/components/Button\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { ShippingDetailDocumentTypes } from \"../../../../api/models/ShippingDetailDocumentTypes\";\r\n\r\nconst ContactSalesButton = styled(Button)`\r\n margin-top: ${(props) => props.theme.sizes.sm};\r\n`;\r\n\r\nconst ButtonContainer = styled.div`\r\n display: flex;\r\n justify-content: flex-end;\r\n width: 100%;\r\n`;\r\n\r\nconst StatusContainer = styled.div`\r\n height: 100px;\r\n width: 100%;\r\n margin-top: ${(props) => props.theme.sizes.l};\r\n margin-bottom: ${(props) => props.theme.sizes.l};\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n`;\r\n\r\nconst getStatusComponent = (status: string | null | undefined): React.ReactNode => {\r\n if (status) {\r\n return (\r\n \r\n {status === \"Cancelled\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n }\r\n return ;\r\n};\r\n\r\nconst GridDiv = styled.div<{ noMargin?: boolean }>`\r\n margin-top: ${(props) => (props.noMargin ? \"0px\" : props.theme.sizes.xl)};\r\n width: 100%;\r\n`;\r\n\r\n// Hack min-heigh to 0 so that extra space is not generated under the grid.\r\n// Should come up with a better solution. Problem is mainly present when there is only one row in the grid.\r\nconst OrderDetailsContainer = styled.div`\r\n width: 100%;\r\n .ag-center-cols-container {\r\n min-height: 0px !important;\r\n }\r\n .ag-layout-auto-height .ag-center-cols-clipper {\r\n min-height: 0px !important;\r\n }\r\n`;\r\n\r\nconst LoadingIndicatorContainer = styled.div`\r\n margin: auto;\r\n`;\r\n\r\nexport interface ProductInformationLinkParameters {\r\n orderAcknowledgementNumber: string;\r\n orderLineItem?: string;\r\n}\r\n\r\nconst OrderDetailsView = (): JSX.Element => {\r\n const dispatch = useDispatch();\r\n const history = useHistory();\r\n // State\r\n const [contactSalesSupportDialogOpen, setContactSalesSupportDialogOpen] = useState(false);\r\n // Params\r\n const { orderIdentifier } = useParams<{ orderIdentifier?: string }>();\r\n // Selectors\r\n const orderDetailsVm = useSelector(selectOrderDetailsVm);\r\n const getOrderDetailsRequest = useSelector(selectGetOrderDetailsRequest);\r\n const sendSalesSupportRequest = useSelector(selectSendSalesSupportRequest);\r\n const userAccessRights = useSelector(getUserAccessRights);\r\n\r\n const { t } = useTranslation();\r\n\r\n const getContactSalesSupportReasons = () => {\r\n return orderDetailsVm?.contactSalesSupportReasons ?? [];\r\n };\r\n\r\n useEffect(() => {\r\n if (orderIdentifier) {\r\n dispatch(\r\n orderSagas.getOrderdetails.createAction({\r\n orderIdentifier: orderIdentifier\r\n })\r\n );\r\n }\r\n }, [orderIdentifier, dispatch]);\r\n\r\n // Helper methods\r\n const handleSenSalesSupportRequest = (fields: ContactSalesSupportFields) => {\r\n const sendSalesSupportRequestParams: ApiOrderSalesSupportRequestPostRequest = {\r\n contactSalesSupportCommand: {\r\n orderAcknowledgementNumber: orderDetailsVm?.order.orderAcknowledgementNumber,\r\n message: fields.description,\r\n reason: fields.reasonId\r\n }\r\n };\r\n dispatch(orderSagas.sendSalesSupport.createAction(sendSalesSupportRequestParams));\r\n };\r\n\r\n const hasShippingDetails: boolean =\r\n orderDetailsVm?.shippingDetails !== undefined && orderDetailsVm.shippingDetails.length > 0;\r\n\r\n const goToProductInformation = (params: ProductInformationLinkParameters) => {\r\n history.push({\r\n pathname: routes.deliveries.productInformation.index,\r\n state: {\r\n productInformationLinkParameters: { ...params }\r\n }\r\n });\r\n };\r\n\r\n const hasOrderTrackingRights = isAuthorizedToComponent(userAccessRights, {\r\n operation: \"any\",\r\n identifier: orderDetailsVm?.order.companyId,\r\n accessRights: [AccessRights.AdvancedOrderTracking]\r\n });\r\n\r\n const hasProductInformationAccessRights = isAuthorizedToComponent(userAccessRights, {\r\n operation: \"any\",\r\n identifier: undefined,\r\n accessRights: [AccessRights.DownloadTestCertificates]\r\n });\r\n\r\n const hasTestCertificates =\r\n orderDetailsVm?.orderLines.some((ol) => ol.hasTestCertificates) ?? false;\r\n\r\n const hasSoftwareDocuments =\r\n orderDetailsVm?.orderLines.some((ol) => ol.hasSoftwareDocuments) ?? false;\r\n\r\n const handleOrderItemFilesDownload = (\r\n shippingNumber: string,\r\n orderAcknowledgementNumber: string,\r\n documentTypes: ShippingDetailDocumentTypes[]\r\n ) => {\r\n dispatch(\r\n orderSagas.downloadShippingDetailFiles.createAction({\r\n shippingNumber: shippingNumber,\r\n orderAcknowledgementNumber: orderAcknowledgementNumber,\r\n documentTypes: documentTypes\r\n })\r\n );\r\n };\r\n\r\n if (getOrderDetailsRequest.status === RequestStatus.Failed) {\r\n return
Loading failed
;\r\n }\r\n\r\n const orderViewcolumnDefs = getOrderViewcolumnDefs(t, hasOrderTrackingRights);\r\n\r\n return (\r\n \r\n {getOrderDetailsRequest.status === RequestStatus.Pending ? (\r\n \r\n \r\n \r\n ) : (\r\n \r\n setContactSalesSupportDialogOpen(false)}\r\n reasons={getContactSalesSupportReasons()}\r\n onSendSupportRequest={handleSenSalesSupportRequest}\r\n sendSupportRequest={sendSalesSupportRequest}\r\n />\r\n \r\n \r\n {hasOrderTrackingRights ? (\r\n \r\n setContactSalesSupportDialogOpen(true)}\r\n />\r\n \r\n ) : null}\r\n {getStatusComponent(orderDetailsVm?.order.status)}\r\n \r\n \r\n \r\n \r\n {hasShippingDetails ? (\r\n \r\n \r\n \r\n ) : null}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default OrderDetailsView;\r\n","import React, { FC, useState, useEffect, useCallback, useRef } from \"react\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport { AppContentWrapper } from \"../../../../framework/components/AppContentWrapper\";\r\nimport OrderSearchForm, { OrderSearchFields } from \"../components/OrderSearchForm\";\r\nimport { DropdownOptionProps } from \"@abb/abb-common-ux-react\";\r\nimport {\r\n Grid,\r\n getSortModel,\r\n getDefaultColumnSort\r\n} from \"../../../../framework/components/grid/Grid\";\r\nimport {\r\n ColDef,\r\n IGetRowsParams,\r\n GridApi,\r\n ValueFormatterParams,\r\n RowClickedEvent,\r\n IDatasource,\r\n RowNode,\r\n ColumnApi,\r\n ApplyColumnStateParams\r\n} from \"ag-grid-community\";\r\n\r\nimport { getApiRegistry } from \"../../../../framework/state/apiRegistry\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport {\r\n selectOrderCriteria,\r\n selectOrderSearchFields,\r\n selectSelectedOrderRowId,\r\n selectOrderMetaData,\r\n defaultOrderCriteria\r\n} from \"../reducers/ordersViewReducer\";\r\nimport { ApiOrderGetRequest, OrderDto, AccessRights, PlantDto } from \"../../../../api\";\r\nimport produce from \"immer\";\r\nimport { ordersViewActions } from \"../actions/ordersViewActions\";\r\nimport moment from \"moment\";\r\nimport { getSelectedCompany } from \"../../deliveriesHome/reducers/deliveriesHomeViewReducer\";\r\nimport { orderUrls } from \"../orderUrls\";\r\nimport { mapOrderFieldsToOrderCriteria } from \"../../../../utilities/mappings\";\r\nimport { getValidDateFormat } from \"../../../../utilities/dateUtils\";\r\nimport { ITooltipParams } from \"ag-grid-community\";\r\nimport { isAuthorizedToComponent } from \"../../../../utilities/authUtils\";\r\nimport { getUserAccessRights } from \"../../../common/reducers/userReducer\";\r\nimport { orderSagas } from \"../sagas/orderSagas\";\r\nimport { apiGridErrorHandler } from \"../../../../utilities/errorUtils\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { roleConstants } from \"constants/roleConstants\";\r\nimport { TFunction } from \"i18next\";\r\n\r\nexport const supplyingPlantField = \"supplyingPlant\";\r\n\r\nexport const getOrderViewcolumnDefs = (t: TFunction, showPstReference?: boolean) => {\r\n const definitions: ColDef[] = [\r\n {\r\n field: supplyingPlantField,\r\n headerTooltip: t(\"Supplying plant\"),\r\n headerName: t(\"Supplying plant\"),\r\n tooltipField: \"supplyingPlant\"\r\n },\r\n {\r\n field: \"orderAcknowledgementNumber\",\r\n tooltipField: \"orderAcknowledgementNumber\",\r\n headerName: t(\"Order acknowledgement no.\"),\r\n headerTooltip: t(\"Order acknowledgement no.\"),\r\n maxWidth: 250,\r\n minWidth: 100\r\n },\r\n {\r\n field: \"purchaseOrderNumber\",\r\n tooltipField: \"purchaseOrderNumber\",\r\n headerName: t(\"Purchase order no.\"),\r\n headerTooltip: t(\"Purchase order no.\"),\r\n flex: 1\r\n },\r\n {\r\n field: \"endCustomerPurchaseOrderNumber\",\r\n tooltipField: \"endCustomerPurchaseOrderNumber\",\r\n headerName: t(\"End customer purchase order no.\"),\r\n headerTooltip: t(\"End customer purchase order no.\")\r\n },\r\n {\r\n field: \"offerReference\",\r\n tooltipField: \"offerReference\",\r\n headerName: t(\"Offer reference\"),\r\n headerTooltip: t(\"Offer reference\"),\r\n hide: !showPstReference\r\n },\r\n {\r\n field: \"created\",\r\n headerName: t(\"Created date\"),\r\n headerTooltip: t(\"Created date\"),\r\n minWidth: 120,\r\n maxWidth: 140,\r\n valueFormatter: (params: ValueFormatterParams): string => {\r\n if (!params.value) {\r\n return \"\";\r\n }\r\n return moment(params.value).format(getValidDateFormat());\r\n },\r\n tooltipValueGetter: (params: ITooltipParams): string =>\r\n moment(params.value).format(getValidDateFormat())\r\n },\r\n { field: \"productInformation\", headerName: t(\"Product information\"), hide: true, width: 150 },\r\n {\r\n field: \"status\",\r\n headerName: t(\"Status\"),\r\n headerTooltip: t(\"Status\"),\r\n minWidth: 120,\r\n maxWidth: 140,\r\n valueFormatter: (params: ValueFormatterParams): string => {\r\n return t(params.value);\r\n },\r\n width: 150\r\n }\r\n ];\r\n\r\n return definitions;\r\n};\r\n\r\nconst getCountryOptions = (countryCodes: string[]): DropdownOptionProps[] | undefined => {\r\n if (countryCodes.length && countryCodes[0] !== null) {\r\n return countryCodes.map((c) => {\r\n return { label: c, value: c };\r\n });\r\n }\r\n};\r\n\r\nconst getPlantOptions = (plants: PlantDto[]): DropdownOptionProps[] | undefined => {\r\n if (plants.length && plants[0] !== null) {\r\n return plants.map((c) => {\r\n return { label: c.name, value: c.id.toString() };\r\n });\r\n }\r\n};\r\n\r\nconst OrdersView: FC = (): JSX.Element => {\r\n const dispatch = useDispatch();\r\n const selectedCompany = useSelector(getSelectedCompany);\r\n const history = useHistory();\r\n const columnApi = useRef();\r\n\r\n const plants = useSelector(selectOrderMetaData).plants;\r\n const storedOrderSearchFields = useSelector(selectOrderSearchFields);\r\n const criteria = useSelector(selectOrderCriteria);\r\n const selectedOrderRowId = useSelector(selectSelectedOrderRowId);\r\n const countryCodes = useSelector(selectOrderMetaData).countryCodes;\r\n const userAccessRights = useSelector(getUserAccessRights);\r\n\r\n useEffect(() => {\r\n if (\r\n isAuthorizedToComponent(userAccessRights, {\r\n operation: \"any\",\r\n accessRights: [AccessRights.ManageDeliveriesCompanies, AccessRights.AdvancedOrderTracking],\r\n identifier: roleConstants.GlobalRoleIdentifier\r\n })\r\n ) {\r\n dispatch(orderSagas.getOrderMetaData.createAction(undefined));\r\n }\r\n }, [userAccessRights, dispatch]);\r\n\r\n const [ordersGridApi, setOrdersGridApi] = useState(undefined);\r\n const onSetOrdersGridApiRefSet = useCallback((ref: GridApi | undefined) => {\r\n setOrdersGridApi(ref);\r\n }, []);\r\n\r\n const { t } = useTranslation();\r\n\r\n const goToOrderDetails = (orderAcknowledgementNumber: string, gridRowIndex?: number | null) => {\r\n dispatch(ordersViewActions.storeClickedGridIndex(gridRowIndex ?? undefined));\r\n history.push(orderUrls.orderDetails(orderAcknowledgementNumber));\r\n };\r\n\r\n const hasOrderTrackingRights = isAuthorizedToComponent(userAccessRights, {\r\n operation: \"any\",\r\n identifier: selectedCompany?.value ?? \"0\",\r\n accessRights: [AccessRights.AdvancedOrderTracking, AccessRights.ManageDeliveriesCompanies]\r\n });\r\n\r\n const dataSource = (\r\n orderCriteria: ApiOrderGetRequest,\r\n selectedOrderRowId: number | undefined\r\n ): IDatasource => {\r\n let hasFoundNode = false;\r\n let nodeToSelect: RowNode | null | undefined = null;\r\n return {\r\n getRows: (params: IGetRowsParams) => {\r\n const page = Math.floor(params.startRow / criteria.criteriaPageSize);\r\n const api = getApiRegistry().orderApi;\r\n\r\n const sortModel = getSortModel(params.sortModel);\r\n\r\n const newCriteria = produce(orderCriteria, (draft) => {\r\n draft.criteriaSortColumn = sortModel?.sortColumn;\r\n draft.criteriaPage = page;\r\n draft.criteriaIsAscendingOrder = sortModel?.isAsc;\r\n });\r\n\r\n dispatch(ordersViewActions.changeOrderCriteria(newCriteria));\r\n ordersGridApi?.showLoadingOverlay();\r\n\r\n api\r\n .apiOrderGet(newCriteria)\r\n .then((res) => {\r\n if (res.criteria.totalCount === 1 && selectedOrderRowId === undefined) {\r\n goToOrderDetails(res.orders[0].identifier, 0);\r\n }\r\n\r\n if (res.orders.length === 0) {\r\n ordersGridApi?.showNoRowsOverlay();\r\n } else {\r\n ordersGridApi?.hideOverlay();\r\n }\r\n\r\n params.successCallback(res.orders, res.criteria.totalCount);\r\n\r\n if (selectedOrderRowId !== undefined && !hasFoundNode) {\r\n nodeToSelect = ordersGridApi?.getDisplayedRowAtIndex(selectedOrderRowId);\r\n hasFoundNode = true;\r\n dispatch(ordersViewActions.storeClickedGridIndex(undefined));\r\n }\r\n\r\n if (nodeToSelect && selectedOrderRowId != null) {\r\n ordersGridApi?.ensureIndexVisible(selectedOrderRowId, \"middle\");\r\n nodeToSelect.setSelected(true, true);\r\n const selectedRows = ordersGridApi?.getSelectedRows();\r\n if (selectedRows && selectedRows.length > 0) {\r\n // Row is selected from the grid and we don't want to override manual selection\r\n nodeToSelect = null;\r\n }\r\n }\r\n\r\n //ordersGridApi?.sizeColumnsToFit();\r\n })\r\n .catch((err) => {\r\n ordersGridApi?.hideOverlay();\r\n apiGridErrorHandler(err, dispatch);\r\n });\r\n }\r\n };\r\n };\r\n\r\n // Plant is not visible if user lacks order tracking rights.\r\n // Therefore, reset sort if changing to a company, to which user does not have order tracking access right.\r\n const handlePossibleSortReset = () => {\r\n const gridSortModel = columnApi.current?.getColumnState();\r\n const sortModel = gridSortModel ? getSortModel(gridSortModel) : undefined;\r\n if (\r\n !hasOrderTrackingRights &&\r\n sortModel !== undefined &&\r\n sortModel.sortColumn === supplyingPlantField &&\r\n defaultOrderCriteria.criteriaSortColumn\r\n ) {\r\n columnApi.current?.applyColumnState({\r\n state: [\r\n {\r\n colId: defaultOrderCriteria.criteriaSortColumn,\r\n sort: defaultOrderCriteria.criteriaIsAscendingOrder ? \"asc\" : \"desc\"\r\n }\r\n ]\r\n });\r\n }\r\n };\r\n\r\n return (\r\n {\r\n dispatch(ordersViewActions.changeSearchFields(values));\r\n handlePossibleSortReset();\r\n ordersGridApi?.setDatasource(\r\n dataSource(\r\n mapOrderFieldsToOrderCriteria(\r\n !companyId ? { ...values } : { ...values, countryCode: undefined },\r\n criteria,\r\n companyId\r\n ),\r\n selectedOrderRowId\r\n )\r\n );\r\n }}\r\n selectedCompany={selectedCompany}\r\n storedOrderFields={storedOrderSearchFields}\r\n />\r\n }\r\n sideBarTitle={t(\"Search form\")}\r\n pageTitle={t(\"Orders\")}\r\n >\r\n {\r\n if (colDef.field === \"supplyingPlant\") {\r\n return {\r\n ...colDef,\r\n hide: !hasOrderTrackingRights || storedOrderSearchFields.limitedSearch\r\n };\r\n }\r\n return colDef;\r\n })}\r\n rowModelType={\"infinite\"}\r\n cacheBlockSize={100}\r\n maxBlocksInCache={2}\r\n infiniteInitialRowCount={0}\r\n autosizeCols\r\n disableColumnAutoSize\r\n onRowClicked={(event: RowClickedEvent) => {\r\n const order = event.data as OrderDto;\r\n goToOrderDetails(order.identifier, event.rowIndex);\r\n }}\r\n showPointerOnRowHover\r\n onGridReady={(event) => {\r\n columnApi.current = event.columnApi;\r\n onSetOrdersGridApiRefSet(event.api);\r\n const sortModelToSet: ApplyColumnStateParams = {\r\n state: criteria.criteriaSortColumn\r\n ? [\r\n {\r\n colId: criteria.criteriaSortColumn,\r\n sort: criteria.criteriaIsAscendingOrder ? \"asc\" : \"desc\"\r\n }\r\n ]\r\n : undefined\r\n };\r\n event.columnApi.applyColumnState(sortModelToSet);\r\n }}\r\n t={t}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default OrdersView;\r\n","import { routes } from \"utilities/routes\";\r\n\r\nconst basePath = process.env.REACT_APP_BASEPATH;\r\n\r\nexport const orderUrls = {\r\n orderDetails: (orderAcknowledgementNumber: string): string =>\r\n `${routes.deliveries.orders.index}/${orderAcknowledgementNumber}`,\r\n orders: (): string => `${routes.deliveries.orders.index}`,\r\n shippingDetailDocument: (shippingDetailId: number, shippingDetailDocumentType: number): string =>\r\n `${basePath}/api/Order/shippingDetailFiles?ShippingDetailId=${shippingDetailId}&DocumentType=${shippingDetailDocumentType}`\r\n};\r\n","import React, { memo } from \"react\";\r\nimport { Icon } from \"@abb/abb-common-ux-react\";\r\nimport styled from \"styled-components\";\r\nimport { ICellRendererParams } from \"ag-grid-community\";\r\nimport { commonUXTheme } from \"../../../styles/commonUXVariables\";\r\n\r\nexport interface GridIconRendererProps extends ICellRendererParams {\r\n showIcon: boolean;\r\n icon: string;\r\n text?: string;\r\n color?: string;\r\n onClick?: () => void;\r\n isInactive?: boolean;\r\n isClickable?: boolean;\r\n}\r\n\r\nexport const IconWithCursorPointer = styled(Icon)<{ hasText?: boolean }>`\r\n margin: ${(props) => (props.hasText ? \"auto 0 auto 0\" : \"auto\")};\r\n`;\r\n\r\nconst IconContainerDiv = styled.div<{ isClickable?: boolean; hasText?: boolean }>`\r\n display: flex;\r\n justify-content: ${(props) => (props.hasText ? \"space-between\" : \"center\")};\r\n cursor: ${(props) => (props.isClickable ? \"pointer !important\" : \"default\")};\r\n`;\r\n\r\nconst getColor = (isInactive: boolean | undefined): string | undefined => {\r\n if (isInactive === true) {\r\n return commonUXTheme.colors.grey30;\r\n }\r\n};\r\n\r\nexport const GridIconRenderer = memo((props: GridIconRendererProps) => {\r\n if (!props.showIcon && !props.text) {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n {props.text ?
{props.text}
: null}\r\n {props.showIcon ? (\r\n \r\n ) : null}\r\n \r\n );\r\n});\r\n","import * as React from \"react\";\r\nimport { Link } from \"@abb/abb-common-ux-react\";\r\nimport { ICellRendererParams } from \"ag-grid-community\";\r\nimport { useHistory } from \"react-router\";\r\nimport { memo } from \"react\";\r\n\r\nexport interface GridLinkRendererProps extends ICellRendererParams {\r\n text: string;\r\n link?: string | null;\r\n outsideLink?: boolean;\r\n icon?: string;\r\n}\r\n\r\nexport const GridLinkRenderer = memo((props: GridLinkRendererProps) => {\r\n const history = useHistory();\r\n return (\r\n \r\n {\r\n if (props.link && !props.outsideLink) {\r\n history.push(props.link);\r\n }\r\n }}\r\n iconBefore={props.icon}\r\n >\r\n {props.text}\r\n \r\n \r\n );\r\n});\r\n","import React, { useState } from \"react\";\r\nimport useEventListener from \"./useEventListener\";\r\n\r\nconst getHeight = (\r\n e: any,\r\n isOverMaxHeight: boolean,\r\n setIsOverMaxHeight: React.Dispatch>,\r\n maxHeight: number\r\n) => {\r\n if (e?.target?.innerHeight >= maxHeight && !isOverMaxHeight) {\r\n setIsOverMaxHeight(true);\r\n } else if (e?.target?.innerHeight < maxHeight && isOverMaxHeight) {\r\n setIsOverMaxHeight(false);\r\n }\r\n};\r\n\r\nexport const useWindowIsMaxHeight = (maxHeight: number): boolean => {\r\n const [isOverMaxHeight, setIsOverMaxHeight] = useState(\r\n window.innerHeight > maxHeight ? true : false\r\n );\r\n\r\n useEventListener(window, \"resize\", (e) =>\r\n getHeight(e, isOverMaxHeight, setIsOverMaxHeight, maxHeight)\r\n );\r\n return isOverMaxHeight;\r\n};\r\n","export function primitiveSort(\r\n a: string | number | undefined,\r\n b: string | number | undefined\r\n): number {\r\n if (a === b) {\r\n return 0;\r\n }\r\n if (a === undefined) {\r\n return 1;\r\n }\r\n if (b === undefined) {\r\n return -1;\r\n }\r\n\r\n return a < b ? -1 : 1;\r\n}\r\n"],"names":["OrderInfoContainer","styled","getCompanyCol","t","valueGetter","params","company","data","name","addressCity","countryCode","id","headerName","headerTooltip","width","tooltipValueGetter","OrderInfo","props","useTranslation","undefined","order","Grid","onFirstDataRendered","columnApi","getAllColumns","api","sizeColumnsToFit","columnDefs","map","colDef","field","hide","hasProductInformationAccessRight","hasTestCertificates","hasSoftwareDocuments","createHeaderAndHeaderTooltip","headerClass","maxWidth","cellRenderer","GridIconRenderer","cellRendererParams","row","showIcon","onClick","goToProductInformation","orderAcknowledgementNumber","icon","availableDocumentTypes","push","join","supplyingPlantField","hasOrderTrackingRights","rowData","domLayout","FormRow","theme","sizes","sm","FormContainer","initialFields","description","reasonId","ContactSalesSupportSchema","Yup","shape","min","required","withFormik","mapPropsToValues","validateOnMount","enableReinitialize","validationSchema","handleSubmit","values","onSendSupportRequest","sendSupportRequestStatus","sendSupportRequest","status","useEffect","RequestStatus","resetForm","onClose","isOverflowVisible","useWindowIsMaxHeight","Dialog","title","isOpen","closeOnEscape","contentClassName","Input","label","dataType","value","showValidationIconWhenInvalid","validator","isFormFieldValid","onValueChange","e","handleFormValueChange","Dropdown","monochrome","clearable","reasons","find","r","toString","onChange","selection","length","reason","DropdownOption","style","marginLeft","Button","text","sizeClass","buttonType","isLoading","disabled","isValid","submitForm","OrderDetailsGrid","handleItemSort","valueA","valueB","isNaN","primitiveSort","parseInt","orderLineColumnDefs","tooltipField","comparator","minWidth","showProductInformationLink","orderLine","orderLineItem","item","valueFormatter","moment","format","getValidDateFormat","filter","menuTabs","applyColumnState","state","colId","sort","onSortChanged","titleHeadingLevel","ShippingDetailsGrid","shippingDetailsColumnDefs","shippingDetail","packingListDocumentsAvailable","downloadShippingDetailFile","shippingNumber","ShippingDetailDocumentTypes","packingDetailsDocumentsAvailable","GridLinkRenderer","trackingNumber","link","trackingLink","TruckIcon","fill","useTheme","version","x","y","xxl","height","viewBox","enableBackground","xmlSpace","xmlnsXlink","xmlns","d","display","stroke","strokeWidth","strokeMiterlimit","x1","y1","x2","y2","IconWrapper","l","ListItem","isLast","colors","whitePrimary","isActive","blackPrimary","grey20","IconContainer","statusGreen","statusYellow","isCompleted","StatusIcon","Icon","fonts","fontSizeXl","ExclamationIcon","GraphicalStatus","statusNumber","WithTooltip","Tooltip","commonUXTheme","orderStatusLookup","Cancelled","Confirmed","Production","Shipped","Delivered","Container","IconTextWrapper","s","OrderCancelledInfo","SubHeader","ContactSalesButton","ButtonContainer","StatusContainer","GridDiv","noMargin","xl","OrderDetailsContainer","LoadingIndicatorContainer","dispatch","useDispatch","history","useHistory","useState","contactSalesSupportDialogOpen","setContactSalesSupportDialogOpen","orderIdentifier","useParams","orderDetailsVm","useSelector","selectOrderDetailsVm","getOrderDetailsRequest","selectGetOrderDetailsRequest","sendSalesSupportRequest","selectSendSalesSupportRequest","userAccessRights","getUserAccessRights","orderSagas","hasShippingDetails","shippingDetails","pathname","routes","productInformationLinkParameters","isAuthorizedToComponent","operation","identifier","companyId","accessRights","AccessRights","hasProductInformationAccessRights","orderLines","some","ol","orderViewcolumnDefs","getOrderViewcolumnDefs","AppContentWrapper","pageTitle","LoadingIndicator","type","determinate","contactSalesSupportReasons","getContactSalesSupportReasons","fields","sendSalesSupportRequestParams","contactSalesSupportCommand","message","documentTypes","showPstReference","flex","getCountryOptions","countryCodes","c","getPlantOptions","plants","selectedCompany","getSelectedCompany","useRef","selectOrderMetaData","storedOrderSearchFields","selectOrderSearchFields","criteria","selectOrderCriteria","selectedOrderRowId","selectSelectedOrderRowId","roleConstants","ordersGridApi","setOrdersGridApi","onSetOrdersGridApiRefSet","useCallback","ref","goToOrderDetails","gridRowIndex","ordersViewActions","orderUrls","sideBar","countries","gridApi","onSubmit","gridSortModel","current","getColumnState","sortModel","getSortModel","sortColumn","defaultOrderCriteria","handlePossibleSortReset","setDatasource","orderCriteria","hasFoundNode","nodeToSelect","getRows","page","Math","floor","startRow","criteriaPageSize","getApiRegistry","orderApi","newCriteria","produce","draft","criteriaSortColumn","criteriaPage","criteriaIsAscendingOrder","isAsc","showLoadingOverlay","apiOrderGet","then","res","totalCount","orders","showNoRowsOverlay","hideOverlay","successCallback","getDisplayedRowAtIndex","ensureIndexVisible","setSelected","selectedRows","getSelectedRows","catch","err","apiGridErrorHandler","dataSource","mapOrderFieldsToOrderCriteria","storedOrderFields","sideBarTitle","isSortPersisted","defaultSort","getDefaultColumnSort","isOnlyResetSorting","showStatusBar","showResetButton","showRowCount","limitedSearch","rowModelType","cacheBlockSize","maxBlocksInCache","infiniteInitialRowCount","autosizeCols","disableColumnAutoSize","onRowClicked","event","rowIndex","showPointerOnRowHover","onGridReady","sortModelToSet","orderDetails","shippingDetailDocument","shippingDetailId","shippingDetailDocumentType","process","IconWithCursorPointer","hasText","IconContainerDiv","isClickable","getColor","isInactive","memo","node","rowHeight","color","justifyContent","alignItems","className","Link","target","discreet","href","preventRedirect","outsideLink","iconBefore","maxHeight","window","innerHeight","isOverMaxHeight","setIsOverMaxHeight","useEventListener","getHeight","a","b"],"sourceRoot":""}