@mrtdown/core 2.0.0-alpha.5 → 2.0.0-alpha.7

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 (252) hide show
  1. package/dist/index.d.ts +0 -7
  2. package/dist/index.js +0 -7
  3. package/dist/index.js.map +1 -1
  4. package/dist/schema/Landmark.js.map +1 -1
  5. package/dist/schema/Line.d.ts +6 -0
  6. package/dist/schema/Line.js +2 -1
  7. package/dist/schema/Line.js.map +1 -1
  8. package/dist/schema/Operator.js.map +1 -1
  9. package/dist/schema/Service.js.map +1 -1
  10. package/dist/schema/Station.js.map +1 -1
  11. package/dist/schema/Town.js.map +1 -1
  12. package/dist/schema/common.js.map +1 -1
  13. package/dist/schema/issue/bundle.js.map +1 -1
  14. package/dist/schema/issue/cause.js.map +1 -1
  15. package/dist/schema/issue/claim.js.map +1 -1
  16. package/dist/schema/issue/entity.js.map +1 -1
  17. package/dist/schema/issue/evidence.js.map +1 -1
  18. package/dist/schema/issue/facilityEffect.js.map +1 -1
  19. package/dist/schema/issue/id.js.map +1 -1
  20. package/dist/schema/issue/impactEvent.js.map +1 -1
  21. package/dist/schema/issue/issue.js.map +1 -1
  22. package/dist/schema/issue/issueType.js.map +1 -1
  23. package/dist/schema/issue/period.js.map +1 -1
  24. package/dist/schema/issue/serviceEffect.js.map +1 -1
  25. package/dist/schema/issue/serviceScope.js.map +1 -1
  26. package/package.json +19 -44
  27. package/README.md +0 -107
  28. package/dist/cli/commands/create.d.ts +0 -30
  29. package/dist/cli/commands/create.js +0 -189
  30. package/dist/cli/commands/create.js.map +0 -1
  31. package/dist/cli/commands/list.d.ts +0 -6
  32. package/dist/cli/commands/list.js +0 -106
  33. package/dist/cli/commands/list.js.map +0 -1
  34. package/dist/cli/commands/show.d.ts +0 -6
  35. package/dist/cli/commands/show.js +0 -156
  36. package/dist/cli/commands/show.js.map +0 -1
  37. package/dist/cli/commands/validate.d.ts +0 -6
  38. package/dist/cli/commands/validate.js +0 -19
  39. package/dist/cli/commands/validate.js.map +0 -1
  40. package/dist/cli/index.d.ts +0 -2
  41. package/dist/cli/index.js +0 -162
  42. package/dist/cli/index.js.map +0 -1
  43. package/dist/constants.d.ts +0 -10
  44. package/dist/constants.js +0 -11
  45. package/dist/constants.js.map +0 -1
  46. package/dist/helpers/calculateDurationWithinServiceHours.d.ts +0 -2
  47. package/dist/helpers/calculateDurationWithinServiceHours.js +0 -13
  48. package/dist/helpers/calculateDurationWithinServiceHours.js.map +0 -1
  49. package/dist/helpers/calculateDurationWithinServiceHours.test.d.ts +0 -1
  50. package/dist/helpers/calculateDurationWithinServiceHours.test.js +0 -83
  51. package/dist/helpers/calculateDurationWithinServiceHours.test.js.map +0 -1
  52. package/dist/helpers/computeImpactFromEvidenceClaims.d.ts +0 -21
  53. package/dist/helpers/computeImpactFromEvidenceClaims.js +0 -293
  54. package/dist/helpers/computeImpactFromEvidenceClaims.js.map +0 -1
  55. package/dist/helpers/computeImpactFromEvidenceClaims.test.d.ts +0 -1
  56. package/dist/helpers/computeImpactFromEvidenceClaims.test.js +0 -544
  57. package/dist/helpers/computeImpactFromEvidenceClaims.test.js.map +0 -1
  58. package/dist/helpers/computeStartOfDaysWithinInterval.d.ts +0 -2
  59. package/dist/helpers/computeStartOfDaysWithinInterval.js +0 -15
  60. package/dist/helpers/computeStartOfDaysWithinInterval.js.map +0 -1
  61. package/dist/helpers/computeStartOfDaysWithinInterval.test.d.ts +0 -1
  62. package/dist/helpers/computeStartOfDaysWithinInterval.test.js +0 -126
  63. package/dist/helpers/computeStartOfDaysWithinInterval.test.js.map +0 -1
  64. package/dist/helpers/estimateOpenAICost.d.ts +0 -40
  65. package/dist/helpers/estimateOpenAICost.js +0 -55
  66. package/dist/helpers/estimateOpenAICost.js.map +0 -1
  67. package/dist/helpers/keyForAffectedEntity.d.ts +0 -7
  68. package/dist/helpers/keyForAffectedEntity.js +0 -14
  69. package/dist/helpers/keyForAffectedEntity.js.map +0 -1
  70. package/dist/helpers/normalizeRecurringPeriod.d.ts +0 -7
  71. package/dist/helpers/normalizeRecurringPeriod.js +0 -118
  72. package/dist/helpers/normalizeRecurringPeriod.js.map +0 -1
  73. package/dist/helpers/normalizeRecurringPeriod.test.d.ts +0 -1
  74. package/dist/helpers/normalizeRecurringPeriod.test.js +0 -93
  75. package/dist/helpers/normalizeRecurringPeriod.test.js.map +0 -1
  76. package/dist/helpers/resolvePeriods.d.ts +0 -224
  77. package/dist/helpers/resolvePeriods.js +0 -207
  78. package/dist/helpers/resolvePeriods.js.map +0 -1
  79. package/dist/helpers/resolvePeriods.test.d.ts +0 -1
  80. package/dist/helpers/resolvePeriods.test.js +0 -239
  81. package/dist/helpers/resolvePeriods.test.js.map +0 -1
  82. package/dist/helpers/splitIntervalByServiceHours.d.ts +0 -2
  83. package/dist/helpers/splitIntervalByServiceHours.js +0 -30
  84. package/dist/helpers/splitIntervalByServiceHours.js.map +0 -1
  85. package/dist/helpers/splitIntervalByServiceHours.test.d.ts +0 -1
  86. package/dist/helpers/splitIntervalByServiceHours.test.js +0 -152
  87. package/dist/helpers/splitIntervalByServiceHours.test.js.map +0 -1
  88. package/dist/helpers/sumIntervalDuration.d.ts +0 -2
  89. package/dist/helpers/sumIntervalDuration.js +0 -9
  90. package/dist/helpers/sumIntervalDuration.js.map +0 -1
  91. package/dist/llm/client.d.ts +0 -2
  92. package/dist/llm/client.js +0 -5
  93. package/dist/llm/client.js.map +0 -1
  94. package/dist/llm/common/MemoryStore.d.ts +0 -21
  95. package/dist/llm/common/MemoryStore.js +0 -100
  96. package/dist/llm/common/MemoryStore.js.map +0 -1
  97. package/dist/llm/common/MemoryStore.test.d.ts +0 -1
  98. package/dist/llm/common/MemoryStore.test.js +0 -225
  99. package/dist/llm/common/MemoryStore.test.js.map +0 -1
  100. package/dist/llm/common/formatCurrentState.d.ts +0 -10
  101. package/dist/llm/common/formatCurrentState.js +0 -342
  102. package/dist/llm/common/formatCurrentState.js.map +0 -1
  103. package/dist/llm/common/tool.d.ts +0 -32
  104. package/dist/llm/common/tool.js +0 -6
  105. package/dist/llm/common/tool.js.map +0 -1
  106. package/dist/llm/functions/extractClaimsFromNewEvidence/eval.test.d.ts +0 -1
  107. package/dist/llm/functions/extractClaimsFromNewEvidence/eval.test.js +0 -433
  108. package/dist/llm/functions/extractClaimsFromNewEvidence/eval.test.js.map +0 -1
  109. package/dist/llm/functions/extractClaimsFromNewEvidence/index.d.ts +0 -18
  110. package/dist/llm/functions/extractClaimsFromNewEvidence/index.js +0 -153
  111. package/dist/llm/functions/extractClaimsFromNewEvidence/index.js.map +0 -1
  112. package/dist/llm/functions/extractClaimsFromNewEvidence/prompt.d.ts +0 -1
  113. package/dist/llm/functions/extractClaimsFromNewEvidence/prompt.js +0 -168
  114. package/dist/llm/functions/extractClaimsFromNewEvidence/prompt.js.map +0 -1
  115. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindLinesTool.d.ts +0 -19
  116. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindLinesTool.js +0 -65
  117. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindLinesTool.js.map +0 -1
  118. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindServicesTool.d.ts +0 -21
  119. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindServicesTool.js +0 -115
  120. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindServicesTool.js.map +0 -1
  121. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindStationsTool.d.ts +0 -24
  122. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindStationsTool.js +0 -110
  123. package/dist/llm/functions/extractClaimsFromNewEvidence/tools/FindStationsTool.js.map +0 -1
  124. package/dist/llm/functions/generateIssueTitleAndSlug/index.d.ts +0 -14
  125. package/dist/llm/functions/generateIssueTitleAndSlug/index.js +0 -38
  126. package/dist/llm/functions/generateIssueTitleAndSlug/index.js.map +0 -1
  127. package/dist/llm/functions/generateIssueTitleAndSlug/prompt.d.ts +0 -1
  128. package/dist/llm/functions/generateIssueTitleAndSlug/prompt.js +0 -23
  129. package/dist/llm/functions/generateIssueTitleAndSlug/prompt.js.map +0 -1
  130. package/dist/llm/functions/translate/index.d.ts +0 -1
  131. package/dist/llm/functions/translate/index.js +0 -59
  132. package/dist/llm/functions/translate/index.js.map +0 -1
  133. package/dist/llm/functions/triageNewEvidence/eval.test.d.ts +0 -1
  134. package/dist/llm/functions/triageNewEvidence/eval.test.js +0 -139
  135. package/dist/llm/functions/triageNewEvidence/eval.test.js.map +0 -1
  136. package/dist/llm/functions/triageNewEvidence/index.d.ts +0 -37
  137. package/dist/llm/functions/triageNewEvidence/index.js +0 -121
  138. package/dist/llm/functions/triageNewEvidence/index.js.map +0 -1
  139. package/dist/llm/functions/triageNewEvidence/prompt.d.ts +0 -1
  140. package/dist/llm/functions/triageNewEvidence/prompt.js +0 -60
  141. package/dist/llm/functions/triageNewEvidence/prompt.js.map +0 -1
  142. package/dist/llm/functions/triageNewEvidence/tools/FindIssuesTool.d.ts +0 -19
  143. package/dist/llm/functions/triageNewEvidence/tools/FindIssuesTool.js +0 -65
  144. package/dist/llm/functions/triageNewEvidence/tools/FindIssuesTool.js.map +0 -1
  145. package/dist/llm/functions/triageNewEvidence/tools/GetIssueTool.d.ts +0 -19
  146. package/dist/llm/functions/triageNewEvidence/tools/GetIssueTool.js +0 -37
  147. package/dist/llm/functions/triageNewEvidence/tools/GetIssueTool.js.map +0 -1
  148. package/dist/repo/MRTDownRepository.d.ts +0 -23
  149. package/dist/repo/MRTDownRepository.js +0 -28
  150. package/dist/repo/MRTDownRepository.js.map +0 -1
  151. package/dist/repo/common/FileStore.d.ts +0 -12
  152. package/dist/repo/common/FileStore.js +0 -27
  153. package/dist/repo/common/FileStore.js.map +0 -1
  154. package/dist/repo/common/StandardRepository.d.ts +0 -32
  155. package/dist/repo/common/StandardRepository.js +0 -58
  156. package/dist/repo/common/StandardRepository.js.map +0 -1
  157. package/dist/repo/common/store.d.ts +0 -29
  158. package/dist/repo/common/store.js +0 -2
  159. package/dist/repo/common/store.js.map +0 -1
  160. package/dist/repo/issue/IssueRepository.d.ts +0 -36
  161. package/dist/repo/issue/IssueRepository.js +0 -177
  162. package/dist/repo/issue/IssueRepository.js.map +0 -1
  163. package/dist/repo/issue/helpers/deriveCurrentState.d.ts +0 -51
  164. package/dist/repo/issue/helpers/deriveCurrentState.js +0 -113
  165. package/dist/repo/issue/helpers/deriveCurrentState.js.map +0 -1
  166. package/dist/repo/issue/helpers/deriveCurrentState.test.d.ts +0 -1
  167. package/dist/repo/issue/helpers/deriveCurrentState.test.js +0 -477
  168. package/dist/repo/issue/helpers/deriveCurrentState.test.js.map +0 -1
  169. package/dist/repo/landmark/LandmarkRepository.d.ts +0 -7
  170. package/dist/repo/landmark/LandmarkRepository.js +0 -12
  171. package/dist/repo/landmark/LandmarkRepository.js.map +0 -1
  172. package/dist/repo/line/LineRepository.d.ts +0 -13
  173. package/dist/repo/line/LineRepository.js +0 -32
  174. package/dist/repo/line/LineRepository.js.map +0 -1
  175. package/dist/repo/operator/OperatorRepository.d.ts +0 -7
  176. package/dist/repo/operator/OperatorRepository.js +0 -12
  177. package/dist/repo/operator/OperatorRepository.js.map +0 -1
  178. package/dist/repo/service/ServiceRepository.d.ts +0 -19
  179. package/dist/repo/service/ServiceRepository.js +0 -39
  180. package/dist/repo/service/ServiceRepository.js.map +0 -1
  181. package/dist/repo/station/StationRepository.d.ts +0 -13
  182. package/dist/repo/station/StationRepository.js +0 -30
  183. package/dist/repo/station/StationRepository.js.map +0 -1
  184. package/dist/repo/town/TownRepository.d.ts +0 -7
  185. package/dist/repo/town/TownRepository.js +0 -12
  186. package/dist/repo/town/TownRepository.js.map +0 -1
  187. package/dist/scripts/ingestViaWebhook.d.ts +0 -1
  188. package/dist/scripts/ingestViaWebhook.js +0 -9
  189. package/dist/scripts/ingestViaWebhook.js.map +0 -1
  190. package/dist/util/assert.d.ts +0 -1
  191. package/dist/util/assert.js +0 -6
  192. package/dist/util/assert.js.map +0 -1
  193. package/dist/util/ingestContent/helpers/getSlugDateTimeFromClaims.d.ts +0 -7
  194. package/dist/util/ingestContent/helpers/getSlugDateTimeFromClaims.js +0 -24
  195. package/dist/util/ingestContent/helpers/getSlugDateTimeFromClaims.js.map +0 -1
  196. package/dist/util/ingestContent/index.d.ts +0 -12
  197. package/dist/util/ingestContent/index.js +0 -171
  198. package/dist/util/ingestContent/index.js.map +0 -1
  199. package/dist/util/ingestContent/types.d.ts +0 -32
  200. package/dist/util/ingestContent/types.js +0 -2
  201. package/dist/util/ingestContent/types.js.map +0 -1
  202. package/dist/validators/buildContext.d.ts +0 -7
  203. package/dist/validators/buildContext.js +0 -164
  204. package/dist/validators/buildContext.js.map +0 -1
  205. package/dist/validators/index.d.ts +0 -17
  206. package/dist/validators/index.js +0 -58
  207. package/dist/validators/index.js.map +0 -1
  208. package/dist/validators/issue.d.ts +0 -13
  209. package/dist/validators/issue.js +0 -220
  210. package/dist/validators/issue.js.map +0 -1
  211. package/dist/validators/landmark.d.ts +0 -7
  212. package/dist/validators/landmark.js +0 -43
  213. package/dist/validators/landmark.js.map +0 -1
  214. package/dist/validators/line.d.ts +0 -8
  215. package/dist/validators/line.js +0 -87
  216. package/dist/validators/line.js.map +0 -1
  217. package/dist/validators/operator.d.ts +0 -7
  218. package/dist/validators/operator.js +0 -43
  219. package/dist/validators/operator.js.map +0 -1
  220. package/dist/validators/service.d.ts +0 -8
  221. package/dist/validators/service.js +0 -87
  222. package/dist/validators/service.js.map +0 -1
  223. package/dist/validators/station.d.ts +0 -8
  224. package/dist/validators/station.js +0 -93
  225. package/dist/validators/station.js.map +0 -1
  226. package/dist/validators/town.d.ts +0 -7
  227. package/dist/validators/town.js +0 -43
  228. package/dist/validators/town.js.map +0 -1
  229. package/dist/validators/types.d.ts +0 -19
  230. package/dist/validators/types.js +0 -2
  231. package/dist/validators/types.js.map +0 -1
  232. package/dist/validators/utils.d.ts +0 -2
  233. package/dist/validators/utils.js +0 -9
  234. package/dist/validators/utils.js.map +0 -1
  235. package/dist/write/MRTDownWriter.d.ts +0 -27
  236. package/dist/write/MRTDownWriter.js +0 -27
  237. package/dist/write/MRTDownWriter.js.map +0 -1
  238. package/dist/write/common/FileWriteStore.d.ts +0 -13
  239. package/dist/write/common/FileWriteStore.js +0 -31
  240. package/dist/write/common/FileWriteStore.js.map +0 -1
  241. package/dist/write/common/StandardWriter.d.ts +0 -14
  242. package/dist/write/common/StandardWriter.js +0 -17
  243. package/dist/write/common/StandardWriter.js.map +0 -1
  244. package/dist/write/common/store.d.ts +0 -32
  245. package/dist/write/common/store.js +0 -2
  246. package/dist/write/common/store.js.map +0 -1
  247. package/dist/write/id/IdGenerator.d.ts +0 -18
  248. package/dist/write/id/IdGenerator.js +0 -23
  249. package/dist/write/id/IdGenerator.js.map +0 -1
  250. package/dist/write/issue/IssueWriter.d.ts +0 -12
  251. package/dist/write/issue/IssueWriter.js +0 -33
  252. package/dist/write/issue/IssueWriter.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,5 +1,3 @@
