chaffjs 0.33.0 → 0.34.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 (467) hide show
  1. package/dist/api.d.ts +7 -1
  2. package/dist/api.d.ts.map +1 -1
  3. package/dist/api.js.map +1 -1
  4. package/dist/cli-text.d.ts.map +1 -1
  5. package/dist/cli-text.js +4 -2
  6. package/dist/cli-text.js.map +1 -1
  7. package/dist/commands/grade.d.ts.map +1 -1
  8. package/dist/commands/grade.js +66 -21
  9. package/dist/commands/grade.js.map +1 -1
  10. package/dist/company-kana-spelling.d.ts +6 -1
  11. package/dist/company-kana-spelling.d.ts.map +1 -1
  12. package/dist/company-kana-spelling.js +19 -2
  13. package/dist/company-kana-spelling.js.map +1 -1
  14. package/dist/company-name-ending.d.ts +7 -0
  15. package/dist/company-name-ending.d.ts.map +1 -0
  16. package/dist/company-name-ending.js +44 -0
  17. package/dist/company-name-ending.js.map +1 -0
  18. package/dist/company-names.d.ts +11 -3
  19. package/dist/company-names.d.ts.map +1 -1
  20. package/dist/company-names.js +27 -14
  21. package/dist/company-names.js.map +1 -1
  22. package/dist/custom/no-rewrite.d.ts +3 -0
  23. package/dist/custom/no-rewrite.d.ts.map +1 -0
  24. package/dist/custom/no-rewrite.js +3 -0
  25. package/dist/custom/no-rewrite.js.map +1 -0
  26. package/dist/custom/parse.d.ts.map +1 -1
  27. package/dist/custom/parse.js +14 -2
  28. package/dist/custom/parse.js.map +1 -1
  29. package/dist/detectors/age-words.d.ts +5 -0
  30. package/dist/detectors/age-words.d.ts.map +1 -0
  31. package/dist/detectors/age-words.js +8 -0
  32. package/dist/detectors/age-words.js.map +1 -0
  33. package/dist/detectors/annual-pay-mismatch.d.ts.map +1 -1
  34. package/dist/detectors/annual-pay-mismatch.js +2 -12
  35. package/dist/detectors/annual-pay-mismatch.js.map +1 -1
  36. package/dist/detectors/blank-structure.d.ts.map +1 -1
  37. package/dist/detectors/blank-structure.js +4 -3
  38. package/dist/detectors/blank-structure.js.map +1 -1
  39. package/dist/detectors/closing-balance-mismatch.d.ts.map +1 -1
  40. package/dist/detectors/closing-balance-mismatch.js +1 -0
  41. package/dist/detectors/closing-balance-mismatch.js.map +1 -1
  42. package/dist/detectors/code-fences.d.ts +5 -0
  43. package/dist/detectors/code-fences.d.ts.map +1 -1
  44. package/dist/detectors/code-fences.js +9 -0
  45. package/dist/detectors/code-fences.js.map +1 -1
  46. package/dist/detectors/condition-toki.d.ts +16 -0
  47. package/dist/detectors/condition-toki.d.ts.map +1 -0
  48. package/dist/detectors/condition-toki.js +42 -0
  49. package/dist/detectors/condition-toki.js.map +1 -0
  50. package/dist/detectors/conjugated-entry.d.ts +17 -0
  51. package/dist/detectors/conjugated-entry.d.ts.map +1 -0
  52. package/dist/detectors/conjugated-entry.js +50 -0
  53. package/dist/detectors/conjugated-entry.js.map +1 -0
  54. package/dist/detectors/content-morphemes.d.ts +2 -0
  55. package/dist/detectors/content-morphemes.d.ts.map +1 -1
  56. package/dist/detectors/content-morphemes.js +1 -1
  57. package/dist/detectors/content-morphemes.js.map +1 -1
  58. package/dist/detectors/cross-facts.d.ts.map +1 -1
  59. package/dist/detectors/cross-facts.js +2 -1
  60. package/dist/detectors/cross-facts.js.map +1 -1
  61. package/dist/detectors/custom.d.ts.map +1 -1
  62. package/dist/detectors/custom.js +8 -2
  63. package/dist/detectors/custom.js.map +1 -1
  64. package/dist/detectors/document-shape.d.ts.map +1 -1
  65. package/dist/detectors/document-shape.js +6 -0
  66. package/dist/detectors/document-shape.js.map +1 -1
  67. package/dist/detectors/due-date.d.ts.map +1 -1
  68. package/dist/detectors/due-date.js +12 -2
  69. package/dist/detectors/due-date.js.map +1 -1
  70. package/dist/detectors/fact-consistency.d.ts.map +1 -1
  71. package/dist/detectors/fact-consistency.js +12 -13
  72. package/dist/detectors/fact-consistency.js.map +1 -1
  73. package/dist/detectors/form-line.d.ts +9 -0
  74. package/dist/detectors/form-line.d.ts.map +1 -0
  75. package/dist/detectors/form-line.js +36 -0
  76. package/dist/detectors/form-line.js.map +1 -0
  77. package/dist/detectors/formula-amount.d.ts.map +1 -1
  78. package/dist/detectors/formula-amount.js +2 -12
  79. package/dist/detectors/formula-amount.js.map +1 -1
  80. package/dist/detectors/heading-claim.d.ts +14 -0
  81. package/dist/detectors/heading-claim.d.ts.map +1 -0
  82. package/dist/detectors/heading-claim.js +49 -0
  83. package/dist/detectors/heading-claim.js.map +1 -0
  84. package/dist/detectors/heading-echo.d.ts.map +1 -1
  85. package/dist/detectors/heading-echo.js +29 -1
  86. package/dist/detectors/heading-echo.js.map +1 -1
  87. package/dist/detectors/installment-total-mismatch.d.ts.map +1 -1
  88. package/dist/detectors/installment-total-mismatch.js +2 -12
  89. package/dist/detectors/installment-total-mismatch.js.map +1 -1
  90. package/dist/detectors/list-parallel.d.ts +5 -2
  91. package/dist/detectors/list-parallel.d.ts.map +1 -1
  92. package/dist/detectors/list-parallel.js +45 -7
  93. package/dist/detectors/list-parallel.js.map +1 -1
  94. package/dist/detectors/name-variant.d.ts.map +1 -1
  95. package/dist/detectors/name-variant.js +34 -7
  96. package/dist/detectors/name-variant.js.map +1 -1
  97. package/dist/detectors/number-unit.d.ts +10 -0
  98. package/dist/detectors/number-unit.d.ts.map +1 -1
  99. package/dist/detectors/number-unit.js +28 -8
  100. package/dist/detectors/number-unit.js.map +1 -1
  101. package/dist/detectors/orthography.d.ts.map +1 -1
  102. package/dist/detectors/orthography.js +16 -7
  103. package/dist/detectors/orthography.js.map +1 -1
  104. package/dist/detectors/per-unit-words.d.ts +7 -0
  105. package/dist/detectors/per-unit-words.d.ts.map +1 -0
  106. package/dist/detectors/per-unit-words.js +17 -0
  107. package/dist/detectors/per-unit-words.js.map +1 -0
  108. package/dist/detectors/period-multiple-mismatch.d.ts.map +1 -1
  109. package/dist/detectors/period-multiple-mismatch.js +2 -12
  110. package/dist/detectors/period-multiple-mismatch.js.map +1 -1
  111. package/dist/detectors/reference-number-variant.d.ts.map +1 -1
  112. package/dist/detectors/reference-number-variant.js +21 -3
  113. package/dist/detectors/reference-number-variant.js.map +1 -1
  114. package/dist/detectors/registry/condition-toki.d.ts +3 -0
  115. package/dist/detectors/registry/condition-toki.d.ts.map +1 -0
  116. package/dist/detectors/registry/condition-toki.js +3 -0
  117. package/dist/detectors/registry/condition-toki.js.map +1 -0
  118. package/dist/detectors/rent-multiple-mismatch.d.ts.map +1 -1
  119. package/dist/detectors/rent-multiple-mismatch.js +2 -12
  120. package/dist/detectors/rent-multiple-mismatch.js.map +1 -1
  121. package/dist/detectors/row-sentence-amounts.d.ts.map +1 -1
  122. package/dist/detectors/row-sentence-amounts.js +5 -10
  123. package/dist/detectors/row-sentence-amounts.js.map +1 -1
  124. package/dist/detectors/stated-amounts.d.ts +4 -0
  125. package/dist/detectors/stated-amounts.d.ts.map +1 -0
  126. package/dist/detectors/stated-amounts.js +12 -0
  127. package/dist/detectors/stated-amounts.js.map +1 -0
  128. package/dist/detectors/step-time-sum.d.ts.map +1 -1
  129. package/dist/detectors/step-time-sum.js +2 -1
  130. package/dist/detectors/step-time-sum.js.map +1 -1
  131. package/dist/detectors/structure-tree.d.ts.map +1 -1
  132. package/dist/detectors/structure-tree.js +3 -0
  133. package/dist/detectors/structure-tree.js.map +1 -1
  134. package/dist/detectors/team.d.ts.map +1 -1
  135. package/dist/detectors/team.js +10 -6
  136. package/dist/detectors/team.js.map +1 -1
  137. package/dist/detectors/time-order.d.ts.map +1 -1
  138. package/dist/detectors/time-order.js +17 -13
  139. package/dist/detectors/time-order.js.map +1 -1
  140. package/dist/detectors/unknown-word.d.ts +4 -1
  141. package/dist/detectors/unknown-word.d.ts.map +1 -1
  142. package/dist/detectors/unknown-word.js +18 -2
  143. package/dist/detectors/unknown-word.js.map +1 -1
  144. package/dist/detectors/use-interval.d.ts +1 -0
  145. package/dist/detectors/use-interval.d.ts.map +1 -1
  146. package/dist/detectors/use-interval.js +15 -10
  147. package/dist/detectors/use-interval.js.map +1 -1
  148. package/dist/detectors/use-maximum.d.ts.map +1 -1
  149. package/dist/detectors/use-maximum.js +3 -1
  150. package/dist/detectors/use-maximum.js.map +1 -1
  151. package/dist/extension/document-view.d.ts +2 -2
  152. package/dist/extension/document-view.d.ts.map +1 -1
  153. package/dist/extension/document-view.js +17 -8
  154. package/dist/extension/document-view.js.map +1 -1
  155. package/dist/extension/entry-genres.d.ts +5 -0
  156. package/dist/extension/entry-genres.d.ts.map +1 -0
  157. package/dist/extension/entry-genres.js +13 -0
  158. package/dist/extension/entry-genres.js.map +1 -0
  159. package/dist/extension/module-detector.d.ts.map +1 -1
  160. package/dist/extension/module-detector.js +4 -4
  161. package/dist/extension/module-detector.js.map +1 -1
  162. package/dist/extension/plugin-parse.d.ts +1 -1
  163. package/dist/extension/plugin-parse.d.ts.map +1 -1
  164. package/dist/extension/plugin-parse.js +24 -7
  165. package/dist/extension/plugin-parse.js.map +1 -1
  166. package/dist/extension/problem-text.d.ts.map +1 -1
  167. package/dist/extension/problem-text.js +2 -0
  168. package/dist/extension/problem-text.js.map +1 -1
  169. package/dist/facts/age-values.d.ts.map +1 -1
  170. package/dist/facts/age-values.js +20 -2
  171. package/dist/facts/age-values.js.map +1 -1
  172. package/dist/facts/column-units.d.ts +31 -0
  173. package/dist/facts/column-units.d.ts.map +1 -0
  174. package/dist/facts/column-units.js +37 -0
  175. package/dist/facts/column-units.js.map +1 -0
  176. package/dist/facts/fact-values.d.ts +4 -0
  177. package/dist/facts/fact-values.d.ts.map +1 -1
  178. package/dist/facts/fact-values.js +3 -1
  179. package/dist/facts/fact-values.js.map +1 -1
  180. package/dist/facts/labelled-facts.d.ts +10 -0
  181. package/dist/facts/labelled-facts.d.ts.map +1 -1
  182. package/dist/facts/labelled-facts.js +6 -1
  183. package/dist/facts/labelled-facts.js.map +1 -1
  184. package/dist/facts/per-unit.d.ts +36 -0
  185. package/dist/facts/per-unit.d.ts.map +1 -0
  186. package/dist/facts/per-unit.js +56 -0
  187. package/dist/facts/per-unit.js.map +1 -0
  188. package/dist/facts/row-sentence-amounts.d.ts +3 -12
  189. package/dist/facts/row-sentence-amounts.d.ts.map +1 -1
  190. package/dist/facts/row-sentence-amounts.js +1 -15
  191. package/dist/facts/row-sentence-amounts.js.map +1 -1
  192. package/dist/facts/table-facts.d.ts +1 -1
  193. package/dist/facts/table-facts.d.ts.map +1 -1
  194. package/dist/facts/table-facts.js +13 -9
  195. package/dist/facts/table-facts.js.map +1 -1
  196. package/dist/facts/term-values.d.ts +13 -1
  197. package/dist/facts/term-values.d.ts.map +1 -1
  198. package/dist/facts/term-values.js +71 -12
  199. package/dist/facts/term-values.js.map +1 -1
  200. package/dist/grade/baseline.d.ts +4 -2
  201. package/dist/grade/baseline.d.ts.map +1 -1
  202. package/dist/grade/baseline.js +13 -11
  203. package/dist/grade/baseline.js.map +1 -1
  204. package/dist/grade/expect-read.d.ts +16 -0
  205. package/dist/grade/expect-read.d.ts.map +1 -0
  206. package/dist/grade/expect-read.js +52 -0
  207. package/dist/grade/expect-read.js.map +1 -0
  208. package/dist/grade/expect.d.ts +50 -0
  209. package/dist/grade/expect.d.ts.map +1 -0
  210. package/dist/grade/expect.js +53 -0
  211. package/dist/grade/expect.js.map +1 -0
  212. package/dist/grade/grade-item.d.ts +1 -1
  213. package/dist/grade/grade-item.d.ts.map +1 -1
  214. package/dist/grade/grade-item.js +13 -3
  215. package/dist/grade/grade-item.js.map +1 -1
  216. package/dist/grade/item.d.ts +9 -1
  217. package/dist/grade/item.d.ts.map +1 -1
  218. package/dist/grade/item.js +32 -7
  219. package/dist/grade/item.js.map +1 -1
  220. package/dist/grade/result.d.ts +5 -0
  221. package/dist/grade/result.d.ts.map +1 -1
  222. package/dist/grade/results-read.d.ts.map +1 -1
  223. package/dist/grade/results-read.js +4 -2
  224. package/dist/grade/results-read.js.map +1 -1
  225. package/dist/grade/rubric-file.d.ts +23 -0
  226. package/dist/grade/rubric-file.d.ts.map +1 -0
  227. package/dist/grade/rubric-file.js +35 -0
  228. package/dist/grade/rubric-file.js.map +1 -0
  229. package/dist/grade/rubric.d.ts +2 -0
  230. package/dist/grade/rubric.d.ts.map +1 -1
  231. package/dist/grade/rubric.js +75 -47
  232. package/dist/grade/rubric.js.map +1 -1
  233. package/dist/grade/setup.d.ts +2 -1
  234. package/dist/grade/setup.d.ts.map +1 -1
  235. package/dist/grade/setup.js +2 -2
  236. package/dist/grade/setup.js.map +1 -1
  237. package/dist/grade/stamp.d.ts +2 -0
  238. package/dist/grade/stamp.d.ts.map +1 -1
  239. package/dist/grade/stamp.js +8 -2
  240. package/dist/grade/stamp.js.map +1 -1
  241. package/dist/grade/task-rubric.d.ts +16 -0
  242. package/dist/grade/task-rubric.d.ts.map +1 -0
  243. package/dist/grade/task-rubric.js +34 -0
  244. package/dist/grade/task-rubric.js.map +1 -0
  245. package/dist/grade/text.d.ts +5 -1
  246. package/dist/grade/text.d.ts.map +1 -1
  247. package/dist/grade/text.js +16 -4
  248. package/dist/grade/text.js.map +1 -1
  249. package/dist/name-char-reading.d.ts +5 -0
  250. package/dist/name-char-reading.d.ts.map +1 -1
  251. package/dist/name-char-reading.js +15 -0
  252. package/dist/name-char-reading.js.map +1 -1
  253. package/dist/name-end-letter.d.ts +19 -0
  254. package/dist/name-end-letter.d.ts.map +1 -0
  255. package/dist/name-end-letter.js +37 -0
  256. package/dist/name-end-letter.js.map +1 -0
  257. package/dist/name-neighbours.d.ts.map +1 -1
  258. package/dist/name-neighbours.js +2 -1
  259. package/dist/name-neighbours.js.map +1 -1
  260. package/dist/name-separator.d.ts +6 -0
  261. package/dist/name-separator.d.ts.map +1 -1
  262. package/dist/name-separator.js +29 -0
  263. package/dist/name-separator.js.map +1 -1
  264. package/dist/name-variants.d.ts +6 -3
  265. package/dist/name-variants.d.ts.map +1 -1
  266. package/dist/name-variants.js +37 -10
  267. package/dist/name-variants.js.map +1 -1
  268. package/dist/number-name.d.ts.map +1 -1
  269. package/dist/number-name.js +11 -2
  270. package/dist/number-name.js.map +1 -1
  271. package/dist/profile/cue-lines.d.ts +6 -0
  272. package/dist/profile/cue-lines.d.ts.map +1 -0
  273. package/dist/profile/cue-lines.js +13 -0
  274. package/dist/profile/cue-lines.js.map +1 -0
  275. package/dist/profile/parse.d.ts +1 -1
  276. package/dist/profile/parse.d.ts.map +1 -1
  277. package/dist/profile/parse.js +3 -2
  278. package/dist/profile/parse.js.map +1 -1
  279. package/dist/reference-numbers.d.ts +2 -0
  280. package/dist/reference-numbers.d.ts.map +1 -1
  281. package/dist/reference-numbers.js +1 -1
  282. package/dist/reference-numbers.js.map +1 -1
  283. package/dist/spaced-person-name.d.ts.map +1 -1
  284. package/dist/spaced-person-name.js +26 -1
  285. package/dist/spaced-person-name.js.map +1 -1
  286. package/dist/spacing-code.d.ts.map +1 -1
  287. package/dist/spacing-code.js +10 -1
  288. package/dist/spacing-code.js.map +1 -1
  289. package/dist/spacing-minority.d.ts +7 -0
  290. package/dist/spacing-minority.d.ts.map +1 -1
  291. package/dist/spacing-minority.js +14 -0
  292. package/dist/spacing-minority.js.map +1 -1
  293. package/dist/structure/closing-balance.d.ts +9 -0
  294. package/dist/structure/closing-balance.d.ts.map +1 -1
  295. package/dist/structure/closing-balance.js +34 -7
  296. package/dist/structure/closing-balance.js.map +1 -1
  297. package/dist/structure/definition-use.d.ts.map +1 -1
  298. package/dist/structure/definition-use.js +20 -1
  299. package/dist/structure/definition-use.js.map +1 -1
  300. package/dist/structure/document-context.d.ts +2 -0
  301. package/dist/structure/document-context.d.ts.map +1 -0
  302. package/dist/structure/document-context.js +42 -0
  303. package/dist/structure/document-context.js.map +1 -0
  304. package/dist/structure/fenced-lines.d.ts +7 -0
  305. package/dist/structure/fenced-lines.d.ts.map +1 -0
  306. package/dist/structure/fenced-lines.js +27 -0
  307. package/dist/structure/fenced-lines.js.map +1 -0
  308. package/dist/structure/labelled-date-order.d.ts +31 -9
  309. package/dist/structure/labelled-date-order.d.ts.map +1 -1
  310. package/dist/structure/labelled-date-order.js +60 -15
  311. package/dist/structure/labelled-date-order.js.map +1 -1
  312. package/dist/structure/labelled-order.d.ts +7 -1
  313. package/dist/structure/labelled-order.d.ts.map +1 -1
  314. package/dist/structure/labelled-order.js +10 -3
  315. package/dist/structure/labelled-order.js.map +1 -1
  316. package/dist/structure/line-amount-label.d.ts.map +1 -1
  317. package/dist/structure/line-amount-label.js +2 -1
  318. package/dist/structure/line-amount-label.js.map +1 -1
  319. package/dist/structure/line-amount.d.ts +0 -5
  320. package/dist/structure/line-amount.d.ts.map +1 -1
  321. package/dist/structure/line-amount.js +1 -10
  322. package/dist/structure/line-amount.js.map +1 -1
  323. package/dist/structure/prose-total.d.ts +8 -0
  324. package/dist/structure/prose-total.d.ts.map +1 -1
  325. package/dist/structure/prose-total.js +70 -2
  326. package/dist/structure/prose-total.js.map +1 -1
  327. package/dist/structure/runs.d.ts.map +1 -1
  328. package/dist/structure/runs.js +9 -1
  329. package/dist/structure/runs.js.map +1 -1
  330. package/dist/structure/signed-date-line.d.ts +15 -0
  331. package/dist/structure/signed-date-line.d.ts.map +1 -0
  332. package/dist/structure/signed-date-line.js +68 -0
  333. package/dist/structure/signed-date-line.js.map +1 -0
  334. package/dist/structure/tax.d.ts.map +1 -1
  335. package/dist/structure/tax.js +5 -3
  336. package/dist/structure/tax.js.map +1 -1
  337. package/dist/structure/total-line.d.ts.map +1 -1
  338. package/dist/structure/total-line.js +10 -6
  339. package/dist/structure/total-line.js.map +1 -1
  340. package/dist/structure/total.d.ts +2 -0
  341. package/dist/structure/total.d.ts.map +1 -1
  342. package/dist/structure/total.js +34 -3
  343. package/dist/structure/total.js.map +1 -1
  344. package/dist/subject-codes.d.ts +21 -0
  345. package/dist/subject-codes.d.ts.map +1 -0
  346. package/dist/subject-codes.js +79 -0
  347. package/dist/subject-codes.js.map +1 -0
  348. package/dist/unlabelled-references.d.ts +6 -2
  349. package/dist/unlabelled-references.d.ts.map +1 -1
  350. package/dist/unlabelled-references.js +11 -10
  351. package/dist/unlabelled-references.js.map +1 -1
  352. package/genres.yaml +17 -0
  353. package/package.json +3 -3
  354. package/profiles/listing.yaml +1 -1
  355. package/rules/closing-balance-mismatch.yaml +3 -3
  356. package/rules/due-before-issue.yaml +9 -5
  357. package/rules/fact-conflict.yaml +2 -2
  358. package/rules/heading-echo.yaml +2 -2
  359. package/rules/internal-jargon.yaml +2 -2
  360. package/rules/latin-spacing.yaml +4 -4
  361. package/rules/list-item-form-mix.yaml +1 -1
  362. package/rules/name-variant.yaml +5 -2
  363. package/rules/no-lead.yaml +2 -2
  364. package/rules/number-without-unit.yaml +2 -2
  365. package/rules/reference-number-variant.yaml +3 -3
  366. package/rules/toki-as-condition.yaml +71 -0
  367. package/rules/total-mismatch.yaml +4 -4
  368. package/rules/unknown-word.yaml +2 -2
  369. package/rules/use-before-definition.yaml +2 -2
  370. package/src/api.ts +11 -2
  371. package/src/cli-text.ts +4 -2
  372. package/src/commands/grade.ts +75 -23
  373. package/src/company-kana-spelling.ts +22 -2
  374. package/src/company-name-ending.ts +50 -0
  375. package/src/company-names.ts +52 -17
  376. package/src/custom/no-rewrite.ts +2 -0
  377. package/src/custom/parse.ts +18 -2
  378. package/src/detectors/age-words.ts +12 -0
  379. package/src/detectors/annual-pay-mismatch.ts +3 -18
  380. package/src/detectors/blank-structure.ts +4 -3
  381. package/src/detectors/closing-balance-mismatch.ts +1 -0
  382. package/src/detectors/code-fences.ts +10 -0
  383. package/src/detectors/condition-toki.ts +60 -0
  384. package/src/detectors/conjugated-entry.ts +53 -0
  385. package/src/detectors/content-morphemes.ts +2 -1
  386. package/src/detectors/cross-facts.ts +2 -1
  387. package/src/detectors/custom.ts +9 -2
  388. package/src/detectors/document-shape.ts +8 -0
  389. package/src/detectors/due-date.ts +17 -7
  390. package/src/detectors/fact-consistency.ts +13 -17
  391. package/src/detectors/form-line.ts +47 -0
  392. package/src/detectors/formula-amount.ts +2 -18
  393. package/src/detectors/heading-claim.ts +76 -0
  394. package/src/detectors/heading-echo.ts +32 -1
  395. package/src/detectors/installment-total-mismatch.ts +3 -18
  396. package/src/detectors/list-parallel.ts +46 -7
  397. package/src/detectors/name-variant.ts +45 -8
  398. package/src/detectors/number-unit.ts +35 -9
  399. package/src/detectors/orthography.ts +17 -8
  400. package/src/detectors/per-unit-words.ts +24 -0
  401. package/src/detectors/period-multiple-mismatch.ts +2 -18
  402. package/src/detectors/reference-number-variant.ts +27 -5
  403. package/src/detectors/registry/condition-toki.ts +4 -0
  404. package/src/detectors/rent-multiple-mismatch.ts +2 -18
  405. package/src/detectors/row-sentence-amounts.ts +5 -20
  406. package/src/detectors/stated-amounts.ts +20 -0
  407. package/src/detectors/step-time-sum.ts +2 -1
  408. package/src/detectors/structure-tree.ts +3 -0
  409. package/src/detectors/team.ts +13 -7
  410. package/src/detectors/time-order.ts +6 -3
  411. package/src/detectors/unknown-word.ts +20 -2
  412. package/src/detectors/use-interval.ts +8 -4
  413. package/src/detectors/use-maximum.ts +3 -1
  414. package/src/extension/document-view.ts +18 -9
  415. package/src/extension/entry-genres.ts +15 -0
  416. package/src/extension/module-detector.ts +9 -4
  417. package/src/extension/plugin-parse.ts +29 -7
  418. package/src/extension/problem-text.ts +4 -0
  419. package/src/facts/age-values.ts +24 -2
  420. package/src/facts/column-units.ts +67 -0
  421. package/src/facts/fact-values.ts +11 -1
  422. package/src/facts/labelled-facts.ts +16 -2
  423. package/src/facts/per-unit.ts +105 -0
  424. package/src/facts/row-sentence-amounts.ts +4 -26
  425. package/src/facts/table-facts.ts +7 -4
  426. package/src/facts/term-values.ts +94 -13
  427. package/src/grade/baseline.ts +20 -12
  428. package/src/grade/expect-read.ts +65 -0
  429. package/src/grade/expect.ts +74 -0
  430. package/src/grade/grade-item.ts +14 -3
  431. package/src/grade/item.ts +48 -8
  432. package/src/grade/result.ts +5 -0
  433. package/src/grade/results-read.ts +7 -2
  434. package/src/grade/rubric-file.ts +46 -0
  435. package/src/grade/rubric.ts +77 -47
  436. package/src/grade/setup.ts +3 -3
  437. package/src/grade/stamp.ts +10 -2
  438. package/src/grade/task-rubric.ts +39 -0
  439. package/src/grade/text.ts +27 -5
  440. package/src/name-char-reading.ts +16 -0
  441. package/src/name-end-letter.ts +52 -0
  442. package/src/name-neighbours.ts +2 -1
  443. package/src/name-separator.ts +32 -0
  444. package/src/name-variants.ts +54 -13
  445. package/src/number-name.ts +12 -3
  446. package/src/profile/cue-lines.ts +14 -0
  447. package/src/profile/parse.ts +3 -2
  448. package/src/reference-numbers.ts +1 -1
  449. package/src/spaced-person-name.ts +27 -2
  450. package/src/spacing-code.ts +13 -2
  451. package/src/spacing-minority.ts +17 -0
  452. package/src/structure/closing-balance.ts +46 -8
  453. package/src/structure/definition-use.ts +24 -1
  454. package/src/structure/document-context.ts +46 -0
  455. package/src/structure/fenced-lines.ts +28 -0
  456. package/src/structure/labelled-date-order.ts +105 -21
  457. package/src/structure/labelled-order.ts +21 -10
  458. package/src/structure/line-amount-label.ts +2 -1
  459. package/src/structure/line-amount.ts +1 -11
  460. package/src/structure/prose-total.ts +81 -2
  461. package/src/structure/runs.ts +10 -1
  462. package/src/structure/signed-date-line.ts +78 -0
  463. package/src/structure/tax.ts +6 -3
  464. package/src/structure/total-line.ts +12 -6
  465. package/src/structure/total.ts +42 -3
  466. package/src/subject-codes.ts +105 -0
  467. package/src/unlabelled-references.ts +24 -16
