@knpkv/jira-clockify 0.4.0 → 0.5.0

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.
@@ -153,6 +153,20 @@ const MockHttpClientFailLayer = Layer.succeed(HttpClient.HttpClient, HttpClient.
153
153
  status: 400,
154
154
  headers: { "content-type": "application/json" }
155
155
  })))));
156
+ // HttpClient that fails the Jira worklog POST `failures` times, then succeeds —
157
+ // models a transient Jira outage so a retry can recover.
158
+ const makeFlakyHttpClientLayer = (failures) => {
159
+ let calls = 0;
160
+ return Layer.succeed(HttpClient.HttpClient, HttpClient.make((request) => Effect.succeed(HttpClientResponse.fromWeb(request, calls++ < failures
161
+ ? new Response(JSON.stringify({ errorMessages: ["nope"] }), {
162
+ status: 400,
163
+ headers: { "content-type": "application/json" }
164
+ })
165
+ : new Response(JSON.stringify({ id: "wl-1" }), {
166
+ status: 201,
167
+ headers: { "content-type": "application/json" }
168
+ })))));
169
+ };
156
170
  const TestLayer = timerLayer.pipe(Layer.provide(MockClockifyLayer), Layer.provide(MockJiraApiClientLayer), Layer.provide(MockClockifyAuthLayer), Layer.provide(MockConfigLayer), Layer.provide(MockStateWriterLayer), Layer.provide(MockJiraAuthLayer), Layer.provide(MockHttpClientLayer));
157
171
  // Build a TimerService layer with overridden Clockify / HttpClient mocks.
158
172
  const makeTestLayer = (clockify = mockClockify, httpLayer = MockHttpClientLayer) => timerLayer.pipe(Layer.provide(Layer.succeed(ClockifyApiClient, clockify)), Layer.provide(MockJiraApiClientLayer), Layer.provide(MockClockifyAuthLayer), Layer.provide(MockConfigLayer), Layer.provide(MockStateWriterLayer), Layer.provide(MockJiraAuthLayer), Layer.provide(httpLayer));
@@ -468,6 +482,53 @@ describe("TimerService", () => {
468
482
  expect(createdEntries).toHaveLength(0);
469
483
  }).pipe(Effect.provide(TestLayer)));
470
484
  });