1
- export { FileStore } from './repo/common/FileStore.js';
2
- export { MRTDownRepository } from './repo/MRTDownRepository.js';
3
1
  export * from './schema/common.js';
4
2
  export * from './schema/issue/bundle.js';
5
3
  export * from './schema/issue/cause.js';
@@ -20,8 +18,3 @@ export * from './schema/Operator.js';
20
18
  export * from './schema/Service.js';
21
19
  export * from './schema/Station.js';
22
20
  export * from './schema/Town.js';
23
- export { FileWriteStore } from './write/common/FileWriteStore.js';
24
- export { IdGenerator } from './write/id/IdGenerator.js';
25
- export { MRTDownWriter } from './write/MRTDownWriter.js';
26
- export { normalizeRecurringPeriod } from './helpers/normalizeRecurringPeriod.js';
27
- export { resolvePeriods } from './helpers/resolvePeriods.js';
package/dist/index.js CHANGED
@@ -1,5 +1,3 @@
1
- export { FileStore } from './repo/common/FileStore.js';
2
- export { MRTDownRepository } from './repo/MRTDownRepository.js';
3
1
  export * from './schema/common.js';
4
2
  export * from './schema/issue/bundle.js';
5
3
  export * from './schema/issue/cause.js';
@@ -20,9 +18,4 @@ export * from './schema/Operator.js';
20
18
  export * from './schema/Service.js';
