github-issue-tower-defence-management 1.109.0 → 1.109.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +6 -7
  3. package/bin/adapter/entry-points/cli/index.js +10 -10
  4. package/bin/adapter/entry-points/cli/index.js.map +1 -1
  5. package/bin/adapter/entry-points/console/dashboardComposeService.js +7 -6
  6. package/bin/adapter/entry-points/console/dashboardComposeService.js.map +1 -1
  7. package/bin/adapter/entry-points/console/webServer.js +5 -4
  8. package/bin/adapter/entry-points/console/webServer.js.map +1 -1
  9. package/bin/adapter/repositories/GraphqlProjectRepository.js +3 -58
  10. package/bin/adapter/repositories/GraphqlProjectRepository.js.map +1 -1
  11. package/bin/adapter/repositories/issue/GraphqlProjectItemRepository.js +1 -1
  12. package/bin/adapter/repositories/issue/GraphqlProjectItemRepository.js.map +1 -1
  13. package/bin/domain/usecases/dashboard/DashboardProjectCode.js +19 -0
  14. package/bin/domain/usecases/dashboard/DashboardProjectCode.js.map +1 -0
  15. package/package.json +1 -1
  16. package/src/adapter/entry-points/cli/index.ts +14 -14
  17. package/src/adapter/entry-points/console/dashboardComposeService.test.ts +31 -28
  18. package/src/adapter/entry-points/console/dashboardComposeService.ts +13 -10
  19. package/src/adapter/entry-points/console/dashboardEmitterComposerKey.test.ts +175 -0
  20. package/src/adapter/entry-points/console/ui/e2e/consoleTestHarness.ts +1 -1
  21. package/src/adapter/entry-points/console/webServer.test.ts +23 -23
  22. package/src/adapter/entry-points/console/webServer.ts +5 -4
  23. package/src/adapter/repositories/GraphqlProjectRepository.diskCache.test.ts +5 -105
  24. package/src/adapter/repositories/GraphqlProjectRepository.ts +1 -73
  25. package/src/adapter/repositories/issue/GraphqlProjectItemRepository.test.ts +3 -6
  26. package/src/adapter/repositories/issue/GraphqlProjectItemRepository.ts +1 -1
  27. package/src/domain/usecases/dashboard/DashboardProjectCode.test.ts +32 -0
  28. package/src/domain/usecases/dashboard/DashboardProjectCode.ts +20 -0
  29. package/types/adapter/entry-points/console/dashboardComposeService.d.ts +1 -1
  30. package/types/adapter/entry-points/console/dashboardComposeService.d.ts.map +1 -1
  31. package/types/adapter/entry-points/console/webServer.d.ts +2 -2
  32. package/types/adapter/entry-points/console/webServer.d.ts.map +1 -1
  33. package/types/adapter/repositories/GraphqlProjectRepository.d.ts +1 -5
  34. package/types/adapter/repositories/GraphqlProjectRepository.d.ts.map +1 -1
  35. package/types/adapter/repositories/issue/GraphqlProjectItemRepository.d.ts +1 -1
  36. package/types/adapter/repositories/issue/GraphqlProjectItemRepository.d.ts.map +1 -1
  37. package/types/domain/usecases/dashboard/DashboardProjectCode.d.ts +4 -0
  38. package/types/domain/usecases/dashboard/DashboardProjectCode.d.ts.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"GraphqlProjectItemRepository.js","sourceRoot":"","sources":["../../../../src/adapter/repositories/issue/GraphqlProjectItemRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAmC;AACnC,kEAA+D;AAqBlD,QAAA,mBAAmB,GAAG,GAAG,CAAC;AAC1B,QAAA,qCAAqC,GAAG,GAAG,CAAC;AAC5C,QAAA,oDAAoD,GAAG,IAAI,CAAC;AAC5D,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAC3B,QAAA,yBAAyB,GAAG,IAAI,CAAC;AACjC,QAAA,6BAA6B,GAAG,KAAK,CAAC;AACtC,QAAA,yBAAyB,GAAG,MAAM,CAAC;AAEhD,MAAM,KAAK,GAAG,CAAC,EAAU,EAAiB,EAAE,CAC1C,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAEpD,MAAM,6BAA6B,GAAG,CAAC,KAAoB,EAAiB,EAAE;IAC5E,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAChC,OAA4B,EAC5B,OAAe,EACf,KAAa,EACL,EAAE;IACV,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAC5B,iCAAyB,EACzB,qCAA6B,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CACrD,CAAC;IACF,MAAM,iBAAiB,GAAG,6BAA6B,CACrD,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,CACpC,CAAC;IACF,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,GAAG,CACb,iCAAyB,EACzB,IAAI,CAAC,GAAG,CAAC,iCAAyB,EAAE,iBAAiB,GAAG,IAAI,CAAC,CAC9D,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,6BAA6B,CAC7C,OAAO,EAAE,GAAG,CAAC,uBAAuB,CAAC,IAAI,IAAI,CAC9C,CAAC;IACF,MAAM,iBAAiB,GAAG,6BAA6B,CACrD,OAAO,EAAE,GAAG,CAAC,mBAAmB,CAAC,IAAI,IAAI,CAC1C,CAAC;IACF,IAAI,SAAS,KAAK,CAAC,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,iBAAiB,GAAG,IAAI,GAAG,KAAK,CAAC;QAChD,OAAO,IAAI,CAAC,GAAG,CACb,iCAAyB,EACzB,IAAI,CAAC,GAAG,CAAC,iCAAyB,EAAE,MAAM,CAAC,CAC5C,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,iCAAyB,EAAE,aAAa,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAW,EAAE,CACpD,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC;AAE5B,MAAM,sBAAsB,GAAG,KAAK,EACzC,OAAyB,EACb,EAAE;IACd,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,SAAS,CAAC;QACR,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IACE,CAAC,CAAC,KAAK,YAAY,cAAS,CAAC;gBAC7B,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzC,OAAO,IAAI,8BAAsB,EACjC,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,SAAS,GAAG,yBAAyB,CACzC,KAAK,CAAC,QAAQ,CAAC,OAAO,EACtB,OAAO,EACP,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO,CAAC,GAAG,CACT,sCAAsC,KAAK,CAAC,QAAQ,CAAC,MAAM,8BAA8B,SAAS,mBAAmB,OAAO,GAAG,CAAC,IAAI,8BAAsB,GAAG,CAC9J,CAAC;YACF,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AA3BW,QAAA,sBAAsB,0BA2BjC;AAEF,MAAM,4BAA4B,GAAG,CACnC,MAA6B,EACrB,EAAE;IACV,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1C,IACE,UAAU,CAAC,MAAM,IAAI,4DAAoD,EACzE,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,4DAAoD,CAAC,gBAAgB,CAAC;AACtG,CAAC,CAAC;AAEF,MAAa,4BAA6B,SAAQ,2CAAoB;IAAtE;;QACE,gBAAW,GAAG,KAAK,EACjB,SAAiB,EACjB,KAAa,EACb,cAAsB,EACtB,WAAmB,EACU,EAAE;YAC/B,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;;;;;;;;;;;;;EAaX;gBACI,SAAS,EAAE;oBACT,SAAS,EAAE,SAAS;oBACpB,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,cAAc;oBACpB,WAAW,EAAE,WAAW;iBACzB;aACF,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,YAAE;qBACtB,IAAI,CAAC,gCAAgC,EAAE;oBACtC,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;qBACxC;iBACF,CAAC;qBACD,IAAI,EAcD,CAAC;gBAEP,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;wBACnC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBAClD,CAAC,CAAC,2BAA2B,CAAC;oBAChC,MAAM,IAAI,KAAK,CACb,wDAAwD,aAAa,EAAE,CACxE,CAAC;gBACJ,CAAC;gBACD,MAAM,YAAY,GAGZ,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC;gBACxD,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CACrC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CACxC,EAAE,EAAE,CAAC;gBACN,OAAO,aAAa,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;gBAC7D,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;QACF,sBAAiB,GAAG,KAAK,EAAE,SAAiB,EAA0B,EAAE;YACtE,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmH9B,CAAC;YACE,MAAM,WAAW,GAAG,KAAK,EACvB,SAAiB,EACjB,KAAoB,EACpB,KAAa,EAqCZ,EAAE;gBACH,MAAM,YAAY,GAAG;oBACnB,KAAK,EAAE,kBAAkB;oBACzB,SAAS,EAAE;wBACT,SAAS,EAAE,SAAS;wBACpB,KAAK,EAAE,KAAK;wBACZ,KAAK,EAAE,KAAK;qBACb;iBACF,CAAC;gBACF,MAAM,QAAQ,GAAG,MAAM,IAAA,8BAAsB,EAAC,GAAG,EAAE,CACjD,YAAE;qBACC,IAAI,CAAC,gCAAgC,EAAE;oBACtC,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;qBACxC;iBACF,CAAC;qBACD,IAAI,EAuCD,CACP,CAAC;gBACF,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClD,MAAM,IAAI,KAAK,CACb,0BAA0B,4BAA4B,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAC1E,CAAC;gBACJ,CAAC;gBACD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACtD,CAAC;gBACD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;gBAC7B,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACtD,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC;YACF,MAAM,8BAA8B,GAAG,KAAK,EAC1C,KAAoB,EAqCnB,EAAE;gBACH,IAAI,YAAY,GAAG,6CAAqC,CAAC;gBACzD,IAAI,SAAS,GAAY,IAAI,CAAC;gBAC9B,OAAO,YAAY,IAAI,CAAC,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,OAAO,MAAM,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;oBAC3D,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,SAAS,GAAG,KAAK,CAAC;wBAClB,IACE,KAAK,YAAY,cAAS;4BAC1B,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EACxC,CAAC;4BACD,MAAM,KAAK,CAAC;wBACd,CAAC;wBACD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;4BACvB,MAAM,KAAK,CAAC;wBACd,CAAC;wBACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC;wBAC5D,OAAO,CAAC,GAAG,CACT,8CAA8C,YAAY,6BAA6B,SAAS,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC9J,CAAC;wBACF,YAAY,GAAG,SAAS,CAAC;oBAC3B,CAAC;gBACH,CAAC;gBACD,MAAM,SAAS,YAAY,KAAK;oBAC9B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YACnC,CAAC,CAAC;YACF,MAAM,MAAM,GAAkB,EAAE,CAAC;YACjC,IAAI,KAAK,GAAkB,IAAI,CAAC;YAChC,IAAI,WAAW,GAAG,IAAI,CAAC;YACvB,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,kBAAkB,GAAG,CAAC,CAAC;YAC3B,IAAI,SAAS,GAAG,CAAC,CAAC;YAElB,OAAO,WAAW,EAAE,CAAC;gBACnB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACnB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,UAAU,CAAC,OAAO,EAAE,2BAAmB,CAAC,CACzC,CAAC;gBACJ,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,8BAA8B,CAAC,KAAK,CAAC,CAAC;gBACzD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;gBACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC1C,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACxC,kBAAkB,IAAI,SAAS,CAAC,MAAM,CAAC;gBACvC,SAAS,EAAE,CAAC;gBACZ,OAAO,CAAC,GAAG,CACT,2BAA2B,SAAS,YAAY,SAAS,CAAC,MAAM,iBAAiB,kBAAkB,IAAI,UAAU,EAAE,CACpH,CAAC;gBACF,MAAM,YAAY,GAyBZ,SAAS,CAAC;gBAChB,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC5B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;wBACvD,OAAO;oBACT,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC;wBACV,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa;wBACpD,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;wBAC3B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;wBACzB,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;wBACjD,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;wBACrB,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;wBAC5D,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;wBACnE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBAC7D,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;wBACxC,yBAAyB,EACvB,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,KAAK;4BACzC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;6BACxB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE;wBAC1C,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK;6BACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;6BAChC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;4BACb,OAAO;gCACL,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;gCACtB,KAAK,EACH,KAAK,CAAC,IAAI;oCACV,KAAK,CAAC,IAAI;oCACV,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE;oCACxB,KAAK,CAAC,IAAI;oCACV,IAAI;6BACP,CAAC;wBACJ,CAAC,CAAC;qBACL,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,IACE,SAAS,CAAC,MAAM,GAAG,CAAC;oBACpB,CAAC,QAAQ,CAAC,WAAW;oBACrB,kBAAkB,GAAG,UAAU,EAC/B,CAAC;oBACD,MAAM,IAAI,KAAK,CACb,2BAA2B,SAAS,QAAQ,SAAS,CAAC,MAAM,0CAA0C,kBAAkB,IAAI,UAAU,oBAAoB,CAC3J,CAAC;gBACJ,CAAC;gBACD,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;gBACnC,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC;YAC7B,CAAC;YACD,OAAO,CAAC,GAAG,CACT,6CAA6C,UAAU,yBAAyB,kBAAkB,aAAa,MAAM,CAAC,MAAM,EAAE,CAC/H,CAAC;YACF,IAAI,kBAAkB,KAAK,UAAU,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CACb,+BAA+B,UAAU,0BAA0B,kBAAkB,EAAE,CACxF,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QACF,qCAAgC,GAAG,KAAK,EACtC,QAAgB,EAMhB,EAAE;YACF,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACxE,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QAC7D,CAAC,CAAC;QAEF,yBAAoB,GAAG,KAAK,EAC1B,KAAa,EACb,cAAsB,EACtB,WAAmB,EAMnB,EAAE;YACF,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8D9B,CAAC;YACE,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE,kBAAkB;gBACzB,SAAS,EAAE;oBACT,KAAK,EAAE,KAAK;oBACZ,UAAU,EAAE,cAAc;oBAC1B,WAAW,EAAE,WAAW;iBACzB;aACF,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,YAAE;iBACtB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAwBD,CAAC;YAEP,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;oBACnC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClD,CAAC,CAAC,2BAA2B,CAAC;gBAChC,MAAM,IAAI,KAAK,CACb,iEAAiE,aAAa,EAAE,CACjF,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC3B,MAAM,WAAW,GAGX,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBAC3B,OAAO,WAAW,CAAC;YACrB,CAAC;YACD,MAAM,YAAY,GAcZ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;YACpE,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC5B,WAAW,CAAC,IAAI,CAAC;oBACf,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE;oBACjC,UAAU,EACR,IAAI,CAAC,IAAI;wBACT,IAAI,CAAC,IAAI;wBACT,IAAI,CAAC,IAAI;wBACT,IAAI,CAAC,UAAU,EAAE,IAAI;wBACrB,IAAI,CAAC,IAAI,EAAE,KAAK;wBAChB,EAAE;iBACL,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC;QACF,0BAAqB,GAAG,KAAK,EAC3B,QAAgB,EAChB,SAAkB,EACW,EAAE;YAC/B,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACxE,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkKlB,CAAC;YACC,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE;oBACT,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,WAAW;iBACpB;aACF,CAAC;YA+BF,MAAM,QAAQ,GAAG,MAAM,YAAE;iBACtB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAQD,CAAC;YACP,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;oBACnC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClD,CAAC,CAAC,2BAA2B,CAAC;gBAChC,MAAM,IAAI,KAAK,CACb,kEAAkE,aAAa,EAAE,CAClF,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;YACrE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;YAChD,MAAM,IAAI,GAAG,SAAS;gBACpB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,SAAS,CAAC;gBAC7D,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CACV,SAAS;oBACP,CAAC,CAAC,mCAAmC,QAAQ,eAAe,SAAS,EAAE;oBACvE,CAAC,CAAC,mCAAmC,QAAQ,EAAE,CAClD,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa;gBAC/C,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC5C,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;gBACvD,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;gBAC9D,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACxD,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;gBACnC,yBAAyB,EACvB,OAAO,CAAC,uBAAuB,EAAE,KAAK;oBACpC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;qBACxB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE;gBAC1C,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK;qBACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;qBAChC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;oBACb,OAAO;wBACL,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;wBACtB,KAAK,EACH,KAAK,CAAC,IAAI;4BACV,KAAK,CAAC,IAAI;4BACV,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE;4BACxB,KAAK,CAAC,IAAI;4BACV,IAAI;qBACP,CAAC;gBACJ,CAAC,CAAC;aACL,CAAC;QACJ,CAAC,CAAC;QACF,sBAAiB,GAAG,CAAC,KAAa,EAAgC,EAAE;YAClE,OAAO,KAAK,KAAK,QAAQ;gBACvB,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,KAAK,KAAK,QAAQ;oBAClB,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,KAAK,KAAK,MAAM;wBAChB,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,MAAM,CAAC;QACjB,CAAC,CAAC;QAEF,uBAAkB,GAAG,KAAK,EACxB,SAAiB,EACjB,OAAe,EACf,MAAc,EACd,KAIoC,EACrB,EAAE;YACjB,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;;sBAES,SAAS;oBACX,OAAO;mBACR,MAAM;iBACR,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC;;;;MAI9D;aACD,CAAC;YAEF,MAAM,GAAG,GAAG,MAAM,YAAE;iBACjB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAOD,CAAC;YACP,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC;QAEF,sBAAiB,GAAG,KAAK,EACvB,SAAiB,EACjB,OAAe,EACf,MAAc,EACC,EAAE;YACjB,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;;sBAES,SAAS;oBACX,OAAO;mBACR,MAAM;;;;MAInB;aACD,CAAC;YAEF,MAAM,GAAG,GAAG,MAAM,YAAE;iBACjB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAOD,CAAC;YACP,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC;QACF,2BAAsB,GAAG,KAAK,EAC5B,OAAsB,EACtB,OAAe,EACf,KAAsB,EACtB,IAAY,EACG,EAAE;YACjB,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC;QAEF,0BAAqB,GAAG,KAAK,EAC3B,SAAiB,EACjB,MAAc,EACC,EAAE;YACjB,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;;;;QAIL;gBACF,SAAS,EAAE;oBACT,SAAS;oBACT,MAAM;iBACP;aACF,CAAC;YAEF,MAAM,GAAG,GAAG,MAAM,YAAE;iBACjB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAOD,CAAC;YAEP,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC;QAEF,oCAA+B,GAAG,KAAK,EACrC,QAAgB,EAChB,SAAiB,EACF,EAAE;YACjB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;YAC3E,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,iBAAiB,SAAS,EAAE,CACzE,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACtD,CAAC,CAAC;QAEF,sBAAiB,GAAG,KAAK,EACvB,SAAiB,EACjB,QAAgB,EACC,EAAE;YACnB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG;gBAClB,KAAK,EAAE;;;;;;;;;;;QAWL;gBACF,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE;aAChD,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,YAAE;iBACvB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EASD,CAAC;YACP,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,CAAC;YACnE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,MAAM,QAAQ,GAAG;gBACf,KAAK,EAAE;;;;QAIL;gBACF,SAAS,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE;aACpC,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,YAAE;iBACpB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAOD,CAAC;YACP,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC;CAAA;AA3nCD,oEA2nCC"}
