glossarist 0.4.49 → 0.4.51

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 (700) hide show
  1. package/dist/compiled-format.d.ts +43 -0
  2. package/dist/compiled-format.d.ts.map +1 -0
  3. package/{src/compiled-format.ts → dist/compiled-format.js} +28 -46
  4. package/dist/compiled-format.js.map +1 -0
  5. package/dist/concept-collection.d.ts +39 -0
  6. package/dist/concept-collection.d.ts.map +1 -0
  7. package/dist/concept-collection.js +127 -0
  8. package/dist/concept-collection.js.map +1 -0
  9. package/dist/concept-diff.d.ts +14 -0
  10. package/dist/concept-diff.d.ts.map +1 -0
  11. package/{src/concept-diff.ts → dist/concept-diff.js} +2 -20
  12. package/dist/concept-diff.js.map +1 -0
  13. package/dist/concept-parser.d.ts +11 -0
  14. package/dist/concept-parser.d.ts.map +1 -0
  15. package/dist/concept-parser.js +209 -0
  16. package/dist/concept-parser.js.map +1 -0
  17. package/dist/concept-reader.d.ts +55 -0
  18. package/dist/concept-reader.d.ts.map +1 -0
  19. package/{src/concept-reader.ts → dist/concept-reader.js} +70 -76
  20. package/dist/concept-reader.js.map +1 -0
  21. package/dist/concept-serializer.d.ts +9 -0
  22. package/dist/concept-serializer.d.ts.map +1 -0
  23. package/dist/concept-serializer.js +87 -0
  24. package/dist/concept-serializer.js.map +1 -0
  25. package/dist/concept-writer.d.ts +10 -0
  26. package/dist/concept-writer.d.ts.map +1 -0
  27. package/dist/concept-writer.js +28 -0
  28. package/dist/concept-writer.js.map +1 -0
  29. package/dist/dataset-asset.d.ts +49 -0
  30. package/dist/dataset-asset.d.ts.map +1 -0
  31. package/{src/dataset-asset.ts → dist/dataset-asset.js} +16 -33
  32. package/dist/dataset-asset.js.map +1 -0
  33. package/dist/diff/canonical-json.d.ts +7 -0
  34. package/dist/diff/canonical-json.d.ts.map +1 -0
  35. package/dist/diff/canonical-json.js +28 -0
  36. package/dist/diff/canonical-json.js.map +1 -0
  37. package/dist/diff/change.d.ts +67 -0
  38. package/dist/diff/change.d.ts.map +1 -0
  39. package/dist/diff/change.js +131 -0
  40. package/dist/diff/change.js.map +1 -0
  41. package/dist/diff/collection-diff.d.ts +50 -0
  42. package/dist/diff/collection-diff.d.ts.map +1 -0
  43. package/dist/diff/collection-diff.js +182 -0
  44. package/dist/diff/collection-diff.js.map +1 -0
  45. package/dist/diff/concept-diff.d.ts +188 -0
  46. package/dist/diff/concept-diff.d.ts.map +1 -0
  47. package/dist/diff/concept-diff.js +624 -0
  48. package/dist/diff/concept-diff.js.map +1 -0
  49. package/dist/diff/diff-patch.d.ts +7 -0
  50. package/dist/diff/diff-patch.d.ts.map +1 -0
  51. package/dist/diff/diff-patch.js +225 -0
  52. package/dist/diff/diff-patch.js.map +1 -0
  53. package/dist/diff/diff-renderer.d.ts +44 -0
  54. package/dist/diff/diff-renderer.d.ts.map +1 -0
  55. package/dist/diff/diff-renderer.js +263 -0
  56. package/dist/diff/diff-renderer.js.map +1 -0
  57. package/dist/diff/identity.d.ts +2 -0
  58. package/dist/diff/identity.d.ts.map +1 -0
  59. package/dist/diff/identity.js +29 -0
  60. package/dist/diff/identity.js.map +1 -0
  61. package/dist/diff/index.d.ts +8 -0
  62. package/dist/diff/index.d.ts.map +1 -0
  63. package/dist/diff/index.js +8 -0
  64. package/dist/diff/index.js.map +1 -0
  65. package/dist/diff/list-diff.d.ts +36 -0
  66. package/dist/diff/list-diff.d.ts.map +1 -0
  67. package/dist/diff/list-diff.js +185 -0
  68. package/dist/diff/list-diff.js.map +1 -0
  69. package/dist/diff/similarity.d.ts +4 -0
  70. package/dist/diff/similarity.d.ts.map +1 -0
  71. package/dist/diff/similarity.js +20 -0
  72. package/dist/diff/similarity.js.map +1 -0
  73. package/dist/diff/text-diff.d.ts +42 -0
  74. package/dist/diff/text-diff.d.ts.map +1 -0
  75. package/dist/diff/text-diff.js +134 -0
  76. package/dist/diff/text-diff.js.map +1 -0
  77. package/dist/entity-directory.d.ts +13 -0
  78. package/dist/entity-directory.d.ts.map +1 -0
  79. package/dist/entity-directory.js +35 -0
  80. package/dist/entity-directory.js.map +1 -0
  81. package/dist/errors.d.ts +15 -0
  82. package/dist/errors.d.ts.map +1 -0
  83. package/dist/errors.js +23 -0
  84. package/dist/errors.js.map +1 -0
  85. package/dist/gcr-reader.d.ts +57 -0
  86. package/dist/gcr-reader.d.ts.map +1 -0
  87. package/dist/gcr-reader.js +264 -0
  88. package/dist/gcr-reader.js.map +1 -0
  89. package/dist/gcr-writer.d.ts +23 -0
  90. package/dist/gcr-writer.d.ts.map +1 -0
  91. package/dist/gcr-writer.js +84 -0
  92. package/dist/gcr-writer.js.map +1 -0
  93. package/dist/index.d.ts +21 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/{src/index.ts → dist/index.js} +6 -66
  96. package/dist/index.js.map +1 -0
  97. package/dist/managed-concept-collection.d.ts +31 -0
  98. package/dist/managed-concept-collection.d.ts.map +1 -0
  99. package/dist/managed-concept-collection.js +87 -0
  100. package/dist/managed-concept-collection.js.map +1 -0
  101. package/dist/migration/hyperedge-migrator.d.ts +33 -0
  102. package/dist/migration/hyperedge-migrator.d.ts.map +1 -0
  103. package/dist/migration/hyperedge-migrator.js +70 -0
  104. package/dist/migration/hyperedge-migrator.js.map +1 -0
  105. package/dist/models/abstract-hyperedge.d.ts +35 -0
  106. package/dist/models/abstract-hyperedge.d.ts.map +1 -0
  107. package/dist/models/abstract-hyperedge.js +112 -0
  108. package/dist/models/abstract-hyperedge.js.map +1 -0
  109. package/dist/models/base.d.ts +58 -0
  110. package/dist/models/base.d.ts.map +1 -0
  111. package/dist/models/base.js +77 -0
  112. package/dist/models/base.js.map +1 -0
  113. package/dist/models/bibliography-data.d.ts +20 -0
  114. package/dist/models/bibliography-data.d.ts.map +1 -0
  115. package/dist/models/bibliography-data.js +43 -0
  116. package/dist/models/bibliography-data.js.map +1 -0
  117. package/dist/models/bibliography-entry.d.ts +19 -0
  118. package/dist/models/bibliography-entry.d.ts.map +1 -0
  119. package/dist/models/bibliography-entry.js +34 -0
  120. package/dist/models/bibliography-entry.js.map +1 -0
  121. package/dist/models/citation.d.ts +40 -0
  122. package/dist/models/citation.d.ts.map +1 -0
  123. package/dist/models/citation.js +82 -0
  124. package/dist/models/citation.js.map +1 -0
  125. package/dist/models/completeness.d.ts +9 -0
  126. package/dist/models/completeness.d.ts.map +1 -0
  127. package/{src/models/completeness.ts → dist/models/completeness.js} +4 -9
  128. package/dist/models/completeness.js.map +1 -0
  129. package/dist/models/concept-date.d.ts +20 -0
  130. package/dist/models/concept-date.d.ts.map +1 -0
  131. package/dist/models/concept-date.js +36 -0
  132. package/dist/models/concept-date.js.map +1 -0
  133. package/dist/models/concept-ref.d.ts +32 -0
  134. package/dist/models/concept-ref.d.ts.map +1 -0
  135. package/dist/models/concept-ref.js +53 -0
  136. package/dist/models/concept-ref.js.map +1 -0
  137. package/dist/models/concept-reference.d.ts +22 -0
  138. package/dist/models/concept-reference.d.ts.map +1 -0
  139. package/dist/models/concept-reference.js +39 -0
  140. package/dist/models/concept-reference.js.map +1 -0
  141. package/dist/models/concept-source.d.ts +53 -0
  142. package/dist/models/concept-source.d.ts.map +1 -0
  143. package/dist/models/concept-source.js +66 -0
  144. package/dist/models/concept-source.js.map +1 -0
  145. package/dist/models/concept-system-type.d.ts +6 -0
  146. package/dist/models/concept-system-type.d.ts.map +1 -0
  147. package/dist/models/concept-system-type.js +22 -0
  148. package/dist/models/concept-system-type.js.map +1 -0
  149. package/dist/models/concept-system.d.ts +44 -0
  150. package/dist/models/concept-system.d.ts.map +1 -0
  151. package/dist/models/concept-system.js +115 -0
  152. package/dist/models/concept-system.js.map +1 -0
  153. package/dist/models/concept-type.d.ts +7 -0
  154. package/dist/models/concept-type.d.ts.map +1 -0
  155. package/{src/models/concept-type.ts → dist/models/concept-type.js} +8 -19
  156. package/dist/models/concept-type.js.map +1 -0
  157. package/dist/models/concept.d.ts +94 -0
  158. package/dist/models/concept.d.ts.map +1 -0
  159. package/dist/models/concept.js +368 -0
  160. package/dist/models/concept.js.map +1 -0
  161. package/dist/models/dataset-color.d.ts +28 -0
  162. package/dist/models/dataset-color.d.ts.map +1 -0
  163. package/dist/models/dataset-color.js +74 -0
  164. package/dist/models/dataset-color.js.map +1 -0
  165. package/dist/models/definition-type.d.ts +9 -0
  166. package/dist/models/definition-type.d.ts.map +1 -0
  167. package/{src/models/definition-type.ts → dist/models/definition-type.js} +6 -15
  168. package/dist/models/definition-type.js.map +1 -0
  169. package/dist/models/designation-relationship.d.ts +17 -0
  170. package/dist/models/designation-relationship.d.ts.map +1 -0
  171. package/dist/models/designation-relationship.js +30 -0
  172. package/dist/models/designation-relationship.js.map +1 -0
  173. package/dist/models/designation.d.ts +110 -0
  174. package/dist/models/designation.d.ts.map +1 -0
  175. package/dist/models/designation.js +224 -0
  176. package/dist/models/designation.js.map +1 -0
  177. package/dist/models/detailed-definition.d.ts +34 -0
  178. package/dist/models/detailed-definition.d.ts.map +1 -0
  179. package/dist/models/detailed-definition.js +63 -0
  180. package/dist/models/detailed-definition.js.map +1 -0
  181. package/dist/models/enum.d.ts +21 -0
  182. package/dist/models/enum.d.ts.map +1 -0
  183. package/dist/models/enum.js +39 -0
  184. package/dist/models/enum.js.map +1 -0
  185. package/dist/models/equivalence-degree.d.ts +7 -0
  186. package/dist/models/equivalence-degree.d.ts.map +1 -0
  187. package/dist/models/equivalence-degree.js +20 -0
  188. package/dist/models/equivalence-degree.js.map +1 -0
  189. package/dist/models/figure.d.ts +40 -0
  190. package/dist/models/figure.d.ts.map +1 -0
  191. package/dist/models/figure.js +82 -0
  192. package/dist/models/figure.js.map +1 -0
  193. package/dist/models/formula.d.ts +15 -0
  194. package/dist/models/formula.d.ts.map +1 -0
  195. package/dist/models/formula.js +27 -0
  196. package/dist/models/formula.js.map +1 -0
  197. package/dist/models/gcr-metadata.d.ts +62 -0
  198. package/dist/models/gcr-metadata.d.ts.map +1 -0
  199. package/dist/models/gcr-metadata.js +102 -0
  200. package/dist/models/gcr-metadata.js.map +1 -0
  201. package/dist/models/gcr-statistics.d.ts +30 -0
  202. package/dist/models/gcr-statistics.d.ts.map +1 -0
  203. package/dist/models/gcr-statistics.js +53 -0
  204. package/dist/models/gcr-statistics.js.map +1 -0
  205. package/dist/models/generic-hyperedge.d.ts +32 -0
  206. package/dist/models/generic-hyperedge.d.ts.map +1 -0
  207. package/dist/models/generic-hyperedge.js +51 -0
  208. package/dist/models/generic-hyperedge.js.map +1 -0
  209. package/dist/models/generic-member.d.ts +14 -0
  210. package/dist/models/generic-member.d.ts.map +1 -0
  211. package/dist/models/generic-member.js +51 -0
  212. package/dist/models/generic-member.js.map +1 -0
  213. package/dist/models/grammar-info.d.ts +34 -0
  214. package/dist/models/grammar-info.d.ts.map +1 -0
  215. package/dist/models/grammar-info.js +59 -0
  216. package/dist/models/grammar-info.js.map +1 -0
  217. package/dist/models/hyperedge-colors.d.ts +19 -0
  218. package/dist/models/hyperedge-colors.d.ts.map +1 -0
  219. package/dist/models/hyperedge-colors.js +61 -0
  220. package/dist/models/hyperedge-colors.js.map +1 -0
  221. package/dist/models/hyperedge-index.d.ts +34 -0
  222. package/dist/models/hyperedge-index.d.ts.map +1 -0
  223. package/dist/models/hyperedge-index.js +85 -0
  224. package/dist/models/hyperedge-index.js.map +1 -0
  225. package/dist/models/hyperedge-member.d.ts +28 -0
  226. package/dist/models/hyperedge-member.d.ts.map +1 -0
  227. package/dist/models/hyperedge-member.js +92 -0
  228. package/dist/models/hyperedge-member.js.map +1 -0
  229. package/dist/models/hyperedge-registry.d.ts +47 -0
  230. package/dist/models/hyperedge-registry.d.ts.map +1 -0
  231. package/dist/models/hyperedge-registry.js +118 -0
  232. package/dist/models/hyperedge-registry.js.map +1 -0
  233. package/dist/models/index.d.ts +53 -0
  234. package/dist/models/index.d.ts.map +1 -0
  235. package/{src/models/index.ts → dist/models/index.js} +11 -63
  236. package/dist/models/index.js.map +1 -0
  237. package/dist/models/locality.d.ts +17 -0
  238. package/dist/models/locality.d.ts.map +1 -0
  239. package/dist/models/locality.js +26 -0
  240. package/dist/models/locality.js.map +1 -0
  241. package/dist/models/localized-concept.d.ts +102 -0
  242. package/dist/models/localized-concept.d.ts.map +1 -0
  243. package/dist/models/localized-concept.js +195 -0
  244. package/dist/models/localized-concept.js.map +1 -0
  245. package/dist/models/localized-string.d.ts +5 -0
  246. package/dist/models/localized-string.d.ts.map +1 -0
  247. package/dist/models/localized-string.js +20 -0
  248. package/dist/models/localized-string.js.map +1 -0
  249. package/dist/models/multiplicity.d.ts +42 -0
  250. package/dist/models/multiplicity.d.ts.map +1 -0
  251. package/dist/models/multiplicity.js +84 -0
  252. package/dist/models/multiplicity.js.map +1 -0
  253. package/dist/models/non-verb-rep.d.ts +20 -0
  254. package/dist/models/non-verb-rep.d.ts.map +1 -0
  255. package/dist/models/non-verb-rep.js +32 -0
  256. package/dist/models/non-verb-rep.js.map +1 -0
  257. package/dist/models/non-verbal-entity.d.ts +30 -0
  258. package/dist/models/non-verbal-entity.d.ts.map +1 -0
  259. package/dist/models/non-verbal-entity.js +48 -0
  260. package/dist/models/non-verbal-entity.js.map +1 -0
  261. package/dist/models/non-verbal-reference.d.ts +23 -0
  262. package/dist/models/non-verbal-reference.d.ts.map +1 -0
  263. package/dist/models/non-verbal-reference.js +44 -0
  264. package/dist/models/non-verbal-reference.js.map +1 -0
  265. package/dist/models/non-verbal-references.d.ts +12 -0
  266. package/dist/models/non-verbal-references.d.ts.map +1 -0
  267. package/dist/models/non-verbal-references.js +20 -0
  268. package/dist/models/non-verbal-references.js.map +1 -0
  269. package/dist/models/partitive-count.d.ts +10 -0
  270. package/dist/models/partitive-count.d.ts.map +1 -0
  271. package/{src/models/partitive-count.ts → dist/models/partitive-count.js} +5 -9
  272. package/dist/models/partitive-count.js.map +1 -0
  273. package/dist/models/partitive-enumeration.d.ts +5 -0
  274. package/dist/models/partitive-enumeration.d.ts.map +1 -0
  275. package/dist/models/partitive-enumeration.js +16 -0
  276. package/dist/models/partitive-enumeration.js.map +1 -0
  277. package/dist/models/partitive-hyperedge.d.ts +43 -0
  278. package/dist/models/partitive-hyperedge.d.ts.map +1 -0
  279. package/dist/models/partitive-hyperedge.js +63 -0
  280. package/dist/models/partitive-hyperedge.js.map +1 -0
  281. package/dist/models/partitive-member.d.ts +14 -0
  282. package/dist/models/partitive-member.d.ts.map +1 -0
  283. package/dist/models/partitive-member.js +44 -0
  284. package/dist/models/partitive-member.js.map +1 -0
  285. package/dist/models/partitive-presence.d.ts +9 -0
  286. package/dist/models/partitive-presence.d.ts.map +1 -0
  287. package/{src/models/partitive-presence.ts → dist/models/partitive-presence.js} +4 -8
  288. package/dist/models/partitive-presence.js.map +1 -0
  289. package/dist/models/plurality-marker.d.ts +5 -0
  290. package/dist/models/plurality-marker.d.ts.map +1 -0
  291. package/dist/models/plurality-marker.js +20 -0
  292. package/dist/models/plurality-marker.js.map +1 -0
  293. package/dist/models/pronunciation.d.ts +19 -0
  294. package/dist/models/pronunciation.d.ts.map +1 -0
  295. package/dist/models/pronunciation.js +34 -0
  296. package/dist/models/pronunciation.js.map +1 -0
  297. package/dist/models/register.d.ts +104 -0
  298. package/dist/models/register.d.ts.map +1 -0
  299. package/dist/models/register.js +297 -0
  300. package/dist/models/register.js.map +1 -0
  301. package/dist/models/registrable.d.ts +25 -0
  302. package/dist/models/registrable.d.ts.map +1 -0
  303. package/dist/models/registrable.js +23 -0
  304. package/dist/models/registrable.js.map +1 -0
  305. package/dist/models/related-concept.d.ts +33 -0
  306. package/dist/models/related-concept.d.ts.map +1 -0
  307. package/dist/models/related-concept.js +95 -0
  308. package/dist/models/related-concept.js.map +1 -0
  309. package/dist/models/relation-categories.d.ts +38 -0
  310. package/dist/models/relation-categories.d.ts.map +1 -0
  311. package/dist/models/relation-categories.js +135 -0
  312. package/dist/models/relation-categories.js.map +1 -0
  313. package/dist/models/relation-colors.d.ts +35 -0
  314. package/dist/models/relation-colors.d.ts.map +1 -0
  315. package/dist/models/relation-colors.js +68 -0
  316. package/dist/models/relation-colors.js.map +1 -0
  317. package/dist/models/relation-loader.d.ts +41 -0
  318. package/dist/models/relation-loader.d.ts.map +1 -0
  319. package/dist/models/relation-loader.js +101 -0
  320. package/dist/models/relation-loader.js.map +1 -0
  321. package/dist/models/section.d.ts +22 -0
  322. package/dist/models/section.d.ts.map +1 -0
  323. package/dist/models/section.js +47 -0
  324. package/dist/models/section.js.map +1 -0
  325. package/dist/models/sequential-hyperedge.d.ts +32 -0
  326. package/dist/models/sequential-hyperedge.d.ts.map +1 -0
  327. package/dist/models/sequential-hyperedge.js +49 -0
  328. package/dist/models/sequential-hyperedge.js.map +1 -0
  329. package/dist/models/sequential-member.d.ts +8 -0
  330. package/dist/models/sequential-member.d.ts.map +1 -0
  331. package/{src/models/sequential-member.ts → dist/models/sequential-member.js} +4 -9
  332. package/dist/models/sequential-member.js.map +1 -0
  333. package/dist/models/shared-non-verbal-entity.d.ts +16 -0
  334. package/dist/models/shared-non-verbal-entity.d.ts.map +1 -0
  335. package/dist/models/shared-non-verbal-entity.js +28 -0
  336. package/dist/models/shared-non-verbal-entity.js.map +1 -0
  337. package/dist/models/table.d.ts +15 -0
  338. package/dist/models/table.d.ts.map +1 -0
  339. package/dist/models/table.js +27 -0
  340. package/dist/models/table.js.map +1 -0
  341. package/dist/rdf/agents-emitter.d.ts +37 -0
  342. package/dist/rdf/agents-emitter.d.ts.map +1 -0
  343. package/dist/rdf/agents-emitter.js +107 -0
  344. package/dist/rdf/agents-emitter.js.map +1 -0
  345. package/dist/rdf/bibliography-emitter.d.ts +16 -0
  346. package/dist/rdf/bibliography-emitter.d.ts.map +1 -0
  347. package/dist/rdf/bibliography-emitter.js +84 -0
  348. package/dist/rdf/bibliography-emitter.js.map +1 -0
  349. package/dist/rdf/bnode-id.d.ts +2 -0
  350. package/dist/rdf/bnode-id.d.ts.map +1 -0
  351. package/dist/rdf/bnode-id.js +57 -0
  352. package/dist/rdf/bnode-id.js.map +1 -0
  353. package/dist/rdf/build-activity-emitter.d.ts +42 -0
  354. package/dist/rdf/build-activity-emitter.d.ts.map +1 -0
  355. package/dist/rdf/build-activity-emitter.js +103 -0
  356. package/dist/rdf/build-activity-emitter.js.map +1 -0
  357. package/dist/rdf/curie.d.ts +7 -0
  358. package/dist/rdf/curie.d.ts.map +1 -0
  359. package/dist/rdf/curie.js +45 -0
  360. package/dist/rdf/curie.js.map +1 -0
  361. package/dist/rdf/dataset-emitter.d.ts +37 -0
  362. package/dist/rdf/dataset-emitter.d.ts.map +1 -0
  363. package/dist/rdf/dataset-emitter.js +126 -0
  364. package/dist/rdf/dataset-emitter.js.map +1 -0
  365. package/dist/rdf/deterministic-id.d.ts +3 -0
  366. package/dist/rdf/deterministic-id.d.ts.map +1 -0
  367. package/dist/rdf/deterministic-id.js +68 -0
  368. package/dist/rdf/deterministic-id.js.map +1 -0
  369. package/dist/rdf/document-writer.d.ts +11 -0
  370. package/dist/rdf/document-writer.d.ts.map +1 -0
  371. package/dist/rdf/document-writer.js +77 -0
  372. package/dist/rdf/document-writer.js.map +1 -0
  373. package/dist/rdf/gloss-concept.d.ts +27 -0
  374. package/dist/rdf/gloss-concept.d.ts.map +1 -0
  375. package/dist/rdf/gloss-concept.js +95 -0
  376. package/dist/rdf/gloss-concept.js.map +1 -0
  377. package/dist/rdf/gloss-designation.d.ts +17 -0
  378. package/dist/rdf/gloss-designation.d.ts.map +1 -0
  379. package/dist/rdf/gloss-designation.js +46 -0
  380. package/dist/rdf/gloss-designation.js.map +1 -0
  381. package/dist/rdf/gloss-detailed-definition.d.ts +14 -0
  382. package/dist/rdf/gloss-detailed-definition.d.ts.map +1 -0
  383. package/dist/rdf/gloss-detailed-definition.js +53 -0
  384. package/dist/rdf/gloss-detailed-definition.js.map +1 -0
  385. package/dist/rdf/gloss-generic-hyperedge.d.ts +27 -0
  386. package/dist/rdf/gloss-generic-hyperedge.d.ts.map +1 -0
  387. package/{src/rdf/gloss-generic-hyperedge.ts → dist/rdf/gloss-generic-hyperedge.js} +36 -50
  388. package/dist/rdf/gloss-generic-hyperedge.js.map +1 -0
  389. package/dist/rdf/gloss-localized-concept.d.ts +24 -0
  390. package/dist/rdf/gloss-localized-concept.d.ts.map +1 -0
  391. package/dist/rdf/gloss-localized-concept.js +71 -0
  392. package/dist/rdf/gloss-localized-concept.js.map +1 -0
  393. package/dist/rdf/gloss-non-verbal-rep.d.ts +33 -0
  394. package/dist/rdf/gloss-non-verbal-rep.d.ts.map +1 -0
  395. package/dist/rdf/gloss-non-verbal-rep.js +163 -0
  396. package/dist/rdf/gloss-non-verbal-rep.js.map +1 -0
  397. package/dist/rdf/gloss-partitive-member.d.ts +8 -0
  398. package/dist/rdf/gloss-partitive-member.d.ts.map +1 -0
  399. package/{src/rdf/gloss-partitive-member.ts → dist/rdf/gloss-partitive-member.js} +23 -41
  400. package/dist/rdf/gloss-partitive-member.js.map +1 -0
  401. package/dist/rdf/gloss-partitive-relation.d.ts +26 -0
  402. package/dist/rdf/gloss-partitive-relation.d.ts.map +1 -0
  403. package/dist/rdf/gloss-partitive-relation.js +73 -0
  404. package/dist/rdf/gloss-partitive-relation.js.map +1 -0
  405. package/dist/rdf/gloss-source.d.ts +23 -0
  406. package/dist/rdf/gloss-source.d.ts.map +1 -0
  407. package/dist/rdf/gloss-source.js +52 -0
  408. package/dist/rdf/gloss-source.js.map +1 -0
  409. package/dist/rdf/group-emitter.d.ts +46 -0
  410. package/dist/rdf/group-emitter.d.ts.map +1 -0
  411. package/dist/rdf/group-emitter.js +107 -0
  412. package/dist/rdf/group-emitter.js.map +1 -0
  413. package/dist/rdf/image-variant-emitter.d.ts +12 -0
  414. package/dist/rdf/image-variant-emitter.d.ts.map +1 -0
  415. package/dist/rdf/image-variant-emitter.js +55 -0
  416. package/dist/rdf/image-variant-emitter.js.map +1 -0
  417. package/dist/rdf/index.d.ts +26 -0
  418. package/dist/rdf/index.d.ts.map +1 -0
  419. package/{src/rdf/index.ts → dist/rdf/index.js} +8 -37
  420. package/dist/rdf/index.js.map +1 -0
  421. package/dist/rdf/normalize-enum.d.ts +3 -0
  422. package/dist/rdf/normalize-enum.d.ts.map +1 -0
  423. package/{src/rdf/normalize-enum.ts → dist/rdf/normalize-enum.js} +11 -10
  424. package/dist/rdf/normalize-enum.js.map +1 -0
  425. package/dist/rdf/predicates.d.ts +277 -0
  426. package/dist/rdf/predicates.d.ts.map +1 -0
  427. package/dist/rdf/predicates.js +279 -0
  428. package/dist/rdf/predicates.js.map +1 -0
  429. package/dist/rdf/prefixes.d.ts +16 -0
  430. package/dist/rdf/prefixes.d.ts.map +1 -0
  431. package/{src/rdf/prefixes.ts → dist/rdf/prefixes.js} +10 -12
  432. package/dist/rdf/prefixes.js.map +1 -0
  433. package/dist/rdf/provenance-emitter.d.ts +28 -0
  434. package/dist/rdf/provenance-emitter.d.ts.map +1 -0
  435. package/dist/rdf/provenance-emitter.js +74 -0
  436. package/dist/rdf/provenance-emitter.js.map +1 -0
  437. package/dist/rdf/sections-builder.d.ts +17 -0
  438. package/dist/rdf/sections-builder.d.ts.map +1 -0
  439. package/dist/rdf/sections-builder.js +137 -0
  440. package/dist/rdf/sections-builder.js.map +1 -0
  441. package/dist/rdf/shacl-entry.d.ts +2 -0
  442. package/dist/rdf/shacl-entry.d.ts.map +1 -0
  443. package/{src/rdf/shacl-entry.ts → dist/rdf/shacl-entry.js} +1 -1
  444. package/dist/rdf/shacl-entry.js.map +1 -0
  445. package/dist/rdf/shacl.d.ts +10 -0
  446. package/dist/rdf/shacl.d.ts.map +1 -0
  447. package/{src/rdf/shacl.ts → dist/rdf/shacl.js} +38 -56
  448. package/dist/rdf/shacl.js.map +1 -0
  449. package/dist/rdf/terms.d.ts +10 -0
  450. package/dist/rdf/terms.d.ts.map +1 -0
  451. package/{src/rdf/terms.ts → dist/rdf/terms.js} +6 -3
  452. package/dist/rdf/terms.js.map +1 -0
  453. package/dist/rdf/version-emitter.d.ts +57 -0
  454. package/dist/rdf/version-emitter.d.ts.map +1 -0
  455. package/dist/rdf/version-emitter.js +68 -0
  456. package/dist/rdf/version-emitter.js.map +1 -0
  457. package/dist/rdf/vocabulary-emitter.d.ts +32 -0
  458. package/dist/rdf/vocabulary-emitter.d.ts.map +1 -0
  459. package/dist/rdf/vocabulary-emitter.js +46 -0
  460. package/dist/rdf/vocabulary-emitter.js.map +1 -0
  461. package/dist/rdf/write-turtle-sync.d.ts +7 -0
  462. package/dist/rdf/write-turtle-sync.d.ts.map +1 -0
  463. package/dist/rdf/write-turtle-sync.js +130 -0
  464. package/dist/rdf/write-turtle-sync.js.map +1 -0
  465. package/dist/reference-mention.d.ts +49 -0
  466. package/dist/reference-mention.d.ts.map +1 -0
  467. package/dist/reference-mention.js +98 -0
  468. package/dist/reference-mention.js.map +1 -0
  469. package/dist/reference-resolver.d.ts +52 -0
  470. package/dist/reference-resolver.d.ts.map +1 -0
  471. package/dist/reference-resolver.js +311 -0
  472. package/dist/reference-resolver.js.map +1 -0
  473. package/dist/render-classification.d.ts +19 -0
  474. package/dist/render-classification.d.ts.map +1 -0
  475. package/dist/render-classification.js +82 -0
  476. package/dist/render-classification.js.map +1 -0
  477. package/dist/sort.d.ts +5 -0
  478. package/dist/sort.d.ts.map +1 -0
  479. package/dist/sort.js +25 -0
  480. package/dist/sort.js.map +1 -0
  481. package/dist/transforms/concept-to-gloss.transform.d.ts +32 -0
  482. package/dist/transforms/concept-to-gloss.transform.d.ts.map +1 -0
  483. package/dist/transforms/concept-to-gloss.transform.js +60 -0
  484. package/dist/transforms/concept-to-gloss.transform.js.map +1 -0
  485. package/dist/transforms/index.d.ts +2 -0
  486. package/dist/transforms/index.d.ts.map +1 -0
  487. package/{src/transforms/index.ts → dist/transforms/index.js} +1 -0
  488. package/dist/transforms/index.js.map +1 -0
  489. package/dist/utils/assertions.d.ts +4 -0
  490. package/dist/utils/assertions.d.ts.map +1 -0
  491. package/dist/utils/assertions.js +17 -0
  492. package/dist/utils/assertions.js.map +1 -0
  493. package/dist/uuid.d.ts +4 -0
  494. package/dist/uuid.d.ts.map +1 -0
  495. package/dist/uuid.js +23 -0
  496. package/dist/uuid.js.map +1 -0
  497. package/dist/v1-reader.d.ts +8 -0
  498. package/dist/v1-reader.d.ts.map +1 -0
  499. package/dist/v1-reader.js +56 -0
  500. package/dist/v1-reader.js.map +1 -0
  501. package/dist/validators/asset-index.d.ts +23 -0
  502. package/dist/validators/asset-index.d.ts.map +1 -0
  503. package/dist/validators/asset-index.js +58 -0
  504. package/dist/validators/asset-index.js.map +1 -0
  505. package/dist/validators/binary-has-part-redundancy-rule.d.ts +8 -0
  506. package/dist/validators/binary-has-part-redundancy-rule.d.ts.map +1 -0
  507. package/dist/validators/binary-has-part-redundancy-rule.js +57 -0
  508. package/dist/validators/binary-has-part-redundancy-rule.js.map +1 -0
  509. package/dist/validators/concept-validator.d.ts +21 -0
  510. package/dist/validators/concept-validator.d.ts.map +1 -0
  511. package/dist/validators/concept-validator.js +76 -0
  512. package/dist/validators/concept-validator.js.map +1 -0
  513. package/dist/validators/delimiting-coherence-rule.d.ts +8 -0
  514. package/dist/validators/delimiting-coherence-rule.d.ts.map +1 -0
  515. package/dist/validators/delimiting-coherence-rule.js +72 -0
  516. package/dist/validators/delimiting-coherence-rule.js.map +1 -0
  517. package/dist/validators/external-concept-shape-rule.d.ts +8 -0
  518. package/dist/validators/external-concept-shape-rule.d.ts.map +1 -0
  519. package/dist/validators/external-concept-shape-rule.js +48 -0
  520. package/dist/validators/external-concept-shape-rule.js.map +1 -0
  521. package/dist/validators/gcr-validator.d.ts +11 -0
  522. package/dist/validators/gcr-validator.d.ts.map +1 -0
  523. package/dist/validators/gcr-validator.js +76 -0
  524. package/dist/validators/gcr-validator.js.map +1 -0
  525. package/dist/validators/hyperedge-coherence-rule.d.ts +9 -0
  526. package/dist/validators/hyperedge-coherence-rule.d.ts.map +1 -0
  527. package/dist/validators/hyperedge-coherence-rule.js +78 -0
  528. package/dist/validators/hyperedge-coherence-rule.js.map +1 -0
  529. package/dist/validators/index.d.ts +21 -0
  530. package/dist/validators/index.d.ts.map +1 -0
  531. package/{src/validators/index.ts → dist/validators/index.js} +25 -51
  532. package/dist/validators/index.js.map +1 -0
  533. package/dist/validators/partitive-relation-coherence-rule.d.ts +2 -0
  534. package/dist/validators/partitive-relation-coherence-rule.d.ts.map +1 -0
  535. package/{src/validators/partitive-relation-coherence-rule.ts → dist/validators/partitive-relation-coherence-rule.js} +1 -1
  536. package/dist/validators/partitive-relation-coherence-rule.js.map +1 -0
  537. package/dist/validators/ref-keys.d.ts +8 -0
  538. package/dist/validators/ref-keys.d.ts.map +1 -0
  539. package/dist/validators/ref-keys.js +27 -0
  540. package/dist/validators/ref-keys.js.map +1 -0
  541. package/dist/validators/register-validator.d.ts +10 -0
  542. package/dist/validators/register-validator.d.ts.map +1 -0
  543. package/dist/validators/register-validator.js +18 -0
  544. package/dist/validators/register-validator.js.map +1 -0
  545. package/dist/validators/relationship-type-rule.d.ts +13 -0
  546. package/dist/validators/relationship-type-rule.d.ts.map +1 -0
  547. package/dist/validators/relationship-type-rule.js +34 -0
  548. package/dist/validators/relationship-type-rule.js.map +1 -0
  549. package/dist/validators/sourced-from-locality-rule.d.ts +8 -0
  550. package/dist/validators/sourced-from-locality-rule.d.ts.map +1 -0
  551. package/dist/validators/sourced-from-locality-rule.js +37 -0
  552. package/dist/validators/sourced-from-locality-rule.js.map +1 -0
  553. package/dist/validators/v3-rules.d.ts +60 -0
  554. package/dist/validators/v3-rules.d.ts.map +1 -0
  555. package/dist/validators/v3-rules.js +327 -0
  556. package/dist/validators/v3-rules.js.map +1 -0
  557. package/dist/validators/validation-error.d.ts +13 -0
  558. package/dist/validators/validation-error.d.ts.map +1 -0
  559. package/dist/validators/validation-error.js +17 -0
  560. package/dist/validators/validation-error.js.map +1 -0
  561. package/dist/validators/validation-result.d.ts +17 -0
  562. package/dist/validators/validation-result.d.ts.map +1 -0
  563. package/dist/validators/validation-result.js +47 -0
  564. package/dist/validators/validation-result.js.map +1 -0
  565. package/dist/validators/validation-rule.d.ts +10 -0
  566. package/dist/validators/validation-rule.d.ts.map +1 -0
  567. package/dist/validators/validation-rule.js +17 -0
  568. package/dist/validators/validation-rule.js.map +1 -0
  569. package/package.json +37 -42
  570. package/src/concept-collection.ts +0 -166
  571. package/src/concept-parser.ts +0 -229
  572. package/src/concept-reader.d.ts +0 -13
  573. package/src/concept-serializer.ts +0 -99
  574. package/src/concept-writer.d.ts +0 -7
  575. package/src/concept-writer.ts +0 -43
  576. package/src/diff/canonical-json.ts +0 -29
  577. package/src/diff/change.ts +0 -175
  578. package/src/diff/collection-diff.ts +0 -197
  579. package/src/diff/concept-diff.ts +0 -702
  580. package/src/diff/diff-patch.ts +0 -260
  581. package/src/diff/diff-renderer.ts +0 -293
  582. package/src/diff/identity.ts +0 -33
  583. package/src/diff/index.d.ts +0 -242
  584. package/src/diff/index.ts +0 -50
  585. package/src/diff/list-diff.ts +0 -231
  586. package/src/diff/similarity.ts +0 -20
  587. package/src/diff/text-diff.ts +0 -167
  588. package/src/entity-directory.ts +0 -43
  589. package/src/errors.d.ts +0 -11
  590. package/src/errors.ts +0 -24
  591. package/src/gcr-reader.d.ts +0 -65
  592. package/src/gcr-reader.ts +0 -487
  593. package/src/gcr-writer.d.ts +0 -22
  594. package/src/gcr-writer.ts +0 -97
  595. package/src/index.d.ts +0 -124
  596. package/src/managed-concept-collection.ts +0 -95
  597. package/src/migration/hyperedge-migrator.ts +0 -104
  598. package/src/models/abstract-hyperedge.ts +0 -164
  599. package/src/models/base.ts +0 -110
  600. package/src/models/bibliography-data.ts +0 -64
  601. package/src/models/bibliography-entry.ts +0 -40
  602. package/src/models/citation.ts +0 -98
  603. package/src/models/concept-date.ts +0 -48
  604. package/src/models/concept-ref.ts +0 -64
  605. package/src/models/concept-reference.ts +0 -50
  606. package/src/models/concept-source.ts +0 -96
  607. package/src/models/concept-system-type.ts +0 -39
  608. package/src/models/concept-system.ts +0 -152
  609. package/src/models/concept.ts +0 -499
  610. package/src/models/dataset-color.ts +0 -88
  611. package/src/models/designation-relationship.ts +0 -39
  612. package/src/models/designation.ts +0 -297
  613. package/src/models/detailed-definition.ts +0 -92
  614. package/src/models/enum.ts +0 -60
  615. package/src/models/equivalence-degree.ts +0 -34
  616. package/src/models/figure.ts +0 -110
  617. package/src/models/formula.ts +0 -36
  618. package/src/models/gcr-metadata.ts +0 -118
  619. package/src/models/gcr-statistics.ts +0 -76
  620. package/src/models/generic-hyperedge.ts +0 -72
  621. package/src/models/generic-member.ts +0 -80
  622. package/src/models/grammar-info.ts +0 -78
  623. package/src/models/hyperedge-colors.ts +0 -87
  624. package/src/models/hyperedge-index.ts +0 -101
  625. package/src/models/hyperedge-member.ts +0 -121
  626. package/src/models/hyperedge-registry.ts +0 -145
  627. package/src/models/index.d.ts +0 -586
  628. package/src/models/locality.ts +0 -34
  629. package/src/models/localized-concept.ts +0 -284
  630. package/src/models/localized-string.ts +0 -32
  631. package/src/models/multiplicity.ts +0 -134
  632. package/src/models/non-verb-rep.ts +0 -48
  633. package/src/models/non-verbal-entity.ts +0 -65
  634. package/src/models/non-verbal-reference.ts +0 -73
  635. package/src/models/non-verbal-references.ts +0 -29
  636. package/src/models/partitive-enumeration.ts +0 -27
  637. package/src/models/partitive-hyperedge.ts +0 -90
  638. package/src/models/partitive-member.ts +0 -56
  639. package/src/models/plurality-marker.ts +0 -31
  640. package/src/models/pronunciation.ts +0 -40
  641. package/src/models/register.ts +0 -315
  642. package/src/models/registrable.ts +0 -48
  643. package/src/models/related-concept.ts +0 -117
  644. package/src/models/relation-categories.ts +0 -167
  645. package/src/models/relation-colors.ts +0 -90
  646. package/src/models/relation-loader.ts +0 -115
  647. package/src/models/section.ts +0 -61
  648. package/src/models/sequential-hyperedge.ts +0 -70
  649. package/src/models/shared-non-verbal-entity.ts +0 -36
  650. package/src/models/table.ts +0 -36
  651. package/src/rdf/agents-emitter.ts +0 -134
  652. package/src/rdf/bibliography-emitter.ts +0 -126
  653. package/src/rdf/bnode-id.ts +0 -55
  654. package/src/rdf/build-activity-emitter.ts +0 -129
  655. package/src/rdf/curie.ts +0 -47
  656. package/src/rdf/dataset-emitter.ts +0 -170
  657. package/src/rdf/deterministic-id.ts +0 -69
  658. package/src/rdf/document-writer.ts +0 -87
  659. package/src/rdf/gloss-concept.ts +0 -115
  660. package/src/rdf/gloss-designation.ts +0 -72
  661. package/src/rdf/gloss-detailed-definition.ts +0 -69
  662. package/src/rdf/gloss-localized-concept.ts +0 -79
  663. package/src/rdf/gloss-non-verbal-rep.ts +0 -192
  664. package/src/rdf/gloss-partitive-relation.ts +0 -89
  665. package/src/rdf/gloss-source.ts +0 -56
  666. package/src/rdf/group-emitter.ts +0 -133
  667. package/src/rdf/image-variant-emitter.ts +0 -80
  668. package/src/rdf/index.d.ts +0 -371
  669. package/src/rdf/predicates.d.ts +0 -527
  670. package/src/rdf/predicates.ts +0 -287
  671. package/src/rdf/provenance-emitter.ts +0 -87
  672. package/src/rdf/sections-builder.ts +0 -178
  673. package/src/rdf/shacl-entry.d.ts +0 -6
  674. package/src/rdf/version-emitter.ts +0 -97
  675. package/src/rdf/vocabulary-emitter.ts +0 -67
  676. package/src/rdf/write-turtle-sync.ts +0 -167
  677. package/src/reference-mention.ts +0 -114
  678. package/src/reference-resolver.ts +0 -331
  679. package/src/render-classification.ts +0 -76
  680. package/src/sort.ts +0 -22
  681. package/src/transforms/concept-to-gloss.transform.ts +0 -81
  682. package/src/transforms/index.d.ts +0 -26
  683. package/src/uuid.ts +0 -32
  684. package/src/v1-reader.ts +0 -64
  685. package/src/validators/asset-index.ts +0 -67
  686. package/src/validators/binary-has-part-redundancy-rule.ts +0 -67
  687. package/src/validators/concept-validator.ts +0 -93
  688. package/src/validators/delimiting-coherence-rule.ts +0 -105
  689. package/src/validators/external-concept-shape-rule.ts +0 -60
  690. package/src/validators/gcr-validator.ts +0 -75
  691. package/src/validators/hyperedge-coherence-rule.ts +0 -98
  692. package/src/validators/index.d.ts +0 -43
  693. package/src/validators/ref-keys.ts +0 -31
  694. package/src/validators/register-validator.ts +0 -18
  695. package/src/validators/relationship-type-rule.ts +0 -39
  696. package/src/validators/sourced-from-locality-rule.ts +0 -53
  697. package/src/validators/v3-rules.ts +0 -378
  698. package/src/validators/validation-error.ts +0 -19
  699. package/src/validators/validation-result.ts +0 -52
  700. package/src/validators/validation-rule.ts +0 -21