485
+ describe("worklog retry", () => {
486
+ // A successful stop leaves nothing to retry — worklog must be null.
487
+ it.effect("stop exposes no worklog params when Jira succeeds", () => Effect.gen(function* () {
488
+ resetCaptures();
489
+ const svc = yield* TimerService;
490
+ yield* svc.start(makeTicket());
491
+ const result = yield* svc.stop({ comment: "done" });
492
+ expect(result.jiraWorklogLogged).toBe(true);
493
+ expect(result.worklog).toBeNull();
494
+ }).pipe(Effect.provide(TestLayer)));
495
+ // A partial stop (Clockify saved, Jira failed) must surface the params needed to retry.
496
+ it.effect("stop exposes worklog params when Jira fails", () => Effect.gen(function* () {
497
+ resetCaptures();
498
+ const svc = yield* TimerService;
499
+ yield* svc.start(makeTicket());
500
+ const result = yield* svc.stop({ comment: "done" });
501
+ expect(result.clockifyLogged).toBe(true);
502
+ expect(result.jiraWorklogLogged).toBe(false);
503
+ expect(result.worklog).not.toBeNull();
504
+ expect(result.worklog?.ticketKey).toBe("PROJ-123");
505
+ expect(result.worklog?.comment).toBe("done");
506
+ }).pipe(Effect.provide(makeTestLayer(mockClockify, MockHttpClientFailLayer))));
507
+ // logWorklog reposts in isolation and succeeds once Jira recovers — the retry round-trip.
508
+ it.effect("logWorklog recovers after a transient Jira failure", () => Effect.gen(function* () {
509
+ resetCaptures();
510
+ const svc = yield* TimerService;
511
+ yield* svc.start(makeTicket());
512
+ const result = yield* svc.stop({ comment: "done" });
513
+ expect(result.jiraWorklogLogged).toBe(false);
514
+ expect(result.worklog).not.toBeNull();
515
+ // Jira was flaky on the first POST (during stop) but recovers on retry.
516
+ const retried = yield* svc.logWorklog(result.worklog);
517
+ expect(retried).toBe(true);
518
+ }).pipe(Effect.provide(makeTestLayer(mockClockify, makeFlakyHttpClientLayer(1)))));
519
+ // A retry against a still-down Jira reports failure rather than crashing.
520
+ it.effect("logWorklog returns false while Jira is still failing", () => Effect.gen(function* () {
521
+ resetCaptures();
522
+ const svc = yield* TimerService;
523
+ const retried = yield* svc.logWorklog({
524
+ ticketKey: "PROJ-123",
525
+ startedAt: new Date("2025-01-01T09:00:00.000Z"),
526
+ durationSeconds: 600,
527
+ comment: "done"
528
+ });
529
+ expect(retried).toBe(false);
530
+ }).pipe(Effect.provide(makeTestLayer(mockClockify, MockHttpClientFailLayer))));
531
+ });
471
532
  describe("start backdating", () => {
472
533
  // A backdated start records the corrected start time on the Clockify entry and state
473
534
  it.effect("uses the provided startedAt instead of now", () => Effect.gen(function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"TimerService.test.js","sourceRoot":"","sources":["../../test/TimerService.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TimerService.test.js","sourceRoot":"","sources":["../../test/TimerService.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAA;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACnD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAA;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAE5D,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAE/F,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,MAAM,YAAY,GAAG,MAAM,CAAA;AAC3B,MAAM,OAAO,GAAG,QAAQ,CAAA;AAExB,MAAM,UAAU,GAAG,CAAC,SAA+B,EAAc,EAAE,CAAC,CAAC;IACnE,GAAG,EAAE,UAAU;IACf,OAAO,EAAE,gBAAgB;IACzB,MAAM,EAAE,aAAa;IACrB,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,KAAK;IACX,MAAM,EAAE,CAAC,SAAS,CAAC;IACnB,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;IACjC,GAAG,SAAS;CACb,CAAC,CAAA;AAEF,IAAI,cAAc,GAAoD,EAAE,CAAA;AACxE,IAAI,cAAc,GAAgE,EAAE,CAAA;AACpF,IAAI,cAAc,GAA+C,EAAE,CAAA;AACnE,IAAI,aAAa,GAAoE,EAAE,CAAA;AAEvF,MAAM,aAAa,GAAG,GAAG,EAAE;IACzB,cAAc,GAAG,EAAE,CAAA;IACnB,cAAc,GAAG,EAAE,CAAA;IACnB,cAAc,GAAG,EAAE,CAAA;IACnB,aAAa,GAAG,EAAE,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,EAAU,EAAE,WAAmB,EAAE,SAAe,EAAE,SAAkB,EAAE,EAAE,CAAC,CAAC;IAC/F,EAAE;IACF,WAAW;IACX,QAAQ,EAAE,IAAa;IACvB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,MAAM,EAAE,OAAO;IACf,WAAW,EAAE,YAAY;IACzB,YAAY,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE;IAChD,MAAM,EAAE,EAAmB;IAC3B,IAAI,EAAE,SAAkB;IACxB,QAAQ,EAAE,KAAK;CAChB,CAAC,CAAA;AAEF,MAAM,YAAY,GAA2B;IAC3C,GAAG,EAAE,EAAS;IACd,OAAO,EAAE,GAAG,EAAE,CACZ,MAAM,CAAC,OAAO,CAAC;QACb,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,SAAS;QAChB,eAAe,EAAE,YAAY;QAC7B,gBAAgB,EAAE,YAAY;QAC9B,cAAc,EAAE,EAAE;QAClB,MAAM,EAAE,QAAQ;KACjB,CAAC;IACJ,aAAa,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACrF,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACrC,gBAAgB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IAC5C,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE;QACvC,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;QAC5C,OAAO,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC7F,CAAC;IACD,SAAS,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;QACzC,aAAa,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACnD,OAAO,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;IACjE,CAAC;IACD,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACxC,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IAC3C,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACjC,SAAS,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACjH,eAAe,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAC7B,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACzF,YAAY,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,EAAE,2BAA2B,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACrG,eAAe,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE;QACnC,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAA;QACxC,OAAO,MAAM,CAAC,IAAI,CAAA;IACpB,CAAC;IACD,eAAe,EAAE,CAAC,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE;QAC3C,cAAc,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAChD,OAAO,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;IAC1D,CAAC;CACF,CAAA;AAED,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAA;AAExE,0FAA0F;AAC1F,MAAM,sBAAsB,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,EAAE,EAAE,EAAE,EAAS,CAAC,CAAA;AAE9E,MAAM,qBAAqB,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE;IACxD,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC;QACxB,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5B,WAAW,EAAE,YAAY;QACzB,MAAM,EAAE,OAAO;QACf,OAAO,EAAE,6BAA6B;KACvC,CAAC;IACF,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI;IACvB,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;CACnC,CAAC,CAAA;AAEF,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE;IACnD,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC;QAClB,UAAU,EAAE,EAAE;QACd,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,IAAI;QACjB,gBAAgB,EAAE,IAAI;QACtB,kBAAkB,EAAE,IAAI;QACxB,eAAe,EAAE,IAAI;KACtB,CAAC;IACF,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI;IACtB,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;CACvC,CAAC,CAAA;AAEF,IAAI,aAAa,GAAmB,EAAE,CAAA;AACtC,IAAI,OAAO,GAAG,KAAK,CAAA;AAEnB,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE;IACtD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACf,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC,CAAC;IACJ,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;QACnB,MAAM,EAAE,KAAK;QACb,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI;QACf,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,CAAC;QACV,eAAe,EAAE,IAAI;KACtB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACtB,OAAO,GAAG,IAAI,CAAA;IAChB,CAAC,CAAC;CACH,CAAC,CAAA;AAEF,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;IAChD,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI;IAC5B,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IACxC,KAAK,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI;IACxB,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI;IACzB,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACjE,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;IAC3C,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,4BAA4B,CAAC;IAC9D,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1C,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;CACvC,CAAC,CAAA;AAEF,yDAAyD;AACzD,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,CACvC,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1B,MAAM,CAAC,OAAO,CACZ,kBAAkB,CAAC,OAAO,CACxB,OAAO,EACP,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;IAC3C,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;CAChD,CAAC,CACH,CACF,CACF,CACF,CAAA;AAED,mFAAmF;AACnF,MAAM,uBAAuB,GAAG,KAAK,CAAC,OAAO,CAC3C,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1B,MAAM,CAAC,OAAO,CACZ,kBAAkB,CAAC,OAAO,CACxB,OAAO,EACP,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;IACxD,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;CAChD,CAAC,CACH,CACF,CACF,CACF,CAAA;AAED,gFAAgF;AAChF,yDAAyD;AACzD,MAAM,wBAAwB,GAAG,CAAC,QAAgB,EAAE,EAAE;IACpD,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,OAAO,KAAK,CAAC,OAAO,CAClB,UAAU,CAAC,UAAU,EACrB,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1B,MAAM,CAAC,OAAO,CACZ,kBAAkB,CAAC,OAAO,CACxB,OAAO,EACP,KAAK,EAAE,GAAG,QAAQ;QAChB,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAC1D,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;SAChD,CAAC;QACF,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;YAC7C,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;SAChD,CAAC,CACL,CACF,CACF,CACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAC/B,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAChC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,EACrC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,EACpC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAC9B,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,EACnC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAChC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CACnC,CAAA;AAED,0EAA0E;AAC1E,MAAM,aAAa,GAAG,CACpB,WAAmC,YAAY,EAC/C,YAAgD,mBAAmB,EACnE,EAAE,CACF,UAAU,CAAC,IAAI,CACb,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,EACzD,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,EACrC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,EACpC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAC9B,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,EACnC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAChC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CACzB,CAAA;AAEH,8EAA8E;AAC9E,QAAQ;AACR,8EAA8E;AAE9E,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,6EAA6E;QAC7E,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,EAAE,CAC5B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAChC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAA;QACpC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,6FAA6F;QAC7F,EAAE,CAAC,MAAM,CAAC,yBAAyB,EAAE,GAAG,EAAE,CACxC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACxC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAC5C,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACtC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC7C,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACtC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAA;QACxD,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,kFAAkF;QAClF,EAAE,CAAC,MAAM,CAAC,2BAA2B,EAAE,GAAG,EAAE,CAC1C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACxC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAChC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAA;YAClC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,8EAA8E;QAC9E,EAAE,CAAC,MAAM,CAAC,iCAAiC,EAAE,GAAG,EAAE,CAChD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAChD,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;YACvC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,6FAA6F;QAC7F,EAAE,CAAC,MAAM,CAAC,4CAA4C,EAAE,GAAG,EAAE,CAC3D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;YACjE,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAEtC,oDAAoD;YACpD,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;YAClE,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACtC,yDAAyD;YACzD,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACtC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACtC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACtC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,kGAAkG;QAClG,EAAE,CAAC,MAAM,CAAC,mDAAmD,EAAE,GAAG,EAAE,CAClE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,mEAAmE;YACnE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,sFAAsF;QACtF,EAAE,CAAC,MAAM,CAAC,4CAA4C,EAAE,GAAG,EAAE,CAC3D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAA;YAClB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAChC,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACtC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,8EAA8E;QAC9E,EAAE,CAAC,MAAM,CAAC,oCAAoC,EAAE,GAAG,EAAE,CACnD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACjD,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;YACvC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;QACzD,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,6FAA6F;QAC7F,EAAE,CAAC,MAAM,CAAC,qCAAqC,EAAE,GAAG,EAAE;YACpD,MAAM,YAAY,GAAG,aAAa,CAChC,OAAO,EACP,6BAA6B,EAC7B,IAAI,IAAI,CAAC,sBAAsB,CAAC,EAChC,SAAS,CACV,CAAA;YAED,MAAM,mBAAmB,GAA2B;gBAClD,GAAG,YAAY;gBACf,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;gBACnD,WAAW,EAAE,GAAG,EAAE,CAChB,MAAM,CAAC,OAAO,CAAC,CAAC;wBACd,EAAE,EAAE,SAAS;wBACb,IAAI,EAAE,WAAW;wBACjB,KAAK,EAAE,EAAE;wBACT,QAAQ,EAAE,KAAK;wBACf,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,IAAI;wBACZ,WAAW,EAAE,YAAY;wBACzB,IAAI,EAAE,EAAE;qBACT,CAAC,CAAC;aACN,CAAA;YAED,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACzB,aAAa,EAAE,CAAA;gBACf,aAAa,GAAG,EAAE,CAAA;gBAClB,OAAO,GAAG,KAAK,CAAA;gBAEf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;gBAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,aAAa,CAAA;gBAExB,sEAAsE;gBACtE,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC/B,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;gBAC/C,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBAC3C,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACzC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAA;QAC7D,CAAC,CAAC,CAAA;QAEF,2FAA2F;QAC3F,EAAE,CAAC,MAAM,CAAC,kCAAkC,EAAE,GAAG,EAAE;YACjD,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,EAAE,oBAAoB,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAA;YAEnG,MAAM,mBAAmB,GAA2B;gBAClD,GAAG,YAAY;gBACf,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;aACpD,CAAA;YAED,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACzB,aAAa,EAAE,CAAA;gBACf,aAAa,GAAG,EAAE,CAAA;gBAElB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;gBAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,aAAa,CAAA;gBAExB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC/B,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;gBACvC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACzC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAA;QAC7D,CAAC,CAAC,CAAA;QAEF,+FAA+F;QAC/F,EAAE,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,EAAE,CAC5C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,aAAa,CAAA;YACxB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAClC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,2FAA2F;QAC3F,EAAE,CAAC,MAAM,CAAC,iDAAiD,EAAE,GAAG,EAAE,CAChE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;YAC/E,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACzC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACxC,uEAAuE;YACvE,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACtC,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAE,CAAC,MAAoD,CAAA;YACtF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;YAC9C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,yFAAyF;QACzF,EAAE,CAAC,MAAM,CAAC,gDAAgD,EAAE,GAAG,EAAE,CAC/D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,+FAA+F;QAC/F,EAAE,CAAC,MAAM,CAAC,0DAA0D,EAAE,GAAG,EAAE,CACzE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAA;YAClD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAA;YAEnF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACxC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YACtC,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAE,CAAC,MAA6D,CAAA;YAC/F,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAA;YAC9C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;YAC9E,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,uFAAuF;QACvF,EAAE,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,EAAE,CAC5C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,CAAA;YACzG,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAChC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAA;QACpC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,yEAAyE;QACzE,EAAE,CAAC,MAAM,CAAC,iDAAiD,EAAE,GAAG,EAAE,CAChE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE;gBAChD,KAAK,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;gBAC3C,eAAe,EAAE,GAAG;gBACpB,SAAS,EAAE,QAAQ;gBACnB,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAA;YACF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACnC,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAE,CAAC,MAAoD,CAAA;YACtF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,mFAAmF;QACnF,EAAE,CAAC,MAAM,CAAC,uDAAuD,EAAE,GAAG,EAAE,CACtE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE;gBAChD,KAAK,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;gBAC3C,eAAe,EAAE,GAAG;aACrB,CAAC,CAAA;YACF,sEAAsE;YACtE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACzC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CACpB,aAAa,CAAC;YACZ,GAAG,YAAY;YACf,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,gBAAgB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;SAC1G,EAAE,mBAAmB,CAAC,CACxB,CAAC,CAAC,CAAA;QAEL,+EAA+E;QAC/E,EAAE,CAAC,MAAM,CAAC,6DAA6D,EAAE,GAAG,EAAE,CAC5E,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE;gBAChD,KAAK,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;gBAC3C,eAAe,EAAE,GAAG;aACrB,CAAC,CAAA;YACF,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACxC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAA;QAEhF,2EAA2E;QAC3E,wEAAwE;QACxE,EAAE,CAAC,MAAM,CAAC,0DAA0D,EAAE,GAAG,EAAE,CACzE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE;gBAChD,KAAK,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;gBAC3C,eAAe,EAAE,EAAE;aACpB,CAAC,CAAA;YACF,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,mEAAmE;QACnE,EAAE,CAAC,MAAM,CAAC,4CAA4C,EAAE,GAAG,EAAE,CAC3D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;YACpD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC3G,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;YACxC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;YACxC,8CAA8C;YAC9C,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACxC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,yEAAyE;QACzE,+DAA+D;QAC/D,EAAE,CAAC,MAAM,CAAC,wDAAwD,EAAE,GAAG,EAAE,CACvE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;YAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE;gBAC/C,KAAK,EAAE,cAAc;gBACrB,eAAe,EAAE,EAAE,GAAG,EAAE;aACzB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACpB,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;YACxC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAA;YAC3D,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QACxC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,oEAAoE;QACpE,EAAE,CAAC,MAAM,CAAC,mDAAmD,EAAE,GAAG,EAAE,CAClE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YACnD,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;QACnC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAErC,wFAAwF;QACxF,EAAE,CAAC,MAAM,CAAC,6CAA6C,EAAE,GAAG,EAAE,CAC5D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YACnD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACxC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;YACrC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAA;QAEhF,0FAA0F;QAC1F,EAAE,CAAC,MAAM,CAAC,oDAAoD,EAAE,GAAG,EAAE,CACnE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;YAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;YACnD,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;YACrC,wEAAwE;YACxE,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,OAAQ,CAAC,CAAA;YACtD,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,EAAE,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAEpF,0EAA0E;QAC1E,EAAE,CAAC,MAAM,CAAC,sDAAsD,EAAE,GAAG,EAAE,CACrE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC;gBACpC,SAAS,EAAE,UAAU;gBACrB,SAAS,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;gBAC/C,eAAe,EAAE,GAAG;gBACpB,OAAO,EAAE,MAAM;aAChB,CAAC,CAAA;YACF,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAA;IAClF,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,qFAAqF;QACrF,EAAE,CAAC,MAAM,CAAC,4CAA4C,EAAE,GAAG,EAAE,CAC3D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,aAAa,EAAE,CAAA;YACf,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,GAAG,KAAK,CAAA;YACf,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;YAC/B,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAA;YACtD,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;YAC7C,MAAM,MAAM,GAAG,cAAc,CAAC,CAAC,CAAE,CAAC,MAA2B,CAAA;YAC7D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAA;YAClD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAA;QACtE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { describe, expect, it } from "@effect/vitest";
2
2
  import { JiraApiClient } from "@knpkv/jira-api-client";
3
+ import { JiraAuth } from "@knpkv/jira-cli/JiraAuth";
3
4
  import * as Effect from "effect/Effect";
4
5
  import * as Layer from "effect/Layer";
5
6
  import { fetchTicketByKey } from "../src/cli/fetchTicket.js";
@@ -17,6 +18,15 @@ const makeJiraLayer = (resolve) => Layer.succeed(JiraApiClient, {
17
18
  }
18
19
  }
19
20
  });
21
+ // JiraAuth mock — only `isLoggedIn` matters for fetchTicketByKey.
22
+ const makeAuthLayer = (loggedIn) => Layer.succeed(JiraAuth, {
23
+ isLoggedIn: () => Effect.succeed(loggedIn)
24
+ });
25
+ // JiraAuth whose isLoggedIn fails with a platform error (e.g. unreadable token file).
26
+ const makeAuthFailLayer = (message) => Layer.succeed(JiraAuth, {
27
+ isLoggedIn: () => Effect.fail({ message })
28
+ });
29
+ const LoggedIn = makeAuthLayer(true);
20
30
  const issueFixture = {
21
31
  key: "PROJ-7",
22
32
  fields: {
@@ -46,17 +56,34 @@ describe("fetchTicketByKey", () => {
46
56
  expect(result.ticket.assignee).toBe("Dev");
47
57
  expect(result.ticket.type).toBe("Story");
48
58
  expect(result.ticket.labels).toEqual(["backend", "api"]);
49
- }).pipe(Effect.provide(makeJiraLayer(() => ({ data: issueFixture, response: { ok: true, status: 200 } })))));
59
+ }).pipe(Effect.provide(makeJiraLayer(() => ({ data: issueFixture, response: { ok: true, status: 200 } }))), Effect.provide(LoggedIn)));
50
60
  // A 404 must map to NotFound (genuine "no such issue")
51
61
  it.effect("returns NotFound on a 404", () => Effect.gen(function* () {
52
62
  const result = yield* fetchTicketByKey("PROJ-404");
53
63
  expect(result._tag).toBe("NotFound");
54
- }).pipe(Effect.provide(makeJiraLayer(() => ({ error: { errorMessages: ["not found"] }, response: { ok: false, status: 404 } })))));
64
+ }).pipe(Effect.provide(makeJiraLayer(() => ({ error: { errorMessages: ["not found"] }, response: { ok: false, status: 404 } }))), Effect.provide(LoggedIn)));
55
65
  // A non-404 failure (auth/network) must map to FetchError, NOT NotFound —
