glossarist 0.4.50 → 0.4.52

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 (709) 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 +25 -0
  94. package/dist/index.d.ts.map +1 -0
  95. package/dist/index.js +38 -0
  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 -57
  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/utils/external-detection.d.ts +38 -0
  494. package/dist/utils/external-detection.d.ts.map +1 -0
  495. package/dist/utils/external-detection.js +55 -0
  496. package/dist/utils/external-detection.js.map +1 -0
  497. package/dist/uuid.d.ts +4 -0
  498. package/dist/uuid.d.ts.map +1 -0
  499. package/dist/uuid.js +23 -0
  500. package/dist/uuid.js.map +1 -0
  501. package/dist/v1-reader.d.ts +8 -0
  502. package/dist/v1-reader.d.ts.map +1 -0
  503. package/dist/v1-reader.js +56 -0
  504. package/dist/v1-reader.js.map +1 -0
  505. package/dist/validators/asset-index.d.ts +23 -0
  506. package/dist/validators/asset-index.d.ts.map +1 -0
  507. package/dist/validators/asset-index.js +58 -0
  508. package/dist/validators/asset-index.js.map +1 -0
  509. package/dist/validators/binary-has-part-redundancy-rule.d.ts +8 -0
  510. package/dist/validators/binary-has-part-redundancy-rule.d.ts.map +1 -0
  511. package/dist/validators/binary-has-part-redundancy-rule.js +57 -0
  512. package/dist/validators/binary-has-part-redundancy-rule.js.map +1 -0
  513. package/dist/validators/concept-validator.d.ts +21 -0
  514. package/dist/validators/concept-validator.d.ts.map +1 -0
  515. package/dist/validators/concept-validator.js +76 -0
  516. package/dist/validators/concept-validator.js.map +1 -0
  517. package/dist/validators/delimiting-coherence-rule.d.ts +8 -0
  518. package/dist/validators/delimiting-coherence-rule.d.ts.map +1 -0
  519. package/dist/validators/delimiting-coherence-rule.js +72 -0
  520. package/dist/validators/delimiting-coherence-rule.js.map +1 -0
  521. package/dist/validators/extensional-completeness.d.ts +18 -0
  522. package/dist/validators/extensional-completeness.d.ts.map +1 -0
  523. package/dist/validators/extensional-completeness.js +41 -0
  524. package/dist/validators/extensional-completeness.js.map +1 -0
  525. package/dist/validators/external-concept-shape-rule.d.ts +8 -0
  526. package/dist/validators/external-concept-shape-rule.d.ts.map +1 -0
  527. package/dist/validators/external-concept-shape-rule.js +48 -0
  528. package/dist/validators/external-concept-shape-rule.js.map +1 -0
  529. package/dist/validators/gcr-validator.d.ts +11 -0
  530. package/dist/validators/gcr-validator.d.ts.map +1 -0
  531. package/dist/validators/gcr-validator.js +76 -0
  532. package/dist/validators/gcr-validator.js.map +1 -0
  533. package/dist/validators/hyperedge-coherence-rule.d.ts +9 -0
  534. package/dist/validators/hyperedge-coherence-rule.d.ts.map +1 -0
  535. package/dist/validators/hyperedge-coherence-rule.js +78 -0
  536. package/dist/validators/hyperedge-coherence-rule.js.map +1 -0
  537. package/dist/validators/index.d.ts +21 -0
  538. package/dist/validators/index.d.ts.map +1 -0
  539. package/{src/validators/index.ts → dist/validators/index.js} +25 -51
  540. package/dist/validators/index.js.map +1 -0
  541. package/dist/validators/partitive-relation-coherence-rule.d.ts +2 -0
  542. package/dist/validators/partitive-relation-coherence-rule.d.ts.map +1 -0
  543. package/{src/validators/partitive-relation-coherence-rule.ts → dist/validators/partitive-relation-coherence-rule.js} +1 -1
  544. package/dist/validators/partitive-relation-coherence-rule.js.map +1 -0
  545. package/dist/validators/ref-keys.d.ts +8 -0
  546. package/dist/validators/ref-keys.d.ts.map +1 -0
  547. package/dist/validators/ref-keys.js +27 -0
  548. package/dist/validators/ref-keys.js.map +1 -0
  549. package/dist/validators/register-validator.d.ts +10 -0
  550. package/dist/validators/register-validator.d.ts.map +1 -0
  551. package/dist/validators/register-validator.js +18 -0
  552. package/dist/validators/register-validator.js.map +1 -0
  553. package/dist/validators/relationship-type-rule.d.ts +13 -0
  554. package/dist/validators/relationship-type-rule.d.ts.map +1 -0
  555. package/dist/validators/relationship-type-rule.js +34 -0
  556. package/dist/validators/relationship-type-rule.js.map +1 -0
  557. package/dist/validators/sourced-from-locality-rule.d.ts +8 -0
  558. package/dist/validators/sourced-from-locality-rule.d.ts.map +1 -0
  559. package/dist/validators/sourced-from-locality-rule.js +37 -0
  560. package/dist/validators/sourced-from-locality-rule.js.map +1 -0
  561. package/dist/validators/v3-rules.d.ts +60 -0
  562. package/dist/validators/v3-rules.d.ts.map +1 -0
  563. package/dist/validators/v3-rules.js +327 -0
  564. package/dist/validators/v3-rules.js.map +1 -0
  565. package/dist/validators/validation-error.d.ts +13 -0
  566. package/dist/validators/validation-error.d.ts.map +1 -0
  567. package/dist/validators/validation-error.js +17 -0
  568. package/dist/validators/validation-error.js.map +1 -0
  569. package/dist/validators/validation-result.d.ts +17 -0
  570. package/dist/validators/validation-result.d.ts.map +1 -0
  571. package/dist/validators/validation-result.js +47 -0
  572. package/dist/validators/validation-result.js.map +1 -0
  573. package/dist/validators/validation-rule.d.ts +10 -0
  574. package/dist/validators/validation-rule.d.ts.map +1 -0
  575. package/dist/validators/validation-rule.js +17 -0
  576. package/dist/validators/validation-rule.js.map +1 -0
  577. package/package.json +37 -42
  578. package/src/concept-collection.ts +0 -172
  579. package/src/concept-parser.ts +0 -235
  580. package/src/concept-reader.d.ts +0 -13
  581. package/src/concept-serializer.ts +0 -110
  582. package/src/concept-writer.d.ts +0 -7
  583. package/src/concept-writer.ts +0 -47
  584. package/src/diff/canonical-json.ts +0 -29
  585. package/src/diff/change.ts +0 -175
  586. package/src/diff/collection-diff.ts +0 -245
  587. package/src/diff/concept-diff.ts +0 -853
  588. package/src/diff/diff-patch.ts +0 -276
  589. package/src/diff/diff-renderer.ts +0 -348
  590. package/src/diff/identity.ts +0 -33
  591. package/src/diff/index.d.ts +0 -242
  592. package/src/diff/index.ts +0 -50
  593. package/src/diff/list-diff.ts +0 -231
  594. package/src/diff/similarity.ts +0 -20
  595. package/src/diff/text-diff.ts +0 -167
  596. package/src/entity-directory.ts +0 -43
  597. package/src/errors.d.ts +0 -11
  598. package/src/errors.ts +0 -24
  599. package/src/gcr-reader.d.ts +0 -65
  600. package/src/gcr-reader.ts +0 -512
  601. package/src/gcr-writer.d.ts +0 -22
  602. package/src/gcr-writer.ts +0 -99
  603. package/src/index.d.ts +0 -124
  604. package/src/index.ts +0 -92
  605. package/src/managed-concept-collection.ts +0 -130
  606. package/src/migration/hyperedge-migrator.ts +0 -104
  607. package/src/models/abstract-hyperedge.ts +0 -164
  608. package/src/models/base.ts +0 -110
  609. package/src/models/bibliography-data.ts +0 -64
  610. package/src/models/bibliography-entry.ts +0 -40
  611. package/src/models/citation.ts +0 -98
  612. package/src/models/concept-date.ts +0 -48
  613. package/src/models/concept-ref.ts +0 -64
  614. package/src/models/concept-reference.ts +0 -50
  615. package/src/models/concept-source.ts +0 -96
  616. package/src/models/concept-system-type.ts +0 -39
  617. package/src/models/concept-system.ts +0 -152
  618. package/src/models/concept.ts +0 -499
  619. package/src/models/dataset-color.ts +0 -88
  620. package/src/models/designation-relationship.ts +0 -39
  621. package/src/models/designation.ts +0 -297
  622. package/src/models/detailed-definition.ts +0 -92
  623. package/src/models/enum.ts +0 -60
  624. package/src/models/equivalence-degree.ts +0 -34
  625. package/src/models/figure.ts +0 -110
  626. package/src/models/formula.ts +0 -36
  627. package/src/models/gcr-metadata.ts +0 -118
  628. package/src/models/gcr-statistics.ts +0 -76
  629. package/src/models/generic-hyperedge.ts +0 -72
  630. package/src/models/generic-member.ts +0 -80
  631. package/src/models/grammar-info.ts +0 -78
  632. package/src/models/hyperedge-colors.ts +0 -87
  633. package/src/models/hyperedge-index.ts +0 -101
  634. package/src/models/hyperedge-member.ts +0 -121
  635. package/src/models/hyperedge-registry.ts +0 -145
  636. package/src/models/index.d.ts +0 -586
  637. package/src/models/locality.ts +0 -34
  638. package/src/models/localized-concept.ts +0 -284
  639. package/src/models/localized-string.ts +0 -32
  640. package/src/models/multiplicity.ts +0 -134
  641. package/src/models/non-verb-rep.ts +0 -48
  642. package/src/models/non-verbal-entity.ts +0 -65
  643. package/src/models/non-verbal-reference.ts +0 -73
  644. package/src/models/non-verbal-references.ts +0 -29
  645. package/src/models/partitive-enumeration.ts +0 -27
  646. package/src/models/partitive-hyperedge.ts +0 -90
  647. package/src/models/partitive-member.ts +0 -56
  648. package/src/models/plurality-marker.ts +0 -31
  649. package/src/models/pronunciation.ts +0 -40
  650. package/src/models/register.ts +0 -315
  651. package/src/models/registrable.ts +0 -48
  652. package/src/models/related-concept.ts +0 -117
  653. package/src/models/relation-categories.ts +0 -167
  654. package/src/models/relation-colors.ts +0 -90
  655. package/src/models/relation-loader.ts +0 -115
  656. package/src/models/section.ts +0 -61
  657. package/src/models/sequential-hyperedge.ts +0 -70
  658. package/src/models/shared-non-verbal-entity.ts +0 -36
  659. package/src/models/table.ts +0 -36
  660. package/src/rdf/agents-emitter.ts +0 -137
  661. package/src/rdf/bibliography-emitter.ts +0 -126
  662. package/src/rdf/bnode-id.ts +0 -55
  663. package/src/rdf/build-activity-emitter.ts +0 -129
  664. package/src/rdf/curie.ts +0 -46
  665. package/src/rdf/dataset-emitter.ts +0 -170
  666. package/src/rdf/deterministic-id.ts +0 -69
  667. package/src/rdf/document-writer.ts +0 -87
  668. package/src/rdf/gloss-concept.ts +0 -115
  669. package/src/rdf/gloss-designation.ts +0 -72
  670. package/src/rdf/gloss-detailed-definition.ts +0 -69
  671. package/src/rdf/gloss-localized-concept.ts +0 -79
  672. package/src/rdf/gloss-non-verbal-rep.ts +0 -202
  673. package/src/rdf/gloss-partitive-relation.ts +0 -89
  674. package/src/rdf/gloss-source.ts +0 -56
  675. package/src/rdf/group-emitter.ts +0 -133
  676. package/src/rdf/image-variant-emitter.ts +0 -80
  677. package/src/rdf/index.d.ts +0 -371
  678. package/src/rdf/predicates.d.ts +0 -527
  679. package/src/rdf/predicates.ts +0 -287
  680. package/src/rdf/provenance-emitter.ts +0 -87
  681. package/src/rdf/sections-builder.ts +0 -190
  682. package/src/rdf/shacl-entry.d.ts +0 -6
  683. package/src/rdf/version-emitter.ts +0 -97
  684. package/src/rdf/vocabulary-emitter.ts +0 -67
  685. package/src/rdf/write-turtle-sync.ts +0 -179
  686. package/src/reference-mention.ts +0 -114
  687. package/src/reference-resolver.ts +0 -361
  688. package/src/render-classification.ts +0 -85
  689. package/src/sort.ts +0 -22
  690. package/src/transforms/concept-to-gloss.transform.ts +0 -81
  691. package/src/transforms/index.d.ts +0 -26
  692. package/src/uuid.ts +0 -32
  693. package/src/v1-reader.ts +0 -66
  694. package/src/validators/asset-index.ts +0 -72
  695. package/src/validators/binary-has-part-redundancy-rule.ts +0 -67
  696. package/src/validators/concept-validator.ts +0 -93
  697. package/src/validators/delimiting-coherence-rule.ts +0 -105
  698. package/src/validators/external-concept-shape-rule.ts +0 -60
  699. package/src/validators/gcr-validator.ts +0 -76
  700. package/src/validators/hyperedge-coherence-rule.ts +0 -98
  701. package/src/validators/index.d.ts +0 -43
  702. package/src/validators/ref-keys.ts +0 -31
  703. package/src/validators/register-validator.ts +0 -18
  704. package/src/validators/relationship-type-rule.ts +0 -39
  705. package/src/validators/sourced-from-locality-rule.ts +0 -53
  706. package/src/validators/v3-rules.ts +0 -382
  707. package/src/validators/validation-error.ts +0 -19
  708. package/src/validators/validation-result.ts +0 -52
  709. 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
- }