@@ -1,242 +0,0 @@
1
- import type { GlossaristModel } from '../models/base';
2
-
3
- // ── Text diff ──────────────────────────────────────────────────────────
4
-
5
- export type HunkType = 'equal' | 'added' | 'removed';
6
-
7
- export class TextHunk extends GlossaristModel {
8
- readonly type: HunkType;
9
- readonly text: string;
10
- toJSON(): { type: HunkType; text: string };
11
- static fromJSON(data: { type: HunkType; text: string }): TextHunk;
12
- }
13
-
14
- export class TextDiff extends GlossaristModel {
15
- readonly oldText: string;
16
- readonly newText: string;
17
- readonly hunks: TextHunk[];
18
- readonly hasChanges: boolean;
19
- readonly addedText: string;
20
- readonly removedText: string;
21
- toJSON(): { old_text: string; new_text: string; hunks: Array<{ type: HunkType; text: string }> };
22
- static fromJSON(data: Record<string, unknown>): TextDiff;
23
- }
24
-
25
- export function diffText(oldText: string | null | undefined, newText: string | null | undefined): TextDiff;
26
-
27
- // ── Change types ───────────────────────────────────────────────────────
28
-
29
- export const CHANGE_ADDED: 'added';
30
- export const CHANGE_REMOVED: 'removed';
31
- export const CHANGE_CHANGED: 'changed';
32
- export const CHANGE_MATCHED: 'matched';
33
-
34
- export type ChangeType =
35
- | typeof CHANGE_ADDED
36
- | typeof CHANGE_REMOVED
37
- | typeof CHANGE_CHANGED
38
- | typeof CHANGE_MATCHED;
39
-
40
- export class Change extends GlossaristModel {
41
- readonly type: ChangeType;
42
- readonly path: string | null;
43
- }
44
-
45
- export class Added extends Change {
46
- readonly type: 'added';
47
- readonly value: unknown;
48
- toJSON(): { type: 'added'; path?: string; value: unknown };
49
- static fromJSON(data: Record<string, unknown>): Added;
50
- }
51
-
52
- export class Removed extends Change {
53
- readonly type: 'removed';
54
- readonly value: unknown;
55
- toJSON(): { type: 'removed'; path?: string; value: unknown };
56
- static fromJSON(data: Record<string, unknown>): Removed;
57
- }
58
-
59
- export class Changed extends Change {
60
- readonly type: 'changed';
61
- readonly oldValue: unknown;
62
- readonly newValue: unknown;
63
- readonly textDiff: TextDiff | null;
64
- toJSON(): {
65
- type: 'changed';
66
- path?: string;
67
- old_value: unknown;
68
- new_value: unknown;
69
- text_diff?: ReturnType<TextDiff['toJSON']>;
70
- };
71
- static fromJSON(data: Record<string, unknown>): Changed;
72
- }
73
-
74
- export class Matched extends Change {
75
- readonly type: 'matched';
76
- readonly value: unknown;
77
- toJSON(): { type: 'matched'; path?: string; value: unknown };
78
- static fromJSON(data: Record<string, unknown>): Matched;
79
- }
80
-
81
- export function deserializeChange(data: Record<string, unknown>): Change;
82
-
83
- // ── List diff ──────────────────────────────────────────────────────────
84
-
85
- export interface DiffListOptions {
86
- identityKey?: (item: any) => string;
87
- textKey?: (item: any) => string | null;
88
- }
89
-
90
- export class ListDiff extends GlossaristModel {
91
- readonly added: Added[];
92
- readonly removed: Removed[];
93
- readonly changed: Changed[];
94
- readonly hasChanges: boolean;
95
- readonly count: number;
96
- entries(): Generator<Change, void, unknown>;
97
- toJSON(): {
98
- added: ReturnType<Added['toJSON']>[];
99
- removed: ReturnType<Removed['toJSON']>[];
100
- changed: ReturnType<Changed['toJSON']>[];
101
- };
102
- static fromJSON(data: Record<string, unknown>): ListDiff;
103
- }
104
-
105
- export function diffList(oldList: unknown[], newList: unknown[], options?: DiffListOptions): ListDiff;
106
- export function diffSet(oldList: unknown[], newList: unknown[], options: DiffListOptions): ListDiff;
107
-
108
- // ── Concept diff ───────────────────────────────────────────────────────
109
-
110
- export interface DiffWalkEntry {
111
- path: string;
112
- change: Change;
113
- }
114
-
115
- export interface ConceptDiffWalkEntry extends DiffWalkEntry {
116
- language: string;
117
- }
118
-
119
- export class DiffStats extends GlossaristModel {
120
- readonly added: number;
121
- readonly removed: number;
122
- readonly changed: number;
123
- readonly total: number;
124
- toJSON(): { added: number; removed: number; changed: number };
125
- static fromJSON(data: Record<string, unknown>): DiffStats;
126
- }
127
-
128
- export class MetadataDiff extends GlossaristModel {
129
- readonly changes: Record<string, Changed>;
130
- readonly hasChanges: boolean;
131
- readonly count: number;
132
- walk(section?: string): Generator<DiffWalkEntry, void, unknown>;
133
- toJSON(): Record<string, ReturnType<Changed['toJSON']>>;
134
- static fromJSON(data: Record<string, unknown>): MetadataDiff;
135
- }
136
-
137
- export class ConceptLevelDiff extends GlossaristModel {
138
- readonly sources: ListDiff;
139
- readonly dates: ListDiff;
140
- readonly relatedConcepts: ListDiff;
141
- readonly partitiveHyperedges: ListDiff;
142
- readonly groups: ListDiff;
143
- readonly sections: ListDiff;
144
- readonly tags: ListDiff;
145
- readonly metadata: MetadataDiff;
146
- readonly hasChanges: boolean;
147
- walk(): Generator<DiffWalkEntry, void, unknown>;
148
- toJSON(): Record<string, unknown>;
149
- static fromJSON(data: Record<string, unknown>): ConceptLevelDiff;
150
- }
151
-
152
- export class LocalizedConceptDiff extends GlossaristModel {
153
- readonly languageCode: string | null;
154
- readonly designations: ListDiff;
155
- readonly definitions: ListDiff;
156
- readonly notes: ListDiff;
157
- readonly examples: ListDiff;
158
- readonly sources: ListDiff;
159
- readonly dates: ListDiff;
160
- readonly related: ListDiff;
161
- readonly metadata: MetadataDiff;
162
- readonly hasChanges: boolean;
163
- readonly stats: DiffStats;
164
- readonly similarity: number;
165
- readonly totalItems: number;
166
- walk(prefix?: string): Generator<DiffWalkEntry, void, unknown>;
167
- toJSON(): Record<string, unknown>;
168
- static fromJSON(data: Record<string, unknown>): LocalizedConceptDiff;
169
- }
170
-
171
- export class ConceptDiff extends GlossaristModel {
172
- readonly oldId: string | null;
173
- readonly newId: string | null;
174
- readonly concept: ConceptLevelDiff;
175
- readonly languages: ListDiff;
176
- readonly localizations: Record<string, LocalizedConceptDiff>;
177
- readonly hasChanges: boolean;
178
- readonly localizationLanguages: string[];
179
- readonly stats: DiffStats;
180
- readonly similarity: number;
181
- readonly totalItems: number;
182
- localization(lang: string): LocalizedConceptDiff | null;
183
- walk(): Generator<ConceptDiffWalkEntry, void, unknown>;
184
- toJSON(): Record<string, unknown>;
185
- static fromJSON(data: Record<string, unknown>): ConceptDiff;
186
- }
187
-
188
- export function diffConcepts(
189
- oldConcept: any | null,
190
- newConcept: any | null,
191
- language?: string,
192
- ): ConceptDiff;
193
-
194
- export function diffLocalizedConcepts(
195
- oldLoc: any | null,
196
- newLoc: any | null,
197
- ): LocalizedConceptDiff;
198
-
199
- // ── Collection diff ────────────────────────────────────────────────────
200
-
201
- export class ConceptCollectionDiff extends GlossaristModel {
202
- readonly oldCount: number;
203
- readonly newCount: number;
204
- readonly matched: Matched[];
205
- readonly added: Added[];
206
- readonly removed: Removed[];
207
- readonly conceptDiffs: Record<string, ConceptDiff>;
208
- readonly changedIds: string[];
209
- readonly hasChanges: boolean;
210
- readonly stats: DiffStats;
211
- readonly similarity: number;
212
- conceptDiff(id: string): ConceptDiff | null;
213
- walk(): Generator<ConceptDiffWalkEntry, void, unknown>;
214
- toJSON(): Record<string, unknown>;
215
- static fromJSON(data: Record<string, unknown>): ConceptCollectionDiff;
216
- }
217
-
218
- export function diffConceptCollections(
219
- oldCollection: any | null,
220
- newCollection: any | null,
221
- options?: { language?: string; skipUnchanged?: boolean },
222
- ): ConceptCollectionDiff;
223
-
224
- // ── Rendering ──────────────────────────────────────────────────────────
225
-
226
- export interface RenderOptions {
227
- colors?: boolean;
228
- showUnchanged?: boolean;
229
- }
230
-
231
- export function renderConceptDiff(diff: ConceptDiff, options?: RenderOptions): string;
232
- export function renderCollectionDiff(diff: ConceptCollectionDiff, options?: RenderOptions): string;
233
- export function renderTextDiff(textDiff: TextDiff | Record<string, unknown>, options?: RenderOptions): string;
234
-
235
- // ── Patching ───────────────────────────────────────────────────────────
236
-
237
- export function applyDiff<T extends { toJSON(): Record<string, unknown> }>(
238
- oldConcept: T,
239
- diff: ConceptDiff,
240
- ): T;
241
-
242
- export function reverseDiff(diff: ConceptDiff): ConceptDiff;
package/src/diff/index.ts DELETED
@@ -1,50 +0,0 @@
1
- export {
2
- TextHunk,
3
- TextDiff,
4
- diffText,
5
- } from './text-diff.js';
6
-
7
- export {
8
- Change,
9
- Added,
10
- Removed,
11
- Changed,
12
- Matched,
13
- CHANGE_ADDED,
14
- CHANGE_REMOVED,
15
- CHANGE_CHANGED,
16
- CHANGE_MATCHED,
17
- deserializeChange,
18
- } from './change.js';
19
-
20
- export {
21
- ListDiff,
22
- diffList,
23
- diffSet,
24
- } from './list-diff.js';
25
-
26
- export {
27
- DiffStats,
28
- MetadataDiff,
29
- ConceptLevelDiff,
30
- LocalizedConceptDiff,
31
- ConceptDiff,
32
- diffConcepts,
33
- diffLocalizedConcepts,
34
- } from './concept-diff.js';
35
-
36
- export {
37
- ConceptCollectionDiff,
38
- diffConceptCollections,
39
- } from './collection-diff.js';
40
-
41
- export {
42
- renderConceptDiff,
43
- renderCollectionDiff,
44
- renderTextDiff,
45
- } from './diff-renderer.js';
46
-
47
- export {
48
- applyDiff,
49
- reverseDiff,
50
- } from './diff-patch.js';
@@ -1,231 +0,0 @@
1
- import { GlossaristModel } from '../models/base.js';
2
- import { Added, Removed, Changed, deserializeChange } from './change.js';
3
- import type { ChangeJson, ChangedConstructorData } from './change.js';
4
- import { diffText } from './text-diff.js';
5
- import { identityOf } from './identity.js';
6
-
7
- export interface ListDiffJson {
8
- added?: ReadonlyArray<ChangeJson | Added>;
9
- removed?: ReadonlyArray<ChangeJson | Removed>;
10
- changed?: ReadonlyArray<ChangeJson | Changed>;
11
- }
12
-
13
- interface ListDiffOptions {
14
- identityKey?: (item: unknown) => string;
15
- textKey?: ((item: unknown) => string | null) | null;
16
- }
17
-
18
- export class ListDiff extends GlossaristModel {
19
- private readonly _added: ReadonlyArray<Added>;
20
- private readonly _removed: ReadonlyArray<Removed>;
21
- private readonly _changed: ReadonlyArray<Changed>;
22
-
23
- constructor(data: ListDiffJson = {}) {
24
- super();
25
- this._added = (data.added ?? []).map((c) =>
26
- c instanceof Added ? c : Added.fromJSON(c),
27
- ) as ReadonlyArray<Added>;
28
- this._removed = (data.removed ?? []).map((c) =>
29
- c instanceof Removed ? c : Removed.fromJSON(c),
30
- ) as ReadonlyArray<Removed>;
31
- this._changed = (data.changed ?? []).map((c) => {
32
- if (c instanceof Changed) return c;
33
- return deserializeChange(c) as Changed;
34
- }) as ReadonlyArray<Changed>;
35
- }
36
-
37
- get added(): ReadonlyArray<Added> { return this._added; }
38
- get removed(): ReadonlyArray<Removed> { return this._removed; }
39
- get changed(): ReadonlyArray<Changed> { return this._changed; }
40
-
41
- get hasChanges(): boolean {
42
- return this._added.length > 0 || this._removed.length > 0 || this._changed.length > 0;
43
- }
44
-
45
- get count(): number {
46
- return this._added.length + this._removed.length + this._changed.length;
47
- }
48
-
49
- *entries(): Generator<Added | Removed | Changed> {
50
- yield* this._added;
51
- yield* this._removed;
52
- yield* this._changed;
53
- }
54
-
55
- override toJSON(): ListDiffJson {
56
- return {
57
- added: this._added.map((c) => c.toJSON()),
58
- removed: this._removed.map((c) => c.toJSON()),
59
- changed: this._changed.map((c) => c.toJSON()),
60
- };
61
- }
62
-
63
- static override fromJSON(data: ListDiffJson): ListDiff {
64
- return new ListDiff(data);
65
- }
66
- }
67
-
68
- /**
69
- * Diff two ordered lists using LCS alignment.
70
- */
71
- export function diffList(
72
- oldList: ReadonlyArray<unknown> = [],
73
- newList: ReadonlyArray<unknown> = [],
74
- options: ListDiffOptions = {},
75
- ): ListDiff {
76
- const identityKey = options.identityKey ?? defaultIdentityKey;
77
- const textKey = options.textKey ?? null;
78
-
79
- const oldArr = [...oldList];
80
- const newArr = [...newList];
81
-
82
- const oldKeys = oldArr.map(identityKey);
83
- const newKeys = newArr.map(identityKey);
84
-
85
- const dp = lcsTable(oldKeys, newKeys);
86
- const ops = backtrackOps(dp, oldKeys, newKeys);
87
-
88
- const added: Added[] = [];
89
- const removed: Removed[] = [];
90
- const changed: Changed[] = [];
91
-
92
- for (let k = 0; k < ops.length; k++) {
93
- const op = ops[k]!;
94
- if (op.type === 'equal') continue;
95
-
96
- if (op.type === 'remove' && k + 1 < ops.length && ops[k + 1]!.type === 'add') {
97
- const next = ops[k + 1]!;
98
- changed.push(buildChanged(oldArr[op.i]!, newArr[next.j]!, textKey));
99
- k++;
100
- } else if (op.type === 'add' && k + 1 < ops.length && ops[k + 1]!.type === 'remove') {
101
- const next = ops[k + 1]!;
102
- changed.push(buildChanged(oldArr[next.i]!, newArr[op.j]!, textKey));
103
- k++;
104
- } else if (op.type === 'remove') {
105
- removed.push(new Removed({ value: oldArr[op.i] }));
106
- } else if (op.type === 'add') {
107
- added.push(new Added({ value: newArr[op.j] }));
108
- }
109
- }
110
-
111
- return new ListDiff({ added, removed, changed });
112
- }
113
-
114
- /**
115
- * Diff two unordered collections by identity key (set-based).
116
- */
117
- export function diffSet(
118
- oldList: ReadonlyArray<unknown> = [],
119
- newList: ReadonlyArray<unknown> = [],
120
- options: ListDiffOptions = {},
121
- ): ListDiff {
122
- const identityKey = options.identityKey ?? defaultIdentityKey;
123
- const textKey = options.textKey ?? null;
124
-
125
- const oldMap = new Map<string, unknown>();
126
- for (const item of oldList) {
127
- oldMap.set(identityKey(item), item);
128
- }
129
-
130
- const seenKeys = new Set<string>();
131
- const added: Added[] = [];
132
- const changed: Changed[] = [];
133
-
134
- for (const item of newList) {
135
- const key = identityKey(item);
136
- seenKeys.add(key);
137
- if (oldMap.has(key)) {
138
- const oldItem = oldMap.get(key);
139
- if (oldItem !== undefined && !itemsEqual(oldItem, item)) {
140
- changed.push(buildChanged(oldItem, item, textKey));
141
- }
142
- } else {
143
- added.push(new Added({ value: item }));
144
- }
145
- }
146
-
147
- const removed: Removed[] = [];
148
- for (const item of oldList) {
149
- if (!seenKeys.has(identityKey(item))) {
150
- removed.push(new Removed({ value: item }));
151
- }
152
- }
153
-
154
- return new ListDiff({ added, removed, changed });
155
- }
156
-
157
- function buildChanged(
158
- oldItem: unknown,
159
- newItem: unknown,
160
- textKey: ((item: unknown) => string | null) | null,
161
- ): Changed {
162
- const opts: ChangedConstructorData = {
163
- oldValue: oldItem,
164
- newValue: newItem,
165
- };
166
- if (textKey) {
167
- const oldText = textKey(oldItem);
168
- const newText = textKey(newItem);
169
- if (oldText != null || newText != null) {
170
- opts.textDiff = diffText(oldText ?? '', newText ?? '');
171
- }
172
- }
173
- return new Changed(opts);
174
- }
175
-
176
- function itemsEqual(a: unknown, b: unknown): boolean {
177
- if (a === b) return true;
178
- if (a instanceof GlossaristModel && b instanceof GlossaristModel) {
179
- return a.equals(b as never);
180
- }
181
- return JSON.stringify(a) === JSON.stringify(b);
182
- }
183
-
184
- function defaultIdentityKey(item: unknown): string {
185
- return identityOf(item);
186
- }
187
-
188
- type Op = { type: 'equal' | 'add' | 'remove'; i: number; j: number };
189
-
190
- function lcsTable(aKeys: string[], bKeys: string[]): Uint32Array[] {
191
- const m = aKeys.length;
192
- const n = bKeys.length;
193
- const dp = Array.from({ length: m + 1 }, () => new Uint32Array(n + 1));
194
- for (let i = 1; i <= m; i++) {
195
- for (let j = 1; j <= n; j++) {
196
- dp[i]![j]! =
197
- aKeys[i - 1] === bKeys[j - 1]
198
- ? dp[i - 1]![j - 1]! + 1
199
- : Math.max(dp[i - 1]![j]!, dp[i]![j - 1]!);
200
- }
201
- }
202
- return dp;
203
- }
204
-
205
- function backtrackOps(dp: Uint32Array[], aKeys: string[], bKeys: string[]): Op[] {
206
- const ops: Op[] = [];
207
- let i = aKeys.length;
208
- let j = bKeys.length;
209
- while (i > 0 && j > 0) {
210
- if (aKeys[i - 1] === bKeys[j - 1]) {
211
- ops.push({ type: 'equal', i: i - 1, j: j - 1 });
212
- i--; j--;
213
- } else if ((dp[i - 1]![j] ?? 0) >= (dp[i]![j - 1] ?? 0)) {
214
- ops.push({ type: 'remove', i: i - 1, j });
215
- i--;
216
- } else {
217
- ops.push({ type: 'add', i, j: j - 1 });
218
- j--;
219
- }
220
- }
221
- while (i > 0) {
222
- ops.push({ type: 'remove', i: i - 1, j });
223
- i--;
224
- }
225
- while (j > 0) {
226
- ops.push({ type: 'add', i, j: j - 1 });
227
- j--;
228
- }
229
- ops.reverse();
230
- return ops;
231
- }
@@ -1,20 +0,0 @@
1
- // Similarity scoring for the diff layer.
2
- //
3
- // `computeSimilarity(changeCount, totalItems)` returns a value in
4
- // [0, 1] rounded to SIMILARITY_PRECISION_DECIMALS decimal places. The
5
- // rounding matches what glossarist-ruby's diff layer produces.
6
-
7
- export const SIMILARITY_PRECISION_DECIMALS = 4;
8
- const _SCALE = 10 ** SIMILARITY_PRECISION_DECIMALS;
9
-
10
- export function computeSimilarity(changeCount: number, totalItems: number): number {
11
- if (totalItems <= 0) return 1.0;
12
- const ratio = Math.min(changeCount / totalItems, 1);
13
- return Math.round((1 - ratio) * _SCALE) / _SCALE;
14
- }
15
-
16
- export function averageSimilarity(values: ReadonlyArray<number>): number {
17
- if (values.length === 0) return 1.0;
18
- const sum = values.reduce((a, b) => a + b, 0);
19
- return Math.round((sum / values.length) * _SCALE) / _SCALE;
20
- }
@@ -1,167 +0,0 @@
1
- import { GlossaristModel } from '../models/base.js';
2
-
3
- const HUNK_EQUAL = 'equal';
4
- const HUNK_ADDED = 'added';
5
- const HUNK_REMOVED = 'removed';
6
-
7
- export type TextHunkType = typeof HUNK_EQUAL | typeof HUNK_ADDED | typeof HUNK_REMOVED;
8
-
9
- const TOKEN_RE = /(\s+)|(\S+)/g;
10
-
11
- export interface TextHunkJson {
12
- type: TextHunkType;
13
- text: string;
14
- }
15
-
16
- export class TextHunk extends GlossaristModel {
17
- readonly type: TextHunkType;
18
- readonly text: string;
19
-
20
- constructor(data: TextHunkJson = { type: HUNK_EQUAL, text: '' }) {
21
- super();
22
- if (![HUNK_EQUAL, HUNK_ADDED, HUNK_REMOVED].includes(data.type)) {
23
- throw new Error(`TextHunk type must be 'equal', 'added', or 'removed' (got ${data.type})`);
24
- }
25
- this.type = data.type;
26
- this.text = data.text ?? '';
27
- }
28
-
29
- override toJSON(): TextHunkJson {
30
- return { type: this.type, text: this.text };
31
- }
32
-
33
- static override fromJSON(data: TextHunkJson): TextHunk {
34
- return new TextHunk(data);
35
- }
36
- }
37
-
38
- export interface TextDiffJson {
39
- oldText?: string;
40
- old_text?: string;
41
- newText?: string;
42
- new_text?: string;
43
- hunks?: ReadonlyArray<TextHunkJson | TextHunk>;
44
- }
45
-
46
- export class TextDiff extends GlossaristModel {
47
- readonly oldText: string;
48
- readonly newText: string;
49
- private readonly _hunks: ReadonlyArray<TextHunk>;
50
-
51
- constructor(data: TextDiffJson = {}) {
52
- super();
53
- this.oldText = data.oldText ?? data.old_text ?? '';
54
- this.newText = data.newText ?? data.new_text ?? '';
55
- this._hunks = (data.hunks ?? []).map((h) =>
56
- h instanceof TextHunk ? h : new TextHunk(h),
57
- );
58
- }
59
-
60
- get hunks(): ReadonlyArray<TextHunk> {
61
- return this._hunks;
62
- }
63
-
64
- get hasChanges(): boolean {
65
- return this._hunks.some((h) => h.type !== HUNK_EQUAL);
66
- }
67
-
68
- get addedText(): string {
69
- return this._hunks
70
- .filter((h) => h.type === HUNK_ADDED)
71
- .map((h) => h.text)
72
- .join('');
73
- }
74
-
75
- get removedText(): string {
76
- return this._hunks
77
- .filter((h) => h.type === HUNK_REMOVED)
78
- .map((h) => h.text)
79
- .join('');
80
- }
81
-
82
- override toJSON(): TextDiffJson & { old_text: string; new_text: string; hunks: ReadonlyArray<TextHunkJson> } {
83
- return {
84
- old_text: this.oldText,
85
- new_text: this.newText,
86
- hunks: this._hunks.map((h) => h.toJSON()),
87
- };
88
- }
89
-
90
- static override fromJSON(data: TextDiffJson): TextDiff {
91
- return new TextDiff(data);
92
- }
93
- }
94
-
95
- export function diffText(oldText: string | null | undefined, newText: string | null | undefined): TextDiff {
96
- const oldStr = String(oldText ?? '');
97
- const newStr = String(newText ?? '');
98
- const oldTokens = tokenize(oldStr);
99
- const newTokens = tokenize(newStr);
100
- const hunks = lcsHunks(oldTokens, newTokens);
101
- return new TextDiff({ oldText: oldStr, newText: newStr, hunks });
102
- }
103
-
104
- function tokenize(text: string): string[] {
105
- if (text.length === 0) return [];
106
- return text.match(TOKEN_RE) ?? [];
107
- }
108
-
109
- function lcsHunks(a: string[], b: string[]): TextHunk[] {
110
- const n = a.length;
111
- const m = b.length;
112
-
113
- if (n === 0) return m === 0 ? [] : [new TextHunk({ type: HUNK_ADDED, text: b.join('') })];
114
- if (m === 0) return [new TextHunk({ type: HUNK_REMOVED, text: a.join('') })];
115
-
116
- const dp = Array.from({ length: n + 1 }, () => new Uint32Array(m + 1));
117
- for (let i = 1; i <= n; i++) {
118
- for (let j = 1; j <= m; j++) {
119
- dp[i]![j]! =
120
- a[i - 1] === b[j - 1]
121
- ? dp[i - 1]![j - 1]! + 1
122
- : Math.max(dp[i - 1]![j]!, dp[i]![j - 1]!);
123
- }
124
- }
125
-
126
- const raw: Array<{ type: TextHunkType; text: string }> = [];
127
- let i = n;
128
- let j = m;
129
- while (i > 0 && j > 0) {
130
- if (a[i - 1] === b[j - 1]) {
131
- raw.push({ type: HUNK_EQUAL, text: a[i - 1]! });
132
- i--; j--;
133
- } else if ((dp[i - 1]![j] ?? 0) >= (dp[i]![j - 1] ?? 0)) {
134
- raw.push({ type: HUNK_REMOVED, text: a[i - 1]! });
135
- i--;
136
- } else {
137
- raw.push({ type: HUNK_ADDED, text: b[j - 1]! });
138
- j--;
139
- }
140
- }
141
- while (i > 0) {
142
- raw.push({ type: HUNK_REMOVED, text: a[i - 1]! });
143
- i--;
144
- }
145
- while (j > 0) {
146
- raw.push({ type: HUNK_ADDED, text: b[j - 1]! });
147
- j--;
148
- }
149
- raw.reverse();
150
-
151
- return coalesce(raw).map((h) => new TextHunk(h));
152
- }
153
-
154
- function coalesce(
155
- raw: ReadonlyArray<{ type: TextHunkType; text: string }>,
156
- ): Array<{ type: TextHunkType; text: string }> {
157
- const out: Array<{ type: TextHunkType; text: string }> = [];
158
- for (const r of raw) {
159
- const last = out[out.length - 1];
160
- if (last && last.type === r.type) {
161
- last.text += r.text;
162
- } else {
163
- out.push({ type: r.type, text: r.text });
164
- }
165
- }
166
- return out;
167
- }