56
66
  // so a 401 is never reported to the user as "Ticket not found".
57
67
  it.effect("returns FetchError on a 401 (distinct from NotFound)", () => Effect.gen(function* () {
58
68
  const result = yield* fetchTicketByKey("PROJ-1");
59
69
  expect(result._tag).toBe("FetchError");
60
- }).pipe(Effect.provide(makeJiraLayer(() => ({ error: { errorMessages: ["unauthorized"] }, response: { ok: false, status: 401 } })))));
70
+ }).pipe(Effect.provide(makeJiraLayer(() => ({ error: { errorMessages: ["unauthorized"] }, response: { ok: false, status: 401 } }))), Effect.provide(LoggedIn)));
71
+ // Not logged in must short-circuit to NotLoggedIn — an unauthenticated request
72
+ // 404s on a malformed URL and would otherwise masquerade as "ticket not found".
73
+ it.effect("returns NotLoggedIn when not authenticated", () => Effect.gen(function* () {
74
+ const result = yield* fetchTicketByKey("PROJ-7");
75
+ expect(result._tag).toBe("NotLoggedIn");
76
+ }).pipe(
77
+ // The Jira client would succeed, but the login check must short-circuit first.
78
+ Effect.provide(makeJiraLayer(() => ({ data: issueFixture, response: { ok: true, status: 200 } }))), Effect.provide(makeAuthLayer(false))));
79
+ // A genuine platform error reading the token must NOT masquerade as NotLoggedIn —
80
+ // it is a real failure and should route to FetchError (only a clean absent token is NotLoggedIn).
81
+ it.effect("returns FetchError when the login check fails with a platform error", () => Effect.gen(function* () {
82
+ const result = yield* fetchTicketByKey("PROJ-7");
83
+ expect(result._tag).toBe("FetchError");
84
+ if (result._tag !== "FetchError")
85
+ return;
86
+ expect(result.message).toBe("token file unreadable");
87
+ }).pipe(Effect.provide(makeJiraLayer(() => ({ data: issueFixture, response: { ok: true, status: 200 } }))), Effect.provide(makeAuthFailLayer("token file unreadable"))));
61
88
  });
62
89
  //# sourceMappingURL=fetchTicket.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetchTicket.test.js","sourceRoot":"","sources":["../../test/fetchTicket.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetchTicket.test.js","sourceRoot":"","sources":["../../test/fetchTicket.test.ts"],"names":[],"mappings":"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"}