21
19
  export * from './schema/Station.js';
22
20
  export * from './schema/Town.js';
23
- export { FileWriteStore } from './write/common/FileWriteStore.js';
24
- export { IdGenerator } from './write/id/IdGenerator.js';
25
- export { MRTDownWriter } from './write/MRTDownWriter.js';
26
- export { normalizeRecurringPeriod } from './helpers/normalizeRecurringPeriod.js';
27
- export { resolvePeriods } from './helpers/resolvePeriods.js';
28
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AAEjC,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC","sourcesContent":["export { FileStore } from './repo/common/FileStore.js';\nexport { MRTDownRepository } from './repo/MRTDownRepository.js';\n\nexport * from './schema/common.js';\nexport * from './schema/issue/bundle.js';\nexport * from './schema/issue/cause.js';\nexport * from './schema/issue/claim.js';\nexport * from './schema/issue/entity.js';\nexport * from './schema/issue/evidence.js';\nexport * from './schema/issue/facilityEffect.js';\nexport * from './schema/issue/id.js';\nexport * from './schema/issue/impactEvent.js';\nexport * from './schema/issue/issue.js';\nexport * from './schema/issue/issueType.js';\nexport * from './schema/issue/period.js';\nexport * from './schema/issue/serviceEffect.js';\nexport * from './schema/issue/serviceScope.js';\nexport * from './schema/Landmark.js';\nexport * from './schema/Line.js';\nexport * from './schema/Operator.js';\nexport * from './schema/Service.js';\nexport * from './schema/Station.js';\nexport * from './schema/Town.js';\n\nexport { FileWriteStore } from './write/common/FileWriteStore.js';\nexport { IdGenerator } from './write/id/IdGenerator.js';\nexport { MRTDownWriter } from './write/MRTDownWriter.js';\nexport { normalizeRecurringPeriod } from './helpers/normalizeRecurringPeriod.js';\nexport { resolvePeriods } from './helpers/resolvePeriods.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Landmark.js","sourceRoot":"/","sources":["schema/Landmark.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;CACzB,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { TranslationsSchema } from './common.js';\n\nexport const LandmarkSchema = z.object({\n id: z.string(),\n name: TranslationsSchema,\n});\nexport type Landmark = z.infer<typeof LandmarkSchema>;\n"]}
1
+ {"version":3,"file":"Landmark.js","sourceRoot":"","sources":["../../src/schema/Landmark.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;CACzB,CAAC,CAAC"}
@@ -23,6 +23,12 @@ export declare const LineOperatingHoursSchema: z.ZodObject<{
23
23
  }, z.z.core.$strip>;
24
24
  }, z.z.core.$strip>;
25
25
  export type LineOperatingHours = z.infer<typeof LineOperatingHoursSchema>;
26
+ export declare const LineTypeSchema: z.ZodEnum<{
27
+ "mrt.high": "mrt.high";
28
+ "mrt.medium": "mrt.medium";
29
+ lrt: "lrt";
30
+ }>;
31
+ export type LineType = z.infer<typeof LineTypeSchema>;
26
32
  export declare const LineSchema: z.ZodObject<{
27
33
  id: z.ZodString;
28
34
  name: z.ZodObject<{
@@ -22,10 +22,11 @@ export const LineOperatingHoursSchema = z.object({
22
22
  end: z.string(),
23
23
  }),
24
24
  });
