@knpkv/codecommit-core 0.13.0 → 0.15.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.
Files changed (162) hide show
  1. package/dist/AwsClient/AwsClientGated.d.ts.map +1 -1
  2. package/dist/AwsClient/AwsClientGated.js +3 -3
  3. package/dist/AwsClient/AwsClientGated.js.map +1 -1
  4. package/dist/AwsClient/getPullRequests.d.ts +1 -0
  5. package/dist/AwsClient/getPullRequests.d.ts.map +1 -1
  6. package/dist/AwsClient/getPullRequests.js +10 -7
  7. package/dist/AwsClient/getPullRequests.js.map +1 -1
  8. package/dist/AwsClient/index.d.ts +1 -0
  9. package/dist/AwsClient/index.d.ts.map +1 -1
  10. package/dist/AwsClient/internal.d.ts +29 -8
  11. package/dist/AwsClient/internal.d.ts.map +1 -1
  12. package/dist/AwsClient/internal.js +5 -12
  13. package/dist/AwsClient/internal.js.map +1 -1
  14. package/dist/AwsClientConfig/internal/ProfileCredentialProvider.d.ts +18 -0
  15. package/dist/AwsClientConfig/internal/ProfileCredentialProvider.d.ts.map +1 -0
  16. package/dist/AwsClientConfig/internal/ProfileCredentialProvider.js +7 -0
  17. package/dist/AwsClientConfig/internal/ProfileCredentialProvider.js.map +1 -0
  18. package/dist/AwsClientConfig.d.ts +13 -22
  19. package/dist/AwsClientConfig.d.ts.map +1 -1
  20. package/dist/AwsClientConfig.js +37 -0
  21. package/dist/AwsClientConfig.js.map +1 -1
  22. package/dist/CacheService/Database.d.ts +1 -1
  23. package/dist/CacheService/Database.d.ts.map +1 -1
  24. package/dist/CacheService/Database.js +10 -2
  25. package/dist/CacheService/Database.js.map +1 -1
  26. package/dist/CacheService/diff.d.ts +5 -2
  27. package/dist/CacheService/diff.d.ts.map +1 -1
  28. package/dist/CacheService/diff.js +31 -13
  29. package/dist/CacheService/diff.js.map +1 -1
  30. package/dist/CacheService/migrations/0017_sandbox_region.d.ts +5 -0
  31. package/dist/CacheService/migrations/0017_sandbox_region.d.ts.map +1 -0
  32. package/dist/CacheService/migrations/0017_sandbox_region.js +4 -0
  33. package/dist/CacheService/migrations/0017_sandbox_region.js.map +1 -0
  34. package/dist/CacheService/migrations/0018_pull_request_coordinates.d.ts +6 -0
  35. package/dist/CacheService/migrations/0018_pull_request_coordinates.d.ts.map +1 -0
  36. package/dist/CacheService/migrations/0018_pull_request_coordinates.js +82 -0
  37. package/dist/CacheService/migrations/0018_pull_request_coordinates.js.map +1 -0
  38. package/dist/CacheService/migrations/0019_dependent_pr_coordinates.d.ts +6 -0
  39. package/dist/CacheService/migrations/0019_dependent_pr_coordinates.d.ts.map +1 -0
  40. package/dist/CacheService/migrations/0019_dependent_pr_coordinates.js +57 -0
  41. package/dist/CacheService/migrations/0019_dependent_pr_coordinates.js.map +1 -0
  42. package/dist/CacheService/migrations/0020_notification_coordinates.d.ts +6 -0
  43. package/dist/CacheService/migrations/0020_notification_coordinates.d.ts.map +1 -0
  44. package/dist/CacheService/migrations/0020_notification_coordinates.js +22 -0
  45. package/dist/CacheService/migrations/0020_notification_coordinates.js.map +1 -0
  46. package/dist/CacheService/repos/CommentRepo.d.ts +6 -2
  47. package/dist/CacheService/repos/CommentRepo.d.ts.map +1 -1
  48. package/dist/CacheService/repos/CommentRepo.js +46 -7
  49. package/dist/CacheService/repos/CommentRepo.js.map +1 -1
  50. package/dist/CacheService/repos/NotificationRepo.d.ts +2 -0
  51. package/dist/CacheService/repos/NotificationRepo.d.ts.map +1 -1
  52. package/dist/CacheService/repos/NotificationRepo.js +10 -3
  53. package/dist/CacheService/repos/NotificationRepo.js.map +1 -1
  54. package/dist/CacheService/repos/PullRequestRepo/index.d.ts +42 -7
  55. package/dist/CacheService/repos/PullRequestRepo/index.d.ts.map +1 -1
  56. package/dist/CacheService/repos/PullRequestRepo/index.js +2 -0
  57. package/dist/CacheService/repos/PullRequestRepo/index.js.map +1 -1
  58. package/dist/CacheService/repos/PullRequestRepo/mutations.d.ts +9 -5
  59. package/dist/CacheService/repos/PullRequestRepo/mutations.d.ts.map +1 -1
  60. package/dist/CacheService/repos/PullRequestRepo/mutations.js +61 -17
  61. package/dist/CacheService/repos/PullRequestRepo/mutations.js.map +1 -1
  62. package/dist/CacheService/repos/PullRequestRepo/queries.d.ts +48 -4
  63. package/dist/CacheService/repos/PullRequestRepo/queries.d.ts.map +1 -1
  64. package/dist/CacheService/repos/PullRequestRepo/queries.js +40 -5
  65. package/dist/CacheService/repos/PullRequestRepo/queries.js.map +1 -1
  66. package/dist/CacheService/repos/SandboxRepo.d.ts +45 -1
  67. package/dist/CacheService/repos/SandboxRepo.d.ts.map +1 -1
  68. package/dist/CacheService/repos/SandboxRepo.js +53 -8
  69. package/dist/CacheService/repos/SandboxRepo.js.map +1 -1
  70. package/dist/CacheService/repos/StatsRepo/index.d.ts +3 -0
  71. package/dist/CacheService/repos/StatsRepo/index.d.ts.map +1 -1
  72. package/dist/CacheService/repos/StatsRepo/internal.d.ts +6 -0
  73. package/dist/CacheService/repos/StatsRepo/internal.d.ts.map +1 -1
  74. package/dist/CacheService/repos/StatsRepo/internal.js +5 -5
  75. package/dist/CacheService/repos/StatsRepo/internal.js.map +1 -1
  76. package/dist/CacheService/repos/StatsRepo/queries.d.ts +1 -0
  77. package/dist/CacheService/repos/StatsRepo/queries.d.ts.map +1 -1
  78. package/dist/CacheService/repos/StatsRepo/queries.js +5 -4
  79. package/dist/CacheService/repos/StatsRepo/queries.js.map +1 -1
  80. package/dist/CacheService/repos/StatsRepo/reviewerData.d.ts +2 -0
  81. package/dist/CacheService/repos/StatsRepo/reviewerData.d.ts.map +1 -1
  82. package/dist/CacheService/repos/StatsRepo/reviewerData.js +38 -15
  83. package/dist/CacheService/repos/StatsRepo/reviewerData.js.map +1 -1
  84. package/dist/CacheService/repos/SubscriptionRepo.d.ts +11 -5
  85. package/dist/CacheService/repos/SubscriptionRepo.d.ts.map +1 -1
  86. package/dist/CacheService/repos/SubscriptionRepo.js +106 -12
  87. package/dist/CacheService/repos/SubscriptionRepo.js.map +1 -1
  88. package/dist/ChildEnv.d.ts +13 -0
  89. package/dist/ChildEnv.d.ts.map +1 -1
  90. package/dist/ChildEnv.js +50 -0
  91. package/dist/ChildEnv.js.map +1 -1
  92. package/dist/ConfigService/index.d.ts +2 -2
  93. package/dist/ConfigService/index.d.ts.map +1 -1
  94. package/dist/ConfigService/index.js +2 -2
  95. package/dist/ConfigService/index.js.map +1 -1
  96. package/dist/ConfigService/internal.d.ts +3 -21
  97. package/dist/ConfigService/internal.d.ts.map +1 -1
  98. package/dist/ConfigService/internal.js +1 -43
  99. package/dist/ConfigService/internal.js.map +1 -1
  100. package/dist/ConfigService/load.d.ts +3 -0
  101. package/dist/ConfigService/load.d.ts.map +1 -1
  102. package/dist/ConfigService/reset.d.ts +3 -0
  103. package/dist/ConfigService/reset.d.ts.map +1 -1
  104. package/dist/ConfigService/save.d.ts +3 -0
  105. package/dist/ConfigService/save.d.ts.map +1 -1
  106. package/dist/Domain.d.ts +19 -0
  107. package/dist/Domain.d.ts.map +1 -1
  108. package/dist/Domain.js +66 -3
  109. package/dist/Domain.js.map +1 -1
  110. package/dist/ManagedReviewProtocol.d.ts +5 -0
  111. package/dist/ManagedReviewProtocol.d.ts.map +1 -0
  112. package/dist/ManagedReviewProtocol.js +5 -0
  113. package/dist/ManagedReviewProtocol.js.map +1 -0
  114. package/dist/MockTransport.d.ts +24 -0
  115. package/dist/MockTransport.d.ts.map +1 -0
  116. package/dist/MockTransport.js +58 -0
  117. package/dist/MockTransport.js.map +1 -0
  118. package/dist/PRService/index.d.ts +15 -8
  119. package/dist/PRService/index.d.ts.map +1 -1
  120. package/dist/PRService/index.js +5 -5
  121. package/dist/PRService/index.js.map +1 -1
  122. package/dist/PRService/refreshDiffs.d.ts.map +1 -1
  123. package/dist/PRService/refreshDiffs.js +12 -3
  124. package/dist/PRService/refreshDiffs.js.map +1 -1
  125. package/dist/PRService/refreshEnrich.d.ts.map +1 -1
  126. package/dist/PRService/refreshEnrich.js +28 -11
  127. package/dist/PRService/refreshEnrich.js.map +1 -1
  128. package/dist/PRService/refreshFetch.d.ts.map +1 -1
  129. package/dist/PRService/refreshFetch.js +25 -13
  130. package/dist/PRService/refreshFetch.js.map +1 -1
  131. package/dist/PRService/refreshHistory.d.ts +1 -1
  132. package/dist/PRService/refreshHistory.d.ts.map +1 -1
  133. package/dist/PRService/refreshHistory.js +6 -4
  134. package/dist/PRService/refreshHistory.js.map +1 -1
  135. package/dist/PRService/refreshResolve.d.ts +4 -1
  136. package/dist/PRService/refreshResolve.d.ts.map +1 -1
  137. package/dist/PRService/refreshResolve.js +19 -6
  138. package/dist/PRService/refreshResolve.js.map +1 -1
  139. package/dist/PRService/refreshScore.d.ts.map +1 -1
  140. package/dist/PRService/refreshScore.js +4 -1
  141. package/dist/PRService/refreshScore.js.map +1 -1
  142. package/dist/PRService/refreshSinglePR.d.ts +9 -2
  143. package/dist/PRService/refreshSinglePR.d.ts.map +1 -1
  144. package/dist/PRService/refreshSinglePR.js +99 -33
  145. package/dist/PRService/refreshSinglePR.js.map +1 -1
  146. package/dist/ReviewProfile.d.ts +39 -0
  147. package/dist/ReviewProfile.d.ts.map +1 -1
  148. package/dist/ReviewProfile.js +72 -0
  149. package/dist/ReviewProfile.js.map +1 -1
  150. package/dist/SandboxService/DockerService.d.ts +2 -0
  151. package/dist/SandboxService/DockerService.d.ts.map +1 -1
  152. package/dist/SandboxService/DockerService.js +47 -16
  153. package/dist/SandboxService/DockerService.js.map +1 -1
  154. package/dist/SandboxService/SandboxService.d.ts +4 -0
  155. package/dist/SandboxService/SandboxService.d.ts.map +1 -1
  156. package/dist/SandboxService/SandboxService.js +112 -25
  157. package/dist/SandboxService/SandboxService.js.map +1 -1
  158. package/dist/StatsService/WeeklyStats.d.ts +7 -0
  159. package/dist/StatsService/WeeklyStats.d.ts.map +1 -1
  160. package/dist/StatsService/WeeklyStats.js +3 -0
  161. package/dist/StatsService/WeeklyStats.js.map +1 -1
  162. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationRepo.js","sourceRoot":"","sources":["../../../src/CacheService/repos/NotificationRepo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NotificationRepo.js","sourceRoot":"","sources":["../../../src/CacheService/repos/NotificationRepo.ts"],"names":[],"mappings":"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"}
