{"version":3,"file":"GenAICoach.stories.jsx","sourceRoot":"","sources":["../../../src/work/GenAICoach/GenAICoach.stories.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAQlG,OAAO,EACL,SAAS,EAIV,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,gBAAgB,EAChB,yBAAyB,EACzB,gCAAgC,EAChC,eAAe,EACf,eAAe,EACf,8BAA8B,EAC9B,eAAe,EACf,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAE5B,eAAe;IACb,KAAK,EAAE,iBAAiB;IACxB,SAAS,EAAE,UAAU;CACd,CAAC;AAeV,MAAM,CAAC,MAAM,cAAc,GAAiC,CAAC,IAAyB,EAAE,EAAE;IACxF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAsB,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,wBAAwB,EAAE,2BAA2B,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAC;IAC7F,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAChE,8BAA8B,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CACtD,CAAC;IACF,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,8BAA8B,CAAC,CAAC;IACvF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAkB,EAAE,CAAC,CAAC;IACpE,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAyB,EAAE,CAAC,CAAC;IAC/F,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAE/D,MAAM,WAAW,GAAG,CAAC,WAA6B,EAAE,EAAE;QACpD,kBAAkB,CAAC,IAAI,CAAC,EAAE;YACxB,IAAI,SAAS,CAAC;YACd,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBAC9B,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC,SAAS,CACrD,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,qBAAqB,CAC1C,CAAC;gBACF,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC3B,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAChE,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACvC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,SAAS;gBAAE,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YAC7E,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,0BAA0B,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;QAEvE,WAAW,CAAC,CAAC,YAAiC,EAAE,EAAE;YAChD,MAAM,KAAK,GAAuB,EAAE,CAAC;YACrC,WAAW,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE;gBACvC,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC5D,IAAI,UAAU,EAAE,CAAC;oBACf,KAAK,CAAC,IAAI,CAAC;wBACT,EAAE;wBACF,SAAS,EAAE,UAAU,CAAC,SAAS;wBAC/B,WAAW,EAAE,UAAU,CAAC,IAAI;wBAC5B,KAAK,EAAE,UAAU,CAAC,IAAI;qBACvB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YACH,OAAO;gBACL,GAAG,YAAY;gBACf;oBACE,GAAG,WAAW;oBACd,WAAW,EAAE,KAAK;oBAClB,IAAI,EAAE,MAAM;iBACb;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,IAAI,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;YACvC,cAAc,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,SAA6B,EAAE,QAAiB,EAAE,EAAE;QAC1E,IAAI,QAAQ;YAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;;YACtD,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,UAAU,CAAC,GAAG,EAAE;YACd,2BAA2B,CAAC,gCAAgC,CAAC,CAAC;YAC9D,WAAW,CAAC,EAAE,CAAC,CAAC;YAChB,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,cAAc,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,EAAE,CAAC;IACf,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,UAAU,CAAC,GAAG,EAAE;gBACd,WAAW,CAAC;oBACV,GAAG,QAAQ;oBACX,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE;iBAC9E,CAAC,CAAC;YACL,CAAC,EAAE,IAAI,CAAC,CAAC;YAET,UAAU,CAAC,GAAG,EAAE;gBACd,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC7C,WAAW,CAAC,CAAC,GAAG,QAAQ,EAAE,EAAE,GAAG,yBAAyB,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;YACxF,CAAC,EAAE,IAAI,CAAC,CAAC;QACX,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAEtB,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,eAAyB,EAAE,EAAE;QAC/D,WAAW,CAAC,YAAY,CAAC,EAAE,CACzB,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACzB,OAAO,CAAC,EAAE,KAAK,EAAE;YACf,CAAC,CAAC;gBACE,GAAG,OAAO;gBACV,QAAQ,EAAE;oBACR,QAAQ,EAAE,eAAe;oBACzB,UAAU,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC;oBAC9E,kBAAkB,EAAE,cAAc;iBACnC;aACF;YACH,CAAC,CAAC,OAAO,CACZ,CACF,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,YAAY,GAAgC,OAAO,CAAC,GAAG,EAAE;QAC7D,IAAI,IAAI,CAAC,kBAAkB;YACzB,OAAO;gBACL,GAAG,QAAQ;gBACX;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,mBAAmB;oBAC9B,OAAO,EAAE,IAAI;iBACd;aACF,CAAC;QACJ,IAAI,IAAI,CAAC,kBAAkB;YACzB,OAAO;gBACL,GAAG,QAAQ;gBACX;oBACE,EAAE,EAAE,GAAG;oBACP,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,mBAAmB;oBAC9B,KAAK,EAAE,2BAA2B;iBACnC;aACF,CAAC;QAEJ,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACzB,IAAI,cAAc,CAAC,IAAI,CAAC;gBACtB,OAAO;oBACL,GAAG,IAAI;oBACP,QAAQ,EAAE;wBACR,UAAU,EAAE,cAAc;wBAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ;wBACjC,kBAAkB,EAAE,cAAc;qBACnC;iBACF,CAAC;YACJ,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEjE,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE;QACxC,cAAc,CACZ,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACf,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;YACvB,OAAO;gBACL,EAAE;gBACF,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;gBAClC,QAAQ,EAAE,GAAG,EAAE;oBACb,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC9D,CAAC;gBACD,QAAQ,EAAE,GAAG,EAAE;oBACb,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC9D,CAAC;gBACD,SAAS,EAAE,GAAG,EAAE;oBACd,wBAAwB,CACtB,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;wBACzB,OAAO;4BACL,EAAE,EAAE,SAAS,EAAE;4BACf,IAAI,EAAE,cAAc,CAAC,IAAI;4BACzB,WAAW,EAAE,+BAA+B;4BAC5C,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;4BAC5C,GAAG,EAAE,GAAG,CAAC,eAAe,CAAC,cAAc,CAAC;yBACzC,CAAC;oBACJ,CAAC,CAAC,CACH,CAAC;oBACF,cAAc,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC;gBACD,IAAI;aACL,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CACL,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAC9D;MAAA,CAAC,UAAU,CACT,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,YAAY,CAAC,CAAC,gBAAgB,CAAC,CAC/B,aAAa,CAAC,CAAC,UAAU,CAAC,CAC1B,QAAQ,CAAC,CAAC,YAAY,CAAC,CACvB,wBAAwB,CAAC,CAAC,wBAAwB,CAAC,CACnD,MAAM,CAAC,CAAC,WAAW,CAAC,CACpB,WAAW,CAAC,CAAC,eAAe,CAAC,CAC7B,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CACnC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,SAAS,CAAC,CAC3D,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAC5B,cAAc,CAAC,CAAC,CAAC,aAAsB,EAAE,EAAE;YACzC,aAAa,CAAC,aAAa,CAAC,CAAC;QAC/B,CAAC,CAAC,CACF,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,gBAAgB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CACxC,oBAAoB,CAAC,CACnB,WAAW;YACT,CAAC,CAAC;gBACE,KAAK,EAAE,qBAAqB;gBAC5B,KAAK,EAAE,IAAI;gBACX,YAAY,EAAE,GAAG,EAAE;oBACjB,cAAc,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC;gBACD,cAAc,EAAE,GAAG,EAAE,GAAE,CAAC;aACzB;YACH,CAAC,CAAC,SACN,CAAC,CACD,OAAO,CAAC,CACN,IAAI,CAAC,WAAW;YACd,CAAC,CAAC;gBACE,KAAK,EAAE;oBACL;wBACE,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE,GAAG,EAAE;4BACZ,UAAU,EAAE,CAAC;wBACf,CAAC;qBACF;oBACD;wBACE,EAAE,EAAE,GAAG;wBACP,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,GAAG,EAAE;4BACZ,cAAc,CAAC,IAAI,CAAC,CAAC;wBACvB,CAAC;qBACF;iBACF;aACF;YACH,CAAC,CAAC,SACN,CAAC,CACD,mBAAmB,CAAC,CAClB,WAAW;YACT,CAAC,CAAC;gBACE,IAAI,EACF,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe;gBAClF,SAAS,EAAE,GAAG,EAAE;oBACd,cAAc,CAAC,KAAK,CAAC,CAAC;gBACxB,CAAC;gBACD,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB;gBAC9D,QAAQ,EAAE,GAAG,EAAE;oBACb,qBAAqB,CAAC,IAAI,CAAC,CAAC;oBAC5B,UAAU,CAAC,GAAG,EAAE;wBACd,qBAAqB,CAAC,KAAK,CAAC,CAAC;oBAC/B,CAAC,EAAE,IAAI,CAAC,CAAC;gBACX,CAAC;gBACD,KAAK,EAAE,IAAI,CAAC,uBAAuB;gBACnC,WAAW,EAAE,cAAc,CAAC,EAAE;oBAC5B,wBAAwB,CAAC,cAAc,CAAC,CAAC;oBAEzC,IAAI,CAAC,UAAU;wBAAE,cAAc,CAAC,KAAK,CAAC,CAAC;oBACvC,WAAW,CAAC,yBAAyB,CAAC,CAAC;gBACzC,CAAC;gBACD,cAAc,EAAE,qBAAqB;aACtC;YACH,CAAC,CAAC,SACN,CAAC,EAEL;IAAA,EAAE,eAAe,CAAC,CACnB,CAAC;AACJ,CAAC,CAAC;AAEF,cAAc,CAAC,IAAI,GAAG;IACpB,kBAAkB,EAAE,KAAK;IACzB,kBAAkB,EAAE,KAAK;IACzB,SAAS,EAAE,KAAK;IAChB,UAAU,EAAE,KAAK;IACjB,WAAW,EAAE,KAAK;IAClB,oBAAoB,EAAE,KAAK;IAC3B,uBAAuB,EAAE,EAAE;IAC3B,uBAAuB,EAAE,KAAK;IAC9B,2BAA2B,EAAE,KAAK;IAClC,gBAAgB,EAAE,EAAE;CACrB,CAAC;AAEF,cAAc,CAAC,QAAQ,GAAG;IACxB,kBAAkB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACpD,kBAAkB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACpD,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC3C,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC5C,WAAW,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC7C,oBAAoB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACtD,uBAAuB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;IACtD,uBAAuB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACzD,2BAA2B,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC7D,gBAAgB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;CAChD,CAAC;AAaF,MAAM,CAAC,MAAM,qBAAqB,GAAwC,CACxE,IAAgC,EAChC,EAAE;IACF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAqB,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,cAAc,GAAG,CAAC,SAA6B,EAAE,QAAiB,EAAE,EAAE;YAC1E,IAAI,QAAQ;gBAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;;gBACtD,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC;QAEF,IAAI,cAAc,GAAkC,yBAAyB,CAAC,IAAI,CAChF,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAC1B,CAAC;QAEF,IAAI,cAAc,EAAE,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5D,cAAc,GAAG;gBACf,GAAG,cAAc;gBACjB,WAAW,EAAE,eAAe;aAC7B,CAAC;QACJ,CAAC;QAED,IAAI,cAAc,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;YACrC,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,eAAyB,EAAE,EAAE;gBAC/D,UAAU,CAAC,WAAW,CAAC,EAAE;oBACvB,OAAO;wBACL,GAAG,WAAY;wBACf,QAAQ,EAAE;4BACR,QAAQ,EAAE,eAAe;4BACzB,UAAU,EAAE,cAAc;4BAC1B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,cAAc;yBACvF;qBACF,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,IAAI,IAAI,CAAC,kBAAkB;gBACzB,cAAc,GAAG;oBACf,IAAI,EAAE,OAAO;oBACb,EAAE,EAAE,SAAS,EAAE;oBACf,SAAS,EAAE,cAAc,CAAC,SAAS;oBACnC,OAAO,EAAE,IAAI;iBACd,CAAC;iBACC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACjC,cAAc,GAAG;oBACf,IAAI,EAAE,OAAO;oBACb,EAAE,EAAE,SAAS,EAAE;oBACf,SAAS,EAAE,cAAc,CAAC,SAAS;oBACnC,KAAK,EAAE,2BAA2B;iBACnC,CAAC;YACJ,CAAC;iBAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gBACjC,cAAc,GAAG;oBACf,GAAG,cAAc;oBACjB,WAAW,EAAE,SAAS;iBACvB,CAAC;YACJ,CAAC;YAED,IAAI,IAAI,CAAC,YAAY;gBACnB,cAAc,GAAG;oBACf,GAAG,cAAc;oBACjB,QAAQ,EAAE;wBACR,UAAU,EAAE,cAAc;wBAC1B,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,QAAQ;wBAC3C,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,cAAc;qBACvF;iBACF,CAAC;YAEJ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,cAAc,GAAG,EAAE,GAAG,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,UAAU,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC,EAAE;QACD,IAAI,CAAC,IAAI;QACT,IAAI,CAAC,kBAAkB;QACvB,IAAI,CAAC,YAAY;QACjB,IAAI,CAAC,kBAAkB;QACvB,IAAI,CAAC,eAAe;QACpB,IAAI,CAAC,eAAe;KACrB,CAAC,CAAC;IACH,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,EAAG,CAAC,EAAE,eAAe,CAAC,CAAC;AACvF,CAAC,CAAC;AAEF,qBAAqB,CAAC,IAAI,GAAG;IAC3B,IAAI,EAAE,OAAO;IACb,kBAAkB,EAAE,KAAK;IACzB,kBAAkB,EAAE,KAAK;IACzB,eAAe,EAAE,KAAK;IACtB,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF,qBAAqB,CAAC,QAAQ,GAAG;IAC/B,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;IACjE,kBAAkB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACpD,kBAAkB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACpD,eAAe,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IACjD,YAAY,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC9C,eAAe,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;CAClD,CAAC","sourcesContent":["import type { Meta, StoryFn } from '@storybook/react';\nimport { useEffect, useMemo, useState } from 'react';\nimport { action } from '@storybook/addon-actions';\n\nimport { GenAICoach, GenAIMessage, isCoachMessage, isUserMessage } from '@pega/cosmos-react-work';\nimport type {\n  GenAIMessageProps,\n  MessageProps,\n  GenAICoachProps,\n  Reaction,\n  SendMessageProps\n} from '@pega/cosmos-react-work';\nimport {\n  createUID,\n  type FileDisplayProps,\n  type FileItemProps,\n  type LightboxProps\n} from '@pega/cosmos-react-core';\n\nimport {\n  coachOptionsMock,\n  genAICoachMessageMockData,\n  initialSuggestedMessagesMockData,\n  StyledContainer,\n  suggestionsMock,\n  conversationHistorySummaryData,\n  StyledCoachList,\n  attachmentsMock\n} from './GenAICoach.mocks';\n\nexport default {\n  title: 'Work/GenAICoach',\n  component: GenAICoach\n} as Meta;\n\ninterface GenAiCoachDemoProps {\n  showMessageLoading?: boolean;\n  showErrorInMessage?: boolean;\n  showError?: boolean;\n  guidedMode?: boolean;\n  showActions?: boolean;\n  showLoadingInHistory?: boolean;\n  showErrorStateInHistory?: string;\n  showEmptyStateInHistory?: boolean;\n  showFullPageViewWithHistory?: boolean;\n  attachmentsError?: string;\n}\n\nexport const GenAICoachDemo: StoryFn<GenAiCoachDemoProps> = (args: GenAiCoachDemoProps) => {\n  const [loading, setLoading] = useState(false);\n  const [messages, setMessages] = useState<GenAIMessageProps[]>([]);\n  const [initialSuggestedMessages, setInitialSuggestedMessages] = useState<MessageProps[]>([]);\n  const [showHistory, setShowHistory] = useState(false);\n  const [progressiveLoading, setProgressiveLoading] = useState(false);\n  const [selectedItemInHistory, setSelectedItemInHistory] = useState(\n    conversationHistorySummaryData[0].conversations[1].id\n  );\n  const [historyViewData, setHistoryViewData] = useState(conversationHistorySummaryData);\n  const [inFullPage, setInFullPage] = useState(false);\n  const [attachments, setAttachments] = useState<FileItemProps[]>([]);\n  const [attachmentsForPreview, setAttachmentsForPreview] = useState<LightboxProps['items']>([]);\n  const [openPreview, setOpenPreview] = useState<boolean>(false);\n\n  const sendMessage = (userMessage: SendMessageProps) => {\n    setHistoryViewData(prev => {\n      let movedItem;\n      prev.forEach((section, index) => {\n        const chatThreadIndex = section.conversations.findIndex(\n          item => item.id === selectedItemInHistory\n        );\n        if (chatThreadIndex !== -1) {\n          movedItem = section.conversations.splice(chatThreadIndex, 1)[0];\n          if (section.conversations.length === 0) {\n            prev.splice(index, 1);\n          }\n        }\n      });\n      if (movedItem) prev[0].conversations = [movedItem, ...prev[0].conversations];\n      return prev;\n    });\n    action(`Message from composer: ${Boolean(userMessage?.fromComposer)}`);\n\n    setMessages((prevMessages: GenAIMessageProps[]) => {\n      const files: FileDisplayProps[] = [];\n      userMessage?.attachmentIds?.forEach(id => {\n        const attachment = attachments.find(item => item.id === id);\n        if (attachment) {\n          files.push({\n            id,\n            onPreview: attachment.onPreview,\n            displayText: attachment.name,\n            value: attachment.name\n          });\n        }\n      });\n      return [\n        ...prevMessages,\n        {\n          ...userMessage,\n          attachments: files,\n          from: 'user'\n        }\n      ];\n    });\n    if (userMessage?.attachmentIds?.length) {\n      setAttachments([]);\n    }\n  };\n\n  const handleFeedback = (messageId: MessageProps['id'], feedback?: string) => {\n    if (feedback) action('Submit')(`${messageId}:${feedback}`);\n    else action('Cancel')(`${messageId}`);\n  };\n\n  const initialize = () => {\n    setLoading(true);\n    setTimeout(() => {\n      setInitialSuggestedMessages(initialSuggestedMessagesMockData);\n      setMessages([]);\n      setLoading(false);\n    }, 1000);\n    setShowHistory(false);\n  };\n\n  useEffect(() => {\n    initialize();\n  }, []);\n\n  useEffect(() => {\n    if (messages.length > 0 && isUserMessage(messages[messages.length - 1])) {\n      setTimeout(() => {\n        setMessages([\n          ...messages,\n          { loading: true, from: 'coach', coachName: 'Pega Gen AI™ coach', id: '1234' }\n        ]);\n      }, 1000);\n\n      setTimeout(() => {\n        const random = Math.floor(Math.random() * 2);\n        setMessages([...messages, { ...genAICoachMessageMockData[random], id: createUID() }]);\n      }, 2000);\n    }\n  }, [messages.length]);\n\n  const handleReaction = (id: string, updatedReaction: Reaction) => {\n    setMessages(prevMessages =>\n      prevMessages.map(message =>\n        message.id === id\n          ? {\n              ...message,\n              feedback: {\n                reaction: updatedReaction,\n                onReaction: (messageId, newReaction) => handleReaction(messageId, newReaction),\n                onFeedbackComplete: handleFeedback\n              }\n            }\n          : message\n      )\n    );\n  };\n\n  const messagesProp: GenAICoachProps['messages'] = useMemo(() => {\n    if (args.showMessageLoading)\n      return [\n        ...messages,\n        {\n          id: '1',\n          from: 'coach',\n          coachName: 'Pega GenAI™ Coach',\n          loading: true\n        }\n      ];\n    if (args.showErrorInMessage)\n      return [\n        ...messages,\n        {\n          id: '2',\n          from: 'coach',\n          coachName: 'Pega GenAI™ Coach',\n          error: 'Error retrieving response'\n        }\n      ];\n\n    return messages.map(item => {\n      if (isCoachMessage(item))\n        return {\n          ...item,\n          feedback: {\n            onReaction: handleReaction,\n            reaction: item.feedback?.reaction,\n            onFeedbackComplete: handleFeedback\n          }\n        };\n      return item;\n    });\n  }, [args.showErrorInMessage, args.showMessageLoading, messages]);\n\n  const onAddAttachment = (files: File[]) => {\n    setAttachments(\n      files.map(file => {\n        const id = createUID();\n        return {\n          id,\n          name: file.name,\n          format: file.name.split('.').pop(),\n          onDelete: () => {\n            setAttachments(prev => prev.filter(item => item.id !== id));\n          },\n          onCancel: () => {\n            setAttachments(prev => prev.filter(item => item.id !== id));\n          },\n          onPreview: () => {\n            setAttachmentsForPreview(\n              files.map(fileForPreview => {\n                return {\n                  id: createUID(),\n                  name: fileForPreview.name,\n                  description: 'Descriptive text about File 1',\n                  format: fileForPreview.name.split('.').pop(),\n                  src: URL.createObjectURL(fileForPreview)\n                };\n              })\n            );\n            setOpenPreview(true);\n          },\n          file\n        };\n      })\n    );\n  };\n\n  return (\n    <StyledContainer fullPageView={args.showFullPageViewWithHistory}>\n      <GenAICoach\n        loading={loading}\n        coachOptions={coachOptionsMock}\n        onCoachChange={initialize}\n        messages={messagesProp}\n        initialSuggestedMessages={initialSuggestedMessages}\n        onSend={sendMessage}\n        suggestions={suggestionsMock}\n        variant={{ placement: 'fullpage' }}\n        error={args.showError ? 'Error retreving data' : undefined}\n        guidedMode={args.guidedMode}\n        onLayoutChange={(inFullPageArg: boolean) => {\n          setInFullPage(inFullPageArg);\n        }}\n        onAddAttachment={onAddAttachment}\n        attachments={attachments}\n        attachmentsError={args.attachmentsError}\n        lightboxPreviewProps={\n          openPreview\n            ? {\n                items: attachmentsForPreview,\n                cycle: true,\n                onAfterClose: () => {\n                  setOpenPreview(false);\n                },\n                onItemDownload: () => {}\n              }\n            : undefined\n        }\n        actions={\n          args.showActions\n            ? {\n                items: [\n                  {\n                    id: '1',\n                    text: 'New chat',\n                    onClick: () => {\n                      initialize();\n                    }\n                  },\n                  {\n                    id: '2',\n                    text: 'History',\n                    onClick: () => {\n                      setShowHistory(true);\n                    }\n                  }\n                ]\n              }\n            : undefined\n        }\n        conversationHistory={\n          showHistory\n            ? {\n                data:\n                  args.showLoadingInHistory || args.showEmptyStateInHistory ? [] : historyViewData,\n                onDismiss: () => {\n                  setShowHistory(false);\n                },\n                loading: args.showLoadingInHistory ? true : progressiveLoading,\n                loadMore: () => {\n                  setProgressiveLoading(true);\n                  setTimeout(() => {\n                    setProgressiveLoading(false);\n                  }, 2000);\n                },\n                error: args.showErrorStateInHistory,\n                onItemClick: conversationId => {\n                  setSelectedItemInHistory(conversationId);\n\n                  if (!inFullPage) setShowHistory(false);\n                  setMessages(genAICoachMessageMockData);\n                },\n                selectedItemId: selectedItemInHistory\n              }\n            : undefined\n        }\n      />\n    </StyledContainer>\n  );\n};\n\nGenAICoachDemo.args = {\n  showMessageLoading: false,\n  showErrorInMessage: false,\n  showError: false,\n  guidedMode: false,\n  showActions: false,\n  showLoadingInHistory: false,\n  showErrorStateInHistory: '',\n  showEmptyStateInHistory: false,\n  showFullPageViewWithHistory: false,\n  attachmentsError: ''\n};\n\nGenAICoachDemo.argTypes = {\n  showMessageLoading: { control: { type: 'boolean' } },\n  showErrorInMessage: { control: { type: 'boolean' } },\n  showError: { control: { type: 'boolean' } },\n  guidedMode: { control: { type: 'boolean' } },\n  showActions: { control: { type: 'boolean' } },\n  showLoadingInHistory: { control: { type: 'boolean' } },\n  showErrorStateInHistory: { control: { type: 'text' } },\n  showEmptyStateInHistory: { control: { type: 'boolean' } },\n  showFullPageViewWithHistory: { control: { type: 'boolean' } },\n  attachmentsError: { control: { type: 'text' } }\n};\n\ninterface GenAICoachMessageDemoProps {\n  from?: 'coach' | 'user';\n  showMessageLoading?: boolean;\n  showErrorInMessage?: boolean;\n  showSuggestions?: boolean;\n  showAttachments?: boolean;\n  showFeedback?: boolean;\n  onFeedbackComplete?: () => void;\n  onSend?: () => void;\n}\n\nexport const GenAICoachMessageDemo: StoryFn<GenAICoachMessageDemoProps> = (\n  args: GenAICoachMessageDemoProps\n) => {\n  const [message, setMessage] = useState<GenAIMessageProps>();\n\n  useEffect(() => {\n    const handleFeedback = (messageId: MessageProps['id'], feedback?: string) => {\n      if (feedback) action('Submit')(`${messageId}:${feedback}`);\n      else action('Cancel')(`${messageId}`);\n    };\n\n    let updatedMessage: GenAIMessageProps | undefined = genAICoachMessageMockData.find(\n      v => v.from === args.from\n    );\n\n    if (updatedMessage?.from === 'user' && args.showAttachments) {\n      updatedMessage = {\n        ...updatedMessage,\n        attachments: attachmentsMock\n      };\n    }\n\n    if (updatedMessage?.from === 'coach') {\n      const handleReaction = (id: string, updatedReaction: Reaction) => {\n        setMessage(prevMessage => {\n          return {\n            ...prevMessage!,\n            feedback: {\n              reaction: updatedReaction,\n              onReaction: handleReaction,\n              onFeedbackComplete: args.onFeedbackComplete ? args.onFeedbackComplete : handleFeedback\n            }\n          };\n        });\n      };\n\n      if (args.showMessageLoading)\n        updatedMessage = {\n          from: 'coach',\n          id: createUID(),\n          coachName: updatedMessage.coachName,\n          loading: true\n        };\n      else if (args.showErrorInMessage) {\n        updatedMessage = {\n          from: 'coach',\n          id: createUID(),\n          coachName: updatedMessage.coachName,\n          error: 'Error retreiving response'\n        };\n      } else if (!args.showSuggestions) {\n        updatedMessage = {\n          ...updatedMessage,\n          suggestions: undefined\n        };\n      }\n\n      if (args.showFeedback)\n        updatedMessage = {\n          ...updatedMessage,\n          feedback: {\n            onReaction: handleReaction,\n            reaction: updatedMessage.feedback?.reaction,\n            onFeedbackComplete: args.onFeedbackComplete ? args.onFeedbackComplete : handleFeedback\n          }\n        };\n\n      if (args.onSend) {\n        updatedMessage = { ...updatedMessage, onSend: args.onSend };\n      }\n    }\n\n    setMessage(updatedMessage);\n  }, [\n    args.from,\n    args.showErrorInMessage,\n    args.showFeedback,\n    args.showMessageLoading,\n    args.showSuggestions,\n    args.showAttachments\n  ]);\n  return <StyledCoachList>{message && <GenAIMessage {...message} />}</StyledCoachList>;\n};\n\nGenAICoachMessageDemo.args = {\n  from: 'coach',\n  showMessageLoading: false,\n  showErrorInMessage: false,\n  showSuggestions: false,\n  showFeedback: false,\n  showAttachments: false\n};\n\nGenAICoachMessageDemo.argTypes = {\n  from: { options: ['coach', 'user'], control: { type: 'select' } },\n  showMessageLoading: { control: { type: 'boolean' } },\n  showErrorInMessage: { control: { type: 'boolean' } },\n  showSuggestions: { control: { type: 'boolean' } },\n  showFeedback: { control: { type: 'boolean' } },\n  showAttachments: { control: { type: 'boolean' } }\n};\n"]}