25
+ export const LineTypeSchema = z.enum(['mrt.high', 'mrt.medium', 'lrt']);
25
26
  export const LineSchema = z.object({
26
27
  id: z.string(),
27
28
  name: TranslationsSchema,
28
- type: z.enum(['mrt.high', 'mrt.medium', 'lrt']),
29
+ type: LineTypeSchema,
29
30
  color: z.string(),
30
31
  startedAt: z.iso.date().nullable(),
31
32
  serviceIds: z.array(z.string()),
@@ -1 +1 @@
1
- {"version":3,"file":"Line.js","sourceRoot":"/","sources":["schema/Line.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAGH;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,QAAQ;QAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;KAChB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;KAChB,CAAC;CACH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACtC,cAAc,EAAE,wBAAwB,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { TranslationsSchema } from './common.js';\n\n/**\n * Line operator\n */\nexport const LineOperatorSchema = z.object({\n operatorId: z.string(),\n startedAt: z.string().nullable(),\n endedAt: z.string().nullable(),\n});\nexport type LineOperator = z.infer<typeof LineOperatorSchema>;\n\n/**\n * Operating hours for weekday/weekend service windows.\n * Used by API uptime calculations.\n */\nexport const LineOperatingHoursSchema = z.object({\n weekdays: z.object({\n start: z.string(), // HH:mm\n end: z.string(),\n }),\n weekends: z.object({\n start: z.string(),\n end: z.string(),\n }),\n});\nexport type LineOperatingHours = z.infer<typeof LineOperatingHoursSchema>;\n\nexport const LineSchema = z.object({\n id: z.string(),\n name: TranslationsSchema,\n type: z.enum(['mrt.high', 'mrt.medium', 'lrt']),\n color: z.string(),\n startedAt: z.iso.date().nullable(),\n serviceIds: z.array(z.string()),\n operators: z.array(LineOperatorSchema),\n operatingHours: LineOperatingHoursSchema.optional(),\n});\nexport type Line = z.infer<typeof LineSchema>;\n"]}
1
+ {"version":3,"file":"Line.js","sourceRoot":"","sources":["../../src/schema/Line.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAGH;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,QAAQ;QAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;KAChB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;KAChB,CAAC;CACH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;AAGxE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,cAAc;IACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC/B,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACtC,cAAc,EAAE,wBAAwB,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Operator.js","sourceRoot":"/","sources":["schema/Operator.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;IACvB,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CACxB,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { TranslationsSchema } from './common.js';\n\n/**\n * Operator\n */\nexport const OperatorSchema = z.object({\n id: z.string(),\n name: TranslationsSchema,\n foundedAt: z.iso.date(),\n url: z.url().nullable(),\n});\nexport type Operator = z.infer<typeof OperatorSchema>;\n"]}
1
+ {"version":3,"file":"Operator.js","sourceRoot":"","sources":["../../src/schema/Operator.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;IACvB,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CACxB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Service.js","sourceRoot":"/","sources":["schema/Service.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACb,QAAQ,EAAE,CAAC,CAAC,KAAK,CACf,CAAC,CAAC,MAAM,CAAC;YACP,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;YACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;SACxB,CAAC,CACH;KACF,CAAC;IACF,cAAc,EAAE,oBAAoB;CACrC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;CAC1C,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { OperatingHoursSchema, TranslationsSchema } from './common.js';\n\nexport const ServiceRevisionSchema = z.object({\n id: z.string(),\n startAt: z.string(),\n endAt: z.string().nullable(),\n path: z.object({\n stations: z.array(\n z.object({\n stationId: z.string(),\n displayCode: z.string(),\n }),\n ),\n }),\n operatingHours: OperatingHoursSchema,\n});\nexport type ServiceRevision = z.infer<typeof ServiceRevisionSchema>;\n\nexport const ServiceSchema = z.object({\n id: z.string(),\n name: TranslationsSchema,\n /**\n * The station IDs in the order they are visited by the service.\n */\n lineId: z.string(),\n revisions: z.array(ServiceRevisionSchema),\n});\nexport type Service = z.infer<typeof ServiceSchema>;\n"]}
1
+ {"version":3,"file":"Service.js","sourceRoot":"","sources":["../../src/schema/Service.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACb,QAAQ,EAAE,CAAC,CAAC,KAAK,CACf,CAAC,CAAC,MAAM,CAAC;YACP,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;YACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;SACxB,CAAC,CACH;KACF,CAAC;IACF,cAAc,EAAE,oBAAoB;CACrC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;CAC1C,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Station.js","sourceRoot":"/","sources":["schema/Station.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;QACZ,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB,CAAC;IACF,YAAY,EAAE,CAAC,CAAC,KAAK,CACnB,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC;YACpB,UAAU;YACV,aAAa;YACb,UAAU;YACV,aAAa;SACd,CAAC;KACH,CAAC,CACH;IACD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAChC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { TranslationsSchema } from './common.js';\n\nexport const StationSchema = z.object({\n id: z.string(),\n name: TranslationsSchema,\n geo: z.object({\n latitude: z.number(),\n longitude: z.number(),\n }),\n stationCodes: z.array(\n z.object({\n lineId: z.string(),\n code: z.string(),\n startedAt: z.string(),\n endedAt: z.string().nullable(),\n structureType: z.enum([\n 'elevated',\n 'underground',\n 'at_grade',\n 'in_building',\n ]),\n }),\n ),\n landmarkIds: z.array(z.string()),\n townId: z.string(),\n});\nexport type Station = z.infer<typeof StationSchema>;\n"]}
1
+ {"version":3,"file":"Station.js","sourceRoot":"","sources":["../../src/schema/Station.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC;QACZ,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;KACtB,CAAC;IACF,YAAY,EAAE,CAAC,CAAC,KAAK,CACnB,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9B,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC;YACpB,UAAU;YACV,aAAa;YACb,UAAU;YACV,aAAa;SACd,CAAC;KACH,CAAC,CACH;IACD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAChC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Town.js","sourceRoot":"/","sources":["schema/Town.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;CACzB,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { TranslationsSchema } from './common.js';\n\nexport const TownSchema = z.object({\n id: z.string(),\n name: TranslationsSchema,\n});\nexport type Town = z.infer<typeof TownSchema>;\n"]}
1
+ {"version":3,"file":"Town.js","sourceRoot":"","sources":["../../src/schema/Town.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;CACzB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"/","sources":["schema/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC1B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;QACnB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;KAClB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;QACnB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;KAClB,CAAC;CACH,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\n\n/**\n * Translations\n *\n * `en` is mandatory.\n */\nexport const TranslationsSchema = z.object({\n 'en-SG': z.string(),\n 'zh-Hans': z.string().nullable(),\n ms: z.string().nullable(),\n ta: z.string().nullable(),\n});\nexport type Translations = z.infer<typeof TranslationsSchema>;\n\nexport const OperatingHoursSchema = z.object({\n weekdays: z.object({\n start: z.iso.time(),\n end: z.iso.time(),\n }),\n weekends: z.object({\n start: z.iso.time(),\n end: z.iso.time(),\n }),\n});\nexport type OperatingHours = z.infer<typeof OperatingHoursSchema>;\n"]}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/schema/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC1B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;QACnB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;KAClB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC;QACjB,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;QACnB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;KAClB,CAAC;CACH,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.js","sourceRoot":"/","sources":["schema/issue/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;IACjC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;CAC1E,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\nimport { EvidenceSchema } from './evidence.js';\nimport { ImpactEventSchema } from './impactEvent.js';\nimport { IssueSchema } from './issue.js';\n\nexport const IssueBundleSchema = z.object({\n issue: IssueSchema,\n evidence: z.array(EvidenceSchema),\n impactEvents: z.array(ImpactEventSchema),\n path: z.string().describe('Relative path to issue folder, for debugging'),\n});\nexport type IssueBundle = z.infer<typeof IssueBundleSchema>;\n"]}
1
+ {"version":3,"file":"bundle.js","sourceRoot":"","sources":["../../../src/schema/issue/bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,WAAW;IAClB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;IACjC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;CAC1E,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cause.js","sourceRoot":"/","sources":["schema/issue/cause.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,2CAA2C;AAC3C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC1C,cAAc;IACd,aAAa;IACb,aAAa;IACb,aAAa;IACb,eAAe;IACf,UAAU;IACV,SAAS;IACT,oBAAoB;IACpB,qBAAqB;IACrB,OAAO;CACR,CAAC,CAAC;AAGH,4CAA4C;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAG/E,sCAAsC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC;IACrC,iBAAiB;IACjB,kBAAkB;IAClB,wBAAwB;IACxB,oBAAoB;CACrB,CAAC,CAAC;AAGH,qDAAqD;AACrD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC;IACxC,qBAAqB;IACrB,sBAAsB;IACtB,gBAAgB;CACjB,CAAC,CAAC","sourcesContent":["import z from 'zod';\n\n/** Cause subtype for disruption issues. */\nexport const CauseDisruptionSchema = z.enum([\n 'signal.fault',\n 'track.fault',\n 'train.fault',\n 'power.fault',\n 'station.fault',\n 'security',\n 'weather',\n 'passenger.incident',\n 'platform_door.fault',\n 'delay',\n]);\nexport type CauseDisruption = z.infer<typeof CauseDisruptionSchema>;\n\n/** Cause subtype for maintenance issues. */\nexport const CauseMaintenanceSchema = z.enum(['track.work', 'system.upgrade']);\nexport type CauseMaintenance = z.infer<typeof CauseMaintenanceSchema>;\n\n/** Cause subtype for infra issues. */\nexport const CauseInfraSchema = z.enum([\n 'elevator.outage',\n 'escalator.outage',\n 'air_conditioning.issue',\n 'station.renovation',\n]);\nexport type CauseInfra = z.infer<typeof CauseInfraSchema>;\n\n/** Union of all cause subtypes for impact events. */\nexport const CauseSubtypeSchema = z.union([\n CauseDisruptionSchema,\n CauseMaintenanceSchema,\n CauseInfraSchema,\n]);\nexport type CauseSubtype = z.infer<typeof CauseSubtypeSchema>;\n"]}
1
+ {"version":3,"file":"cause.js","sourceRoot":"","sources":["../../../src/schema/issue/cause.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,2CAA2C;AAC3C,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC1C,cAAc;IACd,aAAa;IACb,aAAa;IACb,aAAa;IACb,eAAe;IACf,UAAU;IACV,SAAS;IACT,oBAAoB;IACpB,qBAAqB;IACrB,OAAO;CACR,CAAC,CAAC;AAGH,4CAA4C;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC;AAG/E,sCAAsC;AACtC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC;IACrC,iBAAiB;IACjB,kBAAkB;IAClB,wBAAwB;IACxB,oBAAoB;CACrB,CAAC,CAAC;AAGH,qDAAqD;AACrD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC;IACxC,qBAAqB;IACrB,sBAAsB;IACtB,gBAAgB;CACjB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"claim.js","sourceRoot":"/","sources":["schema/issue/claim.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAG9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC/D,iBAAiB;IACjB,qBAAqB;IACrB,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAC7B,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAC1C,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAC3B,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KACxC,CAAC;CACH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,oBAAoB;IAC5B,MAAM,EAAE,CAAC;SACN,MAAM,CAAC;QACN,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE;QACvC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;KAC1C,CAAC;SACD,QAAQ,EAAE;IACb,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;KAChD,CAAC;IACF,YAAY,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IAChD,SAAS,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;CAC/C,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { AffectedEntitySchema } from './entity.js';\nimport { FacilityEffectSchema } from './facilityEffect.js';\nimport { PeriodFixedSchema, PeriodRecurringSchema } from './period.js';\nimport { ServiceEffectSchema } from './serviceEffect.js';\nimport { ServiceScopeSchema } from './serviceScope.js';\nimport { CauseSubtypeSchema } from './cause.js';\n\nexport const ClaimStatusSignalSchema = z.enum(['open', 'cleared', 'planned']);\nexport type ClaimStatusSignal = z.infer<typeof ClaimStatusSignalSchema>;\n\nexport const ClaimTimeHintsSchema = z.discriminatedUnion('kind', [\n PeriodFixedSchema,\n PeriodRecurringSchema,\n z.object({\n kind: z.literal('start-only'),\n startAt: z.iso.datetime({ offset: true }),\n }),\n z.object({\n kind: z.literal('end-only'),\n endAt: z.iso.datetime({ offset: true }),\n }),\n]);\nexport type ClaimTimeHints = z.infer<typeof ClaimTimeHintsSchema>;\n\nexport const ClaimSchema = z.object({\n entity: AffectedEntitySchema,\n effect: z\n .object({\n service: ServiceEffectSchema.nullable(),\n facility: FacilityEffectSchema.nullable(),\n })\n .nullable(),\n scopes: z.object({\n service: z.array(ServiceScopeSchema).nullable(),\n }),\n statusSignal: ClaimStatusSignalSchema.nullable(),\n timeHints: ClaimTimeHintsSchema.nullable(),\n causes: z.array(CauseSubtypeSchema).nullable(),\n});\n\nexport type Claim = z.infer<typeof ClaimSchema>;\n"]}
1
+ {"version":3,"file":"claim.js","sourceRoot":"","sources":["../../../src/schema/issue/claim.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAG9E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC/D,iBAAiB;IACjB,qBAAqB;IACrB,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAC7B,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAC1C,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAC3B,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KACxC,CAAC;CACH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,oBAAoB;IAC5B,MAAM,EAAE,CAAC;SACN,MAAM,CAAC;QACN,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE;QACvC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;KAC1C,CAAC;SACD,QAAQ,EAAE;IACb,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;KAChD,CAAC;IACF,YAAY,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IAChD,SAAS,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;CAC/C,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity.js","sourceRoot":"/","sources":["schema/issue/entity.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;CACnD,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC/D,2BAA2B;IAC3B,4BAA4B;CAC7B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAC1C,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;IAC9B,MAAM,EAAE,oBAAoB;IAC5B,OAAO,EAAE,CAAC;SACP,MAAM,CAAC;QACN,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE;QACvC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;KAC1C,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,gCAAgC,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAC7E,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KACjC,CAAC;CACH,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { FacilityEffectSchema } from './facilityEffect.js';\nimport { PeriodSchema } from './period.js';\nimport { ServiceEffectSchema } from './serviceEffect.js';\nimport { ServiceScopeSchema } from './serviceScope.js';\n\nexport const AffectedEntityServiceSchema = z.object({\n type: z.literal('service'),\n serviceId: z.string(),\n});\nexport type AffectedEntityService = z.infer<typeof AffectedEntityServiceSchema>;\n\nexport const AffectedEntityFacilitySchema = z.object({\n type: z.literal('facility'),\n stationId: z.string(),\n kind: z.enum(['lift', 'escalator', 'screen-door']),\n});\nexport type AffectedEntityFacility = z.infer<\n typeof AffectedEntityFacilitySchema\n>;\n\nexport const AffectedEntitySchema = z.discriminatedUnion('type', [\n AffectedEntityServiceSchema,\n AffectedEntityFacilitySchema,\n]);\nexport type AffectedEntity = z.infer<typeof AffectedEntitySchema>;\n\nexport const EntityImpactStateSchema = z.object({\n serviceScopes: z.array(ServiceScopeSchema),\n periods: z.array(PeriodSchema),\n entity: AffectedEntitySchema,\n effects: z\n .object({\n service: ServiceEffectSchema.nullable(),\n facility: FacilityEffectSchema.nullable(),\n })\n .nullable(),\n});\n\nexport type EntityImpactState = z.infer<typeof EntityImpactStateSchema>;\n\nexport const EntityImpactStateWithBasisSchema = EntityImpactStateSchema.extend({\n basis: z.object({\n evidenceIds: z.array(z.string()),\n }),\n});\n\nexport type EntityImpactStateWithBasis = z.infer<\n typeof EntityImpactStateWithBasisSchema\n>;\n"]}
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../src/schema/issue/entity.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;CACnD,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC/D,2BAA2B;IAC3B,4BAA4B;CAC7B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAC1C,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;IAC9B,MAAM,EAAE,oBAAoB;IAC5B,OAAO,EAAE,CAAC;SACP,MAAM,CAAC;QACN,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE;QACvC,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE;KAC1C,CAAC;SACD,QAAQ,EAAE;CACd,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,gCAAgC,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAC7E,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KACjC,CAAC;CACH,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"evidence.js","sourceRoot":"/","sources":["schema/issue/evidence.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,+BAA+B,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACvE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACjE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACzD,+BAA+B;IAC/B,0BAA0B;IAC1B,yBAAyB;CAC1B,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { TranslationsSchema } from '../common.js';\n\nexport const EvidenceRenderSchema = z.object({\n text: TranslationsSchema,\n source: z.string(),\n});\nexport type EvidenceRender = z.infer<typeof EvidenceRenderSchema>;\n\nexport const EvidenceBaseSchema = z.object({\n id: z.string(),\n ts: z.string(),\n text: z.string(),\n render: EvidenceRenderSchema.nullable(),\n});\nexport type EvidenceBase = z.infer<typeof EvidenceBaseSchema>;\n\nexport const EvidenceOfficialStatementSchema = EvidenceBaseSchema.extend({\n type: z.literal('official-statement'),\n sourceUrl: z.string(),\n});\nexport type EvidenceOfficialStatement = z.infer<\n typeof EvidenceOfficialStatementSchema\n>;\n\nexport const EvidencePublicReportSchema = EvidenceBaseSchema.extend({\n type: z.literal('public.report'),\n sourceUrl: z.string(),\n});\nexport type EvidencePublicReport = z.infer<typeof EvidencePublicReportSchema>;\n\nexport const EvidenceMediaReportSchema = EvidenceBaseSchema.extend({\n type: z.literal('media.report'),\n sourceUrl: z.string(),\n});\nexport type EvidenceMediaReport = z.infer<typeof EvidenceMediaReportSchema>;\n\nexport const EvidenceSchema = z.discriminatedUnion('type', [\n EvidenceOfficialStatementSchema,\n EvidencePublicReportSchema,\n EvidenceMediaReportSchema,\n]);\nexport type Evidence = z.infer<typeof EvidenceSchema>;\n"]}
1
+ {"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../../src/schema/issue/evidence.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,+BAA+B,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACvE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAAkB,CAAC,MAAM,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,yBAAyB,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACjE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACzD,+BAA+B;IAC/B,0BAA0B;IAC1B,yBAAyB;CAC1B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"facilityEffect.js","sourceRoot":"/","sources":["schema/issue/facilityEffect.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC;CAC3C,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;CACrC,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC/D,gCAAgC;IAChC,4BAA4B;CAC7B,CAAC,CAAC","sourcesContent":["import z from 'zod';\n\nexport const FacilityEffectOutOfServiceSchema = z.object({\n kind: z.literal('facility-out-of-service'),\n});\nexport type FacilityEffectOutOfService = z.infer<\n typeof FacilityEffectOutOfServiceSchema\n>;\n\nexport const FacilityEffectDegradedSchema = z.object({\n kind: z.literal('facility-degraded'),\n});\nexport type FacilityEffectDegraded = z.infer<\n typeof FacilityEffectDegradedSchema\n>;\n\nexport const FacilityEffectSchema = z.discriminatedUnion('kind', [\n FacilityEffectOutOfServiceSchema,\n FacilityEffectDegradedSchema,\n]);\nexport type FacilityEffect = z.infer<typeof FacilityEffectSchema>;\n"]}
1
+ {"version":3,"file":"facilityEffect.js","sourceRoot":"","sources":["../../../src/schema/issue/facilityEffect.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC;CAC3C,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC;CACrC,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC/D,gCAAgC;IAChC,4BAA4B;CAC7B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"id.js","sourceRoot":"/","sources":["schema/issue/id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC3B,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACnD,QAAQ,CAAC,wDAAwD,CAAC,CAAC","sourcesContent":["import { z } from 'zod';\n\nexport const IssueIdSchema = z\n .string()\n .refine((val) => /^\\d{4}-\\d{2}-\\d{2}-.+$/.test(val))\n .describe('YYYY-MM-DD followed by a lowercase blog post-like slug');\nexport type IssueId = z.infer<typeof IssueIdSchema>;\n"]}
1
+ {"version":3,"file":"id.js","sourceRoot":"","sources":["../../../src/schema/issue/id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC3B,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACnD,QAAQ,CAAC,wDAAwD,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"impactEvent.js","sourceRoot":"/","sources":["schema/issue/impactEvent.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,oBAAoB;IAC5B,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;CACH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,2BAA2B,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACtE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;CAC/B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gCAAgC,GAAG,qBAAqB,CAAC,MAAM,CAAC;IAC3E,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;IACrC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;CAC3C,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,iCAAiC,GAAG,qBAAqB,CAAC,MAAM,CAAC;IAC5E,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;IACtC,MAAM,EAAE,mBAAmB;CAC5B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,kCAAkC,GAAG,qBAAqB,CAAC,MAAM,CAAC;IAC7E,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC;IACvC,MAAM,EAAE,oBAAoB;CAC7B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,0BAA0B,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACrE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;CACpC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC5D,2BAA2B;IAC3B,gCAAgC;IAChC,iCAAiC;IACjC,kCAAkC;IAClC,0BAA0B;CAC3B,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { CauseSubtypeSchema } from './cause.js';\nimport { AffectedEntitySchema } from './entity.js';\nimport { FacilityEffectSchema } from './facilityEffect.js';\nimport { PeriodSchema } from './period.js';\nimport { ServiceEffectSchema } from './serviceEffect.js';\nimport { ServiceScopeSchema } from './serviceScope.js';\n\nexport const ImpactEventBaseSchema = z.object({\n id: z.string(),\n entity: AffectedEntitySchema,\n ts: z.iso.datetime({ offset: true }),\n basis: z.object({\n evidenceId: z.string(),\n }),\n});\nexport type ImpactEventBase = z.infer<typeof ImpactEventBaseSchema>;\n\nexport const ImpactEventPeriodsSetSchema = ImpactEventBaseSchema.extend({\n type: z.literal('periods.set'),\n periods: z.array(PeriodSchema),\n});\nexport type ImpactEventPeriodsSet = z.infer<typeof ImpactEventPeriodsSetSchema>;\n\nexport const ImpactEventServiceScopeSetSchema = ImpactEventBaseSchema.extend({\n type: z.literal('service_scopes.set'),\n serviceScopes: z.array(ServiceScopeSchema),\n});\nexport type ImpactEventServiceScopeSet = z.infer<\n typeof ImpactEventServiceScopeSetSchema\n>;\n\nexport const ImpactEventServiceEffectSetSchema = ImpactEventBaseSchema.extend({\n type: z.literal('service_effects.set'),\n effect: ServiceEffectSchema,\n});\nexport type ImpactEventServiceEffectSet = z.infer<\n typeof ImpactEventServiceEffectSetSchema\n>;\n\nexport const ImpactEventFacilityEffectSetSchema = ImpactEventBaseSchema.extend({\n type: z.literal('facility_effects.set'),\n effect: FacilityEffectSchema,\n});\nexport type ImpactEventFacilityEffectSet = z.infer<\n typeof ImpactEventFacilityEffectSetSchema\n>;\n\nexport const ImpactEventCausesSetSchema = ImpactEventBaseSchema.extend({\n type: z.literal('causes.set'),\n causes: z.array(CauseSubtypeSchema),\n});\nexport type ImpactEventCauseSet = z.infer<typeof ImpactEventCausesSetSchema>;\n\nexport const ImpactEventSchema = z.discriminatedUnion('type', [\n ImpactEventPeriodsSetSchema,\n ImpactEventServiceScopeSetSchema,\n ImpactEventServiceEffectSetSchema,\n ImpactEventFacilityEffectSetSchema,\n ImpactEventCausesSetSchema,\n]);\nexport type ImpactEvent = z.infer<typeof ImpactEventSchema>;\n"]}
1
+ {"version":3,"file":"impactEvent.js","sourceRoot":"","sources":["../../../src/schema/issue/impactEvent.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,oBAAoB;IAC5B,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;KACvB,CAAC;CACH,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,2BAA2B,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACtE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;CAC/B,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gCAAgC,GAAG,qBAAqB,CAAC,MAAM,CAAC;IAC3E,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC;IACrC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;CAC3C,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,iCAAiC,GAAG,qBAAqB,CAAC,MAAM,CAAC;IAC5E,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;IACtC,MAAM,EAAE,mBAAmB;CAC5B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,kCAAkC,GAAG,qBAAqB,CAAC,MAAM,CAAC;IAC7E,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC;IACvC,MAAM,EAAE,oBAAoB;CAC7B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,0BAA0B,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACrE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;CACpC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC5D,2BAA2B;IAC3B,gCAAgC;IAChC,iCAAiC;IACjC,kCAAkC;IAClC,0BAA0B;CAC3B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"issue.js","sourceRoot":"/","sources":["schema/issue/issue.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,EAAE,EAAE,aAAa;IACjB,IAAI,EAAE,eAAe;IACrB,KAAK,EAAE,kBAAkB;IACzB,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC;QAClB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB,CAAC;CACH,CAAC,CAAC","sourcesContent":["import z from 'zod';\nimport { TranslationsSchema } from '../common.js';\nimport { IssueIdSchema } from './id.js';\nimport { IssueTypeSchema } from './issueType.js';\n\nexport const IssueSchema = z.object({\n id: IssueIdSchema,\n type: IssueTypeSchema,\n title: TranslationsSchema,\n titleMeta: z.object({\n source: z.string(),\n }),\n});\nexport type Issue = z.infer<typeof IssueSchema>;\n"]}
1
+ {"version":3,"file":"issue.js","sourceRoot":"","sources":["../../../src/schema/issue/issue.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,EAAE,EAAE,aAAa;IACjB,IAAI,EAAE,eAAe;IACrB,KAAK,EAAE,kBAAkB;IACzB,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC;QAClB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;KACnB,CAAC;CACH,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"issueType.js","sourceRoot":"/","sources":["schema/issue/issueType.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC","sourcesContent":["import z from 'zod';\n\nexport const IssueTypeSchema = z.enum(['disruption', 'maintenance', 'infra']);\nexport type IssueType = z.infer<typeof IssueTypeSchema>;\n"]}
1
+ {"version":3,"file":"issueType.js","sourceRoot":"","sources":["../../../src/schema/issue/issueType.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"period.js","sourceRoot":"/","sources":["schema/issue/period.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACzC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;CACnD,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC1C,OAAO;IACP,QAAQ;IACR,SAAS;IACT,QAAQ;CACT,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC5B,SAAS,EAAE,qBAAqB;IAChC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACzC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvC,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;SACzD,QAAQ,EAAE;IACb,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;QACrB,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;KACpB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IACrC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACvD,iBAAiB;IACjB,qBAAqB;CACtB,CAAC,CAAC","sourcesContent":["import z from 'zod';\n\nexport const PeriodFixedSchema = z.object({\n kind: z.literal('fixed'),\n startAt: z.iso.datetime({ offset: true }),\n endAt: z.iso.datetime({ offset: true }).nullable(),\n});\nexport type PeriodFixed = z.infer<typeof PeriodFixedSchema>;\n\nexport const PeriodFrequencySchema = z.enum([\n 'daily',\n 'weekly',\n 'monthly',\n 'yearly',\n]);\nexport type PeriodFrequency = z.infer<typeof PeriodFrequencySchema>;\n\nexport const PeriodRecurringSchema = z.object({\n kind: z.literal('recurring'),\n frequency: PeriodFrequencySchema,\n startAt: z.iso.datetime({ offset: true }),\n endAt: z.iso.datetime({ offset: true }),\n daysOfWeek: z\n .array(z.enum(['MO', 'TU', 'WE', 'TH', 'FR', 'SA', 'SU']))\n .nullable(),\n timeWindow: z.object({\n startAt: z.iso.time(),\n endAt: z.iso.time(),\n }),\n timeZone: z.literal('Asia/Singapore'),\n excludedDates: z.array(z.iso.date()).nullable(),\n});\nexport type PeriodRecurring = z.infer<typeof PeriodRecurringSchema>;\n\nexport const PeriodSchema = z.discriminatedUnion('kind', [\n PeriodFixedSchema,\n PeriodRecurringSchema,\n]);\nexport type Period = z.infer<typeof PeriodSchema>;\n"]}
1
+ {"version":3,"file":"period.js","sourceRoot":"","sources":["../../../src/schema/issue/period.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACzC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;CACnD,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC1C,OAAO;IACP,QAAQ;IACR,SAAS;IACT,QAAQ;CACT,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC5B,SAAS,EAAE,qBAAqB;IAChC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACzC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvC,UAAU,EAAE,CAAC;SACV,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;SACzD,QAAQ,EAAE;IACb,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;QACrB,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE;KACpB,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IACrC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACvD,iBAAiB;IACjB,qBAAqB;CACtB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"serviceEffect.js","sourceRoot":"/","sources":["schema/issue/serviceEffect.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;CAC9B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;CACnC,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,yCAAyC,GAAG,CAAC,CAAC,MAAM,CAAC;IAChE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC;CAC5C,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC9D,wBAAwB;IACxB,4BAA4B;IAC5B,iCAAiC;IACjC,yCAAyC;CAC1C,CAAC,CAAC","sourcesContent":["import z from 'zod';\n\nexport const ServiceEffectDelaySchema = z.object({\n kind: z.literal('delay'),\n duration: z.iso.duration().nullable(),\n});\nexport type ServiceEffectDelay = z.infer<typeof ServiceEffectDelaySchema>;\n\nexport const ServiceEffectNoServiceSchema = z.object({\n kind: z.literal('no-service'),\n});\nexport type ServiceEffectNoService = z.infer<\n typeof ServiceEffectNoServiceSchema\n>;\n\nexport const ServiceEffectReducedServiceSchema = z.object({\n kind: z.literal('reduced-service'),\n});\nexport type ServiceEffectReducedService = z.infer<\n typeof ServiceEffectReducedServiceSchema\n>;\n\nexport const ServiceEffectServiceHoursAdjustmentSchema = z.object({\n kind: z.literal('service-hours-adjustment'),\n});\nexport type ServiceEffectServiceHoursAdjustment = z.infer<\n typeof ServiceEffectServiceHoursAdjustmentSchema\n>;\n\nexport const ServiceEffectSchema = z.discriminatedUnion('kind', [\n ServiceEffectDelaySchema,\n ServiceEffectNoServiceSchema,\n ServiceEffectReducedServiceSchema,\n ServiceEffectServiceHoursAdjustmentSchema,\n]);\nexport type ServiceEffect = z.infer<typeof ServiceEffectSchema>;\n"]}
1
+ {"version":3,"file":"serviceEffect.js","sourceRoot":"","sources":["../../../src/schema/issue/serviceEffect.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;CAC9B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;CACnC,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,yCAAyC,GAAG,CAAC,CAAC,MAAM,CAAC;IAChE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,0BAA0B,CAAC;CAC5C,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC9D,wBAAwB;IACxB,4BAA4B;IAC5B,iCAAiC;IACjC,yCAAyC;CAC1C,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"serviceScope.js","sourceRoot":"/","sources":["schema/issue/serviceScope.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;CACjC,CAAC,CAAC;AAGH;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAClC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;CACxB,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC7D,uBAAuB;IACvB,yBAAyB;IACzB,uBAAuB;CACxB,CAAC,CAAC","sourcesContent":["import z from 'zod';\n\n/**\n * Service Whole (service)\n */\nexport const ServiceScopeWholeSchema = z.object({\n type: z.literal('service.whole'),\n});\nexport type ServiceScopeWhole = z.infer<typeof ServiceScopeWholeSchema>;\n\n/**\n * Service segment (service-level)\n *\n * This should also be used when representing an entire service.\n */\nexport const ServiceScopeSegmentSchema = z.object({\n type: z.literal('service.segment'),\n fromStationId: z.string(),\n toStationId: z.string(),\n});\nexport type ServiceScopeSegment = z.infer<typeof ServiceScopeSegmentSchema>;\n\n/**\n * Service point (station-level)\n */\nexport const ServiceScopePointSchema = z.object({\n type: z.literal('service.point'),\n stationId: z.string(),\n});\nexport type ServiceScopePoint = z.infer<typeof ServiceScopePointSchema>;\n\nexport const ServiceScopeSchema = z.discriminatedUnion('type', [\n ServiceScopeWholeSchema,\n ServiceScopeSegmentSchema,\n ServiceScopePointSchema,\n]);\nexport type ServiceScope = z.infer<typeof ServiceScopeSchema>;\n"]}
1
+ {"version":3,"file":"serviceScope.js","sourceRoot":"","sources":["../../../src/schema/issue/serviceScope.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAEpB;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;CACjC,CAAC,CAAC;AAGH;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAClC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;CACxB,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC7D,uBAAuB;IACvB,yBAAyB;IACzB,uBAAuB;CACxB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,62 +1,37 @@
1
1
  {
2
2
  "name": "@mrtdown/core",
3
- "version": "2.0.0-alpha.5",
4
- "description": "Data repository",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "scripts": {
8
- "build": "tsc",
9
- "test": "vitest",
10
- "validate": "tsx src/cli/index.ts validate",
11
- "create": "tsx src/cli/index.ts create",
12
- "cli": "tsx src/cli/index.ts",
13
- "ingest:webhook": "tsx src/scripts/ingestViaWebhook.ts",
14
- "check-rss-feeds": "tsx src/scripts/checkRssFeeds.ts"
3
+ "version": "2.0.0-alpha.7",
4
+ "description": "",
5
+ "homepage": "https://github.com/foldaway/mrtdown-data#readme",
6
+ "bugs": {
7
+ "url": "https://github.com/foldaway/mrtdown-data/issues"
15
8
  },
16
- "author": "Foldaway <bottleneck.company@gmail.com>",
17
9
  "repository": {
18
10
  "type": "git",
19
- "url": "https://github.com/foldaway/mrtdown-data.git"
11
+ "url": "git+https://github.com/foldaway/mrtdown-data.git"
20
12
  },
21
13
  "license": "UNLICENSED",
22
- "devDependencies": {
23
- "@biomejs/biome": "2.3.14",
24
- "@types/luxon": "^3.4.2",
25
- "@types/node": "^22.13.4",
26
- "tsx": "^4.19.3",
27
- "typescript": "^5.8.3",
28
- "vitest": "^3.0.9",
29
- "vitest-evals": "^0.5.0"
30
- },
31
- "files": [
32
- "dist"
33
- ],
14
+ "author": "Foldaway <bottleneck.company@gmail.com>",
15
+ "type": "module",
16
+ "main": "dist/index.js",
34
17
  "exports": {
35
18
  ".": {
36
19
  "types": "./dist/index.d.ts",
37
20
  "import": "./dist/index.js"
38
21
  }
39
22
  },
40
- "dependencies": {
41
- "commander": "^14.0.3",
42
- "dotenv": "^16.4.7",
43
- "fuse.js": "^7.1.0",
44
- "hast-util-from-html": "^2.0.3",
45
- "hast-util-to-mdast": "^10.1.2",
46
- "json-nd": "^1.0.0",
47
- "luxon": "^3.5.0",
48
- "mdast-util-gfm": "^3.1.0",
49
- "mdast-util-to-markdown": "^2.1.2",
50
- "openai": "^5.16.0",
51
- "rrule-rust": "^2.0.2",
52
- "rss-parser": "^3.13.0",
53
- "ulid": "^3.0.2",
54
- "zod": "^4.0.14"
23
+ "files": [
24
+ "dist"
25
+ ],
26
+ "scripts": {
27
+ "build": "tsc",
28
+ "test": "echo \"Error: no test specified\" && exit 1"
55
29
  },
56
- "overrides": {
30
+ "dependencies": {
57
31
  "zod": "^4.0.14"
58
32
  },
59
- "publishConfig": {
60
- "access": "public"
33
+ "devDependencies": {
34
+ "@biomejs/biome": "2.3.14",
35
+ "typescript": "^5.8.3"
61
36
  }
62
37
  }
package/README.md DELETED
@@ -1,107 +0,0 @@
1
- # mrtdown-data
2
-
3
- A comprehensive data repository and API system that tracks Singapore's MRT (Mass Rapid Transit) service disruptions, maintenance, and infrastructure issues. Functions as a status monitoring system for Singapore's public transportation network.
4
-
5
- ## Tech Stack
6
-
7
- - **Backend**: Node.js + TypeScript, Hono API framework
8
- - **Database**: DuckDB with normalized relational schema
9
- - **Validation**: Zod schemas with OpenAPI integration
10
- - **Testing**: Vitest
11
- - **Linting**: Biome
12
-
13
- ## Quick Start
14
-
15
- ```bash
16
- # Install dependencies
17
- npm install
18
-
19
- # Build and generate database
20
- npm run build
21
-
22
- # Start development API server
23
- npm run api:dev # Runs on port 4000
24
-
25
- # Run tests
26
- npm test
27
-
28
- # Lint and format
29
- npx biome check
30
- ```
31
-
32
- ## Development Commands
33
-
34
- ### Database Operations
35
- ```bash
36
- npm run build # Compile TypeScript (auto-runs db:generate)
37
- npm run db:generate # Generate DuckDB database from source data
38
- ```
39
-
40
- ### API Development
41
- ```bash
42
- npm run api:dev # Start dev server on port 4000
43
- ```
44
-
45
- ### Data Processing
46
- ```bash
47
- npm run ingest:webhook # Process incoming webhook data
48
- ```
49
-
50
- ### Testing & Quality
51
- ```bash
52
- npm test # Run Vitest tests
53
- npx biome check # Lint and format code
54
- ```
55
-
56
- ### Database Queries
57
- ```bash
58
- # Query the database (use -readonly when API server is running)
59
- duckdb -readonly -c "SELECT * FROM issues LIMIT 10" mrtdown.duckdb
60
- ```
61
-
62
- ## Architecture Overview
63
-
64
- ### Core Data Models
65
- - **Lines**: MRT/LRT lines (NSL, EWL, CCL, etc.) with service schedules
66
- - **Issues**: Disruptions, maintenance, infrastructure problems with time intervals
67
- - **Stations**: Station information with multi-language support
68
- - **Time-aware**: All operations handle Singapore timezone (`Asia/Singapore`)
69
-
70
- ### API Structure
71
- Located in `/src/api/routes/`:
72
- - **Overview**: System-wide status and line summaries
73
- - **Lines**: Individual line profiles with detailed uptime metrics
74
- - **Issues**: Issue details and historical data
75
- - **Stations**: Station-specific information
76
- - **Analytics**: Statistical analysis endpoints
77
-
78
- All endpoints require Bearer token authentication except `/docs`.
79
-
80
- ### Data Flow
81
- 1. **Source data** (JSON files in `/data/source/`)
82
- 2. **Database generation** (DuckDB with complex analytics)
83
- 3. **API endpoints** (Real-time queries with multi-language support)
84
-
85
- ## Key Features
86
-
87
- - **Real-time Status Monitoring**: Track MRT line disruptions and maintenance
88
- - **Historical Analytics**: Complex uptime calculations and service metrics
89
- - **Multi-language Support**: Content available in 4 languages
90
- - **Time-zone Aware**: All operations in Singapore timezone
91
- - **Service Hours Logic**: Different schedules for weekdays/weekends/holidays
92
- - **Webhook Integration**: Real-time data ingestion capabilities
93
-
94
- ## Issue Data Structure
95
-
96
- - **File naming**: `YYYY-MM-DD-descriptive-slug.json`
97
- - **Types**: `disruption`, `maintenance`, `infra`
98
- - **Time intervals**: Start/end timestamps with timezone awareness
99
- - **Multi-language**: All titles have 4-language translations
100
-
101
- ## Development Notes
102
-
103
- - Database regeneration required when source data changes
104
- - API responses include related entities for client efficiency
105
- - Performance optimized for read-heavy analytical workloads
106
- - Extensive use of CTEs for complex uptime calculations
107
- - Proper handling of ongoing issues (end_at = NULL)
@@ -1,30 +0,0 @@
1
- type CreateOptions = {
2
- dataDir: string;
3
- dryRun?: boolean;
4
- stdin?: boolean;
5
- };
6
- export declare function runCreateIssue(opts: CreateOptions, args: {
7
- date?: string;
8
- slug?: string;
9
- title?: string;
10
- type?: string;
11
- source?: string;
12
- }): Promise<number>;
13
- export declare function runCreateTown(opts: CreateOptions, args: {
14
- id?: string;
15
- name?: string;
16
- }): Promise<number>;
17
- export declare function runCreateLandmark(opts: CreateOptions, args: {
18
- id?: string;
19
- name?: string;
20
- }): Promise<number>;
21
- export declare function runCreateOperator(opts: CreateOptions, args: {
22
- id?: string;
23
- name?: string;
24
- foundedAt?: string;
25
- url?: string;
26
- }): Promise<number>;
27
- export declare function runCreateStation(opts: CreateOptions, args: Record<string, string | undefined>): Promise<number>;
28
- export declare function runCreateLine(opts: CreateOptions, args: Record<string, string | undefined>): Promise<number>;
29
- export declare function runCreateService(opts: CreateOptions, args: Record<string, string | undefined>): Promise<number>;
30
- export {};