chaffjs 0.26.0 → 0.27.1

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 (97) hide show
  1. package/dist/ai-score/human-shares.js +59 -59
  2. package/dist/ai-score/human-shares.js.map +1 -1
  3. package/dist/capitals-with-small.d.ts +8 -0
  4. package/dist/capitals-with-small.d.ts.map +1 -0
  5. package/dist/capitals-with-small.js +20 -0
  6. package/dist/capitals-with-small.js.map +1 -0
  7. package/dist/derived/relative-weekdays.d.ts +16 -0
  8. package/dist/derived/relative-weekdays.d.ts.map +1 -0
  9. package/dist/derived/relative-weekdays.js +52 -0
  10. package/dist/derived/relative-weekdays.js.map +1 -0
  11. package/dist/detectors/change-rate.d.ts +3 -0
  12. package/dist/detectors/change-rate.d.ts.map +1 -0
  13. package/dist/detectors/change-rate.js +125 -0
  14. package/dist/detectors/change-rate.js.map +1 -0
  15. package/dist/detectors/derived-numbers.d.ts.map +1 -1
  16. package/dist/detectors/derived-numbers.js +3 -7
  17. package/dist/detectors/derived-numbers.js.map +1 -1
  18. package/dist/detectors/document-date.d.ts +4 -0
  19. package/dist/detectors/document-date.d.ts.map +1 -0
  20. package/dist/detectors/document-date.js +12 -0
  21. package/dist/detectors/document-date.js.map +1 -0
  22. package/dist/detectors/orthographic-variant.d.ts.map +1 -1
  23. package/dist/detectors/orthographic-variant.js +16 -11
  24. package/dist/detectors/orthographic-variant.js.map +1 -1
  25. package/dist/detectors/registry/change-rate.d.ts +3 -0
  26. package/dist/detectors/registry/change-rate.d.ts.map +1 -0
  27. package/dist/detectors/registry/change-rate.js +3 -0
  28. package/dist/detectors/registry/change-rate.js.map +1 -0
  29. package/dist/detectors/registry/version-mismatch.d.ts +3 -0
  30. package/dist/detectors/registry/version-mismatch.d.ts.map +1 -0
  31. package/dist/detectors/registry/version-mismatch.js +3 -0
  32. package/dist/detectors/registry/version-mismatch.js.map +1 -0
  33. package/dist/detectors/relative-dates.d.ts.map +1 -1
  34. package/dist/detectors/relative-dates.js +3 -1
  35. package/dist/detectors/relative-dates.js.map +1 -1
  36. package/dist/detectors/relative-day-words.d.ts +4 -0
  37. package/dist/detectors/relative-day-words.d.ts.map +1 -0
  38. package/dist/detectors/relative-day-words.js +105 -0
  39. package/dist/detectors/relative-day-words.js.map +1 -0
  40. package/dist/detectors/structure-tree.d.ts +4 -1
  41. package/dist/detectors/structure-tree.d.ts.map +1 -1
  42. package/dist/detectors/structure-tree.js +65 -3
  43. package/dist/detectors/structure-tree.js.map +1 -1
  44. package/dist/detectors/version-mismatch.d.ts +3 -0
  45. package/dist/detectors/version-mismatch.d.ts.map +1 -0
  46. package/dist/detectors/version-mismatch.js +19 -0
  47. package/dist/detectors/version-mismatch.js.map +1 -0
  48. package/dist/structure/change-rate.d.ts +51 -0
  49. package/dist/structure/change-rate.d.ts.map +1 -0
  50. package/dist/structure/change-rate.js +171 -0
  51. package/dist/structure/change-rate.js.map +1 -0
  52. package/dist/structure/list-numbering.d.ts +17 -0
  53. package/dist/structure/list-numbering.d.ts.map +1 -0
  54. package/dist/structure/list-numbering.js +27 -0
  55. package/dist/structure/list-numbering.js.map +1 -0
  56. package/dist/structure/percent-sum-prose.d.ts +7 -0
  57. package/dist/structure/percent-sum-prose.d.ts.map +1 -0
  58. package/dist/structure/percent-sum-prose.js +44 -0
  59. package/dist/structure/percent-sum-prose.js.map +1 -0
  60. package/dist/structure/version-mismatch.d.ts +23 -0
  61. package/dist/structure/version-mismatch.d.ts.map +1 -0
  62. package/dist/structure/version-mismatch.js +74 -0
  63. package/dist/structure/version-mismatch.js.map +1 -0
  64. package/dist/structure/weekday.d.ts +21 -2
  65. package/dist/structure/weekday.d.ts.map +1 -1
  66. package/dist/structure/weekday.js +70 -8
  67. package/dist/structure/weekday.js.map +1 -1
  68. package/package.json +3 -3
  69. package/rules/agreement-slip.yaml +2 -2
  70. package/rules/change-rate-mismatch.yaml +44 -0
  71. package/rules/date-weekday-mismatch.yaml +4 -4
  72. package/rules/max-sentence-length.yaml +1 -0
  73. package/rules/numbering-gap.yaml +4 -4
  74. package/rules/one-sentence-paragraph-run.yaml +1 -0
  75. package/rules/orthographic-variant.yaml +3 -3
  76. package/rules/percent-sum-mismatch.yaml +4 -4
  77. package/rules/relative-date-mismatch.yaml +4 -4
  78. package/rules/undefined-acronym.yaml +1 -0
  79. package/rules/version-mismatch.yaml +77 -0
  80. package/src/ai-score/human-shares.ts +59 -59
  81. package/src/capitals-with-small.ts +23 -0
  82. package/src/derived/relative-weekdays.ts +65 -0
  83. package/src/detectors/change-rate.ts +153 -0
  84. package/src/detectors/derived-numbers.ts +3 -11
  85. package/src/detectors/document-date.ts +18 -0
  86. package/src/detectors/orthographic-variant.ts +8 -4
  87. package/src/detectors/registry/change-rate.ts +4 -0
  88. package/src/detectors/registry/version-mismatch.ts +4 -0
  89. package/src/detectors/relative-dates.ts +3 -1
  90. package/src/detectors/relative-day-words.ts +126 -0
  91. package/src/detectors/structure-tree.ts +76 -4
  92. package/src/detectors/version-mismatch.ts +23 -0
  93. package/src/structure/change-rate.ts +223 -0
  94. package/src/structure/list-numbering.ts +34 -0
  95. package/src/structure/percent-sum-prose.ts +54 -0
  96. package/src/structure/version-mismatch.ts +103 -0
  97. package/src/structure/weekday.ts +83 -6