1
+ {"version":3,"file":"GraphqlProjectItemRepository.js","sourceRoot":"","sources":["../../../../src/adapter/repositories/issue/GraphqlProjectItemRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAmC;AACnC,kEAA+D;AAqBlD,QAAA,mBAAmB,GAAG,IAAI,CAAC;AAC3B,QAAA,qCAAqC,GAAG,GAAG,CAAC;AAC5C,QAAA,oDAAoD,GAAG,IAAI,CAAC;AAC5D,QAAA,sBAAsB,GAAG,CAAC,CAAC;AAC3B,QAAA,yBAAyB,GAAG,IAAI,CAAC;AACjC,QAAA,6BAA6B,GAAG,KAAK,CAAC;AACtC,QAAA,yBAAyB,GAAG,MAAM,CAAC;AAEhD,MAAM,KAAK,GAAG,CAAC,EAAU,EAAiB,EAAE,CAC1C,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAEpD,MAAM,6BAA6B,GAAG,CAAC,KAAoB,EAAiB,EAAE;IAC5E,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAChC,OAA4B,EAC5B,OAAe,EACf,KAAa,EACL,EAAE;IACV,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAC5B,iCAAyB,EACzB,qCAA6B,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CACrD,CAAC;IACF,MAAM,iBAAiB,GAAG,6BAA6B,CACrD,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,CACpC,CAAC;IACF,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC,GAAG,CACb,iCAAyB,EACzB,IAAI,CAAC,GAAG,CAAC,iCAAyB,EAAE,iBAAiB,GAAG,IAAI,CAAC,CAC9D,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,6BAA6B,CAC7C,OAAO,EAAE,GAAG,CAAC,uBAAuB,CAAC,IAAI,IAAI,CAC9C,CAAC;IACF,MAAM,iBAAiB,GAAG,6BAA6B,CACrD,OAAO,EAAE,GAAG,CAAC,mBAAmB,CAAC,IAAI,IAAI,CAC1C,CAAC;IACF,IAAI,SAAS,KAAK,CAAC,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,iBAAiB,GAAG,IAAI,GAAG,KAAK,CAAC;QAChD,OAAO,IAAI,CAAC,GAAG,CACb,iCAAyB,EACzB,IAAI,CAAC,GAAG,CAAC,iCAAyB,EAAE,MAAM,CAAC,CAC5C,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,iCAAyB,EAAE,aAAa,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAW,EAAE,CACpD,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC;AAE5B,MAAM,sBAAsB,GAAG,KAAK,EACzC,OAAyB,EACb,EAAE;IACd,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,SAAS,CAAC;QACR,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IACE,CAAC,CAAC,KAAK,YAAY,cAAS,CAAC;gBAC7B,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzC,OAAO,IAAI,8BAAsB,EACjC,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,SAAS,GAAG,yBAAyB,CACzC,KAAK,CAAC,QAAQ,CAAC,OAAO,EACtB,OAAO,EACP,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO,CAAC,GAAG,CACT,sCAAsC,KAAK,CAAC,QAAQ,CAAC,MAAM,8BAA8B,SAAS,mBAAmB,OAAO,GAAG,CAAC,IAAI,8BAAsB,GAAG,CAC9J,CAAC;YACF,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AA3BW,QAAA,sBAAsB,0BA2BjC;AAEF,MAAM,4BAA4B,GAAG,CACnC,MAA6B,EACrB,EAAE;IACV,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1C,IACE,UAAU,CAAC,MAAM,IAAI,4DAAoD,EACzE,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,4DAAoD,CAAC,gBAAgB,CAAC;AACtG,CAAC,CAAC;AAEF,MAAa,4BAA6B,SAAQ,2CAAoB;IAAtE;;QACE,gBAAW,GAAG,KAAK,EACjB,SAAiB,EACjB,KAAa,EACb,cAAsB,EACtB,WAAmB,EACU,EAAE;YAC/B,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;;;;;;;;;;;;;EAaX;gBACI,SAAS,EAAE;oBACT,SAAS,EAAE,SAAS;oBACpB,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,cAAc;oBACpB,WAAW,EAAE,WAAW;iBACzB;aACF,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,YAAE;qBACtB,IAAI,CAAC,gCAAgC,EAAE;oBACtC,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;qBACxC;iBACF,CAAC;qBACD,IAAI,EAcD,CAAC;gBAEP,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;oBACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;wBACnC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBAClD,CAAC,CAAC,2BAA2B,CAAC;oBAChC,MAAM,IAAI,KAAK,CACb,wDAAwD,aAAa,EAAE,CACxE,CAAC;gBACJ,CAAC;gBACD,MAAM,YAAY,GAGZ,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC;gBACxD,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CACrC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,SAAS,CACxC,EAAE,EAAE,CAAC;gBACN,OAAO,aAAa,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;gBAC7D,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC,CAAC;QACF,sBAAiB,GAAG,KAAK,EAAE,SAAiB,EAA0B,EAAE;YACtE,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmH9B,CAAC;YACE,MAAM,WAAW,GAAG,KAAK,EACvB,SAAiB,EACjB,KAAoB,EACpB,KAAa,EAqCZ,EAAE;gBACH,MAAM,YAAY,GAAG;oBACnB,KAAK,EAAE,kBAAkB;oBACzB,SAAS,EAAE;wBACT,SAAS,EAAE,SAAS;wBACpB,KAAK,EAAE,KAAK;wBACZ,KAAK,EAAE,KAAK;qBACb;iBACF,CAAC;gBACF,MAAM,QAAQ,GAAG,MAAM,IAAA,8BAAsB,EAAC,GAAG,EAAE,CACjD,YAAE;qBACC,IAAI,CAAC,gCAAgC,EAAE;oBACtC,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;qBACxC;iBACF,CAAC;qBACD,IAAI,EAuCD,CACP,CAAC;gBACF,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClD,MAAM,IAAI,KAAK,CACb,0BAA0B,4BAA4B,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAC1E,CAAC;gBACJ,CAAC;gBACD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACtD,CAAC;gBACD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;gBAC7B,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBACtD,CAAC;gBACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YAC3B,CAAC,CAAC;YACF,MAAM,8BAA8B,GAAG,KAAK,EAC1C,KAAoB,EAqCnB,EAAE;gBACH,IAAI,YAAY,GAAG,6CAAqC,CAAC;gBACzD,IAAI,SAAS,GAAY,IAAI,CAAC;gBAC9B,OAAO,YAAY,IAAI,CAAC,EAAE,CAAC;oBACzB,IAAI,CAAC;wBACH,OAAO,MAAM,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;oBAC3D,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,SAAS,GAAG,KAAK,CAAC;wBAClB,IACE,KAAK,YAAY,cAAS;4BAC1B,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EACxC,CAAC;4BACD,MAAM,KAAK,CAAC;wBACd,CAAC;wBACD,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;4BACvB,MAAM,KAAK,CAAC;wBACd,CAAC;wBACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC;wBAC5D,OAAO,CAAC,GAAG,CACT,8CAA8C,YAAY,6BAA6B,SAAS,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC9J,CAAC;wBACF,YAAY,GAAG,SAAS,CAAC;oBAC3B,CAAC;gBACH,CAAC;gBACD,MAAM,SAAS,YAAY,KAAK;oBAC9B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YACnC,CAAC,CAAC;YACF,MAAM,MAAM,GAAkB,EAAE,CAAC;YACjC,IAAI,KAAK,GAAkB,IAAI,CAAC;YAChC,IAAI,WAAW,GAAG,IAAI,CAAC;YACvB,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,kBAAkB,GAAG,CAAC,CAAC;YAC3B,IAAI,SAAS,GAAG,CAAC,CAAC;YAElB,OAAO,WAAW,EAAE,CAAC;gBACnB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACnB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,UAAU,CAAC,OAAO,EAAE,2BAAmB,CAAC,CACzC,CAAC;gBACJ,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,8BAA8B,CAAC,KAAK,CAAC,CAAC;gBACzD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;gBACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC1C,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;gBACxC,kBAAkB,IAAI,SAAS,CAAC,MAAM,CAAC;gBACvC,SAAS,EAAE,CAAC;gBACZ,OAAO,CAAC,GAAG,CACT,2BAA2B,SAAS,YAAY,SAAS,CAAC,MAAM,iBAAiB,kBAAkB,IAAI,UAAU,EAAE,CACpH,CAAC;gBACF,MAAM,YAAY,GAyBZ,SAAS,CAAC;gBAChB,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC5B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;wBACvD,OAAO;oBACT,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC;wBACV,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa;wBACpD,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;wBAC3B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;wBACzB,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;wBACjD,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;wBACrB,IAAI,EAAE,IAAI;wBACV,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;wBAC5D,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;wBACnE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBAC7D,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;wBACxC,yBAAyB,EACvB,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,KAAK;4BACzC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;6BACxB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE;wBAC1C,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK;6BACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;6BAChC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;4BACb,OAAO;gCACL,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;gCACtB,KAAK,EACH,KAAK,CAAC,IAAI;oCACV,KAAK,CAAC,IAAI;oCACV,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE;oCACxB,KAAK,CAAC,IAAI;oCACV,IAAI;6BACP,CAAC;wBACJ,CAAC,CAAC;qBACL,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,IACE,SAAS,CAAC,MAAM,GAAG,CAAC;oBACpB,CAAC,QAAQ,CAAC,WAAW;oBACrB,kBAAkB,GAAG,UAAU,EAC/B,CAAC;oBACD,MAAM,IAAI,KAAK,CACb,2BAA2B,SAAS,QAAQ,SAAS,CAAC,MAAM,0CAA0C,kBAAkB,IAAI,UAAU,oBAAoB,CAC3J,CAAC;gBACJ,CAAC;gBACD,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;gBACnC,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC;YAC7B,CAAC;YACD,OAAO,CAAC,GAAG,CACT,6CAA6C,UAAU,yBAAyB,kBAAkB,aAAa,MAAM,CAAC,MAAM,EAAE,CAC/H,CAAC;YACF,IAAI,kBAAkB,KAAK,UAAU,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CACb,+BAA+B,UAAU,0BAA0B,kBAAkB,EAAE,CACxF,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QACF,qCAAgC,GAAG,KAAK,EACtC,QAAgB,EAMhB,EAAE;YACF,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACxE,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;QAC7D,CAAC,CAAC;QAEF,yBAAoB,GAAG,KAAK,EAC1B,KAAa,EACb,cAAsB,EACtB,WAAmB,EAMnB,EAAE;YACF,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8D9B,CAAC;YACE,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE,kBAAkB;gBACzB,SAAS,EAAE;oBACT,KAAK,EAAE,KAAK;oBACZ,UAAU,EAAE,cAAc;oBAC1B,WAAW,EAAE,WAAW;iBACzB;aACF,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,YAAE;iBACtB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAwBD,CAAC;YAEP,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;oBACnC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClD,CAAC,CAAC,2BAA2B,CAAC;gBAChC,MAAM,IAAI,KAAK,CACb,iEAAiE,aAAa,EAAE,CACjF,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC3B,MAAM,WAAW,GAGX,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBAC3B,OAAO,WAAW,CAAC;YACrB,CAAC;YACD,MAAM,YAAY,GAcZ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;YACpE,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC5B,WAAW,CAAC,IAAI,CAAC;oBACf,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,EAAE;oBACjC,UAAU,EACR,IAAI,CAAC,IAAI;wBACT,IAAI,CAAC,IAAI;wBACT,IAAI,CAAC,IAAI;wBACT,IAAI,CAAC,UAAU,EAAE,IAAI;wBACrB,IAAI,CAAC,IAAI,EAAE,KAAK;wBAChB,EAAE;iBACL,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC;QACF,0BAAqB,GAAG,KAAK,EAC3B,QAAgB,EAChB,SAAkB,EACW,EAAE;YAC/B,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACxE,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkKlB,CAAC;YACC,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE;oBACT,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,WAAW;iBACpB;aACF,CAAC;YA+BF,MAAM,QAAQ,GAAG,MAAM,YAAE;iBACtB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAQD,CAAC;YACP,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;oBACnC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClD,CAAC,CAAC,2BAA2B,CAAC;gBAChC,MAAM,IAAI,KAAK,CACb,kEAAkE,aAAa,EAAE,CAClF,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;YACrE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC;YAChD,MAAM,IAAI,GAAG,SAAS;gBACpB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,SAAS,CAAC;gBAC7D,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CACV,SAAS;oBACP,CAAC,CAAC,mCAAmC,QAAQ,eAAe,SAAS,EAAE;oBACvE,CAAC,CAAC,mCAAmC,QAAQ,EAAE,CAClD,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa;gBAC/C,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC5C,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;gBACvD,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;gBAC9D,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACxD,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;gBACnC,yBAAyB,EACvB,OAAO,CAAC,uBAAuB,EAAE,KAAK;oBACpC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;qBACxB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE;gBAC1C,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK;qBACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;qBAChC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;oBACb,OAAO;wBACL,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;wBACtB,KAAK,EACH,KAAK,CAAC,IAAI;4BACV,KAAK,CAAC,IAAI;4BACV,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE;4BACxB,KAAK,CAAC,IAAI;4BACV,IAAI;qBACP,CAAC;gBACJ,CAAC,CAAC;aACL,CAAC;QACJ,CAAC,CAAC;QACF,sBAAiB,GAAG,CAAC,KAAa,EAAgC,EAAE;YAClE,OAAO,KAAK,KAAK,QAAQ;gBACvB,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,KAAK,KAAK,QAAQ;oBAClB,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,KAAK,KAAK,MAAM;wBAChB,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,MAAM,CAAC;QACjB,CAAC,CAAC;QAEF,uBAAkB,GAAG,KAAK,EACxB,SAAiB,EACjB,OAAe,EACf,MAAc,EACd,KAIoC,EACrB,EAAE;YACjB,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;;sBAES,SAAS;oBACX,OAAO;mBACR,MAAM;iBACR,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC;;;;MAI9D;aACD,CAAC;YAEF,MAAM,GAAG,GAAG,MAAM,YAAE;iBACjB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAOD,CAAC;YACP,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC;QAEF,sBAAiB,GAAG,KAAK,EACvB,SAAiB,EACjB,OAAe,EACf,MAAc,EACC,EAAE;YACjB,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;;sBAES,SAAS;oBACX,OAAO;mBACR,MAAM;;;;MAInB;aACD,CAAC;YAEF,MAAM,GAAG,GAAG,MAAM,YAAE;iBACjB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAOD,CAAC;YACP,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC;QACF,2BAAsB,GAAG,KAAK,EAC5B,OAAsB,EACtB,OAAe,EACf,KAAsB,EACtB,IAAY,EACG,EAAE;YACjB,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC,CAAC;QAEF,0BAAqB,GAAG,KAAK,EAC3B,SAAiB,EACjB,MAAc,EACC,EAAE;YACjB,MAAM,YAAY,GAAG;gBACnB,KAAK,EAAE;;;;QAIL;gBACF,SAAS,EAAE;oBACT,SAAS;oBACT,MAAM;iBACP;aACF,CAAC;YAEF,MAAM,GAAG,GAAG,MAAM,YAAE;iBACjB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAOD,CAAC;YAEP,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC,CAAC;QAEF,oCAA+B,GAAG,KAAK,EACrC,QAAgB,EAChB,SAAiB,EACF,EAAE;YACjB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACxE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;YAC3E,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,iBAAiB,SAAS,EAAE,CACzE,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACtD,CAAC,CAAC;QAEF,sBAAiB,GAAG,KAAK,EACvB,SAAiB,EACjB,QAAgB,EACC,EAAE;YACnB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG;gBAClB,KAAK,EAAE;;;;;;;;;;;QAWL;gBACF,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE;aAChD,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,YAAE;iBACvB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EASD,CAAC;YACP,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAE,CAAC;YACnE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;YAC3D,CAAC;YAED,MAAM,QAAQ,GAAG;gBACf,KAAK,EAAE;;;;QAIL;gBACF,SAAS,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE;aACpC,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,YAAE;iBACpB,IAAI,CAAC,gCAAgC,EAAE;gBACtC,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;iBACxC;aACF,CAAC;iBACD,IAAI,EAOD,CAAC;YACP,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC;CAAA;AA3nCD,oEA2nCC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toDashboardDisplayLabel = exports.DASHBOARD_PROJECT_NAMES = exports.DASHBOARD_DISPLAY_LABEL_BY_PROJECT_NAME = void 0;
4
+ exports.DASHBOARD_DISPLAY_LABEL_BY_PROJECT_NAME = {
5
+ umino: 'um',
6
+ xmile: 'xm',
7
+ xcare: 'xc',
8
+ utage3: 'ut',
9
+ };
10
+ exports.DASHBOARD_PROJECT_NAMES = Object.keys(exports.DASHBOARD_DISPLAY_LABEL_BY_PROJECT_NAME);
11
+ const toDashboardDisplayLabel = (projectName) => {
12
+ const label = exports.DASHBOARD_DISPLAY_LABEL_BY_PROJECT_NAME[projectName];
13
+ if (label === undefined) {
14
+ throw new Error(`Unknown dashboard project name: ${projectName}. Add it to DASHBOARD_DISPLAY_LABEL_BY_PROJECT_NAME.`);
15
+ }
16
+ return label;
17
+ };
18
+ exports.toDashboardDisplayLabel = toDashboardDisplayLabel;
19
+ //# sourceMappingURL=DashboardProjectCode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DashboardProjectCode.js","sourceRoot":"","sources":["../../../../src/domain/usecases/dashboard/DashboardProjectCode.ts"],"names":[],"mappings":";;;AAAa,QAAA,uCAAuC,GAA2B;IAC7E,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;CACb,CAAC;AAEW,QAAA,uBAAuB,GAAa,MAAM,CAAC,IAAI,CAC1D,+CAAuC,CACxC,CAAC;AAEK,MAAM,uBAAuB,GAAG,CAAC,WAAmB,EAAU,EAAE;IACrE,MAAM,KAAK,GAAG,+CAAuC,CAAC,WAAW,CAAC,CAAC;IACnE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,mCAAmC,WAAW,sDAAsD,CACrG,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AARW,QAAA,uBAAuB,2BAQlC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "github-issue-tower-defence-management",
3
- "version": "1.109.0",
3
+ "version": "1.109.2",
4
4
  "description": "",
5
5
  "main": "bin/index.js",
6
6
  "scripts": {
@@ -33,7 +33,7 @@ import { FetchWebhookRepository } from '../../repositories/FetchWebhookRepositor
33
33
  import { RevertOrphanedPreparationUseCase } from '../../../domain/usecases/RevertOrphanedPreparationUseCase';
34
34
  import * as path from 'path';
35
35
  import {
36
- DEFAULT_DASHBOARD_PROJECT_CODES,
36
+ DEFAULT_DASHBOARD_PROJECT_NAMES,
37
37
  DEFAULT_WEB_PORT,
38
38
  startWebServer,
39
39
  } from '../console/webServer';
@@ -81,7 +81,7 @@ type ServeWebOptions = {
81
81
  inTmuxDataDir?: string;
82
82
  dashboardDir?: string;
83
83
  dashboardDataDir?: string;
84
- dashboardProjectCodes?: string;
84
+ dashboardProjectNames?: string;
85
85
  };
86
86
 
87
87
  const DEFAULT_IN_TMUX_DATA_DIR =
@@ -91,15 +91,15 @@ const DEFAULT_DASHBOARD_DIR = '/home/hiromi/0_workspaces/workspace1/jsonpub';
91
91
 
92
92
  const DEFAULT_DASHBOARD_DATA_DIR: string | null = null;
93
93
 
94
- const parseDashboardProjectCodes = (raw: string | undefined): string[] => {
94
+ const parseDashboardProjectNames = (raw: string | undefined): string[] => {
95
95
  if (raw === undefined) {
96
- return DEFAULT_DASHBOARD_PROJECT_CODES;
96
+ return DEFAULT_DASHBOARD_PROJECT_NAMES;
97
97
  }
98
- const codes = raw
98
+ const names = raw
99
99
  .split(',')
100
- .map((code) => code.trim())
101
- .filter((code) => code.length > 0);
102
- return codes.length > 0 ? codes : DEFAULT_DASHBOARD_PROJECT_CODES;
100
+ .map((name) => name.trim())
101
+ .filter((name) => name.length > 0);
102
+ return names.length > 0 ? names : DEFAULT_DASHBOARD_PROJECT_NAMES;
103
103
  };
104
104
 
105
105
  type SelectOauthTokenOptions = {
@@ -719,8 +719,8 @@ const runServeWeb = async (options: ServeWebOptions): Promise<void> => {
719
719
  const dashboardDir = options.dashboardDir ?? DEFAULT_DASHBOARD_DIR;
720
720
  const dashboardDataDir =
721
721
  options.dashboardDataDir ?? DEFAULT_DASHBOARD_DATA_DIR;
722
- const dashboardProjectCodes = parseDashboardProjectCodes(
723
- options.dashboardProjectCodes,
722
+ const dashboardProjectNames = parseDashboardProjectNames(
723
+ options.dashboardProjectNames,
724
724
  );
725
725
 
726
726
  await startWebServer({
@@ -730,7 +730,7 @@ const runServeWeb = async (options: ServeWebOptions): Promise<void> => {
730
730
  inTmuxDataDir,
731
731
  dashboardDir,
732
732
  dashboardDataDir,
733
- dashboardProjectCodes,
733
+ dashboardProjectNames,
734
734
  githubToken: token,
735
735
  issueRepository,
736
736
  resolveProject,
@@ -764,11 +764,11 @@ const addServeWebOptions = (command: Command): Command =>
764
764
  )
765
765
  .option(
766
766
  '--dashboardDataDir <path>',
767
- 'Directory containing the dashboard data files (projects/<pjcode>.json, machine-status.json, token-status.json); when set and every required file is present the server composes the /tdpm.txt fragment from them at request time, otherwise it falls back to serving the static tdpm.txt from --dashboardDir (unset when not configured)',
767
+ 'Directory containing the dashboard data files (projects/<projectName>.json, machine-status.json, token-status.json); when set and every required file is present the server composes the /tdpm.txt fragment from them at request time, otherwise it falls back to serving the static tdpm.txt from --dashboardDir (unset when not configured)',
768
768
  )
769
769
  .option(
770
- '--dashboardProjectCodes <codes>',
771
- `Comma-separated project codes, in display order, for the dashboard project grid (default: ${DEFAULT_DASHBOARD_PROJECT_CODES.join(',')})`,
770
+ '--dashboardProjectNames <names>',
771
+ `Comma-separated project names, in display order, for the dashboard project grid (default: ${DEFAULT_DASHBOARD_PROJECT_NAMES.join(',')})`,
772
772
  );
773
773
 
774
774
  addServeWebOptions(program.command('serveWeb'))
@@ -22,8 +22,8 @@ describe('buildComposeDashboardInput', () => {
22
22
  it('reads every requested project code in order and yields null for absent files', () => {
23
23
  const dataDir = makeDataDir();
24
24
  try {
25
- writeProject(dataDir, 'um', {
26
- pjcode: 'um',
25
+ writeProject(dataDir, 'umino', {
26
+ pjcode: 'umino',
27
27
  capturedAt: 'x',
28
28
  unread: 3,
29
29
  todo: 1,
@@ -36,7 +36,7 @@ describe('buildComposeDashboardInput', () => {
36
36
  });
37
37
  const input = buildComposeDashboardInput({
38
38
  dashboardDataDir: dataDir,
39
- projectCodes: ['um', 'xc'],
39
+ projectNames: ['umino', 'xcare'],
40
40
  });
41
41
  expect(input.projects).toEqual([
42
42
  {
@@ -62,10 +62,10 @@ describe('buildComposeDashboardInput', () => {
62
62
  it('treats a project file with a missing field as an absent row', () => {
63
63
  const dataDir = makeDataDir();
64
64
  try {
65
- writeProject(dataDir, 'um', { unread: 1, todo: 1 });
65
+ writeProject(dataDir, 'umino', { unread: 1, todo: 1 });
66
66
  const input = buildComposeDashboardInput({
67
67
  dashboardDataDir: dataDir,
68
- projectCodes: ['um'],
68
+ projectNames: ['umino'],
69
69
  });
70
70
  expect(input.projects[0].row).toBeNull();
71
71
  } finally {
@@ -77,10 +77,13 @@ describe('buildComposeDashboardInput', () => {
77
77
  const dataDir = makeDataDir();
78
78
  try {
79
79
  fs.mkdirSync(path.join(dataDir, 'projects'), { recursive: true });
80
- fs.writeFileSync(path.join(dataDir, 'projects', 'um.json'), 'not json');
80
+ fs.writeFileSync(
81
+ path.join(dataDir, 'projects', 'umino.json'),
82
+ 'not json',
83
+ );
81
84
  const input = buildComposeDashboardInput({
82
85
  dashboardDataDir: dataDir,
83
- projectCodes: ['um'],
86
+ projectNames: ['umino'],
84
87
  });
85
88
  expect(input.projects[0].row).toBeNull();
86
89
  } finally {
@@ -104,7 +107,7 @@ describe('buildComposeDashboardInput', () => {
104
107
  );
105
108
  const input = buildComposeDashboardInput({
106
109
  dashboardDataDir: dataDir,
107
- projectCodes: [],
110
+ projectNames: [],
108
111
  });
109
112
  expect(input.machineStatus).toEqual({
110
113
  memPct: 55,
@@ -134,7 +137,7 @@ describe('buildComposeDashboardInput', () => {
134
137
  );
135
138
  const input = buildComposeDashboardInput({
136
139
  dashboardDataDir: dataDir,
137
- projectCodes: [],
140
+ projectNames: [],
138
141
  });
139
142
  expect(input.machineStatus?.cycleMinutes).toBeNull();
140
143
  } finally {
@@ -147,7 +150,7 @@ describe('buildComposeDashboardInput', () => {
147
150
  try {
148
151
  const input = buildComposeDashboardInput({
149
152
  dashboardDataDir: dataDir,
150
- projectCodes: [],
153
+ projectNames: [],
151
154
  });
152
155
  expect(input.machineStatus).toBeNull();
153
156
  } finally {
@@ -179,7 +182,7 @@ describe('buildComposeDashboardInput', () => {
179
182
  );
180
183
  const input = buildComposeDashboardInput({
181
184
  dashboardDataDir: dataDir,
182
- projectCodes: [],
185
+ projectNames: [],
183
186
  });
184
187
  expect(input.tokens).toEqual([
185
188
  {
@@ -221,7 +224,7 @@ describe('buildComposeDashboardInput', () => {
221
224
  );
222
225
  const input = buildComposeDashboardInput({
223
226
  dashboardDataDir: dataDir,
224
- projectCodes: [],
227
+ projectNames: [],
225
228
  });
226
229
  expect(input.tokens[0].color).toBe('Y');
227
230
  expect(input.tokens[0].fiveHourUtilizationPercent).toBeNull();
@@ -235,7 +238,7 @@ describe('buildComposeDashboardInput', () => {
235
238
  try {
236
239
  const input = buildComposeDashboardInput({
237
240
  dashboardDataDir: dataDir,
238
- projectCodes: [],
241
+ projectNames: [],
239
242
  });
240
243
  expect(input.tokens).toEqual([]);
241
244
  } finally {
@@ -248,8 +251,8 @@ describe('composeDashboardText', () => {
248
251
  it('composes the full byte-identical dashboard text from the data files', () => {
249
252
  const dataDir = makeDataDir();
250
253
  try {
251
- writeProject(dataDir, 'um', {
252
- pjcode: 'um',
254
+ writeProject(dataDir, 'umino', {
255
+ pjcode: 'umino',
253
256
  capturedAt: 'x',
254
257
  unread: 3,
255
258
  todo: 1,
@@ -292,7 +295,7 @@ describe('composeDashboardText', () => {
292
295
  expect(
293
296
  composeDashboardText({
294
297
  dashboardDataDir: dataDir,
295
- projectCodes: ['um', 'xc'],
298
+ projectNames: ['umino', 'xcare'],
296
299
  }),
297
300
  ).toBe(
298
301
  '<tt>M55%&nbsp;C62%&nbsp;D89%&nbsp;cy14</tt><br>\n' +
@@ -329,7 +332,7 @@ describe('dashboardComposeFilesPresent', () => {
329
332
  };
330
333
 
331
334
  const minimalProject = {
332
- pjcode: 'um',
335
+ pjcode: 'umino',
333
336
  capturedAt: 'x',
334
337
  unread: 0,
335
338
  todo: 0,
@@ -345,12 +348,12 @@ describe('dashboardComposeFilesPresent', () => {
345
348
  const dataDir = makeDataDir();
346
349
  try {
347
350
  writeMachineAndToken(dataDir);
348
- writeProject(dataDir, 'um', minimalProject);
349
- writeProject(dataDir, 'xc', { ...minimalProject, pjcode: 'xc' });
351
+ writeProject(dataDir, 'umino', minimalProject);
352
+ writeProject(dataDir, 'xcare', { ...minimalProject, pjcode: 'xcare' });
350
353
  expect(
351
354
  dashboardComposeFilesPresent({
352
355
  dashboardDataDir: dataDir,
353
- projectCodes: ['um', 'xc'],
356
+ projectNames: ['umino', 'xcare'],
354
357
  }),
355
358
  ).toBe(true);
356
359
  } finally {
@@ -364,7 +367,7 @@ describe('dashboardComposeFilesPresent', () => {
364
367
  expect(
365
368
  dashboardComposeFilesPresent({
366
369
  dashboardDataDir: dataDir,
367
- projectCodes: ['um'],
370
+ projectNames: ['umino'],
368
371
  }),
369
372
  ).toBe(false);
370
373
  } finally {
@@ -376,11 +379,11 @@ describe('dashboardComposeFilesPresent', () => {
376
379
  const dataDir = makeDataDir();
377
380
  try {
378
381
  writeMachineAndToken(dataDir);
379
- writeProject(dataDir, 'um', minimalProject);
382
+ writeProject(dataDir, 'umino', minimalProject);
380
383
  expect(
381
384
  dashboardComposeFilesPresent({
382
385
  dashboardDataDir: dataDir,
383
- projectCodes: ['um', 'xc'],
386
+ projectNames: ['umino', 'xcare'],
384
387
  }),
385
388
  ).toBe(false);
386
389
  } finally {
@@ -395,11 +398,11 @@ describe('dashboardComposeFilesPresent', () => {
395
398
  path.join(dataDir, 'token-status.json'),
396
399
  JSON.stringify({ tokens: [], capturedAt: 'x' }),
397
400
  );
398
- writeProject(dataDir, 'um', minimalProject);
401
+ writeProject(dataDir, 'umino', minimalProject);
399
402
  expect(
400
403
  dashboardComposeFilesPresent({
401
404
  dashboardDataDir: dataDir,
402
- projectCodes: ['um'],
405
+ projectNames: ['umino'],
403
406
  }),
404
407
  ).toBe(false);
405
408
  } finally {
@@ -421,11 +424,11 @@ describe('dashboardComposeFilesPresent', () => {
421
424
  capturedAt: 'x',
422
425
  }),
423
426
  );
424
- writeProject(dataDir, 'um', minimalProject);
427
+ writeProject(dataDir, 'umino', minimalProject);
425
428
  expect(
426
429
  dashboardComposeFilesPresent({
427
430
  dashboardDataDir: dataDir,
428
- projectCodes: ['um'],
431
+ projectNames: ['umino'],
429
432
  }),
430
433
  ).toBe(false);
431
434
  } finally {
@@ -440,7 +443,7 @@ describe('dashboardComposeFilesPresent', () => {
440
443
  expect(
441
444
  dashboardComposeFilesPresent({
442
445
  dashboardDataDir: dataDir,
443
- projectCodes: [],
446
+ projectNames: [],
444
447
  }),
445
448
  ).toBe(false);
446
449
  } finally {
@@ -6,6 +6,7 @@ import {
6
6
  ComposeDashboardProject,
7
7
  ComposeDashboardUseCase,
8
8
  } from '../../../domain/usecases/dashboard/ComposeDashboardUseCase';
9
+ import { toDashboardDisplayLabel } from '../../../domain/usecases/dashboard/DashboardProjectCode';
9
10
  import { DashboardRow } from '../../../domain/usecases/dashboard/GenerateDashboardRowUseCase';
10
11
  import {
11
12
  TokenStatus,
@@ -14,7 +15,7 @@ import {
14
15
 
15
16
  export type DashboardComposeOptions = {
16
17
  dashboardDataDir: string;
17
- projectCodes: string[];
18
+ projectNames: string[];
18
19
  };
19
20
 
20
21
  const isRecord = (value: unknown): value is Record<string, unknown> =>
@@ -66,10 +67,12 @@ const parseDashboardRow = (value: unknown): DashboardRow | null => {
66
67
 
67
68
  const readProjectRow = (
68
69
  dashboardDataDir: string,
69
- code: string,
70
+ projectName: string,
70
71
  ): DashboardRow | null =>
71
72
  parseDashboardRow(
72
- readJsonFile(path.join(dashboardDataDir, 'projects', `${code}.json`)),
73
+ readJsonFile(
74
+ path.join(dashboardDataDir, 'projects', `${projectName}.json`),
75
+ ),
73
76
  );
74
77
 
75
78
  const parseLoad = (value: unknown): [number, number, number] | null => {
@@ -158,10 +161,10 @@ const readTokenStatuses = (dashboardDataDir: string): TokenStatus[] => {
158
161
  export const buildComposeDashboardInput = (
159
162
  options: DashboardComposeOptions,
160
163
  ): ComposeDashboardInput => {
161
- const projects: ComposeDashboardProject[] = options.projectCodes.map(
162
- (code) => ({
163
- code,
164
- row: readProjectRow(options.dashboardDataDir, code),
164
+ const projects: ComposeDashboardProject[] = options.projectNames.map(
165
+ (projectName) => ({
166
+ code: toDashboardDisplayLabel(projectName),
167
+ row: readProjectRow(options.dashboardDataDir, projectName),
165
168
  }),
166
169
  );
167
170
  return {
@@ -182,14 +185,14 @@ const isExistingFile = (filePath: string): boolean => {
182
185
  export const dashboardComposeFilesPresent = (
183
186
  options: DashboardComposeOptions,
184
187
  ): boolean => {
185
- if (options.projectCodes.length === 0) {
188
+ if (options.projectNames.length === 0) {
186
189
  return false;
187
190
  }
188
191
  const requiredFiles = [
189
192
  path.join(options.dashboardDataDir, 'machine-status.json'),
190
193
  path.join(options.dashboardDataDir, 'token-status.json'),
191
- ...options.projectCodes.map((code) =>
192
- path.join(options.dashboardDataDir, 'projects', `${code}.json`),
194
+ ...options.projectNames.map((projectName) =>
195
+ path.join(options.dashboardDataDir, 'projects', `${projectName}.json`),
193
196
  ),
194
197
  ];
195
198
  return requiredFiles.every((filePath) => isExistingFile(filePath));
@@ -0,0 +1,175 @@
1
+ import * as fs from 'fs';
2
+ import * as os from 'os';
3
+ import * as path from 'path';
4
+ import { Issue } from '../../../domain/entities/Issue';
5
+ import {
6
+ DASHBOARD_PROJECT_NAMES,
7
+ toDashboardDisplayLabel,
8
+ } from '../../../domain/usecases/dashboard/DashboardProjectCode';
9
+ import { writeDashboardRow } from '../handlers/dashboardRowWriter';
10
+ import {
11
+ composeDashboardText,
12
+ dashboardComposeFilesPresent,
13
+ } from './dashboardComposeService';
14
+ import { DEFAULT_DASHBOARD_PROJECT_NAMES } from './webServer';
15
+
16
+ const ASSIGNEE = 'HiromiShikata';
17
+
18
+ let issueCounter = 0;
19
+ const makeIssue = (overrides: Partial<Issue>): Issue => {
20
+ issueCounter += 1;
21
+ return {
22
+ nameWithOwner: 'demo/repo',
23
+ number: issueCounter,
24
+ title: `Issue ${issueCounter}`,
25
+ state: 'OPEN',
26
+ status: null,
27
+ story: null,
28
+ nextActionDate: null,
29
+ nextActionHour: null,
30
+ estimationMinutes: null,
31
+ dependedIssueUrls: [],
32
+ completionDate50PercentConfidence: null,
33
+ url: `https://github.com/demo/repo/issues/${issueCounter}`,
34
+ assignees: [ASSIGNEE],
35
+ labels: [],
36
+ org: 'demo',
37
+ repo: 'repo',
38
+ body: '',
39
+ itemId: `item-${issueCounter}`,
40
+ isPr: false,
41
+ isInProgress: false,
42
+ isClosed: false,
43
+ createdAt: new Date('2026-06-13T08:18:45.000Z'),
44
+ author: 'someone',
45
+ closingIssueReferenceUrls: [],
46
+ ...overrides,
47
+ };
48
+ };
49
+
50
+ describe('dashboard emitter filename matches composer lookup key', () => {
51
+ let dir: string;
52
+
53
+ beforeEach(() => {
54
+ issueCounter = 0;
55
+ dir = fs.mkdtempSync(path.join(os.tmpdir(), 'dashboard-key-'));
56
+ });
57
+
58
+ afterEach(() => {
59
+ fs.rmSync(dir, { recursive: true, force: true });
60
+ });
61
+
62
+ it.each(DASHBOARD_PROJECT_NAMES)(
63
+ 'emits projects/%s.json under the full project name the composer reads',
64
+ (projectName) => {
65
+ writeDashboardRow({
66
+ dashboardDataDir: dir,
67
+ pjcode: projectName,
68
+ assigneeLogin: ASSIGNEE,
69
+ issues: [makeIssue({ status: 'Unread' })],
70
+ generatedAt: '2026-06-26T12:00:00.000Z',
71
+ });
72
+
73
+ const composerLookupPath = path.join(
74
+ dir,
75
+ 'projects',
76
+ `${projectName}.json`,
77
+ );
78
+ expect(fs.existsSync(composerLookupPath)).toBe(true);
79
+ },
80
+ );
81
+
82
+ it('detects compose files present when every project name file exists', () => {
83
+ for (const projectName of DASHBOARD_PROJECT_NAMES) {
84
+ writeDashboardRow({
85
+ dashboardDataDir: dir,
86
+ pjcode: projectName,
87
+ assigneeLogin: ASSIGNEE,
88
+ issues: [makeIssue({ status: 'Unread' })],
89
+ generatedAt: '2026-06-26T12:00:00.000Z',
90
+ });
91
+ }
92
+ fs.writeFileSync(
93
+ path.join(dir, 'machine-status.json'),
94
+ JSON.stringify({
95
+ memPct: 1,
96
+ cpuPct: 2,
97
+ diskPct: 3,
98
+ load: [0, 0, 0],
99
+ cycleMinutes: 1,
100
+ }),
101
+ );
102
+ fs.writeFileSync(
103
+ path.join(dir, 'token-status.json'),
104
+ JSON.stringify({ tokens: [] }),
105
+ );
106
+
107
+ expect(
108
+ dashboardComposeFilesPresent({
109
+ dashboardDataDir: dir,
110
+ projectNames: DEFAULT_DASHBOARD_PROJECT_NAMES,
111
+ }),
112
+ ).toBe(true);
113
+ });
114
+
115
+ it('composes the full grid with no fallback row and shows the 2-char display labels', () => {
116
+ const issuesByName: Record<string, Issue[]> = {
117
+ umino: [makeIssue({ status: 'Unread' }), makeIssue({ status: 'Unread' })],
118
+ xmile: [makeIssue({ status: 'Awaiting Quality Check' })],
119
+ xcare: [makeIssue({ status: 'Awaiting Workspace' })],
120
+ utage3: [makeIssue({ status: 'Todo by human' })],
121
+ };
122
+ for (const projectName of DASHBOARD_PROJECT_NAMES) {
123
+ writeDashboardRow({
124
+ dashboardDataDir: dir,
125
+ pjcode: projectName,
126
+ assigneeLogin: ASSIGNEE,
127
+ issues: issuesByName[projectName],
128
+ generatedAt: '2026-06-26T12:00:00.000Z',
129
+ });
130
+ }
131
+ fs.writeFileSync(
132
+ path.join(dir, 'machine-status.json'),
133
+ JSON.stringify({
134
+ memPct: 55,
135
+ cpuPct: 62,
136
+ diskPct: 93,
137
+ load: [16, 23, 40],
138
+ cycleMinutes: 13,
139
+ }),
140
+ );
141
+ fs.writeFileSync(
142
+ path.join(dir, 'token-status.json'),
143
+ JSON.stringify({ tokens: [] }),
144
+ );
145
+
146
+ const composed = composeDashboardText({
147
+ dashboardDataDir: dir,
148
+ projectNames: DEFAULT_DASHBOARD_PROJECT_NAMES,
149
+ });
150
+
151
+ const wrap = (line: string): string =>
152
+ `<tt>${line.replace(/ /g, '&nbsp;')}</tt><br>`;
153
+ const expected =
154
+ [
155
+ wrap('M55% C62% D93% cy13'),
156
+ wrap('LA 16 23 40'),
157
+ wrap('pj unr tdo aqc fal prp aws dep'),
158
+ wrap(
159
+ `🟢${toDashboardDisplayLabel('umino')} 2 0 0 0 0 0 0`,
160
+ ),
161
+ wrap(
162
+ `🟢${toDashboardDisplayLabel('xmile')} 0 0 1 0 0 0 0`,
163
+ ),
164
+ wrap(
165
+ `🟢${toDashboardDisplayLabel('xcare')} 0 0 0 0 0 1 0`,
166
+ ),
167
+ wrap(
168
+ `🟢${toDashboardDisplayLabel('utage3')} 0 1 0 0 0 0 0`,
169
+ ),
170
+ wrap(''),
171
+ ].join('\n') + '\n';
172
+ expect(composed).toBe(expected);
173
+ expect(composed).not.toContain('--');
174
+ });
175
+ });
@@ -372,7 +372,7 @@ export const startConsoleE2eHarness = async (): Promise<ConsoleE2eHarness> => {
372
372
  inTmuxDataDir: null,
373
373
  dashboardDir: null,
374
374
  dashboardDataDir: null,
375
- dashboardProjectCodes: [],
375
+ dashboardProjectNames: [],
376
376
  port: 0,
377
377
  });
378
378