@@ -18,13 +18,22 @@ const isAddress = (word) => EMAIL.test(word) || URL_START.test(word);
18
18
  // The hyphen may be full-width or Japanese (KM-SP300), as in the hyphenated numbers orthography.ts reads.
19
19
  const HYPHENATED = new RegExp(`(?<![A-Za-z0-9.${HYPHEN_CHARS}])[A-Za-z0-9]+(?:[${HYPHEN_CHARS}][A-Za-z0-9]+)+(?![A-Za-z0-9${HYPHEN_CHARS}]|\\.[A-Za-z0-9])`, "gu");
20
20
  const CAPITALS_SERIAL = new RegExp(`(?<![A-Za-z0-9.${HYPHEN_CHARS}])[A-Z]+\\d{4,}(?![A-Za-z0-9${HYPHEN_CHARS}]|\\.[A-Za-z0-9])`, "gu");
21
+ /**
22
+ * A Japanese number plate after its place name: a class number of two or three digits, one hiragana and a serial
23
+ * (330 ね 48-15, 500み・・12). A one-digit class number, or a serial that a kanji or katakana word follows, is a reference
24
+ * such as 「表3の12-15行」「表30の12-34行」, not a plate. The spaces inside a plate are its layout, and the one before it ends the place name.
25
+ */
26
+ const PLATE = new RegExp(`(?<![\\d${HYPHEN_CHARS}])\\d{2,3}[ \\u3000]?\\p{Script=Hiragana}[ \\u3000]?(?:\\d{1,2}[${HYPHEN_CHARS}]\\d{2}|[・・]{1,3}\\d{1,3})(?![\\d${HYPHEN_CHARS}\\p{Script=Han}\\p{Script=Katakana}])`, "gu");
21
27
  const HAS_LETTER = /[A-Za-z]/u;
