{"version":3,"sources":["webpack:///./Websites/FrontierEnterprise.Web/@static/@modules/exchange-lookup-tool/main.ts","webpack:///./Websites/FrontierEnterprise.Web/@static/@modules/exchange-lookup-tool/controller.ts","webpack:///./Websites/FrontierEnterprise.Web/@static/@modules/exchange-lookup-tool/index.js"],"names":[],"mappings":";;;;;;;;IAKA,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,WAAW,EAAE;IAExC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;QACnB,IAAI,oBAAc,EAAE,CAAC,MAAM,EAAE;IACjC,CAAC,CAAC,CAAC;IAEH,CAAC,CAAC,GAAG,EAAE;QACH,GAAG,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;ICCH,IAAqB,cAAc,GAAnC,oBAAoC,SAAQ,UAAU,CAAC,IAAoB;QAP3E;;YASI,oBAAe,GAAsB,QAAQ,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;YAE/E,uBAAkB,GAAoB,QAAQ,CAAC,aAAa,CAAC,+BAA+B,CAAC,CAAC;YAE9F,aAAQ,GAAqB,QAAQ,CAAC,aAAa,CAAC,qCAAqC,CAAC,CAAC;YAC3F,aAAQ,GAAqB,QAAQ,CAAC,aAAa,CAAC,qCAAqC,CAAC,CAAC;YAE3F,yBAAoB,GAAgB,QAAQ,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;YAErF,gBAAW,GAAqB,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;YAC/E,mBAAc,GAAgB,QAAQ,CAAC,aAAa,CAAC,yCAAyC,CAAC,CAAC;YAChG,gBAAW,GAAsB,QAAQ,CAAC,aAAa,CAAC,yCAAyC,CAAC,CAAC;YACnG,cAAS,GAAgB,QAAQ,CAAC,aAAa,CAAC,wCAAwC,CAAC,CAAC;YAC1F,cAAS,GAAgB,QAAQ,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC;YAC9E,cAAS,GAAgB,QAAQ,CAAC,aAAa,CAAC,sCAAsC,CAAC,CAAC;YAExF,mBAAc,GAAgB,QAAQ,CAAC,aAAa,CAAC,mCAAmC,CAAC,CAAC;YAE1F,qBAAgB,GAAG,EAAE,CAAC;YAEtB,0BAAqB,GAAG,CAAC,CAAC;YA+G1B,aAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;gBAChB,IAAI,KAAK,CAAC;gBACV,OAAO,UAAS,GAAG,IAAI;oBACnB,MAAM,OAAO,GAAG,IAAI,CAAC;oBACrB,IAAI,KAAK;wBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;oBAC/B,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;wBACpB,KAAK,GAAG,IAAI,CAAC;wBACb,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC9B,CAAC,EAAE,GAAG,CAAC,CAAC;gBACZ,CAAC,CAAC;YACN,CAAC,CAAC;YAEF,kBAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAwOlD,CAAC;QAjWG,qBAAqB,CAAC,EAAe;YACjC,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;gBAE/B,IAAI,CAAC,CAAC,OAAO,KAAK,EAAE,EAAE;oBAClB,IAAI,CAAC,SAAS,EAAE,CAAC;oBACjB,MAAM,WAAW,GAAsB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAC9E,IAAI,WAAW,EAAE;wBACb,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;4BACrD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;wBACvC,CAAC,CAAC,CAAC;wBAAA,CAAC;wBACJ,IAAI,CAAC,8BAA8B,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;qBAC9D;iBACJ;qBAAM,IAAG,CAAC,CAAC,OAAO,KAAK,EAAE,EAAE;oBACxB,IAAI,CAAC,qBAAqB,EAAE,CAAC;iBAEhC;qBAAM,IAAG,CAAC,CAAC,OAAO,KAAK,EAAE,EAAE;oBACxB,IAAI,CAAC,qBAAqB,EAAE,CAAC;iBAEhC;qBAAM;oBACH,IAAI,CAAC,aAAa,EAAE,CAAC;iBACxB;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAED,qBAAqB;YACjB,IAAI,IAAI,CAAC,qBAAqB,GAAG,CAAC,EAAE;gBAChC,IAAI,CAAC,qBAAqB,EAAE,CAAC;aAChC;QACL,CAAC;QAED,qBAAqB;YACjB,IAAI,IAAI,CAAC,qBAAqB,IAAI,EAAE,EAAE;gBAClC,IAAI,CAAC,qBAAqB,EAAE,CAAC;aAChC;QACL,CAAC;QAED,4BAA4B,CAAC,YAA+B;YACpD,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBACxC,IAAI,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,EAAE;oBACzC,IAAI,CAAC,4BAA4B,EAAE,CAAC;oBACpC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;wBACvE,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBACvC,CAAC,CAAC,CAAC;iBACN;qBAAM;oBACH,IAAI,CAAC,0BAA0B,EAAE,CAAC;iBACrC;YACL,CAAC,CAAC,CAAC;QACX,CAAC;QAED,2BAA2B;YACvB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC5C,IAAI,CAAC,4BAA4B,EAAE,CAAC;gBACpC,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,EAAE,CAAC;gBACnC,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,CAAC,CAAC,CAAC;QACP,CAAC;QAED,0BAA0B;YACtB,IAAI,CAAC,oBAAoB,CAAC,SAAS,GAAG,+CAA+C;QACzF,CAAC;QAED,4BAA4B;YACxB,IAAI,CAAC,oBAAoB,CAAC,SAAS,GAAG,EAAE,CAAC;QAC7C,CAAC;QAED,yBAAyB;YACrB,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAmB,EAAE,EAAE;gBAClE,MAAM,MAAM,GAAgB,KAAK,CAAC,MAAM,CAAC;gBACzC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE;oBACtC,IAAI,CAAC,SAAS,EAAE,CAAC;oBACjB,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACtD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;wBAChD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBACvC,CAAC,CAAC,CAAC;iBACN;YAEL,CAAC,CAAC,CAAC;QACP,CAAC;QAEK,eAAe,CAAC,YAAoB;;gBACtC,MAAM,MAAM,GAAG,yDAAyD,YAAY,EAAE,CAAC;gBAEvF,IAAI;oBACA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;oBACrC,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACpC,OAAO,KAAK,CAAC;iBAChB;gBAAC,OAAM,GAAG,EAAE;oBACT,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBACtB;YAEL,CAAC;SAAA;QAEK,cAAc,CAAC,GAAW,EAAE,GAAW;;gBACzC,MAAM,MAAM,GAAG,6DAA6D,GAAG,yBAAyB,GAAG,EAAE,CAAC;gBAE9G,IAAI;oBACA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;oBACrC,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACpC,OAAO,KAAK,CAAC;iBAChB;gBAAC,OAAM,GAAG,EAAE;oBACT,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;iBACtB;YACL,CAAC;SAAA;QAED,8BAA8B,CAAC,SAAiB;YAC5C,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC;QACvC,CAAC;QAiBD,SAAS;YAEL,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAEhG,IAAI,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;YAE5B,MAAM,MAAM,GAAG,yDAAyD,YAAY,EAAE;YACtF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBACzB,KAAK,CAAC,MAAM,EAAE;oBACN,MAAM,EAAE,KAAK;oBACb,OAAO,EAAE,OAAO;iBACnB,CAAC;qBACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;qBACjC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;qBACvD,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;aAC7C;iBAAM;gBACH,IAAI,CAAC,SAAS,EAAE,CAAC;aACpB;QACL,CAAC;QAED,SAAS;YAEL,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACpC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;QACnC,CAAC;QAED,QAAQ;YAGJ,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAItC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAClC,CAAC;QAED,QAAQ,CAAC,GAAG;YAGR,OAAO,CAAC,KAAK,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;YAE7C,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,cAAc,CAAC,OAAO;YAElB,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,EAAE,CAAC;YAG9B,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBAEzB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;gBAItC,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAExC,IAAI,CAAC,QAAQ,EAAE,CAAC;aAKnB;iBAAM;gBAEH,IAAI,CAAC,aAAa,CAAC,8RAA8R,CAAC,CAAC;aACtT;QAEL,CAAC;QAED,aAAa,CAAC,OAAO;YAEjB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;YAItC,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC;YAG1D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;YAEvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpB,CAAC;QAED,YAAY,CAAC,SAAS;YAGlB,MAAM,QAAQ,GAAG,QAAQ,CAAC,gBAAgB,CAAC,6DAA6D,CAAC,CAAC;YAC1G,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBAClB,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YAGH,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,yEAAyE,SAAS,KAAK,CAAC,CAAC;YAGlI,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEtC,CAAC;QAED,oBAAoB,CAAC,WAAW;YAC5B,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;gBAGxB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;gBAGvC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAE9C,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBAExC,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;gBAEhD,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;gBAEvE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC9C,MAAM,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;oBAGjC,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;oBACxC,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;oBAC9C,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC;oBAC3B,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;oBACnB,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;iBAC7B;gBAED,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBAIxB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBAGpC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;gBACvC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;aAC1C;iBAAM;gBACH,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;gBACtC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;aACzC;QACL,CAAC;QAED,SAAS,CAAC,KAAK,EAAE,UAAU;YACvB,UAAU,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;YACtC,OAAO,KAAK;iBACP,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;iBACjD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACX,MAAM,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBACvD,MAAM,OAAO,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBACvD,IAAI,OAAO,IAAI,OAAO;oBAAE,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBAClD,IAAI,OAAO,IAAI,CAAC,OAAO;oBAAE,OAAO,CAAC,CAAC,CAAC;gBACnC,IAAI,CAAC,OAAO,IAAI,OAAO;oBAAE,OAAO,CAAC,CAAC;gBAClC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;QACX,CAAC;QAAA,CAAC;QAEF,sBAAsB;YAElB,IAAI,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC;YAGjE,IAAI,aAAa,GAAG,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;YAGlE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,GAAG,aAAa,CAAC;QACxD,CAAC;QAED,sBAAsB,CAAC,KAAK;YACxB,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,EAAE,CAAC;YACnC,MAAM,sBAAsB,GAAgB,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC1E,sBAAsB,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YAE1D,MAAM,aAAa,GAAuB,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YACvE,aAAa,CAAC,SAAS,GAAG,UAAU,CAAC;YACrC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAElD,MAAM,cAAc,GAAsB,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC3E,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;YAC9D,cAAc,CAAC,SAAS,GAAG,UAAU,CAAC;YACtC,cAAc,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC1C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;YAEH,sBAAsB,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;YAElD,MAAM,iBAAiB,GAAgB,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACrE,iBAAiB,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAE3C,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,EAAE;gBACxB,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBACjD,WAAW,CAAC,SAAS,GAAG,sBAAsB,CAAC;gBAC/C,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;oBACvC,IAAI,EAAE,CAAC,kBAAkB,KAAK,QAAQ,EAAE;wBACpC,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;wBAAA,CAAC;qBACvE;yBAAM;wBACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;wBAC9C,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;wBAErC,QAAQ,CAAC,SAAS,GAAG,6BAA6B,EAAE,CAAC,kBAAkB,YAAY,EAAE,CAAC,kBAAkB,EAAE,CAAC;wBAE3G,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;qBACrC;gBACL,CAAC,CAAC,CAAC;gBACH,sBAAsB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;gBACnD,iBAAiB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;aAC9C;iBAAM;gBACH,iBAAiB,CAAC,SAAS,GAAG,kRAAkR,CAAC;aACpT;YAED,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC;YACxD,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QACvD,CAAC;QAED,eAAe,CAAC,IAAY;YACxB,MAAM,CAAC,IAAI,CAAC,sDAAsD,IAAI,EAAE,CAAC,CAAC;QAC9E,CAAC;QAGD,QAAQ;YACJ,IAAI,KAAK,GAAG,IAAI,CAAC;YAEjB,IAAI,QAAQ,CAAC,aAAa,CAAC,uBAAuB,CAAC,EAAE;gBACjD,KAAK,CAAC,qBAAqB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAC/C,KAAK,CAAC,4BAA4B,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAC1D,KAAK,CAAC,2BAA2B,EAAE,CAAC;gBACpC,KAAK,CAAC,yBAAyB,EAAE,CAAC;gBAElC,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;oBACxD,KAAK,CAAC,cAAc,EAAE,CAAC;gBAC3B,CAAC,CAAC,CAAC;aACN;QACL,CAAC;KACJ;IAzXoB,cAAc;QAPlC,oBAAO,CAAC;YACL,QAAQ,EAAE,KAAK;YACf,EAAE,EAAE,0BAA0B;YAC9B,EAAE,EAAE,EAEH;SACJ,CAAC;OACmB,cAAc,CAyXlC;sBAzXoB,cAAc;;;;;;;;;;;ACdnC","file":"js/exchange-lookup-tool.js","sourcesContent":["import * as Backbone from \"backbone\";\r\nimport * as Marionette from \"backbone.marionette\";\r\nimport * as $ from \"jquery\";\r\nimport ViewController from \"./controller\";\r\n\r\nconst app = new Marionette.Application()\r\n\r\napp.once(\"start\", () => {\r\n new ViewController().render()\r\n});\r\n\r\n$(() => {\r\n app.start();\r\n});\r\n\n\n\n// WEBPACK FOOTER //\n// ./Websites/FrontierEnterprise.Web/@static/@modules/exchange-lookup-tool/main.ts","import * as $ from \"jquery\";\r\nimport * as Backbone from \"backbone\";\r\nimport * as Marionette from \"backbone.marionette\";\r\nimport * as _ from \"underscore\";\r\nimport { on, Options } from \"../utils/decorators\";\r\n\r\n\r\n@Options({\r\n template: false,\r\n el: \".js-exchange-lookup-tool\",\r\n ui: {\r\n \r\n }\r\n})\r\nexport default class ViewController extends Marionette.View {\r\n\r\n npaSearchButton = document.querySelector('#search-btn-npa');\r\n\r\n exchangeLookupForm = document.querySelector('.js-exchange-lookup-tool form');\r\n\r\n npaInput = document.querySelector('.js-exchange-lookup-tool #npa-input');\r\n nxxInput = document.querySelector(\".js-exchange-lookup-tool #nxx-input\");\r\n\r\n validationErrorField = document.querySelector('#npaNxxValidationError');\r\n\r\n searchInput = document.querySelector('#serving-wire-center');\r\n searchDropdown = document.querySelector('.js-exchange-lookup-tool #searchResults');\r\n clearButton = document.querySelector('.js-exchange-lookup-tool #clear-btn-npa');\r\n pagesList = document.querySelector('#exchangeLookupSearchPages .panel-body');\r\n pagesWrap = document.querySelector('#exchangeLookupSearchPages');\r\n noResults = document.querySelector('.js-exchange-lookup-tool .no-results');\r\n\r\n resultsSection = document.querySelector('.js-exchange-lookup-tool .results');\r\n\r\n selectedItemGuid = \"\";\r\n\r\n selectedDropdownIndex = 1;\r\n\r\n addKeyupEventListener(el: HTMLElement) {\r\n el.addEventListener('keyup', (e) => {\r\n // close dropdown on enter\r\n if (e.keyCode === 13) {\r\n this.closeDrop();\r\n const firstOption = this.pagesWrap.querySelector(\"li > a\");\r\n if (firstOption) {\r\n this.searchFromInput(firstOption.innerText).then(items => {\r\n this.generateItemFromSearch(items);\r\n });;\r\n this.populateServingWireCenterInput(firstOption.innerText);\r\n }\r\n } else if(e.keyCode === 40) {\r\n this.increaseDropdownIndex();\r\n // this.activateLink(this.selectedDropdownIndex); \r\n } else if(e.keyCode === 38) {\r\n this.decreaseDropdownIndex();\r\n // this.activateLink(this.selectedDropdownIndex);\r\n } else { \r\n this.debounceFetch();\r\n } \r\n });\r\n }\r\n\r\n decreaseDropdownIndex() {\r\n if (this.selectedDropdownIndex > 1) {\r\n this.selectedDropdownIndex--;\r\n }\r\n }\r\n\r\n increaseDropdownIndex() {\r\n if (this.selectedDropdownIndex <= 20) {\r\n this.selectedDropdownIndex++;\r\n }\r\n }\r\n\r\n addSearchButtonEventListener(searchButton: HTMLButtonElement) { \r\n searchButton.addEventListener(\"click\", () => {\r\n if (this.exchangeLookupForm.checkValidity()) {\r\n this.clearNpaNxxValidationMessage();\r\n this.searchByNpaNxx(this.npaInput.value, this.nxxInput.value).then(items => {\r\n this.generateItemFromSearch(items);\r\n });\r\n } else {\r\n this.setNpaNxxValidationMessage();\r\n }\r\n }); \r\n }\r\n\r\n addClearButtonEventListener() {\r\n this.clearButton.addEventListener('click', () => {\r\n this.clearNpaNxxValidationMessage();\r\n this.resultsSection.innerHTML = '';\r\n this.closeDrop();\r\n });\r\n }\r\n\r\n setNpaNxxValidationMessage() {\r\n this.validationErrorField.innerText = \"Please enter a 3 digit NPA and a 3 digit NXX.\"\r\n }\r\n\r\n clearNpaNxxValidationMessage() {\r\n this.validationErrorField.innerText = \"\";\r\n }\r\n\r\n addSearchDropdownListener() {\r\n this.searchDropdown.addEventListener(\"click\", (event: PointerEvent) => {\r\n const target = event.target;\r\n if (target.tagName.toLowerCase() === \"a\") {\r\n this.closeDrop();\r\n this.populateServingWireCenterInput(target.innerText);\r\n this.searchFromInput(target.innerText).then(items => {\r\n this.generateItemFromSearch(items);\r\n });\r\n }\r\n \r\n });\r\n }\r\n\r\n async searchFromInput(searchString: string) {\r\n const apiUrl = `/api/Wholesale/SearchForProduct?productNameSearchTerm=${searchString}`;\r\n\r\n try {\r\n const response = await fetch(apiUrl);\r\n const items = await response.json();\r\n return items;\r\n } catch(err) {\r\n console.error(err);\r\n }\r\n \r\n }\r\n\r\n async searchByNpaNxx(npa: string, nxx: string) {\r\n const apiUrl = `/api/Wholesale/SearchForProductByNPA?productNameSearchNPA=${npa}&productSearchTermNXX=${nxx}`;\r\n\r\n try {\r\n const response = await fetch(apiUrl);\r\n const items = await response.json();\r\n return items;\r\n } catch(err) {\r\n console.error(err);\r\n }\r\n }\r\n\r\n populateServingWireCenterInput(inputText: string) {\r\n this.searchInput.value = inputText;\r\n }\r\n\r\n // debounce requests to API\r\n debounce = (func) => {\r\n let timer;\r\n return function(...args) {\r\n const context = this;\r\n if (timer) clearTimeout(timer);\r\n timer = setTimeout(() => {\r\n timer = null;\r\n func.apply(context, args);\r\n }, 200);\r\n };\r\n };\r\n\r\n debounceFetch = this.debounce(this.fetchData);\r\n\r\n fetchData() {\r\n\r\n const searchString = this.searchInput.value.replace(/[&\\/\\\\#^+()$~%.'\":*?<>{}!@@]/g, '').trim();\r\n\r\n let headers = new Headers();\r\n\r\n const apiUrl = `/api/Wholesale/ProductSearchSuggestions?serviceCenter=${searchString}`\r\n if (searchString.length > 0) {\r\n fetch(apiUrl, {\r\n method: 'GET',\r\n headers: headers\r\n })\r\n .then(response => response.json())\r\n .then(responseJson => this.populateSearch(responseJson))\r\n .catch(error => this.apiError(error));\r\n } else {\r\n this.closeDrop();\r\n }\r\n }\r\n\r\n closeDrop() {\r\n // close menu \r\n $(this.searchDropdown).slideUp(200);\r\n this.selectedDropdownIndex = 1;\r\n }\r\n\r\n openDrop() {\r\n\r\n // show dropdown\r\n $(this.searchDropdown).slideDown(200);\r\n\r\n\r\n // adjust max-height once drop is visible\r\n this.adjustSearchDropHeight();\r\n }\r\n\r\n apiError(err) {\r\n // display message in dropdown\r\n // show dropdown\r\n console.error(`CATCH ERROR THROWN - ${err}`);\r\n\r\n this.showNoResults(`Error:
${err}`);\r\n }\r\n\r\n populateSearch(results) {\r\n // clear any previous results\r\n this.pagesList.innerHTML = \"\";\r\n\r\n // if any results exist\r\n if (results.data.length > 0) {\r\n\r\n this.noResults.style.display = \"none\";\r\n \r\n\r\n // grab results\r\n this.getServingWireCenter(results.data);\r\n\r\n this.openDrop();\r\n\r\n // make first link active\r\n //this.activateLink(this.selectedDropdownIndex);\r\n\r\n } else {\r\n\r\n this.showNoResults('The Serving Wire Center entered is not valid or not owned by Frontier. Please try again or visit https://wholesale.frontier.com/contacts-and-escalation-lists for center contact information to inquire further.');\r\n }\r\n\r\n }\r\n\r\n showNoResults(message) {\r\n // hide sections\r\n this.pagesWrap.style.display = \"none\";\r\n\r\n\r\n // update message\r\n document.querySelector('.no-results').innerHTML = message;\r\n\r\n // show no results div\r\n this.noResults.style.display = \"block\";\r\n\r\n this.openDrop();\r\n }\r\n\r\n activateLink(linkIndex) {\r\n\r\n // clear any current active status\r\n const allLinks = document.querySelectorAll('.js-exchange-lookup-tool #searchPages ul:first-of-type li a');\r\n allLinks.forEach(el => {\r\n el.classList.remove(\"active\");\r\n });\r\n\r\n // set focus on first Page link\r\n const firstLink = document.querySelector(`.js-exchange-lookup-tool #searchPages ul:first-of-type li:nth-of-type(${linkIndex}) a`);\r\n\r\n // set bg color of first link\r\n firstLink.classList.add(\"active\");\r\n\r\n }\r\n\r\n getServingWireCenter(pagesGroups) {\r\n if (pagesGroups.length > 0) {\r\n\r\n // show Pages section\r\n this.pagesWrap.style.display = \"block\";\r\n\r\n // create wrapper div\r\n const wrapper = document.createElement('div');\r\n\r\n const ul = document.createElement('ul');\r\n\r\n const searchInputValue = this.searchInput.value;\r\n\r\n const sortedPagesGroup = this.sortItems(pagesGroups, searchInputValue);\r\n\r\n for (let i = 0; i < sortedPagesGroup.length; i++) {\r\n const addr = sortedPagesGroup[i];\r\n \r\n\r\n const li = document.createElement('li');\r\n const innerLink = document.createElement('a');\r\n innerLink.innerHTML = addr;\r\n ul.appendChild(li);\r\n li.appendChild(innerLink);\r\n }\r\n\r\n wrapper.appendChild(ul);\r\n\r\n\r\n // insert results\r\n this.pagesList.appendChild(wrapper);\r\n\r\n // show Reference section\r\n this.pagesList.style.display = 'block';\r\n this.pagesWrap.style.display = 'block';\r\n } else {\r\n this.pagesList.style.display = 'none';\r\n this.pagesWrap.style.display = 'none';\r\n }\r\n }\r\n\r\n sortItems(terms, filterTerm) {\r\n filterTerm = filterTerm.toLowerCase();\r\n return terms\r\n .filter(v => v.toLowerCase().includes(filterTerm))\r\n .sort((a, b) => {\r\n const aStarts = a.toLowerCase().startsWith(filterTerm);\r\n const bStarts = b.toLowerCase().startsWith(filterTerm);\r\n if (aStarts && bStarts) return a.localeCompare(b);\r\n if (aStarts && !bStarts) return -1;\r\n if (!aStarts && bStarts) return 1;\r\n return a.localeCompare(b);\r\n });\r\n };\r\n\r\n adjustSearchDropHeight() {\r\n // get top of search drop relative to window\r\n let elementTop = this.searchDropdown.getBoundingClientRect().top;\r\n\r\n // calculate max-height of drop\r\n let maxHeightDrop = (window.innerHeight - elementTop - 40) + 'px';\r\n\r\n // set max-height of drop\r\n this.searchDropdown.style.maxHeight = maxHeightDrop;\r\n }\r\n\r\n generateItemFromSearch(items) {\r\n this.resultsSection.innerHTML = '';\r\n const resultHeadingContainer = document.createElement('div');\r\n resultHeadingContainer.classList.add(\"heading-container\");\r\n\r\n const resultHeading = document.createElement('h4');\r\n resultHeading.innerText = \"Results:\";\r\n resultHeading.classList.add(\"final-item-heading\");\r\n\r\n const downloadButton = document.createElement('button');\r\n downloadButton.classList.add('btn', 'btn-large', 'btn-solid');\r\n downloadButton.innerText = 'Download';\r\n downloadButton.addEventListener('click', () => {\r\n this.triggerDownload(this.selectedItemGuid);\r\n });\r\n\r\n resultHeadingContainer.appendChild(resultHeading);\r\n\r\n const resultInformation = document.createElement('div');\r\n resultInformation.classList.add(\"results\"); \r\n\r\n if (items.success === true) {\r\n const productList = document.createElement(\"ul\");\r\n productList.className = \"result-card bg-white\";\r\n items.data.product_line_items.forEach(el => {\r\n if (el.product_line_title === \"ItemID\") {\r\n this.selectedItemGuid = el.product_line_value.replace(/[{}]/g, \"\");;\r\n } else {\r\n const listItem = document.createElement(\"li\");\r\n listItem.classList.add(\"card-field\");\r\n\r\n listItem.innerHTML = `${el.product_line_title}: ${el.product_line_value}`;\r\n\r\n productList.appendChild(listItem);\r\n } \r\n });\r\n resultHeadingContainer.appendChild(downloadButton);\r\n resultInformation.appendChild(productList);\r\n } else {\r\n resultInformation.innerHTML = 'The NPA NXX entered is not valid or not owned by Frontier. Please try again or visit https://wholesale.frontier.com/contacts-and-escalation-lists for center contact information to inquire further.';\r\n }\r\n\r\n this.resultsSection.appendChild(resultHeadingContainer);\r\n this.resultsSection.appendChild(resultInformation);\r\n }\r\n\r\n triggerDownload(guid: string) {\r\n window.open(`/api/Wholesale/GenerateExchangeLookupPdf?productId=${guid}`);\r\n }\r\n\r\n\r\n onRender() {\r\n let _this = this;\r\n\r\n if (document.querySelector(\".exchange-lookup-tool\")) {\r\n _this.addKeyupEventListener(_this.searchInput);\r\n _this.addSearchButtonEventListener(_this.npaSearchButton);\r\n _this.addClearButtonEventListener();\r\n _this.addSearchDropdownListener();\r\n\r\n _this.exchangeLookupForm.addEventListener('submit', event => {\r\n event.preventDefault();\r\n });\r\n } \r\n }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./Websites/FrontierEnterprise.Web/@static/@modules/exchange-lookup-tool/controller.ts","require(\"./main.ts\");\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Websites/FrontierEnterprise.Web/@static/@modules/exchange-lookup-tool/index.js\n// module id = 52\n// module chunks = 24"],"sourceRoot":""}