@@ -11,18 +11,20 @@ import { Context, Effect, Layer } from "effect";
11
11
  import type { Success } from "effect/Effect";
12
12
  import * as SqlClient from "effect/unstable/sql/SqlClient";
13
13
  import { EventsHub } from "../../EventsHub.js";
14
+ import * as Q from "./queries.js";
14
15
  export { CachedPullRequest, type SearchResult, UpsertInput } from "./internal.js";
15
16
  export type { CachedPullRequest as CachedPullRequestType } from "./internal.js";
17
+ export { PullRequestAmbiguityError } from "./queries.js";
16
18
  declare const makePullRequestRepo: Effect.Effect<{
17
19
  upsert: (input: import("./internal.js").UpsertInput) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
18
20
  upsertMany: (prs: ReadonlyArray<import("./internal.js").UpsertInput>) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
19
21
  deleteStale: (olderThan: string) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
20
22
  deleteStaleOpen: (olderThan: string) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
21
- deleteOne: (awsAccountId: string, id: string) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
22
- updateDiffStats: (awsAccountId: string, id: string, filesAdded: number, filesModified: number, filesDeleted: number) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
23
- updateStatusAndClosedAt: (awsAccountId: string, id: string, status: string, closedAt: string, mergedBy?: string, approvedBy?: ReadonlyArray<string>) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
24
- updateCommentCount: (awsAccountId: string, id: string, count: number | null) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
25
- updateHealthScore: (awsAccountId: string, id: string, score: number) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
23
+ deleteOne: (awsAccountId: string, id: string, coordinates?: import("./mutations.js").PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
24
+ updateDiffStats: (awsAccountId: string, id: string, filesAdded: number, filesModified: number, filesDeleted: number, coordinates?: import("./mutations.js").PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
25
+ updateStatusAndClosedAt: (awsAccountId: string, id: string, status: string, closedAt: string, mergedBy?: string, approvedBy?: ReadonlyArray<string>, coordinates?: import("./mutations.js").PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
26
+ updateCommentCount: (awsAccountId: string, id: string, count: number | null, coordinates?: import("./mutations.js").PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
27
+ updateHealthScore: (awsAccountId: string, id: string, score: number, coordinates?: import("./mutations.js").PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
26
28
  refreshCommentedBy: () => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
27
29
  propagateRepoAccountId: () => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
28
30
  findAll: () => Effect.Effect<{
@@ -87,7 +89,7 @@ declare const makePullRequestRepo: Effect.Effect<{
87
89
  readonly commentedBy: readonly string[];
88
90
  readonly approvalRules: readonly import("../../../Domain.ts").ApprovalRule[];
89
91
  }[], import("../../CacheError.ts").CacheError, never>;
90
- findByAccountAndId: (awsAccountId: string, id: string) => Effect.Effect<{
92
+ findByAccountAndId: (awsAccountId: string, id: string) => Effect.Effect<import("effect/Option").Option<{
91
93
  readonly id: string & import("effect/Brand").Brand<"PullRequestId">;
92
94
  readonly awsAccountId: string;
93
95
  readonly repoAccountId: string | null;
@@ -117,7 +119,38 @@ declare const makePullRequestRepo: Effect.Effect<{
117
119
  readonly approvedByArns: readonly string[];
118
120
  readonly commentedBy: readonly string[];
119
121
  readonly approvalRules: readonly import("../../../Domain.ts").ApprovalRule[];
120
- }, import("../../CacheError.ts").CacheError, never>;
122
+ }>, import("../../CacheError.ts").CacheError | Q.PullRequestAmbiguityError, never>;
123
+ findByCoordinates: (awsAccountId: string, id: string, repositoryName: string, accountRegion: string) => Effect.Effect<import("effect/Option").Option<{
124
+ readonly id: string & import("effect/Brand").Brand<"PullRequestId">;
125
+ readonly awsAccountId: string;
126
+ readonly repoAccountId: string | null;
127
+ readonly accountProfile: string;
128
+ readonly accountRegion: string;
129
+ readonly title: string;
130
+ readonly description: string | null;
131
+ readonly author: string;
132
+ readonly repositoryName: string & import("effect/Brand").Brand<"RepositoryName">;
133
+ readonly creationDate: Date;
134
+ readonly lastModifiedDate: Date;
135
+ readonly status: "CLOSED" | "MERGED" | "OPEN";
136
+ readonly sourceBranch: string;
137
+ readonly destinationBranch: string;
138
+ readonly isMergeable: boolean;
139
+ readonly isApproved: boolean;
140
+ readonly commentCount: number | null;
141
+ readonly healthScore: number | null;
142
+ readonly link: string;
143
+ readonly fetchedAt: string;
144
+ readonly filesAdded: number | null;
145
+ readonly filesModified: number | null;
146
+ readonly filesDeleted: number | null;
147
+ readonly closedAt: string | null;
148
+ readonly mergedBy: string | null;
149
+ readonly approvedBy: readonly string[];
150
+ readonly approvedByArns: readonly string[];
151
+ readonly commentedBy: readonly string[];
152
+ readonly approvalRules: readonly import("../../../Domain.ts").ApprovalRule[];
153
+ }>, import("../../CacheError.ts").CacheError, never>;
121
154
  search: (query: string, opts?: {
122
155
  readonly limit?: number;
123
156
  readonly offset?: number;
@@ -125,12 +158,14 @@ declare const makePullRequestRepo: Effect.Effect<{
125
158
  findStaleOpen: (olderThan: string) => Effect.Effect<{
126
159
  readonly id: string;
127
160
  readonly awsAccountId: string;
161
+ readonly repositoryName: string;
128
162
  readonly accountProfile: string & import("effect/Brand").Brand<"AwsProfileName">;
129
163
  readonly accountRegion: string & import("effect/Brand").Brand<"AwsRegion">;
130
164
  }[], import("../../CacheError.ts").CacheError, never>;
131
165
  findOpenInRange: (weekStart: string, weekEnd: string) => Effect.Effect<{
132
166
  readonly id: string;
133
167
  readonly awsAccountId: string;
168
+ readonly repositoryName: string;
134
169
  readonly accountProfile: string & import("effect/Brand").Brand<"AwsProfileName">;
135
170
  readonly accountRegion: string & import("effect/Brand").Brand<"AwsRegion">;
136
171
  }[], import("../../CacheError.ts").CacheError, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAE1D,OAAO,EAAE,SAAS,EAAc,MAAM,oBAAoB,CAAA;AAI1D,OAAO,EAAE,iBAAiB,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AACjF,YAAY,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAE/E,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CAevB,CAAA;AAEF,MAAM,WAAW,uBAAwB,SAAQ,OAAO,CAAC,OAAO,mBAAmB,CAAC;CAAG;;AAEvF,qBAAa,eAAgB,SAAQ,oBAGf;IACpB,MAAM,CAAC,QAAQ,CAAC,OAAO,qOAEtB;CACF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAE1D,OAAO,EAAE,SAAS,EAAc,MAAM,oBAAoB,CAAA;AAE1D,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAEjC,OAAO,EAAE,iBAAiB,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AACjF,YAAY,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AAExD,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0CAgBvB,CAAA;AAEF,MAAM,WAAW,uBAAwB,SAAQ,OAAO,CAAC,OAAO,mBAAmB,CAAC;CAAG;;AAEvF,qBAAa,eAAgB,SAAQ,oBAGf;IACpB,MAAM,CAAC,QAAQ,CAAC,OAAO,qOAEtB;CACF"}
@@ -14,6 +14,7 @@ import { EventsHub, RepoChange } from "../../EventsHub.js";
14
14
  import { mutations } from "./mutations.js";
15
15
  import * as Q from "./queries.js";
16
16
  export { CachedPullRequest, UpsertInput } from "./internal.js";
17
+ export { PullRequestAmbiguityError } from "./queries.js";
17
18
  const makePullRequestRepo = Effect.gen(function* () {
18
19
  const sql = yield* SqlClient.SqlClient;
19
20
  const hub = yield* EventsHub;
@@ -22,6 +23,7 @@ const makePullRequestRepo = Effect.gen(function* () {
22
23
  findAll: Q.findAll(sql),
23
24
  findMissingDiffStats: Q.findMissingDiffStats(sql),
24
25
  findByAccountAndId: Q.findByAccountAndId(sql),
26
+ findByCoordinates: Q.findByCoordinates(sql),
25
27
  search: Q.search(sql),
26
28
  findStaleOpen: Q.findStaleOpen(sql),
27
29
  findOpenInRange: Q.findOpenInRange(sql),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAE/C,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAEjC,OAAO,EAAE,iBAAiB,EAAqB,WAAW,EAAE,MAAM,eAAe,CAAA;AAGjF,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC9C,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,SAAS,CAAA;IACtC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,SAAS,CAAA;IAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAA;IAEtD,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;QACvB,oBAAoB,EAAE,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC;QACjD,kBAAkB,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAC7C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;QACrB,aAAa,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC;QACnC,eAAe,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC;QACvC,GAAG,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC;KAC3B,CAAA;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAC,CAAA;AAIF,MAAM,OAAO,eAAgB,SAAQ,OAAO,CAAC,OAAO,EAGjD,CAAC,iBAAiB,CAAC;IACpB,MAAM,CAAU,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC,IAAI,CAC/E,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAC/D,CAAA;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAE/C,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,KAAK,CAAC,MAAM,cAAc,CAAA;AAEjC,OAAO,EAAE,iBAAiB,EAAqB,WAAW,EAAE,MAAM,eAAe,CAAA;AAEjF,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AAExD,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC9C,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,SAAS,CAAC,SAAS,CAAA;IACtC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,SAAS,CAAA;IAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAA;IAEtD,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;QACvB,oBAAoB,EAAE,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC;QACjD,kBAAkB,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAC7C,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC;QAC3C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;QACrB,aAAa,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC;QACnC,eAAe,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC;QACvC,GAAG,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC;KAC3B,CAAA;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAC,CAAA;AAIF,MAAM,OAAO,eAAgB,SAAQ,OAAO,CAAC,OAAO,EAGjD,CAAC,iBAAiB,CAAC;IACpB,MAAM,CAAU,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC,IAAI,CAC/E,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAC/D,CAAA;CACF"}
@@ -18,16 +18,20 @@
18
18
  import { Effect } from "effect";
19
19
  import type * as SqlClient from "effect/unstable/sql/SqlClient";
20
20
  import { UpsertInput } from "./internal.js";
21
+ export interface PullRequestCoordinates {
22
+ readonly repositoryName: string;
23
+ readonly accountRegion: string;
24
+ }
21
25
  export declare const mutations: (sql: SqlClient.SqlClient, publish: Effect.Effect<void>) => {
22
26
  upsert: (input: UpsertInput) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
23
27
  upsertMany: (prs: ReadonlyArray<UpsertInput>) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
24
28
  deleteStale: (olderThan: string) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
25
29
  deleteStaleOpen: (olderThan: string) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
26
- deleteOne: (awsAccountId: string, id: string) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
27
- updateDiffStats: (awsAccountId: string, id: string, filesAdded: number, filesModified: number, filesDeleted: number) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
28
- updateStatusAndClosedAt: (awsAccountId: string, id: string, status: string, closedAt: string, mergedBy?: string, approvedBy?: ReadonlyArray<string>) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
29
- updateCommentCount: (awsAccountId: string, id: string, count: number | null) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
30
- updateHealthScore: (awsAccountId: string, id: string, score: number) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
30
+ deleteOne: (awsAccountId: string, id: string, coordinates?: PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
31
+ updateDiffStats: (awsAccountId: string, id: string, filesAdded: number, filesModified: number, filesDeleted: number, coordinates?: PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
32
+ updateStatusAndClosedAt: (awsAccountId: string, id: string, status: string, closedAt: string, mergedBy?: string, approvedBy?: ReadonlyArray<string>, coordinates?: PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
33
+ updateCommentCount: (awsAccountId: string, id: string, count: number | null, coordinates?: PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
34
+ updateHealthScore: (awsAccountId: string, id: string, score: number, coordinates?: PullRequestCoordinates) => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
31
35
  refreshCommentedBy: () => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
32
36
  propagateRepoAccountId: () => Effect.Effect<void, import("../../CacheError.ts").CacheError, never>;
33
37
  };
@@ -1 +1 @@
1
- {"version":3,"file":"mutations.d.ts","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/mutations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAG/D,OAAO,EAA8B,WAAW,EAAE,MAAM,eAAe,CAAA;AAEvE,eAAO,MAAM,SAAS,QAAS,SAAS,CAAC,SAAS,WAAW,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;oBAwD5D,WAAW;sBAET,aAAa,CAAC,WAAW,CAAC;6BAMnB,MAAM;iCAGF,MAAM;8BAGT,MAAM,MAAM,MAAM;oCAQ5B,MAAM,MAChB,MAAM,cACE,MAAM,iBACH,MAAM,gBACP,MAAM;4CAUN,MAAM,MAChB,MAAM,UACF,MAAM,YACJ,MAAM,aACL,MAAM,eACJ,aAAa,CAAC,MAAM,CAAC;uCAaD,MAAM,MAAM,MAAM,SAAS,MAAM,GAAG,IAAI;sCAQzC,MAAM,MAAM,MAAM,SAAS,MAAM;;;CAkDtE,CAAA"}
1
+ {"version":3,"file":"mutations.d.ts","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/mutations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAG/D,OAAO,EAA8B,WAAW,EAAE,MAAM,eAAe,CAAA;AAGvE,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAC/B;AAED,eAAO,MAAM,SAAS,QAAS,SAAS,CAAC,SAAS,WAAW,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;oBAqF5D,WAAW;sBAET,aAAa,CAAC,WAAW,CAAC;6BAMnB,MAAM;iCAGF,MAAM;8BAGT,MAAM,MAAM,MAAM,gBAAgB,sBAAsB;oCASlE,MAAM,MAChB,MAAM,cACE,MAAM,iBACH,MAAM,gBACP,MAAM,gBACN,sBAAsB;4CAatB,MAAM,MAChB,MAAM,UACF,MAAM,YACJ,MAAM,aACL,MAAM,eACJ,aAAa,CAAC,MAAM,CAAC,gBACpB,sBAAsB;uCAiBtB,MAAM,MAChB,MAAM,SACH,MAAM,GAAG,IAAI,gBACN,sBAAsB;sCAYJ,MAAM,MAAM,MAAM,SAAS,MAAM,gBAAgB,sBAAsB;;;CAuF5G,CAAA"}
@@ -19,13 +19,30 @@ import { Effect, Schema } from "effect";
19
19
  import * as SqlSchema from "effect/unstable/sql/SqlSchema";
20
20
  import { decodeCommentLocationJson } from "../commentLocations.js";
21
21
  import { cacheError, joinApprovedBy, UpsertInput } from "./internal.js";
22
+ import { PullRequestAmbiguityError } from "./queries.js";
22
23
  export const mutations = (sql, publish) => {
24
+ const countByLegacyIdentity_ = SqlSchema.findOne({
25
+ Result: Schema.Struct({ count: Schema.Number }),
26
+ Request: Schema.Struct({ awsAccountId: Schema.String, id: Schema.String }),
27
+ execute: (req) => sql `SELECT count(*) AS count FROM pull_requests
28
+ WHERE aws_account_id = ${req.awsAccountId} AND id = ${req.id}`
29
+ });
30
+ const ensureUnambiguous = (awsAccountId, id, coordinates) => coordinates !== undefined
31
+ ? Effect.void
32
+ : countByLegacyIdentity_({ awsAccountId, id }).pipe(Effect.flatMap(({ count }) => count > 1
33
+ ? Effect.fail(new PullRequestAmbiguityError({ awsAccountId, pullRequestId: id, matches: count }))
34
+ : Effect.void));
35
+ const pullRequestWhere = (awsAccountId, id, coordinates) => coordinates === undefined
36
+ ? sql `aws_account_id = ${awsAccountId} AND id = ${id}`
37
+ : sql `aws_account_id = ${awsAccountId} AND id = ${id}
38
+ AND repository_name = ${coordinates.repositoryName}
39
+ AND account_region = ${coordinates.accountRegion}`;
23
40
  const upsert_ = SqlSchema.void({
24
41
  Request: UpsertInput,
25
42
  execute: (req) => {
26
43
  const approvedByStr = joinApprovedBy(req.approvedBy);
27
44
  const approvedByArnsStr = joinApprovedBy(req.approvedByArns);
28
- const approvalRulesJson = req.approvalRules && req.approvalRules.length > 0
45
+ const approvalRulesJson = req.approvalRules !== undefined && req.approvalRules.length > 0
29
46
  ? JSON.stringify(req.approvalRules)
30
47
  : "[]";
31
48
  return sql `INSERT INTO pull_requests
@@ -38,7 +55,7 @@ export const mutations = (sql, publish) => {
38
55
  ${req.creationDate}, ${req.lastModifiedDate}, ${req.status},
39
56
  ${req.sourceBranch}, ${req.destinationBranch}, ${req.isMergeable}, ${req.isApproved},
40
57
  ${req.commentCount}, ${req.link}, ${approvedByStr}, ${approvedByArnsStr}, ${approvalRulesJson}, strftime('%Y-%m-%dT%H:%M:%SZ', 'now'))
41
- ON CONFLICT (aws_account_id, id) DO UPDATE SET
58
+ ON CONFLICT (aws_account_id, id, repository_name, account_region) DO UPDATE SET
42
59
  account_profile = excluded.account_profile,
43
60
  account_region = excluded.account_region,
44
61
  title = excluded.title,
@@ -53,7 +70,7 @@ export const mutations = (sql, publish) => {
53
70
  is_mergeable = excluded.is_mergeable,
54
71
  is_approved = excluded.is_approved,
55
72
  comment_count = COALESCE(excluded.comment_count, pull_requests.comment_count),
56
- health_score = COALESCE(excluded.health_score, pull_requests.health_score),
73
+ health_score = pull_requests.health_score,
57
74
  link = excluded.link,
58
75
  approved_by = COALESCE(excluded.approved_by, pull_requests.approved_by),
59
76
  approved_by_arns = COALESCE(excluded.approved_by_arns, pull_requests.approved_by_arns),
@@ -76,25 +93,47 @@ export const mutations = (sql, publish) => {
76
93
  upsertMany: (prs) => sql.withTransaction(Effect.forEach(prs, (pr) => upsert_(pr), { discard: true })).pipe(Effect.tap(() => publish), cacheError("upsertMany")),
77
94
  deleteStale: (olderThan) => deleteStale_({ olderThan }).pipe(Effect.tap(() => publish), cacheError("deleteStale")),
78
95
  deleteStaleOpen: (olderThan) => deleteStaleOpen_({ olderThan }).pipe(Effect.tap(() => publish), cacheError("deleteStaleOpen")),
79
- deleteOne: (awsAccountId, id) => sql `DELETE FROM pull_requests WHERE aws_account_id = ${awsAccountId} AND id = ${id}`.pipe(Effect.asVoid, Effect.tap(() => publish), cacheError("deleteOne")),
80
- updateDiffStats: (awsAccountId, id, filesAdded, filesModified, filesDeleted) => sql `UPDATE pull_requests SET files_added = ${filesAdded}, files_modified = ${filesModified}, files_deleted = ${filesDeleted}
81
- WHERE id = ${id} AND aws_account_id = ${awsAccountId}`.pipe(Effect.asVoid, Effect.tap(() => publish), cacheError("updateDiffStats")),
82
- updateStatusAndClosedAt: (awsAccountId, id, status, closedAt, mergedBy, approvedBy) => {
83
- const approvedByStr = approvedBy ? joinApprovedBy([...approvedBy]) : null;
84
- return sql `UPDATE pull_requests SET status = ${status}, closed_at = ${closedAt}, merged_by = ${mergedBy ?? null},
96
+ deleteOne: (awsAccountId, id, coordinates) => ensureUnambiguous(awsAccountId, id, coordinates).pipe(Effect.andThen(sql `DELETE FROM pull_requests WHERE ${pullRequestWhere(awsAccountId, id, coordinates)}`), Effect.asVoid, Effect.tap(() => publish), cacheError("deleteOne")),
97
+ updateDiffStats: (awsAccountId, id, filesAdded, filesModified, filesDeleted, coordinates) => ensureUnambiguous(awsAccountId, id, coordinates).pipe(Effect.andThen(sql `UPDATE pull_requests SET files_added = ${filesAdded}, files_modified = ${filesModified}, files_deleted = ${filesDeleted}
98
+ WHERE ${pullRequestWhere(awsAccountId, id, coordinates)}`), Effect.asVoid, Effect.tap(() => publish), cacheError("updateDiffStats")),
99
+ updateStatusAndClosedAt: (awsAccountId, id, status, closedAt, mergedBy, approvedBy, coordinates) => {
100
+ const approvedByStr = approvedBy !== undefined ? joinApprovedBy([...approvedBy]) : null;
101
+ return ensureUnambiguous(awsAccountId, id, coordinates).pipe(Effect.andThen(sql `UPDATE pull_requests SET status = ${status}, closed_at = ${closedAt}, merged_by = ${mergedBy ?? null},
85
102
  approved_by = COALESCE(${approvedByStr}, approved_by),
86
103
  last_modified_date = ${closedAt}
87
- WHERE id = ${id} AND aws_account_id = ${awsAccountId}`.pipe(Effect.asVoid, Effect.tap(() => publish), cacheError("updateStatusAndClosedAt"));
104
+ WHERE ${pullRequestWhere(awsAccountId, id, coordinates)}`), Effect.asVoid, Effect.tap(() => publish), cacheError("updateStatusAndClosedAt"));
88
105
  },
89
- updateCommentCount: (awsAccountId, id, count) => sql `UPDATE pull_requests SET comment_count = ${count}
90
- WHERE id = ${id} AND aws_account_id = ${awsAccountId}`.pipe(Effect.asVoid, Effect.tap(() => publish), cacheError("updateCommentCount")),
91
- updateHealthScore: (awsAccountId, id, score) => sql `UPDATE pull_requests SET health_score = ${score}
92
- WHERE id = ${id} AND aws_account_id = ${awsAccountId}`.pipe(Effect.asVoid, Effect.tap(() => publish), cacheError("updateHealthScore")),
106
+ updateCommentCount: (awsAccountId, id, count, coordinates) => ensureUnambiguous(awsAccountId, id, coordinates).pipe(Effect.andThen(sql `UPDATE pull_requests SET comment_count = ${count}
107
+ WHERE ${pullRequestWhere(awsAccountId, id, coordinates)}`), Effect.asVoid, Effect.tap(() => publish), cacheError("updateCommentCount")),
108
+ updateHealthScore: (awsAccountId, id, score, coordinates) => ensureUnambiguous(awsAccountId, id, coordinates).pipe(Effect.andThen(sql `UPDATE pull_requests SET health_score = ${score}
109
+ WHERE ${pullRequestWhere(awsAccountId, id, coordinates)}`), Effect.asVoid, Effect.tap(() => publish), cacheError("updateHealthScore")),
93
110
  refreshCommentedBy: () => sql.withTransaction(Effect.gen(function* () {
94
111
  const rows = yield* sql `
95
- SELECT c.aws_account_id, c.pull_request_id, p.author, c.locations_json
112
+ SELECT c.aws_account_id AS awsAccountId, c.pull_request_id AS pullRequestId,
113
+ p.repository_name AS repositoryName, p.account_region AS accountRegion,
114
+ p.author AS author, c.locations_json AS locationsJson
96
115
  FROM pr_comments c
97
- INNER JOIN pull_requests p ON p.id = c.pull_request_id AND p.aws_account_id = c.aws_account_id
116
+ INNER JOIN pull_requests p
117
+ ON p.id = c.pull_request_id
118
+ AND p.aws_account_id = c.aws_account_id
119
+ AND (
120
+ (p.repository_name = c.repository_name AND p.account_region = c.account_region)
121
+ OR (
122
+ c.repository_name = ''
123
+ AND c.account_region = ''
124
+ AND (
125
+ SELECT count(*) FROM pull_requests p2
126
+ WHERE p2.aws_account_id = c.aws_account_id AND p2.id = c.pull_request_id
127
+ ) = 1
128
+ AND NOT EXISTS (
129
+ SELECT 1 FROM pr_comments c2
130
+ WHERE c2.aws_account_id = c.aws_account_id
131
+ AND c2.pull_request_id = c.pull_request_id
132
+ AND c2.repository_name = p.repository_name
133
+ AND c2.account_region = p.account_region
134
+ )
135
+ )
136
+ )
98
137
  `;
99
138
  for (const row of rows) {
100
139
  const parsed = yield* decodeCommentLocationJson(row.locationsJson);
@@ -110,14 +149,19 @@ export const mutations = (sql, publish) => {
110
149
  walk(loc.comments);
111
150
  const commentedBy = commenters.size > 0 ? [...commenters].join(",") : null;
112
151
  yield* sql `UPDATE pull_requests SET commented_by = ${commentedBy}
113
- WHERE id = ${row.pullRequestId} AND aws_account_id = ${row.awsAccountId}`;
152
+ WHERE id = ${row.pullRequestId}
153
+ AND aws_account_id = ${row.awsAccountId}
154
+ AND repository_name = ${row.repositoryName}
155
+ AND account_region = ${row.accountRegion}`;
114
156
  }
115
157
  })).pipe(Effect.asVoid, cacheError("refreshCommentedBy")),
116
158
  propagateRepoAccountId: () => sql `UPDATE pull_requests
117
159
  SET repo_account_id = (
118
160
  SELECT p2.repo_account_id FROM pull_requests p2
119
161
  WHERE p2.repo_account_id IS NOT NULL
162
+ AND p2.aws_account_id = pull_requests.aws_account_id
120
163
  AND p2.repository_name = pull_requests.repository_name
164
+ AND p2.account_region = pull_requests.account_region
121
165
  LIMIT 1
122
166
  )
123
167
  WHERE repo_account_id IS NULL`.pipe(Effect.asVoid, cacheError("propagateRepoAccountId"))
@@ -1 +1 @@
1
- {"version":3,"file":"mutations.js","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/mutations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutations.js","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/mutations.ts"],"names":[],"mappings":"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"}
@@ -6,10 +6,20 @@
6
6
  *
7
7
  * @category CacheService
8
8
  */
9
- import { Effect } from "effect";
9
+ import { Effect, Option } from "effect";
10
10
  import type * as SqlClient from "effect/unstable/sql/SqlClient";
11
- import type { CacheError } from "../../CacheError.js";
11
+ import { CacheError } from "../../CacheError.js";
12
12
  import { type SearchResult } from "./internal.js";
13
+ declare const PullRequestAmbiguityError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
14
+ readonly _tag: "PullRequestAmbiguityError";
15
+ } & Readonly<A>;
16
+ /** Coordinate-free lookup is unsafe once one account can contain duplicate PR IDs. */
17
+ export declare class PullRequestAmbiguityError extends PullRequestAmbiguityError_base<{
18
+ readonly awsAccountId: string;
19
+ readonly pullRequestId: string;
20
+ readonly matches: number;
21
+ }> {
22
+ }
13
23
  export declare const findAll: (sql: SqlClient.SqlClient) => () => Effect.Effect<{
14
24
  readonly id: string & import("effect/Brand").Brand<"PullRequestId">;
15
25
  readonly awsAccountId: string;
@@ -72,7 +82,38 @@ export declare const findMissingDiffStats: (sql: SqlClient.SqlClient) => () => E
72
82
  readonly commentedBy: readonly string[];
73
83
  readonly approvalRules: readonly import("../../../Domain.js").ApprovalRule[];
74
84
  }[], CacheError, never>;
75
- export declare const findByAccountAndId: (sql: SqlClient.SqlClient) => (awsAccountId: string, id: string) => Effect.Effect<{
85
+ export declare const findByAccountAndId: (sql: SqlClient.SqlClient) => (awsAccountId: string, id: string) => Effect.Effect<Option.Option<{
86
+ readonly id: string & import("effect/Brand").Brand<"PullRequestId">;
87
+ readonly awsAccountId: string;
88
+ readonly repoAccountId: string | null;
89
+ readonly accountProfile: string;
90
+ readonly accountRegion: string;
91
+ readonly title: string;
92
+ readonly description: string | null;
93
+ readonly author: string;
94
+ readonly repositoryName: string & import("effect/Brand").Brand<"RepositoryName">;
95
+ readonly creationDate: Date;
96
+ readonly lastModifiedDate: Date;
97
+ readonly status: "CLOSED" | "MERGED" | "OPEN";
98
+ readonly sourceBranch: string;
99
+ readonly destinationBranch: string;
100
+ readonly isMergeable: boolean;
101
+ readonly isApproved: boolean;
102
+ readonly commentCount: number | null;
103
+ readonly healthScore: number | null;
104
+ readonly link: string;
105
+ readonly fetchedAt: string;
106
+ readonly filesAdded: number | null;
107
+ readonly filesModified: number | null;
108
+ readonly filesDeleted: number | null;
109
+ readonly closedAt: string | null;
110
+ readonly mergedBy: string | null;
111
+ readonly approvedBy: readonly string[];
112
+ readonly approvedByArns: readonly string[];
113
+ readonly commentedBy: readonly string[];
114
+ readonly approvalRules: readonly import("../../../Domain.js").ApprovalRule[];
115
+ }>, CacheError | PullRequestAmbiguityError, never>;
116
+ export declare const findByCoordinates: (sql: SqlClient.SqlClient) => (awsAccountId: string, id: string, repositoryName: string, accountRegion: string) => Effect.Effect<Option.Option<{
76
117
  readonly id: string & import("effect/Brand").Brand<"PullRequestId">;
77
118
  readonly awsAccountId: string;
78
119
  readonly repoAccountId: string | null;
@@ -102,7 +143,7 @@ export declare const findByAccountAndId: (sql: SqlClient.SqlClient) => (awsAccou
102
143
  readonly approvedByArns: readonly string[];
103
144
  readonly commentedBy: readonly string[];
104
145
  readonly approvalRules: readonly import("../../../Domain.js").ApprovalRule[];
105
- }, CacheError, never>;
146
+ }>, CacheError, never>;
106
147
  export declare const search: (sql: SqlClient.SqlClient) => (query: string, opts?: {
107
148
  readonly limit?: number;
108
149
  readonly offset?: number;
@@ -110,13 +151,16 @@ export declare const search: (sql: SqlClient.SqlClient) => (query: string, opts?
110
151
  export declare const findStaleOpen: (sql: SqlClient.SqlClient) => (olderThan: string) => Effect.Effect<{
111
152
  readonly id: string;
112
153
  readonly awsAccountId: string;
154
+ readonly repositoryName: string;
113
155
  readonly accountProfile: string & import("effect/Brand").Brand<"AwsProfileName">;
114
156
  readonly accountRegion: string & import("effect/Brand").Brand<"AwsRegion">;
115
157
  }[], CacheError, never>;
116
158
  export declare const findOpenInRange: (sql: SqlClient.SqlClient) => (weekStart: string, weekEnd: string) => Effect.Effect<{
117
159
  readonly id: string;
118
160
  readonly awsAccountId: string;
161
+ readonly repositoryName: string;
119
162
  readonly accountProfile: string & import("effect/Brand").Brand<"AwsProfileName">;
120
163
  readonly accountRegion: string & import("effect/Brand").Brand<"AwsRegion">;
121
164
  }[], CacheError, never>;
165
+ export {};
122
166
  //# sourceMappingURL=queries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/queries.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAG/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAA4D,KAAK,YAAY,EAAE,MAAM,eAAe,CAAA;AAS3G,eAAO,MAAM,OAAO,QAAS,SAAS,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAQ/C,CAAA;AAED,eAAO,MAAM,oBAAoB,QAAS,SAAS,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAQ5D,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAS,SAAS,CAAC,SAAS,oBAQnC,MAAM,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBACzC,CAAA;AAED,eAAO,MAAM,MAAM,QAAS,SAAS,CAAC,SAAS,aAsBpC,MAAM,SACN;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC3D,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,KAAK,CAqBjD,CAAA;AAED,eAAO,MAAM,aAAa,QAAS,SAAS,CAAC,SAAS,iBASjC,MAAM;;;;;uBAC1B,CAAA;AAED,eAAO,MAAM,eAAe,QAAS,SAAS,CAAC,SAAS,iBAanC,MAAM,WAAW,MAAM;;;;;uBAC3C,CAAA"}
1
+ {"version":3,"file":"queries.d.ts","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/queries.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAQ,MAAM,EAAE,MAAM,EAAqB,MAAM,QAAQ,CAAA;AAChE,OAAO,KAAK,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAG/D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAA4D,KAAK,YAAY,EAAE,MAAM,eAAe,CAAA;;;;AAE3G,sFAAsF;AACtF,qBAAa,yBAA0B,SAAQ,+BAA8C;IAC3F,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB,CAAC;CAAG;AAUL,eAAO,MAAM,OAAO,QAAS,SAAS,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAQ/C,CAAA;AAED,eAAO,MAAM,oBAAoB,QAAS,SAAS,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAQ5D,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAS,SAAS,CAAC,SAAS,oBAQnC,MAAM,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kDA0BzC,CAAA;AAED,eAAO,MAAM,iBAAiB,QAAS,SAAS,CAAC,SAAS,oBAgBlC,MAAM,MAAM,MAAM,kBAAkB,MAAM,iBAAiB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAExF,CAAA;AAED,eAAO,MAAM,MAAM,QAAS,SAAS,CAAC,SAAS,aAsBpC,MAAM,SACN;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC3D,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,KAAK,CAqBjD,CAAA;AAED,eAAO,MAAM,aAAa,QAAS,SAAS,CAAC,SAAS,iBASjC,MAAM;;;;;;uBAC1B,CAAA;AAED,eAAO,MAAM,eAAe,QAAS,SAAS,CAAC,SAAS,iBAanC,MAAM,WAAW,MAAM;;;;;;uBAC3C,CAAA"}
@@ -6,13 +6,18 @@
6
6
  *
7
7
  * @category CacheService
8
8
  */
9
- import { Effect, Schema } from "effect";
9
+ import { Data, Effect, Option, Predicate, Schema } from "effect";
10
10
  import * as SqlSchema from "effect/unstable/sql/SqlSchema";
11
11
  import { AwsProfileName, AwsRegion } from "../../../Domain.js";
12
+ import { CacheError } from "../../CacheError.js";
12
13
  import { CachedPullRequest as CachedPullRequestSchema, cacheError } from "./internal.js";
14
+ /** Coordinate-free lookup is unsafe once one account can contain duplicate PR IDs. */
15
+ export class PullRequestAmbiguityError extends Data.TaggedError("PullRequestAmbiguityError") {
16
+ }
13
17
  const StaleOpenRow = Schema.Struct({
14
18
  id: Schema.String,
15
19
  awsAccountId: Schema.String,
20
+ repositoryName: Schema.String,
16
21
  accountProfile: AwsProfileName,
17
22
  accountRegion: AwsRegion
18
23
  });
@@ -35,13 +40,43 @@ export const findMissingDiffStats = (sql) => {
35
40
  return () => run(voidRequest).pipe(cacheError("findMissingDiffStats"));
36
41
  };
37
42
  export const findByAccountAndId = (sql) => {
38
- const run = SqlSchema.findOne({
43
+ const run = SqlSchema.findAll({
39
44
  Result: CachedPullRequestSchema,
40
45
  Request: Schema.Struct({ awsAccountId: Schema.String, id: Schema.String }),
41
46
  execute: (req) => sql `SELECT * FROM pull_requests
42
47
  WHERE aws_account_id = ${req.awsAccountId} AND id = ${req.id}`
43
48
  });
44
- return (awsAccountId, id) => run({ awsAccountId, id }).pipe(cacheError("findByAccountAndId"));
49
+ return (awsAccountId, id) => run({ awsAccountId, id }).pipe(Effect.flatMap((rows) => {
50
+ const [first, ...duplicates] = rows;
51
+ return duplicates.length > 0
52
+ ? Effect.fail(new PullRequestAmbiguityError({
53
+ awsAccountId,
54
+ pullRequestId: id,
55
+ matches: rows.length
56
+ }))
57
+ : Effect.succeed(first === undefined ? undefined : first);
58
+ }), Effect.map((row) => row === undefined
59
+ ? Option.none()
60
+ : Option.some(row)), Effect.mapError((cause) => Predicate.isTagged(cause, "PullRequestAmbiguityError")
61
+ ? cause
62
+ : new CacheError({ operation: "PullRequestRepo.findByAccountAndId", cause })), Effect.withSpan("PullRequestRepo.findByAccountAndId"));
63
+ };
64
+ export const findByCoordinates = (sql) => {
65
+ const run = SqlSchema.findOneOption({
66
+ Result: CachedPullRequestSchema,
67
+ Request: Schema.Struct({
68
+ awsAccountId: Schema.String,
69
+ id: Schema.String,
70
+ repositoryName: Schema.String,
71
+ accountRegion: Schema.String
72
+ }),
73
+ execute: (req) => sql `SELECT * FROM pull_requests
74
+ WHERE aws_account_id = ${req.awsAccountId}
75
+ AND id = ${req.id}
76
+ AND repository_name = ${req.repositoryName}
77
+ AND account_region = ${req.accountRegion}`
78
+ });
79
+ return (awsAccountId, id, repositoryName, accountRegion) => run({ awsAccountId, id, repositoryName, accountRegion }).pipe(cacheError("findByCoordinates"));
45
80
  };
46
81
  export const search = (sql) => {
47
82
  const search_ = SqlSchema.findAll({
@@ -77,7 +112,7 @@ export const findStaleOpen = (sql) => {
77
112
  const run = SqlSchema.findAll({
78
113
  Result: StaleOpenRow,
79
114
  Request: Schema.Struct({ olderThan: Schema.String }),
80
- execute: (req) => sql `SELECT id, aws_account_id, account_profile, account_region
115
+ execute: (req) => sql `SELECT id, aws_account_id, repository_name, account_profile, account_region
81
116
  FROM pull_requests
82
117
  WHERE status = 'OPEN' AND fetched_at < ${req.olderThan}`
83
118
  });
@@ -87,7 +122,7 @@ export const findOpenInRange = (sql) => {
87
122
  const run = SqlSchema.findAll({
88
123
  Result: StaleOpenRow,
89
124
  Request: Schema.Struct({ weekStart: Schema.String, weekEnd: Schema.String }),
90
- execute: (req) => sql `SELECT id, aws_account_id, account_profile, account_region
125
+ execute: (req) => sql `SELECT id, aws_account_id, repository_name, account_profile, account_region
91
126
  FROM pull_requests
92
127
  WHERE status = 'OPEN'
93
128
  AND (
@@ -1 +1 @@
1
- {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/queries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../../../src/CacheService/repos/PullRequestRepo/queries.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAEhE,OAAO,KAAK,SAAS,MAAM,+BAA+B,CAAA;AAC1D,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,iBAAiB,IAAI,uBAAuB,EAAE,UAAU,EAAqB,MAAM,eAAe,CAAA;AAE3G,sFAAsF;AACtF,MAAM,OAAO,yBAA0B,SAAQ,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAIzF;CAAG;AAEL,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,MAAM,CAAC,MAAM;IACjB,YAAY,EAAE,MAAM,CAAC,MAAM;IAC3B,cAAc,EAAE,MAAM,CAAC,MAAM;IAC7B,cAAc,EAAE,cAAc;IAC9B,aAAa,EAAE,SAAS;CACzB,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAwB,EAAE,EAAE;IAClD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;QAC5B,MAAM,EAAE,uBAAuB;QAC/B,OAAO,EAAE,MAAM,CAAC,IAAI;QACpB,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAA,yDAAyD;KAC5E,CAAC,CAAA;IACF,MAAM,WAAW,GAAS,SAAS,CAAA;IACnC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;AAC3D,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAwB,EAAE,EAAE;IAC/D,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;QAC5B,MAAM,EAAE,uBAAuB;QAC/B,OAAO,EAAE,MAAM,CAAC,IAAI;QACpB,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAA,mFAAmF;KACtG,CAAC,CAAA;IACF,MAAM,WAAW,GAAS,SAAS,CAAA;IACnC,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAAA;AACxE,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAwB,EAAE,EAAE;IAC7D,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;QAC5B,MAAM,EAAE,uBAAuB;QAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC1E,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,GAAG,CAAA;mCAC0B,GAAG,CAAC,YAAY,aAAa,GAAG,CAAC,EAAE,EAAE;KACrE,CAAC,CAAA;IACF,OAAO,CAAC,YAAoB,EAAE,EAAU,EAAE,EAAE,CAC1C,GAAG,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAC5B,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,MAAM,CAAC,KAAK,EAAE,GAAG,UAAU,CAAC,GAAG,IAAI,CAAA;QACnC,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC;YAC1B,CAAC,CAAC,MAAM,CAAC,IAAI,CACX,IAAI,yBAAyB,CAAC;gBAC5B,YAAY;gBACZ,aAAa,EAAE,EAAE;gBACjB,OAAO,EAAE,IAAI,CAAC,MAAM;aACrB,CAAC,CACH;YACD,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAC7D,CAAC,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACjB,GAAG,KAAK,SAAS;QACf,CAAC,CAAC,MAAM,CAAC,IAAI,EAAuC;QACpD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CACrB,EACD,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,2BAA2B,CAAC;QACpD,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,IAAI,UAAU,CAAC,EAAE,SAAS,EAAE,oCAAoC,EAAE,KAAK,EAAE,CAAC,CAC/E,EACD,MAAM,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CACtD,CAAA;AACL,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAwB,EAAE,EAAE;IAC5D,MAAM,GAAG,GAAG,SAAS,CAAC,aAAa,CAAC;QAClC,MAAM,EAAE,uBAAuB;QAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;YACrB,YAAY,EAAE,MAAM,CAAC,MAAM;YAC3B,EAAE,EAAE,MAAM,CAAC,MAAM;YACjB,cAAc,EAAE,MAAM,CAAC,MAAM;YAC7B,aAAa,EAAE,MAAM,CAAC,MAAM;SAC7B,CAAC;QACF,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,GAAG,CAAA;mCAC0B,GAAG,CAAC,YAAY;uBAC5B,GAAG,CAAC,EAAE;oCACO,GAAG,CAAC,cAAc;mCACnB,GAAG,CAAC,aAAa,EAAE;KACnD,CAAC,CAAA;IACF,OAAO,CAAC,YAAoB,EAAE,EAAU,EAAE,cAAsB,EAAE,aAAqB,EAAE,EAAE,CACzF,GAAG,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,CAAA;AAClG,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAwB,EAAE,EAAE;IACjD,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QAChC,MAAM,EAAE,uBAAuB;QAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC7F,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,GAAG,CAAA;;0CAEiC,GAAG,CAAC,KAAK;;kBAEjC,GAAG,CAAC,KAAK,WAAW,GAAG,CAAC,MAAM,EAAE;KAC/C,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC;QACrC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/C,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAChD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,GAAG,CAAA;;0CAEiC,GAAG,CAAC,KAAK,EAAE;KAClD,CAAC,CAAA;IAEF,OAAO,CACL,KAAa,EACb,IAA4D,EACZ,EAAE;QAClD,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAA;QAC/B,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,CAAC,CAAA;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;QACnF,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAC5C,MAAM,QAAQ,GAAG,IAAI,OAAO,GAAG,CAAA;QAC/B,MAAM,iBAAiB,GAAiB,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;QAC/E,OAAO,MAAM,CAAC,GAAG,CAAC;YAChB,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YAClD,KAAK,EAAE,YAAY,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAC3C,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAC3B;SACF,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC,EAC5F,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE,CAC/B,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,IAAI,CACzC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAC7B,CAAC,EACJ,UAAU,CAAC,QAAQ,CAAC,CACrB,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAwB,EAAE,EAAE;IACxD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;QAC5B,MAAM,EAAE,YAAY;QACpB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QACpD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,GAAG,CAAA;;mDAE0C,GAAG,CAAC,SAAS,EAAE;KAC/D,CAAC,CAAA;IACF,OAAO,CAAC,SAAiB,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAA;AACpF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,GAAwB,EAAE,EAAE;IAC1D,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC;QAC5B,MAAM,EAAE,YAAY;QACpB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC5E,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,GAAG,CAAA;;;;kCAIyB,GAAG,CAAC,SAAS,wBAAwB,GAAG,CAAC,OAAO;0CACxC,GAAG,CAAC,SAAS,6BAA6B,GAAG,CAAC,OAAO;cACjF;KACX,CAAC,CAAA;IACF,OAAO,CAAC,SAAiB,EAAE,OAAe,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAA;AAChH,CAAC,CAAA"}