22
28
  const SERIAL_DIGITS = /\d{3}/u;
23
29
  const spansOf = (text, pattern) => [...text.matchAll(pattern)].map((match) => ({ start: match.index, end: match.index + match[0].length }));
24
30
  export const clockTimeSpans = (text) => spansOf(text, CLOCK_TIME);
25
31
  export const addressSpans = (text) => spansOf(text, ASCII_RUN).filter((span) => isAddress(text.slice(span.start, span.end)));
26
32
  const isIdentifier = (word) => HAS_LETTER.test(word) && SERIAL_DIGITS.test(word);
27
- export const identifierSpans = (text) => [...spansOf(text, HYPHENATED), ...spansOf(text, CAPITALS_SERIAL)].filter((span) => isIdentifier(text.slice(span.start, span.end)));
33
+ export const identifierSpans = (text) => [
34
+ ...[...spansOf(text, HYPHENATED), ...spansOf(text, CAPITALS_SERIAL)].filter((span) => isIdentifier(text.slice(span.start, span.end))),
35
+ ...spansOf(text, PLATE),
36
+ ];
28
37
  /** Whether the character at `at` is inside one of the spans. */
29
38
  export const isInsideSpan = (spans, at) => spans.some((span) => span.start <= at && at < span.end);
30
39
  //# sourceMappingURL=spacing-code.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"spacing-code.js","sourceRoot":"","sources":["../src/spacing-code.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,oHAAoH;AACpH,iHAAiH;AACjH,mHAAmH;AAEnH,6FAA6F;AAC7F,MAAM,UAAU,GAAG,4DAA4D,CAAC;AAEhF,6HAA6H;AAC7H,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,oGAAoG;AACpG,MAAM,KAAK,GAAG,6BAA6B,CAAC;AAC5C,MAAM,SAAS,GAAG,yBAAyB,CAAC;AAE5C,MAAM,SAAS,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEtF;;;;GAIG;AACH,0GAA0G;AAC1G,MAAM,UAAU,GAAG,IAAI,MAAM,CAC3B,kBAAkB,YAAY,qBAAqB,YAAY,+BAA+B,YAAY,mBAAmB,EAC7H,IAAI,CACL,CAAC;AACF,MAAM,eAAe,GAAG,IAAI,MAAM,CAAC,kBAAkB,YAAY,+BAA+B,YAAY,mBAAmB,EAAE,IAAI,CAAC,CAAC;AACvI,MAAM,UAAU,GAAG,WAAW,CAAC;AAC/B,MAAM,aAAa,GAAG,QAAQ,CAAC;AAE/B,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,OAAe,EAAU,EAAE,CACxD,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAE3G,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAElF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAE7I,MAAM,YAAY,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAU,EAAE,CACtD,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAErI,gEAAgE;AAChE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAsB,EAAE,EAAU,EAAW,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"spacing-code.js","sourceRoot":"","sources":["../src/spacing-code.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,oHAAoH;AACpH,iHAAiH;AACjH,mHAAmH;AAEnH,6FAA6F;AAC7F,MAAM,UAAU,GAAG,4DAA4D,CAAC;AAEhF,6HAA6H;AAC7H,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,oGAAoG;AACpG,MAAM,KAAK,GAAG,6BAA6B,CAAC;AAC5C,MAAM,SAAS,GAAG,yBAAyB,CAAC;AAE5C,MAAM,SAAS,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEtF;;;;GAIG;AACH,0GAA0G;AAC1G,MAAM,UAAU,GAAG,IAAI,MAAM,CAC3B,kBAAkB,YAAY,qBAAqB,YAAY,+BAA+B,YAAY,mBAAmB,EAC7H,IAAI,CACL,CAAC;AACF,MAAM,eAAe,GAAG,IAAI,MAAM,CAAC,kBAAkB,YAAY,+BAA+B,YAAY,mBAAmB,EAAE,IAAI,CAAC,CAAC;AACvI;;;;GAIG;AACH,MAAM,KAAK,GAAG,IAAI,MAAM,CACtB,WAAW,YAAY,mEAAmE,YAAY,oCAAoC,YAAY,uCAAuC,EAC7L,IAAI,CACL,CAAC;AACF,MAAM,UAAU,GAAG,WAAW,CAAC;AAC/B,MAAM,aAAa,GAAG,QAAQ,CAAC;AAE/B,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,OAAe,EAAU,EAAE,CACxD,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAE3G,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAElF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAE7I,MAAM,YAAY,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAElG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC;IACvD,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACrI,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;CACxB,CAAC;AAEF,gEAAgE;AAChE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAsB,EAAE,EAAU,EAAW,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC"}