@@ -1,47 +1,47 @@
1
1
  /** On how many human documents of each genre group each AI-shape rule reported, at the genre's level. */
2
2
  export const HUMAN_SHARES = {
3
3
  "ai-tell": {
4
- academic: { documents: 6, fired: 0 },
4
+ academic: { documents: 10, fired: 0 },
5
5
  blog: { documents: 23, fired: 0 },
6
- business: { documents: 78, fired: 0 },
7
- docs: { documents: 20, fired: 0 },
6
+ business: { documents: 80, fired: 0 },
7
+ docs: { documents: 21, fired: 0 },
8
8
  legal: { documents: 35, fired: 0 },
9
9
  literature: { documents: 13, fired: 0 },
10
10
  speech: { documents: 7, fired: 0 },
11
11
  technical: { documents: 26, fired: 0 },
12
12
  },
13
13
  "announcing-opener": {
14
- academic: { documents: 6, fired: 0 },
14
+ academic: { documents: 10, fired: 0 },
15
15
  blog: { documents: 23, fired: 0 },
16
- business: { documents: 78, fired: 0 },
17
- docs: { documents: 20, fired: 0 },
16
+ business: { documents: 80, fired: 0 },
17
+ docs: { documents: 21, fired: 0 },
18
18
  legal: { documents: 35, fired: 0 },
19
19
  literature: { documents: 13, fired: 0 },
20
20
  speech: { documents: 7, fired: 0 },
21
21
  technical: { documents: 26, fired: 0 },
22
22
  },
23
23
  "assistant-residue": {
24
- academic: { documents: 6, fired: 0 },
24
+ academic: { documents: 10, fired: 0 },
25
25
  blog: { documents: 23, fired: 0 },
26
- business: { documents: 78, fired: 0 },
27
- docs: { documents: 20, fired: 0 },
26
+ business: { documents: 80, fired: 0 },
27
+ docs: { documents: 21, fired: 0 },
28
28
  legal: { documents: 35, fired: 0 },
29
29
  literature: { documents: 13, fired: 0 },
30
30
  speech: { documents: 7, fired: 0 },
31
- technical: { documents: 48, fired: 0 },
31
+ technical: { documents: 49, fired: 0 },
32
32
  },
33
33
  "bold-density": {
34
- academic: { documents: 6, fired: 0 },
34
+ academic: { documents: 10, fired: 0 },
35
35
  blog: { documents: 23, fired: 0 },
36
- business: { documents: 78, fired: 1 },
37
- docs: { documents: 20, fired: 0 },
36
+ business: { documents: 80, fired: 1 },
37
+ docs: { documents: 21, fired: 0 },
38
38
  legal: { documents: 35, fired: 0 },
39
39
  literature: { documents: 13, fired: 0 },
40
40
  speech: { documents: 7, fired: 0 },
41
- technical: { documents: 48, fired: 2 },
41
+ technical: { documents: 49, fired: 2 },
42
42
  },
43
43
  "bold-label-list": {
44
- academic: { documents: 1, fired: 0 },
44
+ academic: { documents: 5, fired: 0 },
45
45
  blog: { documents: 14, fired: 0 },
46
46
  business: { documents: 39, fired: 0 },
47
47
  docs: { documents: 10, fired: 0 },
@@ -51,25 +51,25 @@ export const HUMAN_SHARES = {
51
51
  technical: { documents: 13, fired: 1 },
52
52
  },
53
53
  "chat-citation-residue": {
54
- academic: { documents: 6, fired: 0 },
54
+ academic: { documents: 10, fired: 0 },
55
55
  blog: { documents: 23, fired: 0 },
56
- business: { documents: 78, fired: 0 },
57
- docs: { documents: 20, fired: 0 },
56
+ business: { documents: 80, fired: 0 },
57
+ docs: { documents: 21, fired: 0 },
58
58
  legal: { documents: 35, fired: 0 },
59
59
  literature: { documents: 13, fired: 0 },
60
60
  speech: { documents: 7, fired: 0 },
61
- technical: { documents: 48, fired: 0 },
61
+ technical: { documents: 49, fired: 0 },
62
62
  },
63
63
  "closing-cliche": {
64
- academic: { documents: 6, fired: 0 },
64
+ academic: { documents: 10, fired: 0 },
65
65
  blog: { documents: 23, fired: 0 },
66
- docs: { documents: 20, fired: 0 },
66
+ docs: { documents: 21, fired: 0 },
67
67
  legal: { documents: 35, fired: 1 },
68
68
  literature: { documents: 13, fired: 0 },
69
69
  speech: { documents: 7, fired: 0 },
70
70
  },
71
71
  "colon-lead-in": {
72
- academic: { documents: 1, fired: 0 },
72
+ academic: { documents: 5, fired: 0 },
73
73
  blog: { documents: 14, fired: 0 },
74
74
  business: { documents: 39, fired: 0 },
75
75
  docs: { documents: 10, fired: 0 },
@@ -79,110 +79,110 @@ export const HUMAN_SHARES = {
79
79
  technical: { documents: 13, fired: 1 },
80
80
  },
81
81
  "contrast-framing": {
82
- academic: { documents: 6, fired: 0 },
82
+ academic: { documents: 10, fired: 0 },
83
83
  blog: { documents: 23, fired: 0 },
84
- business: { documents: 78, fired: 0 },
85
- docs: { documents: 20, fired: 0 },
84
+ business: { documents: 80, fired: 0 },
85
+ docs: { documents: 21, fired: 0 },
86
86
  legal: { documents: 35, fired: 0 },
87
87
  literature: { documents: 13, fired: 0 },
88
88
  speech: { documents: 7, fired: 0 },
89
89
  technical: { documents: 26, fired: 0 },
90
90
  },
91
91
  "emoji-density": {
92
- academic: { documents: 6, fired: 0 },
92
+ academic: { documents: 10, fired: 0 },
93
93
  blog: { documents: 23, fired: 0 },
94
- business: { documents: 78, fired: 0 },
95
- docs: { documents: 20, fired: 0 },
94
+ business: { documents: 80, fired: 0 },
95
+ docs: { documents: 21, fired: 0 },
96
96
  legal: { documents: 35, fired: 0 },
97
97
  literature: { documents: 13, fired: 0 },
98
98
  speech: { documents: 7, fired: 0 },
99
- technical: { documents: 48, fired: 0 },
99
+ technical: { documents: 49, fired: 0 },
100
100
  },
101
101
  "emoji-heading": {
102
- academic: { documents: 6, fired: 0 },
102
+ academic: { documents: 10, fired: 0 },
103
103
  blog: { documents: 23, fired: 0 },
104
- business: { documents: 77, fired: 1 },
105
- docs: { documents: 20, fired: 0 },
104
+ business: { documents: 78, fired: 1 },
105
+ docs: { documents: 21, fired: 0 },
106
106
  legal: { documents: 28, fired: 0 },
107
107
  literature: { documents: 4, fired: 0 },
108
108
  speech: { documents: 7, fired: 0 },
109
109
  },
110
110
  "figurative-density": {
111
- academic: { documents: 6, fired: 0 },
111
+ academic: { documents: 10, fired: 0 },
112
112
  blog: { documents: 23, fired: 0 },
113
- business: { documents: 78, fired: 0 },
114
- docs: { documents: 20, fired: 0 },
113
+ business: { documents: 80, fired: 0 },
114
+ docs: { documents: 21, fired: 0 },
115
115
  legal: { documents: 35, fired: 0 },
116
116
  literature: { documents: 13, fired: 0 },
117
117
  speech: { documents: 7, fired: 0 },
118
- technical: { documents: 48, fired: 0 },
118
+ technical: { documents: 49, fired: 0 },
119
119
  },
120
120
  "no-em-dash": {
121
- academic: { documents: 6, fired: 0 },
121
+ academic: { documents: 10, fired: 0 },
122
122
  blog: { documents: 23, fired: 0 },
123
- business: { documents: 78, fired: 2 },
124
- docs: { documents: 20, fired: 0 },
123
+ business: { documents: 80, fired: 2 },
124
+ docs: { documents: 21, fired: 0 },
125
125
  legal: { documents: 35, fired: 2 },
126
126
  literature: { documents: 13, fired: 2 },
127
127
  speech: { documents: 7, fired: 0 },
128
- technical: { documents: 48, fired: 0 },
128
+ technical: { documents: 49, fired: 0 },
129
129
  },
130
130
  "padded-intro": {
131
- academic: { documents: 6, fired: 0 },
131
+ academic: { documents: 10, fired: 0 },
132
132
  blog: { documents: 23, fired: 0 },
133
- business: { documents: 46, fired: 1 },
134
- docs: { documents: 20, fired: 0 },
133
+ business: { documents: 47, fired: 1 },
134
+ docs: { documents: 21, fired: 0 },
135
135
  legal: { documents: 35, fired: 0 },
136
136
  literature: { documents: 13, fired: 0 },
137
137
  speech: { documents: 7, fired: 0 },
138
138
  },
139
139
  "paragraph-length-variance": {
140
- academic: { documents: 6, fired: 0 },
140
+ academic: { documents: 10, fired: 0 },
141
141
  blog: { documents: 23, fired: 0 },
142
- docs: { documents: 20, fired: 0 },
142
+ docs: { documents: 21, fired: 0 },
143
143
  legal: { documents: 35, fired: 0 },
144
144
  literature: { documents: 13, fired: 1 },
145
145
  speech: { documents: 7, fired: 0 },
146
146
  },
147
147
  "rule-of-three": {
148
- academic: { documents: 6, fired: 0 },
148
+ academic: { documents: 10, fired: 0 },
149
149
  blog: { documents: 23, fired: 0 },
150
- docs: { documents: 20, fired: 0 },
150
+ docs: { documents: 21, fired: 0 },
151
151
  legal: { documents: 35, fired: 0 },
152
152
  literature: { documents: 13, fired: 0 },
153
153
  speech: { documents: 7, fired: 0 },
154
154
  technical: { documents: 26, fired: 0 },
155
155
  },
156
156
  "section-length-uniformity": {
157
- academic: { documents: 6, fired: 0 },
157
+ academic: { documents: 10, fired: 0 },
158
158
  blog: { documents: 23, fired: 0 },
159
- docs: { documents: 20, fired: 0 },
159
+ docs: { documents: 21, fired: 0 },
160
160
  legal: { documents: 35, fired: 0 },
161
161
  literature: { documents: 13, fired: 1 },
162
162
  speech: { documents: 7, fired: 0 },
163
163
  technical: { documents: 26, fired: 0 },
164
164
  },
165
165
  "sentence-rhythm": {
166
- academic: { documents: 6, fired: 0 },
166
+ academic: { documents: 10, fired: 0 },
167
167
  blog: { documents: 23, fired: 0 },
168
- docs: { documents: 20, fired: 0 },
168
+ docs: { documents: 21, fired: 0 },
169
169
  legal: { documents: 35, fired: 0 },
170
170
  literature: { documents: 13, fired: 1 },
171
171
  speech: { documents: 7, fired: 0 },
172
172
  technical: { documents: 26, fired: 1 },
173
173
  },
174
174
  "stock-transition": {
175
- academic: { documents: 6, fired: 0 },
175
+ academic: { documents: 10, fired: 0 },
176
176
  blog: { documents: 23, fired: 0 },
177
- business: { documents: 78, fired: 0 },
178
- docs: { documents: 20, fired: 0 },
177
+ business: { documents: 80, fired: 0 },
178
+ docs: { documents: 21, fired: 0 },
179
179
  legal: { documents: 35, fired: 0 },
180
180
  literature: { documents: 13, fired: 0 },
181
181
  speech: { documents: 7, fired: 0 },
182
182
  technical: { documents: 26, fired: 0 },
183
183
  },
184
184
  "translationese-density": {
185
- academic: { documents: 1, fired: 0 },
185
+ academic: { documents: 5, fired: 0 },
186
186
  blog: { documents: 14, fired: 0 },
187
187
  business: { documents: 39, fired: 0 },
188
188
  docs: { documents: 10, fired: 0 },
@@ -192,14 +192,14 @@ export const HUMAN_SHARES = {
192
192
  technical: { documents: 22, fired: 0 },
193
193
  },
194
194
  "unfilled-placeholder": {
195
- academic: { documents: 6, fired: 0 },
195
+ academic: { documents: 10, fired: 0 },
196
196
  blog: { documents: 23, fired: 0 },
197
- business: { documents: 78, fired: 1 },
198
- docs: { documents: 20, fired: 0 },
197
+ business: { documents: 80, fired: 1 },
198
+ docs: { documents: 21, fired: 0 },
199
199
  legal: { documents: 35, fired: 0 },
200
200
  literature: { documents: 13, fired: 0 },
201
201
  speech: { documents: 7, fired: 0 },
202
- technical: { documents: 48, fired: 0 },
202
+ technical: { documents: 49, fired: 0 },
203
203
  },
204
204
  };
205
205
  //# sourceMappingURL=human-shares.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"human-shares.js","sourceRoot":"","sources":["../../src/ai-score/human-shares.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"human-shares.js","sourceRoot":"","sources":["../../src/ai-score/human-shares.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /** The words of a stretch of text written in capitals only (CLIPER, CAMEX), which a picked-out expansion spells. */
2
+ export declare const acronymsIn: (text: string) => string[];
3
+ /**
4
+ * Whether a word is capitals with an ending, or the letters of an acronym among acronyms. A hyphenated word is compared
5
+ * as written: leaving it out for one part would hide a variant in another (GitHub-SENDs, Github-SENDs).
6
+ */
7
+ export declare const isCapitalsNotSpelling: (word: string, acronyms: readonly string[]) => boolean;
8
+ //# sourceMappingURL=capitals-with-small.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capitals-with-small.d.ts","sourceRoot":"","sources":["../src/capitals-with-small.ts"],"names":[],"mappings":"AAUA,oHAAoH;AACpH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,MAAM,EAAuG,CAAC;AAOxJ;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,MAAM,MAAM,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,OAAyE,CAAC"}
@@ -0,0 +1,20 @@
1
+ // Words that start with two capitals or more and go on in small letters, where the capitals are not a spelling of the
2
+ // plain word: a name in capitals with an English ending (SENDs, OPENed), or the letters of an acronym picked out in its
3
+ // expansion (CLImatology and PERsistence for CLIPER: part of a longer acronym). A name written that way (HBase, RSpec,
4
+ // SCIMple beside SCIM) is a spelling, and stays one.
5
+ const CAPITALS_THEN_SMALL = /^(\p{Lu}{2,})\p{Ll}+$/u;
6
+ const CAPITALS_WITH_ENDING = /^\p{Lu}{2,}(?:s|es|d|ed|ing)$/u;
7
+ const CAPITALS_ONLY = /^\p{Lu}[\p{Lu}\d]+$/u;
8
+ const LATIN_RUN = /[\p{L}\d]+/gu;
9
+ /** The words of a stretch of text written in capitals only (CLIPER, CAMEX), which a picked-out expansion spells. */
10
+ export const acronymsIn = (text) => [...text.matchAll(LATIN_RUN)].map((match) => match[0]).filter((word) => CAPITALS_ONLY.test(word));
11
+ const isPickedOut = (word, acronyms) => {
12
+ const capitals = CAPITALS_THEN_SMALL.exec(word)?.[1];
13
+ return capitals !== undefined && acronyms.some((acronym) => acronym.length > capitals.length && acronym.includes(capitals));
14
+ };
15
+ /**
16
+ * Whether a word is capitals with an ending, or the letters of an acronym among acronyms. A hyphenated word is compared
17
+ * as written: leaving it out for one part would hide a variant in another (GitHub-SENDs, Github-SENDs).
18
+ */
19
+ export const isCapitalsNotSpelling = (word, acronyms) => CAPITALS_WITH_ENDING.test(word) || isPickedOut(word, acronyms);
20
+ //# sourceMappingURL=capitals-with-small.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capitals-with-small.js","sourceRoot":"","sources":["../src/capitals-with-small.ts"],"names":[],"mappings":"AAAA,sHAAsH;AACtH,wHAAwH;AACxH,uHAAuH;AACvH,qDAAqD;AAErD,MAAM,mBAAmB,GAAG,wBAAwB,CAAC;AACrD,MAAM,oBAAoB,GAAG,gCAAgC,CAAC;AAC9D,MAAM,aAAa,GAAG,sBAAsB,CAAC;AAC7C,MAAM,SAAS,GAAG,cAAc,CAAC;AAEjC,oHAAoH;AACpH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAY,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAExJ,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,QAA2B,EAAW,EAAE;IACzE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACrD,OAAO,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC9H,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAAE,QAA2B,EAAW,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { Span } from "../plugin.ts";
2
+ /** 「来週月曜」"next Monday": weeks from the base's week (来週 is 1), and the weekday (Sunday is 0). */
3
+ export type WeekdayRelative = Span & {
4
+ readonly kind: "weekday";
5
+ readonly weeks: number;
6
+ readonly weekday: number;
7
+ };
8
+ /** 「明日」"tomorrow": days from the base. */
9
+ export type DayRelative = Span & {
10
+ readonly kind: "day";
11
+ readonly days: number;
12
+ };
13
+ export type DayWord = WeekdayRelative | DayRelative;
14
+ /** The day the word means, as the message shows it: the first reading, written as the date was (with or without the year). */
15
+ export declare const relativeDayMismatch: (base: string, relative: DayWord, written: string) => string | undefined;
16
+ //# sourceMappingURL=relative-weekdays.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relative-weekdays.d.ts","sourceRoot":"","sources":["../../src/derived/relative-weekdays.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEzC,gGAAgG;AAChG,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AACpH,0CAA0C;AAC1C,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AACjF,MAAM,MAAM,OAAO,GAAG,eAAe,GAAG,WAAW,CAAC;AAgDpD,8HAA8H;AAC9H,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,EAAE,UAAU,OAAO,EAAE,SAAS,MAAM,KAAG,MAAM,GAAG,SAO/F,CAAC"}
@@ -0,0 +1,52 @@
1
+ const DAY_MS = 86_400_000;
2
+ const WEEK = 7;
3
+ const MONDAY = 1;
4
+ const FULL = /^(\d{4})-(\d{2})-(\d{2})$/u;
5
+ const MONTH_DAY = /^(\d{2})-(\d{2})$/u;
6
+ const timeOf = (value) => {
7
+ const found = FULL.exec(value);
8
+ if (found === null)
9
+ return undefined;
10
+ const [year, month, day] = [Number(found[1]), Number(found[2]), Number(found[3])];
11
+ const time = Date.UTC(year, month - 1, day);
12
+ const date = new Date(time);
13
+ return date.getUTCMonth() === month - 1 && date.getUTCDate() === day ? time : undefined;
14
+ };
15
+ const valueOf = (time) => new Date(time).toISOString().slice(0, "2026-10-06".length);
16
+ /**
17
+ * The days a weekday word can mean. Weeks are counted from Monday or from Sunday, and "next Monday" can also mean the
18
+ * coming Monday: every reading is allowed, so only a date that fits none of them is wrong.
19
+ */
20
+ const weekdayCandidates = (base, relative) => {
21
+ const baseDay = new Date(base).getUTCDay();
22
+ const fromMonday = base - ((baseDay - MONDAY + WEEK) % WEEK) * DAY_MS;
23
+ const fromSunday = base - baseDay * DAY_MS;
24
+ const inWeek = (weekStart, firstDay) => weekStart + (relative.weeks * WEEK + ((relative.weekday - firstDay + WEEK) % WEEK)) * DAY_MS;
25
+ // "next Monday" and "this Monday" can mean the coming one; "last Monday" the one just past.
26
+ const coming = base + (((relative.weekday - baseDay + WEEK - 1) % WEEK) + 1) * DAY_MS;
27
+ const past = base - (((baseDay - relative.weekday + WEEK - 1) % WEEK) + 1) * DAY_MS;
28
+ const nearest = new Map([
29
+ [0, [coming]],
30
+ [1, [coming]],
31
+ [-1, [past]],
32
+ ]).get(relative.weeks);
33
+ return [inWeek(fromMonday, MONDAY), inWeek(fromSunday, 0), ...(nearest ?? [])];
34
+ };
35
+ const candidatesOf = (base, relative) => relative.kind === "day" ? [base + relative.days * DAY_MS] : weekdayCandidates(base, relative);
36
+ /** Whether the written date (2026-10-12, or 10-12 without its year) is one of the days the word can mean. */
37
+ const fits = (written, candidates) => {
38
+ const monthDay = MONTH_DAY.exec(written);
39
+ return candidates.some((time) => (monthDay === null ? valueOf(time) === written : valueOf(time).slice("2026-".length) === written));
40
+ };
41
+ /** The day the word means, as the message shows it: the first reading, written as the date was (with or without the year). */
42
+ export const relativeDayMismatch = (base, relative, written) => {
43
+ const baseTime = timeOf(base);
44
+ if (baseTime === undefined || (!FULL.test(written) && !MONTH_DAY.test(written)))
45
+ return undefined;
46
+ const candidates = candidatesOf(baseTime, relative);
47
+ const [first] = candidates;
48
+ if (first === undefined || fits(written, candidates))
49
+ return undefined;
50
+ return MONTH_DAY.test(written) ? valueOf(first).slice("2026-".length) : valueOf(first);
51
+ };
52
+ //# sourceMappingURL=relative-weekdays.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relative-weekdays.js","sourceRoot":"","sources":["../../src/derived/relative-weekdays.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Detector } from "../plugin.ts";
2
+ export declare const changeRate: Detector;
3
+ //# sourceMappingURL=change-rate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-rate.d.ts","sourceRoot":"","sources":["../../src/detectors/change-rate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAA6D,MAAM,cAAc,CAAC;AA2HxG,eAAO,MAAM,UAAU,EAAE,QA0BxB,CAAC"}
@@ -0,0 +1,125 @@
1
+ import { inDocumentOrder } from "../structure/issues.js";
2
+ import { changeRateMismatches } from "../structure/change-rate.js";
3
+ import { escapeRegExp } from "../orthography.js";
4
+ import { quoteAt } from "./structure-tree.js";
5
+ const patternsOf = (doc, id) => (doc.lexicons[id] ?? []).map((entry) => entry.pattern);
6
+ const DIGITS = /\d[\d,]*(?:\.(\d+))?/u;
7
+ const DECIMAL_BASE = 10;
8
+ const LATIN = /^[A-Za-z]/u;
9
+ /** The step a number is written to: its last digit, times the magnitude the tree folded into the value (12億 is 12 × 1億). */
10
+ const stepOf = (written, value) => {
11
+ const found = DIGITS.exec(written.normalize("NFKC"));
12
+ const shown = found === null ? Number.NaN : Number(found[0].replaceAll(",", ""));
13
+ if (!Number.isFinite(shown) || shown === 0)
14
+ return undefined;
15
+ return (value / shown) * DECIMAL_BASE ** -(found?.[1]?.length ?? 0);
16
+ };
17
+ /** A word of magnitude right after the number ("$12 million"): the values compared must be written to the same one. */
18
+ const WORD_AFTER = /^\s+([A-Za-z]+)/u;
19
+ const WORDS_AFTER = /^\s+([A-Za-z]+)(?:\s+([A-Za-z]+))?/u;
20
+ const multiplierAfter = (source, end, multipliers) => {
21
+ const after = WORD_AFTER.exec(source.slice(end))?.[1]?.toLowerCase() ?? "";
22
+ return multipliers.includes(after) ? after : "";
23
+ };
24
+ const quantityNodes = (tree) => inDocumentOrder(tree).filter((node) => node.kind === "quantity" || node.kind === "date");
25
+ const ratesOf = (doc, nodes, units) => nodes.flatMap((node) => {
26
+ const unit = String(node.attrs["unit"] ?? "");
27
+ if (node.kind !== "quantity" || !units.includes(unit))
28
+ return [];
29
+ const decimals = DIGITS.exec(doc.source.slice(node.span.start, node.span.end).normalize("NFKC"))?.[1]?.length ?? 0;
30
+ return [{ start: node.span.start, end: node.span.end, value: Number(node.attrs["value"]), decimals }];
31
+ });
32
+ const treeFigures = (doc, nodes, units, multipliers) => nodes.flatMap((node) => {
33
+ const unit = String(node.attrs["unit"] ?? "");
34
+ const value = Number(node.attrs["value"]);
35
+ const step = stepOf(doc.source.slice(node.span.start, node.span.end), value);
36
+ if (node.kind !== "quantity" || units.includes(unit) || step === undefined)
37
+ return [];
38
+ return [{ start: node.span.start, end: node.span.end, value, step, unit: `${unit}|${multiplierAfter(doc.source, node.span.end, multipliers)}` }];
39
+ });
40
+ /** A number with no unit the tree reads, counted with the word after it ("1,200 companies", "2.4 million users"). */
41
+ const COUNTED = /(?<![\w.,$€£¥])(\d{1,3}(?:,\d{3})+|\d+)(?:\.(\d+))?(?=\s+[A-Za-z])/gu;
42
+ /** A year written alone ("2024 revenue"): a point in time, not a value. */
43
+ const YEAR = /^(?:1[89]|2[01])\d{2}$/u;
44
+ /** The unit a counted number is compared in: the word after it, with a word of magnitude before that word ("million users"). */
45
+ const countedUnit = (source, end, multipliers) => {
46
+ const words = WORDS_AFTER.exec(source.slice(end));
47
+ const first = words?.[1]?.toLowerCase() ?? "";
48
+ const multiplier = multipliers.includes(first) ? first : "";
49
+ const noun = multiplier === "" ? first : (words?.[2]?.toLowerCase() ?? "");
50
+ return LATIN.test(noun) ? `${noun}|${multiplier}` : undefined;
51
+ };
52
+ const countedFigures = (doc, taken, multipliers) => [...doc.source.matchAll(COUNTED)].flatMap((match) => {
53
+ const start = match.index;
54
+ const end = start + match[0].length;
55
+ const unit = countedUnit(doc.source, end, multipliers);
56
+ if (unit === undefined || taken.some((span) => span.start < end && start < span.end) || YEAR.test(match[0]))
57
+ return [];
58
+ const decimals = match[2] ?? "";
59
+ const value = Number([(match[1] ?? "").replaceAll(",", ""), decimals].filter((part) => part !== "").join("."));
60
+ return [{ start, end, value, step: DECIMAL_BASE ** -decimals.length, unit }];
61
+ });
62
+ /** Where a word of the lexicon stands in the source: a Latin word as a whole word, anything else as written. */
63
+ const spansOf = (source, word) => {
64
+ const pattern = LATIN.test(word) ? new RegExp(`\\b${escapeRegExp(word)}\\b`, "giu") : new RegExp(escapeRegExp(word), "gu");
65
+ return [...source.matchAll(pattern)].map((match) => ({ start: match.index, end: match.index + match[0].length }));
66
+ };
67
+ const SIGNS = { rise: 1, fall: -1 };
68
+ /** Where the words of a lexicon stand, less those inside a phrase of its "-not" lexicon ("up to 25%" is a ceiling). */
69
+ const spansWithout = (doc, entries, notLexicon) => {
70
+ const not = patternsOf(doc, notLexicon).flatMap((phrase) => spansOf(doc.source, phrase));
71
+ return entries.flatMap((entry) => spansOf(doc.source, entry.pattern)
72
+ .filter((span) => !not.some((phrase) => phrase.start <= span.start && span.end <= phrase.end))
73
+ .map((span) => ({ ...span, entry })));
74
+ };
75
+ /** Lexicon change-direction, less the phrases of change-direction-not. */
76
+ const directionsOf = (doc) => spansWithout(doc, doc.lexicons["change-direction"] ?? [], "change-direction-not").flatMap(({ start, end, entry }) => {
77
+ const sign = SIGNS[entry.group ?? ""];
78
+ return sign === undefined ? [] : [{ start, end, sign }];
79
+ });
80
+ /** Lexicon change-break (「は」, "and"), less the phrases of change-break-not (「上がり」 holds が but starts no subject). */
81
+ const breaksOf = (doc) => spansWithout(doc, doc.lexicons["change-break"] ?? [], "change-break-not").map(({ start, end, entry }) => ({
82
+ start,
83
+ end,
84
+ beforeRateOnly: entry.group === "rate",
85
+ }));
86
+ /** A calendar year written alone or with a unit of calendar year (2025, 2025年, 2025年度), and not part of an amount ($2025). */
87
+ const CALENDAR_YEAR = /(?<!\d|\d[.,])(?:1[89]|2[01])\d{2}(?!\d|[.,]\d)/gu;
88
+ const periodsOf = (doc, figures) => {
89
+ const yearUnits = new Set(patternsOf(doc, "calendar-year-unit").map((unit) => `${unit}|`));
90
+ const amounts = figures.filter((figure) => !yearUnits.has(figure.unit));
91
+ return [...doc.source.matchAll(CALENDAR_YEAR)].flatMap((match) => {
92
+ const span = { start: match.index, end: match.index + match[0].length };
93
+ return amounts.some((figure) => figure.start < span.end && span.start < figure.end) ? [] : [{ ...span, year: Number(match[0]) }];
94
+ });
95
+ };
96
+ const marksOf = (doc, lexicon) => (doc.lexicons[lexicon] ?? []).flatMap((entry) => entry.position === undefined ? [] : spansOf(doc.source, entry.pattern).map((span) => ({ ...span, position: entry.position ?? "before" })));
97
+ export const changeRate = (doc) => {
98
+ if (doc.structure === undefined)
99
+ return [];
100
+ const nodes = quantityNodes(doc.structure);
101
+ const units = patternsOf(doc, "percent-unit");
102
+ const multipliers = patternsOf(doc, "amount-multiplier").map((word) => word.toLowerCase());
103
+ const taken = nodes.map((node) => node.span);
104
+ const figures = [...treeFigures(doc, nodes, units, multipliers), ...countedFigures(doc, taken, multipliers)];
105
+ const text = {
106
+ sentences: doc.sentences.map((sentence) => sentence.span),
107
+ figures,
108
+ rates: ratesOf(doc, nodes, units),
109
+ directions: directionsOf(doc),
110
+ marks: marksOf(doc, "change-base"),
111
+ targets: marksOf(doc, "change-target"),
112
+ periods: periodsOf(doc, figures),
113
+ breaks: breaksOf(doc),
114
+ source: doc.source,
115
+ };
116
+ return changeRateMismatches(text).map((issue) => ({
117
+ rule: "change-rate-mismatch",
118
+ severity: "warning",
119
+ line: 0,
120
+ column: 0,
121
+ quote: quoteAt(doc.source, issue.offset),
122
+ values: { ...issue.values, offset: issue.offset },
123
+ }));
124
+ };
125
+ //# sourceMappingURL=change-rate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-rate.js","sourceRoot":"","sources":["../../src/detectors/change-rate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"derived-numbers.d.ts","sourceRoot":"","sources":["../../src/detectors/derived-numbers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA+C,MAAM,cAAc,CAAC;AAkE1F,sBAAsB;AACtB,eAAO,MAAM,gBAAgB,EAAE,QAiB9B,CAAC;AAwEF,+BAA+B;AAC/B,eAAO,MAAM,oBAAoB,EAAE,QAiClC,CAAC"}
1
+ {"version":3,"file":"derived-numbers.d.ts","sourceRoot":"","sources":["../../src/detectors/derived-numbers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA+C,MAAM,cAAc,CAAC;AAkE1F,sBAAsB;AACtB,eAAO,MAAM,gBAAgB,EAAE,QAiB9B,CAAC;AAgEF,+BAA+B;AAC/B,eAAO,MAAM,oBAAoB,EAAE,QAiClC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { inDocumentOrder } from "../structure/issues.js";
2
- import { dateStampIndexes, stampCandidates } from "../date-stamp.js";
2
+ import { documentDateOf } from "./document-date.js";
3
3
  import { overlapsAny, spanIndex } from "../compare/spans.js";
4
4
  import { yearOf } from "../derived/date-arithmetic.js";
5
5
  import { durationMismatches } from "../derived/durations.js";
@@ -109,12 +109,8 @@ const markedAges = (doc) => positioned(doc, "age-marker", "before").flatMap((mar
109
109
  }));
110
110
  /** 文書の日付の年: 日付だけの段落か「更新日:」の段落(date-stamp)の、最初の日付。 */
111
111
  const referenceYear = (doc, tree) => {
112
- const dates = datesOf(tree);
113
- const candidates = stampCandidates(doc.source, doc.paragraphs.map((paragraph) => paragraph.span), dates);
114
- const stamps = dateStampIndexes(candidates, patternsOf(doc, "date-stamp-label"));
115
- const paragraph = doc.paragraphs.find((_, index) => stamps.has(index));
116
- const date = paragraph === undefined ? undefined : dates.find((candidate) => candidate.start >= paragraph.span.start && candidate.end <= paragraph.span.end);
117
- return date === undefined ? undefined : yearOf(date.value);
112
+ const date = documentDateOf(doc, tree);
113
+ return date === undefined ? undefined : yearOf(date);
118
114
  };
119
115
  /** 起点の年から数えた年数が、文書の日付と合わない。 */
120
116
  export const elapsedYearsMismatch = (doc) => {