@@ -13,4 +13,11 @@ export type MinorityReport<T> = {
13
13
  export declare const minorityReport: <T extends {
14
14
  readonly spaced: boolean;
15
15
  }>(ofKind: readonly T[], limit: number) => MinorityReport<T> | undefined;
16
+ /**
17
+ * 二通りが同じ数なら少ないほうは無く、1 箇所ずつ「違う」と指すとどちらかの側に立つ。MIN_TIE 対 MIN_TIE 以上なら書き方が二通りあることを 1 件で言い、
18
+ * それより少なければ言わない。同数でなければ report のまま。
19
+ */
20
+ export declare const withoutSideOnTie: <T extends {
21
+ readonly spaced: boolean;
22
+ }>(report: MinorityReport<T> | undefined, ofKind: readonly T[]) => MinorityReport<T> | undefined;
16
23
  //# sourceMappingURL=spacing-minority.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spacing-minority.d.ts","sourceRoot":"","sources":["../src/spacing-minority.ts"],"names":[],"mappings":"AAWA,0EAA0E;AAC1E,MAAM,MAAM,cAAc,CAAC,CAAC,IACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5H,8DAA8D;AAC9D,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAAE,EAAE,QAAQ,SAAS,CAAC,EAAE,EAAE,OAAO,MAAM,KAAG,cAAc,CAAC,CAAC,CAAC,GAAG,SAShI,CAAC"}
1
+ {"version":3,"file":"spacing-minority.d.ts","sourceRoot":"","sources":["../src/spacing-minority.ts"],"names":[],"mappings":"AAWA,0EAA0E;AAC1E,MAAM,MAAM,cAAc,CAAC,CAAC,IACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5H,8DAA8D;AAC9D,eAAO,MAAM,cAAc,GAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAAE,EAAE,QAAQ,SAAS,CAAC,EAAE,EAAE,OAAO,MAAM,KAAG,cAAc,CAAC,CAAC,CAAC,GAAG,SAShI,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAAE,EACrE,QAAQ,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS,EACrC,QAAQ,SAAS,CAAC,EAAE,KACnB,cAAc,CAAC,CAAC,CAAC,GAAG,SAKtB,CAAC"}
@@ -20,4 +20,18 @@ export const minorityReport = (ofKind, limit) => {
20
20
  const spaced = ofKind.filter((entry) => entry.spaced).length;
21
21
  return { mode: "mixed", first, odd: odd.length, spaced, touching: ofKind.length - spaced };
22
22
  };
23
+ /** 同数のとき、書き方が二通りあると 1 件で言う最少の数。1 対 1 は一つずつの書き違いとも区別がつかないので言わない。 */
24
+ const MIN_TIE = 2;
25
+ /**
26
+ * 二通りが同じ数なら少ないほうは無く、1 箇所ずつ「違う」と指すとどちらかの側に立つ。MIN_TIE 対 MIN_TIE 以上なら書き方が二通りあることを 1 件で言い、
27
+ * それより少なければ言わない。同数でなければ report のまま。
28
+ */
29
+ export const withoutSideOnTie = (report, ofKind) => {
30
+ if (report?.mode !== "each" || report.odd.length * 2 !== ofKind.length)
31
+ return report;
32
+ const first = ofKind[0];
33
+ if (report.odd.length < MIN_TIE || first === undefined)
34
+ return undefined;
35
+ return { mode: "mixed", first, odd: report.odd.length, spaced: report.odd.length, touching: report.odd.length };
36
+ };
23
37
  //# sourceMappingURL=spacing-minority.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"spacing-minority.js","sourceRoot":"","sources":["../src/spacing-minority.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,GAAG,GAAG,CAAC;AAExB,mEAAmE;AACnE,MAAM,SAAS,GAAG,CAAC,CAAC;AAOpB,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAyC,MAAoB,EAAE,KAAa,EAAiC,EAAE;IAC3I,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,KAAK;QAAE,OAAO,SAAS,CAAC;IAChE,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS,IAAI,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,WAAW;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACtG,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IAC7D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;AAC7F,CAAC,CAAC"}
1
+ {"version":3,"file":"spacing-minority.js","sourceRoot":"","sources":["../src/spacing-minority.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,GAAG,GAAG,CAAC;AAExB,mEAAmE;AACnE,MAAM,SAAS,GAAG,CAAC,CAAC;AAOpB,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAyC,MAAoB,EAAE,KAAa,EAAiC,EAAE;IAC3I,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,GAAG,KAAK;QAAE,OAAO,SAAS,CAAC;IAChE,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS,IAAI,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,WAAW;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACtG,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IAC7D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;AAC7F,CAAC,CAAC;AAEF,mEAAmE;AACnE,MAAM,OAAO,GAAG,CAAC,CAAC;AAElB;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAAqC,EACrC,MAAoB,EACW,EAAE;IACjC,IAAI,MAAM,EAAE,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;IACtF,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,OAAO,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;AAClH,CAAC,CAAC"}
@@ -3,6 +3,8 @@ export declare const BALANCE_ROLES: readonly ["opening", "inflow", "outflow", "c
3
3
  export type BalanceRole = (typeof BALANCE_ROLES)[number];
4
4
  export type BalanceWords = Pick<NetWords, "magnitudes" | "percentUnits"> & {
5
5
  readonly labels: Readonly<Record<BalanceRole, readonly string[]>>;
6
+ /** Words that make a label's note the date the balance is taken on (時点, as of): such a note is not a unit. */
7
+ readonly asOf?: readonly string[] | undefined;
6
8
  };
7
9
  export type BalanceAmount = NetAmount & {
8
10
  readonly role: BalanceRole;
@@ -14,6 +16,13 @@ export declare const balanceRoleOf: (label: string, words: BalanceWords) => Bala
14
16
  * a sign, which is not read as an amount.
15
17
  */
16
18
  export declare const closingMismatch: (amounts: readonly BalanceAmount[], words: BalanceWords) => NetIssue | undefined;
19
+ /** A note naming the date a balance is taken on ((2026年6月30日時点), (as of June 30, 2026)): a date, not a unit. */
20
+ export declare const isDatedNote: (note: string, asOf: readonly string[]) => boolean;
21
+ /**
22
+ * A bare number under a heading naming its unit compares with the cells that write the unit out (14,310 under ポイント,
23
+ * against 4,960ポイント). Its marks stay empty, so it is still read as possibly rounded.
24
+ */
25
+ export declare const withHeadingUnit: (amount: NetAmount, heading: string | undefined) => NetAmount;
17
26
  /**
18
27
  * One table, read both ways. A table of transactions with a running balance (日付, お預入れ, お引出し, 残高) names none of the
19
28
  * four totals in its header or its first column, so it gives no scope; running-balance-mismatch reads it row by row.
@@ -1 +1 @@
1
- {"version":3,"file":"closing-balance.d.ts","sourceRoot":"","sources":["../../src/structure/closing-balance.ts"],"names":[],"mappings":"AAQA,OAAO,EAA4B,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE1I,eAAO,MAAM,aAAa,sDAAuD,CAAC;AAClF,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,cAAc,CAAC,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;CAAE,CAAC;AAEjJ,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAOvE,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,EAAE,OAAO,YAAY,KAAG,WAAW,GAAG,SACuB,CAAC;AAezG;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,SAAS,SAAS,aAAa,EAAE,EAAE,OAAO,YAAY,KAAG,QAAQ,GAAG,SAWnG,CAAC;AAmCF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,SAAS,OAAO,EAAE,EAAE,MAAM,SAAS,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,YAAY,KAAG,QAAQ,EAGvI,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,sBAAsB,GAAI,OAAO,SAAS,YAAY,EAAE,EAAE,OAAO,YAAY,KAAG,QAAQ,GAAG,SAIrG,CAAC"}
1
+ {"version":3,"file":"closing-balance.d.ts","sourceRoot":"","sources":["../../src/structure/closing-balance.ts"],"names":[],"mappings":"AAQA,OAAO,EAA4B,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE1I,eAAO,MAAM,aAAa,sDAAuD,CAAC;AAClF,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,GAAG,cAAc,CAAC,GAAG;IACzE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IAClE,8GAA8G;IAC9G,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAOvE,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,EAAE,OAAO,YAAY,KAAG,WAAW,GAAG,SACuB,CAAC;AAezG;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,SAAS,SAAS,aAAa,EAAE,EAAE,OAAO,YAAY,KAAG,QAAQ,GAAG,SAWnG,CAAC;AAIF,gHAAgH;AAChH,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,EAAE,MAAM,SAAS,MAAM,EAAE,KAAG,OAGnE,CAAC;AAkBF;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,SAAS,EAAE,SAAS,MAAM,GAAG,SAAS,KAAG,SAIhF,CAAC;AAmCF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,SAAS,OAAO,EAAE,EAAE,MAAM,SAAS,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,YAAY,KAAG,QAAQ,EAGvI,CAAC;AAEF,0DAA0D;AAC1D,eAAO,MAAM,sBAAsB,GAAI,OAAO,SAAS,YAAY,EAAE,EAAE,OAAO,YAAY,KAAG,QAAQ,GAAG,SAIrG,CAAC"}
@@ -45,11 +45,38 @@ export const closingMismatch = (amounts, words) => {
45
45
  return undefined;
46
46
  return { offset: closing.start, values: { written: closing.written, expected: shown(expected, closing, decimals) } };
47
47
  };
48
- const labelledCells = (labels, values, words) => labels.flatMap((label, column) => {
48
+ const DIGIT = /\d/u;
49
+ /** A note naming the date a balance is taken on ((2026年6月30日時点), (as of June 30, 2026)): a date, not a unit. */
50
+ export const isDatedNote = (note, asOf) => {
51
+ const key = keyOf(note);
52
+ return DIGIT.test(key) && asOf.some((word) => key.includes(keyOf(word)));
53
+ };
54
+ const CURRENCY_CODE = /\b[A-Z]{3}\b/u;
55
+ /** A note that names a scale or a currency besides the date ((thousand yen, as of June 30, 2026)) still names a unit. */
56
+ const namesUnitToo = (note, words) => CURRENCY_CODE.test(note.normalize("NFKC")) || words.magnitudes.some((word) => keyOf(note).includes(keyOf(word)));
57
+ /** The note of a label that may give its amount a unit: a note that only dates it gives none, so dated and undated rows compare. */
58
+ const unitNoteOf = (label, words) => {
59
+ const note = noteOf(label);
60
+ return isDatedNote(note, words.asOf ?? []) && !namesUnitToo(note, words) ? "" : note;
61
+ };
62
+ /** A column heading that is a word with no digit or bracket (ポイント, Points): the unit of the bare numbers under it. */
63
+ const UNIT_HEADING = /^[^\d()[\]()]+$/u;
64
+ const BARE_MARKS = "||";
65
+ /**
66
+ * A bare number under a heading naming its unit compares with the cells that write the unit out (14,310 under ポイント,
67
+ * against 4,960ポイント). Its marks stay empty, so it is still read as possibly rounded.
68
+ */
69
+ export const withHeadingUnit = (amount, heading) => {
70
+ const unit = keyOf(heading ?? "");
71
+ if (amount.prefix + amount.suffix !== "" || !UNIT_HEADING.test(unit))
72
+ return amount;
73
+ return { ...amount, unit: `|${unit}|${amount.unit.slice(BARE_MARKS.length)}` };
74
+ };
75
+ const labelledCells = (labels, values, words, heading) => labels.flatMap((label, column) => {
49
76
  const role = balanceRoleOf(label.text, words);
50
77
  const value = values[column];
51
- const amount = role === undefined || value === undefined ? undefined : amountOf(value.text, value.start, noteOf(label.text), words);
52
- return role === undefined || amount === undefined ? [] : [{ ...amount, role }];
78
+ const amount = role === undefined || value === undefined ? undefined : amountOf(value.text, value.start, unitNoteOf(label.text, words), words);
79
+ return role === undefined || amount === undefined ? [] : [{ ...withHeadingUnit(amount, heading), role }];
53
80
  });
54
81
  const issuesOf = (scopes, words) => scopes.flatMap((amounts) => {
55
82
  const issue = closingMismatch(amounts, words);
@@ -57,21 +84,21 @@ const issuesOf = (scopes, words) => scopes.flatMap((amounts) => {
57
84
  });
58
85
  /** A table whose header names the four columns (one month a row): each body row of the same width is one scope. */
59
86
  const byColumns = (header, rows, words) => issuesOf(rows.filter((row) => row.length === header.length).map((row) => labelledCells(header, row, words)), words);
60
- /** A table whose rows are labelled in their first cell: each column after the labels is one scope. */
61
- const byRows = (rows, words) => {
87
+ /** A table whose rows are labelled in their first cell: each column after the labels is one scope, under its heading. */
88
+ const byRows = (header, rows, words) => {
62
89
  const labelled = rows.filter((row) => row[0] !== undefined && balanceRoleOf(row[0].text, words) !== undefined);
63
90
  const width = labelled[0]?.length ?? 0;
64
91
  if (labelled.length === 0 || labelled.some((row) => row.length !== width))
65
92
  return [];
66
93
  const columns = Array.from({ length: width - 1 }, (_, index) => index + 1);
67
- return issuesOf(columns.map((column) => labelled.flatMap((row) => labelledCells(row.slice(0, 1), row.slice(column, column + 1), words))), words);
94
+ return issuesOf(columns.map((column) => labelled.flatMap((row) => labelledCells(row.slice(0, 1), row.slice(column, column + 1), words, header[column]?.text))), words);
68
95
  };
69
96
  /**
70
97
  * One table, read both ways. A table of transactions with a running balance (日付, お預入れ, お引出し, 残高) names none of the
71
98
  * four totals in its header or its first column, so it gives no scope; running-balance-mismatch reads it row by row.
72
99
  */
73
100
  export const tableClosingMismatches = (header, rows, words) => {
74
- const issues = [...byColumns(header, rows, words), ...byRows(rows, words)];
101
+ const issues = [...byColumns(header, rows, words), ...byRows(header, rows, words)];
75
102
  return issues.filter((issue, index) => issues.findIndex((other) => other.offset === issue.offset) === index);
76
103
  };
77
104
  /** The labelled lines of one section (前月末残高:412,350円). */
@@ -1 +1 @@
1
- {"version":3,"file":"closing-balance.js","sourceRoot":"","sources":["../../src/structure/closing-balance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"closing-balance.js","sourceRoot":"","sources":["../../src/structure/closing-balance.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"definition-use.d.ts","sourceRoot":"","sources":["../../src/structure/definition-use.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAMxD,oEAAoE;AACpE,MAAM,MAAM,WAAW,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnJ,qDAAqD;AACrD,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;AAIhE,gCAAgC;AAChC,MAAM,MAAM,QAAQ,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE,MAAM,MAAM,OAAO,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAY9E,2EAA2E;AAC3E,eAAO,MAAM,YAAY,GAAI,MAAM,aAAa,KAAG,WAAW,EAU1D,CAAC;AAML,mGAAmG;AACnG,KAAK,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAkBnC;;;GAGG;AACH,eAAO,MAAM,MAAM,GACjB,MAAM,MAAM,EACZ,OAAO,SAAS,QAAQ,EAAE,EAC1B,iBAAiB,SAAS,IAAI,EAAE,EAChC,YAAW,SAAmB,EAC9B,YAAW,SAA2B,KACrC,MAAM,EAQR,CAAC;AAeF,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,GAAI,OAAO,SAAS,WAAW,EAAE,EAAE,OAAO,SAAS,QAAQ,EAAE,EAAE,YAAW,SAA2B,KAAG,WAAW,EAMhJ,CAAC;AAgCF,8DAA8D;AAC9D,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;AAwElD;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,SAAS,WAAW,EAAE,EAC7B,OAAO,SAAS,QAAQ,EAAE,EAC1B,YAAW,SAA2B,EACtC,UAAS,OAAqB,KAC7B,OAAO,EAeJ,CAAC"}
1
+ {"version":3,"file":"definition-use.d.ts","sourceRoot":"","sources":["../../src/structure/definition-use.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAMxD,oEAAoE;AACpE,MAAM,MAAM,WAAW,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnJ,qDAAqD;AACrD,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;AAIhE,gCAAgC;AAChC,MAAM,MAAM,QAAQ,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE,MAAM,MAAM,OAAO,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAY9E,2EAA2E;AAC3E,eAAO,MAAM,YAAY,GAAI,MAAM,aAAa,KAAG,WAAW,EAU1D,CAAC;AAML,mGAAmG;AACnG,KAAK,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAkBnC;;;GAGG;AACH,eAAO,MAAM,MAAM,GACjB,MAAM,MAAM,EACZ,OAAO,SAAS,QAAQ,EAAE,EAC1B,iBAAiB,SAAS,IAAI,EAAE,EAChC,YAAW,SAAmB,EAC9B,YAAW,SAA2B,KACrC,MAAM,EAQR,CAAC;AAeF,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,GAAI,OAAO,SAAS,WAAW,EAAE,EAAE,OAAO,SAAS,QAAQ,EAAE,EAAE,YAAW,SAA2B,KAAG,WAAW,EAMhJ,CAAC;AAgCF,8DAA8D;AAC9D,MAAM,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;AA6FlD;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,SAAS,WAAW,EAAE,EAC7B,OAAO,SAAS,QAAQ,EAAE,EAC1B,YAAW,SAA2B,EACtC,UAAS,OAAqB,KAC7B,OAAO,EAiBJ,CAAC"}
@@ -153,6 +153,23 @@ const echoesLongName = (texts, defined, offset) => {
153
153
  const written = using.text.slice(0, offset - using.start + defined.term.length);
154
154
  return name.endsWith(defined.term) && sharedTail(name, written) >= defined.term.length + MIN_ECHO;
155
155
  };
156
+ /** What may follow a word inside a name up to a definition's bracket: capitalised words (Services Agreement), or kanji and katakana (本サービス利用契約). */
157
+ const NAME_RUN = /^(?:['’]?s)?(?:\s+\p{Lu}[\p{L}\p{N}&.'’-]*)*$|^[\p{Script=Han}\p{Script=Katakana}ー・・]*$/u;
158
+ /**
159
+ * 別の語を定義する括弧の前の名前の中の現れ(This Services Agreement (this "Agreement") の Services、
160
+ * 本サービス利用契約(以下「本契約」という。)の本サービス)。文書が自分に付けた名前で、後で定義する語の使用ではない。
161
+ */
162
+ const insideDefiningName = (texts, inline, defined, offset) => {
163
+ const body = sentenceAt(texts, offset);
164
+ if (body === undefined)
165
+ return false;
166
+ const from = offset + defined.term.length;
167
+ const bodyEnd = body.start + body.text.length;
168
+ return inline.some((other) => other.term !== defined.term &&
169
+ other.span.start >= from &&
170
+ other.span.start <= bodyEnd &&
171
+ NAME_RUN.test(nameBefore(body.text.slice(from - body.start, other.span.start - body.start))));
172
+ };
156
173
  const CAPITAL_OR_NON_LATIN = /\p{Lu}|[^\p{Script=Latin}\p{N}\s\p{P}]/u;
157
174
  /**
158
175
  * 前で使ったと言える語。小文字の英語(("vendors"))はふつうの語としても使うので、前の現れが定義した語の使用とは限らない。
@@ -171,13 +188,15 @@ const isDistinctive = (term) => CAPITAL_OR_NON_LATIN.test(term) && !SINGLE_KANJI
171
188
  export const usesBeforeDefinition = (terms, texts, mentioned = NEVER_MENTIONED, isTitle = NEVER_TITLE) => groupsOf(terms)
172
189
  .filter((group) => group.first.inline && isDistinctive(group.first.term))
173
190
  .flatMap(({ first: defined, spans }) => {
191
+ const inline = terms.filter((term) => term.inline);
174
192
  const defining = sentenceAt(texts, defined.span.start)?.start ?? defined.span.start;
175
193
  const uses = usesOf(defined.term, texts, spans, "exact", defined.bare === true ? mentioned : NEVER_MENTIONED);
176
194
  const first = uses.find((offset) => !isLabel(sentenceAt(texts, offset), defined.term) &&
177
195
  !isTitle(offset) &&
178
196
  !continuesInHan(texts, defined.term, offset) &&
179
197
  !insideKatakanaName(texts, defined.term, offset) &&
180
- !echoesLongName(texts, defined, offset));
198
+ !echoesLongName(texts, defined, offset) &&
199
+ !insideDefiningName(texts, inline, defined, offset));
181
200
  return first !== undefined && first < defining ? [{ term: defined, offset: first }] : [];
182
201
  });
183
202
  //# sourceMappingURL=definition-use.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"definition-use.js","sourceRoot":"","sources":["../../src/structure/definition-use.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definition-use.js","sourceRoot":"","sources":["../../src/structure/definition-use.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAU9C,MAAM,eAAe,GAAc,GAAG,EAAE,CAAC,KAAK,CAAC;AAO/C,sCAAsC;AACtC,MAAM,cAAc,GAAG,SAAS,CAAC;AACjC,4CAA4C;AAC5C,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,sEAAsE;AACtE,MAAM,UAAU,GAAG,uBAAuB,CAAC;AAC3C,MAAM,UAAU,GAAG,QAAQ,CAAC;AAE5B,MAAM,MAAM,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,IAAI,cAAc,CAAC;AAEzI,2EAA2E;AAC3E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAmB,EAAiB,EAAE,CACjE,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;IACrC,MAAM,IAAI,GACR,IAAI,CAAC,IAAI,KAAK,YAAY;QACxB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aAC7B,UAAU,CAAC,cAAc,EAAE,EAAE,CAAC;aAC9B,IAAI,EAAE;QACX,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,QAAQ,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACjI,CAAC,CAAC,CAAC;AAEL,MAAM,UAAU,GAAG,oDAAoD,CAAC;AACxE,uDAAuD;AACvD,MAAM,YAAY,GAAG,mBAAmB,CAAC;AAKzC;;;GAGG;AACH,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,SAAoB,EAAU,EAAE;IACjE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjH,MAAM,QAAQ,GAAG,SAAS,KAAK,OAAO,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;IACtF,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;IAC3H,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,sBAAsB,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;IAC7F,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,MAAM,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;IACtE,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,+BAA+B,IAAI,GAAG,IAAI,4CAA4C,EAAE,IAAI,CAAC,CAAC;AAC5H,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,MAAc,EAAE,KAAsB,EAAW,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;AAEpI;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,IAAY,EACZ,KAA0B,EAC1B,eAAgC,EAChC,YAAuB,OAAO,EAC9B,YAAuB,eAAe,EAC5B,EAAE;IACZ,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC7C,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5B,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SAC7B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SACnG,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;SACxC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CACxD,CAAC;AACJ,CAAC,CAAC;AAIF,kDAAkD;AAClD,MAAM,QAAQ,GAAG,CAAC,KAA6B,EAAe,EAAE;IAC9D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAiD,CAAC;IACxE,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;YACxF,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF,iFAAiF;AACjF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAA6B,EAAE,KAA0B,EAAE,YAAuB,eAAe,EAAiB,EAAE;IACpJ,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAC1D,OAAO,MAAM;SACV,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;SACxH,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,cAAc,GAAG,CAAC,MAA4B,EAAE,KAA0B,EAAE,SAAoB,EAAW,EAAE,CACjH,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAEpI,8CAA8C;AAC9C,MAAM,UAAU,GAAG,CAAC,KAA0B,EAAE,MAAc,EAAwB,EAAE;IACtF,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC5B,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QACzC,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK;YAAE,IAAI,GAAG,MAAM,GAAG,CAAC,CAAC;aACtC,IAAI,MAAM,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,GAAG,GAAG,MAAM,GAAG,CAAC,CAAC;;YAC9D,OAAO,IAAI,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,SAAS,CAAC;AACzB,iDAAiD;AACjD,MAAM,WAAW,GAAG,CAAC,CAAC;AAEtB,uEAAuE;AACvE,MAAM,OAAO,GAAG,CAAC,IAA0B,EAAE,IAAY,EAAW,EAAE,CACpE,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,WAAW,CAAC;AAKnG,MAAM,WAAW,GAAY,GAAG,EAAE,CAAC,KAAK,CAAC;AAEzC,MAAM,GAAG,GAAG,iBAAiB,CAAC;AAE9B,8DAA8D;AAC9D,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAE,IAAY,EAAE,MAAc,EAAW,EAAE;IAC3F,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,OAAO,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5H,CAAC,CAAC;AAEF,wDAAwD;AACxD,MAAM,QAAQ,GAAG,4BAA4B,CAAC;AAC9C,MAAM,QAAQ,GAAG,OAAO,CAAC;AAEzB,mDAAmD;AACnD,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,MAAc,EAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAEvI;;;GAGG;AACH,MAAM,kBAAkB,GAAG,CAAC,KAA0B,EAAE,IAAY,EAAE,MAAc,EAAW,EAAE;IAC/F,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrC,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;IAC/B,MAAM,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;IAC7B,MAAM,YAAY,GAAG,EAAE,GAAG,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/G,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACpF,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,WAAW,CAAC,CAAC;AAC9G,CAAC,CAAC;AAEF,6DAA6D;AAC7D,MAAM,QAAQ,GAAG,CAAC,CAAC;AACnB,MAAM,eAAe,GAAG,SAAS,CAAC;AAElC,wCAAwC;AACxC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE;IAC1C,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,OAAO,GAAG,GAAG,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAAE,GAAG,IAAI,CAAC,CAAC;IACvE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC5B,CAAC,CAAC;AAEF,yBAAyB;AACzB,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE;IACzD,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,OAAO,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;QAAE,MAAM,IAAI,CAAC,CAAC;IACpH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAE,OAAoB,EAAE,MAAc,EAAW,EAAE;IACnG,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACxC,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACrF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChF,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;AACpG,CAAC,CAAC;AAEF,oJAAoJ;AACpJ,MAAM,QAAQ,GAAG,0FAA0F,CAAC;AAE5G;;;GAGG;AACH,MAAM,kBAAkB,GAAG,CAAC,KAA0B,EAAE,MAA8B,EAAE,OAAoB,EAAE,MAAc,EAAW,EAAE;IACvI,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC9C,OAAO,MAAM,CAAC,IAAI,CAChB,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI;QAC3B,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI;QACxB,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,OAAO;QAC3B,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAC/F,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,yCAAyC,CAAC;AAEvE;;;GAGG;AACH,MAAM,aAAa,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAE7G;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,KAA6B,EAC7B,KAA0B,EAC1B,YAAuB,eAAe,EACtC,UAAmB,WAAW,EACnB,EAAE,CACb,QAAQ,CAAC,KAAK,CAAC;KACZ,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KACxE,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE;IACrC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;IACpF,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAC9G,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CACrB,CAAC,MAAM,EAAE,EAAE,CACT,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC;QACjD,CAAC,OAAO,CAAC,MAAM,CAAC;QAChB,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;QAC5C,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;QAChD,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;QACvC,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CACtD,CAAC;IACF,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3F,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const namesDocumentKind: (source: string, words: readonly string[]) => boolean;
2
+ //# sourceMappingURL=document-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-context.d.ts","sourceRoot":"","sources":["../../src/structure/document-context.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,EAAE,OAAO,SAAS,MAAM,EAAE,KAAG,OAQ5E,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { linesOf } from "./lines.js";
2
+ import { withoutEdgeMarks } from "../facts/trim-marks.js";
3
+ import { leadingText } from "./total.js";
4
+ /**
5
+ * Whether a document says what kind of document it is with one of the words: its title contains one (会議室ご利用御見積書,
6
+ * Meeting Room Quote), or a field's label is one (見積番号:MR-0733, Quote number: Q-1). The title is the first line with
7
+ * text after any front matter, and the first heading; a table row is neither. A label only starting with a word does not
8
+ * count (Withholding tax: on an invoice), nor does a word in a sentence. Width and case are ignored. Pure.
9
+ */
10
+ const LABEL_SEPARATOR = /[::|]/u;
11
+ const HEADING = /^[ \t]*#+[ \t]*/u;
12
+ const TABLE_ROW = /^[ \t]*\|/u;
13
+ const FRONT_MATTER_FENCE = /^---[ \t]*$/u;
14
+ const keyOf = (text) => text.normalize("NFKC").toLowerCase().replace(/\s+/gu, " ").trim();
15
+ /** The lines after a front matter block (--- … --- at the very top); all of them when there is none. */
16
+ const afterFrontMatter = (lines) => {
17
+ if (!FRONT_MATTER_FENCE.test(lines[0] ?? ""))
18
+ return lines;
19
+ const close = lines.findIndex((line, index) => index > 0 && FRONT_MATTER_FENCE.test(line));
20
+ return close === -1 ? lines : lines.slice(close + 1);
21
+ };
22
+ const titlesOf = (lines) => {
23
+ const first = lines.find((line) => line.trim().length > 0 && !TABLE_ROW.test(line));
24
+ const heading = lines.find((line) => HEADING.test(line));
25
+ return [first, heading].flatMap((line) => (line === undefined ? [] : [keyOf(line.replace(HEADING, ""))]));
26
+ };
27
+ const labelOf = (line) => {
28
+ const lead = leadingText(line);
29
+ const separator = LABEL_SEPARATOR.exec(lead);
30
+ return separator === null ? undefined : keyOf(withoutEdgeMarks(lead.slice(0, separator.index)));
31
+ };
32
+ export const namesDocumentKind = (source, words) => {
33
+ const keys = words.map(keyOf);
34
+ const lines = afterFrontMatter(linesOf(source).map((line) => line.text));
35
+ if (titlesOf(lines).some((title) => keys.some((key) => title.includes(key))))
36
+ return true;
37
+ return lines.some((line) => {
38
+ const label = labelOf(line);
39
+ return label !== undefined && keys.includes(label);
40
+ });
41
+ };
42
+ //# sourceMappingURL=document-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-context.js","sourceRoot":"","sources":["../../src/structure/document-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * The indexes of the lines of fenced code blocks (``` or ~~~), the fences included. A table or a list written in one is an
3
+ * example, not the document's own values. The blocks are the ones the Markdown parser reads (code-fences.ts): a fence in
4
+ * a list item is one, a line indented as code or a fence in a quotation is not, and an unclosed fence runs to the end.
5
+ */
6
+ export declare const fencedLineIndexes: (texts: readonly string[]) => ReadonlySet<number>;
7
+ //# sourceMappingURL=fenced-lines.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fenced-lines.d.ts","sourceRoot":"","sources":["../../src/structure/fenced-lines.ts"],"names":[],"mappings":"AASA;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,SAAS,MAAM,EAAE,KAAG,WAAW,CAAC,MAAM,CAa9E,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { codeFences } from "../detectors/code-fences.js";
2
+ const FENCE_MARK = /`{3}|~{3}/u;
3
+ const NONE = new Set();
4
+ /** The index of the line holding an offset of the joined lines. */
5
+ const lineIndexAt = (starts, offset) => starts.findLastIndex((start) => start <= offset);
6
+ /**
7
+ * The indexes of the lines of fenced code blocks (``` or ~~~), the fences included. A table or a list written in one is an
8
+ * example, not the document's own values. The blocks are the ones the Markdown parser reads (code-fences.ts): a fence in
9
+ * a list item is one, a line indented as code or a fence in a quotation is not, and an unclosed fence runs to the end.
10
+ */
11
+ export const fencedLineIndexes = (texts) => {
12
+ if (!texts.some((text) => FENCE_MARK.test(text)))
13
+ return NONE;
14
+ const starts = [];
15
+ texts.reduce((start, text) => {
16
+ starts.push(start);
17
+ return start + text.length + 1;
18
+ }, 0);
19
+ const fenced = new Set();
20
+ codeFences(texts.join("\n")).forEach((fence) => {
21
+ const last = lineIndexAt(starts, Math.max(fence.start, fence.end - 1));
22
+ for (let index = lineIndexAt(starts, fence.start); index <= last; index += 1)
23
+ fenced.add(index);
24
+ });
25
+ return fenced;
26
+ };
27
+ //# sourceMappingURL=fenced-lines.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fenced-lines.js","sourceRoot":"","sources":["../../src/structure/fenced-lines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAEzD,MAAM,UAAU,GAAG,YAAY,CAAC;AAEhC,MAAM,IAAI,GAAwB,IAAI,GAAG,EAAE,CAAC;AAE5C,mEAAmE;AACnE,MAAM,WAAW,GAAG,CAAC,MAAyB,EAAE,MAAc,EAAU,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,MAAM,CAAC,CAAC;AAE5H;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAwB,EAAuB,EAAE;IACjF,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QAC3B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,CAAC,CAAC;IACN,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7C,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACvE,KAAK,IAAI,KAAK,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
@@ -8,11 +8,13 @@ import { type PeriodWords } from "./stated-period.ts";
8
8
  * earlier-date word and one starting with a later-date word, each with one full date on it. A later date before the
9
9
  * first earlier date, and written near it, is out of order. A line with a passed word (期限切れ, overdue) reports on a
10
10
  * date rather than setting one and is not read. A span word (対象期間, Reporting period) labels a period, and the
11
- * period's end is its date. Pure.
11
+ * period's end is its date, or its start for a span word in fromStart. Pure.
12
12
  */
13
13
  export type DateOrderWords = PairWords & {
14
14
  /** The words whose line states a period rather than one date (labels), with the range signs and names to read it. */
15
15
  readonly spans?: PeriodWords | undefined;
16
+ /** The span words whose period's start is the date: the later date may fall anywhere in the period (a pay date in its pay period). */
17
+ readonly fromStart?: readonly string[] | undefined;
16
18
  };
17
19
  /** A date from the tree; end is where its text ends, needed only to read a period. */
18
20
  export type OrderDate = DatedPoint & {
@@ -29,27 +31,47 @@ export type OutOfOrder = {
29
31
  readonly earlier: LabelledDate;
30
32
  readonly later: LabelledDate;
31
33
  };
32
- /**
33
- * The end of the period a span word's line states (対象期間:2026年4月1日〜9月30日 ends 2026-09-30), with its year.
34
- * A period without a year, or a line that states no period, gives undefined. tableOf gives the table the line is a row of
35
- * (| 対象期間 | 2026年4月1日〜9月30日 |), read when the row is the table's only row labelled with any span word: a table with
36
- * both Reporting period and Period covered rows lists periods. A row's label cell is the span word itself, so all of them are passed.
37
- */
34
+ /** The end of the period a span word's line states. */
38
35
  export declare const periodEndOf: (line: Line, label: string, dates: readonly OrderDate[], spans: PeriodWords, tableOf?: () => readonly string[]) => DatedPoint | undefined;
36
+ /** The start of the period a span word's line states. */
37
+ export declare const periodStartOf: (line: Line, label: string, dates: readonly OrderDate[], spans: PeriodWords, tableOf?: () => readonly string[]) => DatedPoint | undefined;
39
38
  /**
40
39
  * A later date before the first earlier date. When both sides are written more than once (a history listing one record
41
40
  * per row, newest first), the later date must also be before the earlier date written closest to it: that is its own
42
41
  * record's. A later date written once (an issue date below the records) belongs to the whole document and keeps the first.
43
42
  */
44
43
  export declare const datesOutOfOrder: (source: string, dates: readonly OrderDate[], words: DateOrderWords) => OutOfOrder[];
45
- /** An out-of-order pair; period is set when the earlier date is the end of a stated period. */
44
+ /** An out-of-order pair; period is set when the earlier date is a stated period's end, or its start when fromStart is set. */
46
45
  export type PairedIssue = StructureIssue & {
47
46
  readonly period: boolean;
47
+ readonly fromStart?: boolean | undefined;
48
+ };
49
+ /** The span words with the range signs and names to read them, and the dated-span lexicon's entries they come from. */
50
+ export type PairSpans = PeriodWords & {
51
+ readonly entries: readonly OrderLabel[];
52
+ };
53
+ /**
54
+ * The span words a dated-span lexicon reads by the period's start in one group: its entries naming that group with
55
+ * position before. An entry without a group is read by the period's end in every group.
56
+ */
57
+ export declare const spanStartsOf: (spanLabels: readonly OrderLabel[], group: string) => string[];
58
+ /**
59
+ * The span words to read periods with, the whole document (its headings too) to read the words naming its kind, and the
60
+ * role words whose signature line gives a group's later date (a dated-signer lexicon's entries with position after).
61
+ */
62
+ export type PairedReading = {
63
+ readonly spans?: PairSpans | undefined;
64
+ readonly whole?: string | undefined;
65
+ readonly signers?: readonly OrderLabel[] | undefined;
48
66
  };
49
67
  /**
50
68
  * Every pair of a dated-pair lexicon: the entries of one group with position before label the earlier date, those with
51
69
  * position after the later one. The values name both labels, so the message can quote them. The issue is on whichever
52
70
  * of the two dates is written second: a reader meets the contradiction there (a cancellation deadline below check-in).
71
+ * A group with entries without a position is read only in a document whose title or a field's label names one of them
72
+ * (namesDocumentKind, over reading.whole: the document with its headings, which source blanks out): ご利用日 before 有効期限 is a
73
+ * quote's mistake and a points statement's normal order.
74
+ * reading.spans.entries are the dated-span lexicon's entries, for the span words a group reads by the period's start.
53
75
  */
54
- export declare const pairedDatesOutOfOrder: (source: string, dates: readonly OrderDate[], labels: readonly OrderLabel[], passed: readonly string[], maxLineGap: number, spans?: PeriodWords) => PairedIssue[];
76
+ export declare const pairedDatesOutOfOrder: (source: string, dates: readonly OrderDate[], labels: readonly OrderLabel[], passed: readonly string[], maxLineGap: number, { spans, whole, signers }?: PairedReading) => PairedIssue[];
55
77
  //# sourceMappingURL=labelled-date-order.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"labelled-date-order.d.ts","sourceRoot":"","sources":["../../src/structure/labelled-date-order.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAkC,KAAK,UAAU,EAAE,KAAK,SAAS,EAAgB,MAAM,qBAAqB,CAAC;AAEpH,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtF;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG;IACvC,qHAAqH;IACrH,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CAC1C,CAAC;AAEF,sFAAsF;AACtF,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG;IAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAE3E,0HAA0H;AAC1H,MAAM,MAAM,YAAY,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAEhI,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;CAAE,CAAC;AAM1F;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GACtB,MAAM,IAAI,EACV,OAAO,MAAM,EACb,OAAO,SAAS,SAAS,EAAE,EAC3B,OAAO,WAAW,EAClB,UAAS,MAAM,SAAS,MAAM,EAAa,KAC1C,UAAU,GAAG,SAIf,CAAC;AAmBF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,EAAE,OAAO,SAAS,SAAS,EAAE,EAAE,OAAO,cAAc,KAAG,UAAU,EAI1G,CAAC;AAEN,+FAA+F;AAC/F,MAAM,MAAM,WAAW,GAAG,cAAc,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;AAExE;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAChC,QAAQ,MAAM,EACd,OAAO,SAAS,SAAS,EAAE,EAC3B,QAAQ,SAAS,UAAU,EAAE,EAC7B,QAAQ,SAAS,MAAM,EAAE,EACzB,YAAY,MAAM,EAClB,QAAQ,WAAW,KAClB,WAAW,EAOX,CAAC"}
1
+ {"version":3,"file":"labelled-date-order.d.ts","sourceRoot":"","sources":["../../src/structure/labelled-date-order.ts"],"names":[],"mappings":"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"}