@proposit/shared 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +32 -0
  3. package/dist/api-client/argument/batch.d.ts +661 -0
  4. package/dist/api-client/argument/batch.d.ts.map +1 -0
  5. package/dist/api-client/argument/batch.js +14 -0
  6. package/dist/api-client/argument/batch.js.map +1 -0
  7. package/dist/api-client/argument/claims.d.ts +175 -0
  8. package/dist/api-client/argument/claims.d.ts.map +1 -0
  9. package/dist/api-client/argument/claims.js +20 -0
  10. package/dist/api-client/argument/claims.js.map +1 -0
  11. package/dist/api-client/argument/index.d.ts +1344 -0
  12. package/dist/api-client/argument/index.d.ts.map +1 -0
  13. package/dist/api-client/argument/index.js +62 -0
  14. package/dist/api-client/argument/index.js.map +1 -0
  15. package/dist/api-client/argument/logic/index.d.ts +861 -0
  16. package/dist/api-client/argument/logic/index.d.ts.map +1 -0
  17. package/dist/api-client/argument/logic/index.js +73 -0
  18. package/dist/api-client/argument/logic/index.js.map +1 -0
  19. package/dist/api-client/argument/logic/repair.d.ts +182 -0
  20. package/dist/api-client/argument/logic/repair.d.ts.map +1 -0
  21. package/dist/api-client/argument/logic/repair.js +9 -0
  22. package/dist/api-client/argument/logic/repair.js.map +1 -0
  23. package/dist/api-client/argument/reactions.d.ts +38 -0
  24. package/dist/api-client/argument/reactions.d.ts.map +1 -0
  25. package/dist/api-client/argument/reactions.js +9 -0
  26. package/dist/api-client/argument/reactions.js.map +1 -0
  27. package/dist/api-client/argument/reviews.d.ts +183 -0
  28. package/dist/api-client/argument/reviews.d.ts.map +1 -0
  29. package/dist/api-client/argument/reviews.js +21 -0
  30. package/dist/api-client/argument/reviews.js.map +1 -0
  31. package/dist/api-client/search.d.ts +64 -0
  32. package/dist/api-client/search.d.ts.map +1 -0
  33. package/dist/api-client/search.js +19 -0
  34. package/dist/api-client/search.js.map +1 -0
  35. package/dist/api-client/user/claims.d.ts +128 -0
  36. package/dist/api-client/user/claims.d.ts.map +1 -0
  37. package/dist/api-client/user/claims.js +10 -0
  38. package/dist/api-client/user/claims.js.map +1 -0
  39. package/dist/api-client/user/sources.d.ts +41 -0
  40. package/dist/api-client/user/sources.d.ts.map +1 -0
  41. package/dist/api-client/user/sources.js +7 -0
  42. package/dist/api-client/user/sources.js.map +1 -0
  43. package/dist/checksum.d.ts +2 -0
  44. package/dist/checksum.d.ts.map +1 -0
  45. package/dist/checksum.js +32 -0
  46. package/dist/checksum.js.map +1 -0
  47. package/dist/consts/argument.d.ts +9 -0
  48. package/dist/consts/argument.d.ts.map +1 -0
  49. package/dist/consts/argument.js +17 -0
  50. package/dist/consts/argument.js.map +1 -0
  51. package/dist/consts/identity.d.ts +3 -0
  52. package/dist/consts/identity.d.ts.map +1 -0
  53. package/dist/consts/identity.js +6 -0
  54. package/dist/consts/identity.js.map +1 -0
  55. package/dist/consts/index.d.ts +6 -0
  56. package/dist/consts/index.d.ts.map +1 -0
  57. package/dist/consts/index.js +6 -0
  58. package/dist/consts/index.js.map +1 -0
  59. package/dist/consts/roles.d.ts +27 -0
  60. package/dist/consts/roles.d.ts.map +1 -0
  61. package/dist/consts/roles.js +52 -0
  62. package/dist/consts/roles.js.map +1 -0
  63. package/dist/consts/task-status.d.ts +8 -0
  64. package/dist/consts/task-status.d.ts.map +1 -0
  65. package/dist/consts/task-status.js +14 -0
  66. package/dist/consts/task-status.js.map +1 -0
  67. package/dist/consts/user-tiers.d.ts +7 -0
  68. package/dist/consts/user-tiers.d.ts.map +1 -0
  69. package/dist/consts/user-tiers.js +60 -0
  70. package/dist/consts/user-tiers.js.map +1 -0
  71. package/dist/engine/engine.d.ts +94 -0
  72. package/dist/engine/engine.d.ts.map +1 -0
  73. package/dist/engine/engine.js +313 -0
  74. package/dist/engine/engine.js.map +1 -0
  75. package/dist/engine/library-adapters.d.ts +12 -0
  76. package/dist/engine/library-adapters.d.ts.map +1 -0
  77. package/dist/engine/library-adapters.js +11 -0
  78. package/dist/engine/library-adapters.js.map +1 -0
  79. package/dist/engine/mutations/claims.d.ts +10 -0
  80. package/dist/engine/mutations/claims.d.ts.map +1 -0
  81. package/dist/engine/mutations/claims.js +22 -0
  82. package/dist/engine/mutations/claims.js.map +1 -0
  83. package/dist/engine/mutations/expressions.d.ts +109 -0
  84. package/dist/engine/mutations/expressions.d.ts.map +1 -0
  85. package/dist/engine/mutations/expressions.js +277 -0
  86. package/dist/engine/mutations/expressions.js.map +1 -0
  87. package/dist/engine/mutations/index.d.ts +7 -0
  88. package/dist/engine/mutations/index.d.ts.map +1 -0
  89. package/dist/engine/mutations/index.js +6 -0
  90. package/dist/engine/mutations/index.js.map +1 -0
  91. package/dist/engine/mutations/premises.d.ts +25 -0
  92. package/dist/engine/mutations/premises.d.ts.map +1 -0
  93. package/dist/engine/mutations/premises.js +51 -0
  94. package/dist/engine/mutations/premises.js.map +1 -0
  95. package/dist/engine/mutations/types.d.ts +11 -0
  96. package/dist/engine/mutations/types.d.ts.map +1 -0
  97. package/dist/engine/mutations/types.js +2 -0
  98. package/dist/engine/mutations/types.js.map +1 -0
  99. package/dist/engine/mutations/variables.d.ts +27 -0
  100. package/dist/engine/mutations/variables.d.ts.map +1 -0
  101. package/dist/engine/mutations/variables.js +16 -0
  102. package/dist/engine/mutations/variables.js.map +1 -0
  103. package/dist/engine/optimistic/index.d.ts +4 -0
  104. package/dist/engine/optimistic/index.d.ts.map +1 -0
  105. package/dist/engine/optimistic/index.js +3 -0
  106. package/dist/engine/optimistic/index.js.map +1 -0
  107. package/dist/engine/optimistic/reconciliation.d.ts +32 -0
  108. package/dist/engine/optimistic/reconciliation.d.ts.map +1 -0
  109. package/dist/engine/optimistic/reconciliation.js +140 -0
  110. package/dist/engine/optimistic/reconciliation.js.map +1 -0
  111. package/dist/engine/optimistic/types.d.ts +25 -0
  112. package/dist/engine/optimistic/types.d.ts.map +1 -0
  113. package/dist/engine/optimistic/types.js +12 -0
  114. package/dist/engine/optimistic/types.js.map +1 -0
  115. package/dist/engine/optimistic/verification.d.ts +13 -0
  116. package/dist/engine/optimistic/verification.d.ts.map +1 -0
  117. package/dist/engine/optimistic/verification.js +71 -0
  118. package/dist/engine/optimistic/verification.js.map +1 -0
  119. package/dist/engine/review/evaluation.d.ts +27 -0
  120. package/dist/engine/review/evaluation.d.ts.map +1 -0
  121. package/dist/engine/review/evaluation.js +122 -0
  122. package/dist/engine/review/evaluation.js.map +1 -0
  123. package/dist/engine/review/fingerprint.d.ts +9 -0
  124. package/dist/engine/review/fingerprint.d.ts.map +1 -0
  125. package/dist/engine/review/fingerprint.js +27 -0
  126. package/dist/engine/review/fingerprint.js.map +1 -0
  127. package/dist/engine/review/overlay.d.ts +19 -0
  128. package/dist/engine/review/overlay.d.ts.map +1 -0
  129. package/dist/engine/review/overlay.js +81 -0
  130. package/dist/engine/review/overlay.js.map +1 -0
  131. package/dist/engine/review/reasons.d.ts +15 -0
  132. package/dist/engine/review/reasons.d.ts.map +1 -0
  133. package/dist/engine/review/reasons.js +211 -0
  134. package/dist/engine/review/reasons.js.map +1 -0
  135. package/dist/engine/review/review-engine.d.ts +134 -0
  136. package/dist/engine/review/review-engine.d.ts.map +1 -0
  137. package/dist/engine/review/review-engine.js +590 -0
  138. package/dist/engine/review/review-engine.js.map +1 -0
  139. package/dist/engine/review/review-store.d.ts +63 -0
  140. package/dist/engine/review/review-store.d.ts.map +1 -0
  141. package/dist/engine/review/review-store.js +174 -0
  142. package/dist/engine/review/review-store.js.map +1 -0
  143. package/dist/engine/review/step-queue.d.ts +27 -0
  144. package/dist/engine/review/step-queue.d.ts.map +1 -0
  145. package/dist/engine/review/step-queue.js +34 -0
  146. package/dist/engine/review/step-queue.js.map +1 -0
  147. package/dist/engine/review/types.d.ts +16 -0
  148. package/dist/engine/review/types.d.ts.map +1 -0
  149. package/dist/engine/review/types.js +2 -0
  150. package/dist/engine/review/types.js.map +1 -0
  151. package/dist/engine/review/wire.d.ts +8 -0
  152. package/dist/engine/review/wire.d.ts.map +1 -0
  153. package/dist/engine/review/wire.js +97 -0
  154. package/dist/engine/review/wire.js.map +1 -0
  155. package/dist/engine/text-tree.d.ts +35 -0
  156. package/dist/engine/text-tree.d.ts.map +1 -0
  157. package/dist/engine/text-tree.js +137 -0
  158. package/dist/engine/text-tree.js.map +1 -0
  159. package/dist/engine/types.d.ts +42 -0
  160. package/dist/engine/types.d.ts.map +1 -0
  161. package/dist/engine/types.js +2 -0
  162. package/dist/engine/types.js.map +1 -0
  163. package/dist/errors.d.ts +27 -0
  164. package/dist/errors.d.ts.map +1 -0
  165. package/dist/errors.js +61 -0
  166. package/dist/errors.js.map +1 -0
  167. package/dist/schemas/api/argument/batch/change-edge-operator.d.ts +281 -0
  168. package/dist/schemas/api/argument/batch/change-edge-operator.d.ts.map +1 -0
  169. package/dist/schemas/api/argument/batch/change-edge-operator.js +19 -0
  170. package/dist/schemas/api/argument/batch/change-edge-operator.js.map +1 -0
  171. package/dist/schemas/api/argument/batch/create-expression-with-operator.d.ts +280 -0
  172. package/dist/schemas/api/argument/batch/create-expression-with-operator.d.ts.map +1 -0
  173. package/dist/schemas/api/argument/batch/create-expression-with-operator.js +22 -0
  174. package/dist/schemas/api/argument/batch/create-expression-with-operator.js.map +1 -0
  175. package/dist/schemas/api/argument/batch/provision.d.ts +112 -0
  176. package/dist/schemas/api/argument/batch/provision.d.ts.map +1 -0
  177. package/dist/schemas/api/argument/batch/provision.js +10 -0
  178. package/dist/schemas/api/argument/batch/provision.js.map +1 -0
  179. package/dist/schemas/api/argument/build.d.ts +50 -0
  180. package/dist/schemas/api/argument/build.d.ts.map +1 -0
  181. package/dist/schemas/api/argument/build.js +41 -0
  182. package/dist/schemas/api/argument/build.js.map +1 -0
  183. package/dist/schemas/api/argument/claims.d.ts +151 -0
  184. package/dist/schemas/api/argument/claims.d.ts.map +1 -0
  185. package/dist/schemas/api/argument/claims.js +24 -0
  186. package/dist/schemas/api/argument/claims.js.map +1 -0
  187. package/dist/schemas/api/argument/index.d.ts +682 -0
  188. package/dist/schemas/api/argument/index.d.ts.map +1 -0
  189. package/dist/schemas/api/argument/index.js +51 -0
  190. package/dist/schemas/api/argument/index.js.map +1 -0
  191. package/dist/schemas/api/argument/logic.d.ts +205 -0
  192. package/dist/schemas/api/argument/logic.d.ts.map +1 -0
  193. package/dist/schemas/api/argument/logic.js +77 -0
  194. package/dist/schemas/api/argument/logic.js.map +1 -0
  195. package/dist/schemas/api/argument/repair.d.ts +195 -0
  196. package/dist/schemas/api/argument/repair.d.ts.map +1 -0
  197. package/dist/schemas/api/argument/repair.js +35 -0
  198. package/dist/schemas/api/argument/repair.js.map +1 -0
  199. package/dist/schemas/api/claims.d.ts +250 -0
  200. package/dist/schemas/api/claims.d.ts.map +1 -0
  201. package/dist/schemas/api/claims.js +20 -0
  202. package/dist/schemas/api/claims.js.map +1 -0
  203. package/dist/schemas/api/reaction/index.d.ts +46 -0
  204. package/dist/schemas/api/reaction/index.d.ts.map +1 -0
  205. package/dist/schemas/api/reaction/index.js +15 -0
  206. package/dist/schemas/api/reaction/index.js.map +1 -0
  207. package/dist/schemas/api/review/index.d.ts +164 -0
  208. package/dist/schemas/api/review/index.d.ts.map +1 -0
  209. package/dist/schemas/api/review/index.js +29 -0
  210. package/dist/schemas/api/review/index.js.map +1 -0
  211. package/dist/schemas/api/search.d.ts +109 -0
  212. package/dist/schemas/api/search.d.ts.map +1 -0
  213. package/dist/schemas/api/search.js +60 -0
  214. package/dist/schemas/api/search.js.map +1 -0
  215. package/dist/schemas/api/sources.d.ts +108 -0
  216. package/dist/schemas/api/sources.d.ts.map +1 -0
  217. package/dist/schemas/api/sources.js +28 -0
  218. package/dist/schemas/api/sources.js.map +1 -0
  219. package/dist/schemas/api/user/index.d.ts +16 -0
  220. package/dist/schemas/api/user/index.d.ts.map +1 -0
  221. package/dist/schemas/api/user/index.js +15 -0
  222. package/dist/schemas/api/user/index.js.map +1 -0
  223. package/dist/schemas/common.d.ts +50 -0
  224. package/dist/schemas/common.d.ts.map +1 -0
  225. package/dist/schemas/common.js +77 -0
  226. package/dist/schemas/common.js.map +1 -0
  227. package/dist/schemas/gpt.d.ts +10 -0
  228. package/dist/schemas/gpt.d.ts.map +1 -0
  229. package/dist/schemas/gpt.js +27 -0
  230. package/dist/schemas/gpt.js.map +1 -0
  231. package/dist/schemas/index.d.ts +8 -0
  232. package/dist/schemas/index.d.ts.map +1 -0
  233. package/dist/schemas/index.js +8 -0
  234. package/dist/schemas/index.js.map +1 -0
  235. package/dist/schemas/integrations/index.d.ts +159 -0
  236. package/dist/schemas/integrations/index.d.ts.map +1 -0
  237. package/dist/schemas/integrations/index.js +72 -0
  238. package/dist/schemas/integrations/index.js.map +1 -0
  239. package/dist/schemas/logic.d.ts +195 -0
  240. package/dist/schemas/logic.d.ts.map +1 -0
  241. package/dist/schemas/logic.js +77 -0
  242. package/dist/schemas/logic.js.map +1 -0
  243. package/dist/schemas/model/arguments.d.ts +457 -0
  244. package/dist/schemas/model/arguments.d.ts.map +1 -0
  245. package/dist/schemas/model/arguments.js +100 -0
  246. package/dist/schemas/model/arguments.js.map +1 -0
  247. package/dist/schemas/model/claims.d.ts +53 -0
  248. package/dist/schemas/model/claims.d.ts.map +1 -0
  249. package/dist/schemas/model/claims.js +40 -0
  250. package/dist/schemas/model/claims.js.map +1 -0
  251. package/dist/schemas/model/forks.d.ts +63 -0
  252. package/dist/schemas/model/forks.d.ts.map +1 -0
  253. package/dist/schemas/model/forks.js +63 -0
  254. package/dist/schemas/model/forks.js.map +1 -0
  255. package/dist/schemas/model/index.d.ts +6 -0
  256. package/dist/schemas/model/index.d.ts.map +1 -0
  257. package/dist/schemas/model/index.js +6 -0
  258. package/dist/schemas/model/index.js.map +1 -0
  259. package/dist/schemas/model/references.d.ts +49 -0
  260. package/dist/schemas/model/references.d.ts.map +1 -0
  261. package/dist/schemas/model/references.js +46 -0
  262. package/dist/schemas/model/references.js.map +1 -0
  263. package/dist/schemas/model/review.d.ts +56 -0
  264. package/dist/schemas/model/review.d.ts.map +1 -0
  265. package/dist/schemas/model/review.js +50 -0
  266. package/dist/schemas/model/review.js.map +1 -0
  267. package/dist/schemas/model/sources.d.ts +456 -0
  268. package/dist/schemas/model/sources.d.ts.map +1 -0
  269. package/dist/schemas/model/sources.js +27 -0
  270. package/dist/schemas/model/sources.js.map +1 -0
  271. package/dist/schemas/model/users.d.ts +150 -0
  272. package/dist/schemas/model/users.d.ts.map +1 -0
  273. package/dist/schemas/model/users.js +136 -0
  274. package/dist/schemas/model/users.js.map +1 -0
  275. package/dist/schemas/model.d.ts +2 -0
  276. package/dist/schemas/model.d.ts.map +1 -0
  277. package/dist/schemas/model.js +2 -0
  278. package/dist/schemas/model.js.map +1 -0
  279. package/dist/schemas/review.d.ts +1403 -0
  280. package/dist/schemas/review.d.ts.map +1 -0
  281. package/dist/schemas/review.js +232 -0
  282. package/dist/schemas/review.js.map +1 -0
  283. package/dist/schemas/snapshot.d.ts +165 -0
  284. package/dist/schemas/snapshot.d.ts.map +1 -0
  285. package/dist/schemas/snapshot.js +80 -0
  286. package/dist/schemas/snapshot.js.map +1 -0
  287. package/dist/schemas/tasks.d.ts +551 -0
  288. package/dist/schemas/tasks.d.ts.map +1 -0
  289. package/dist/schemas/tasks.js +113 -0
  290. package/dist/schemas/tasks.js.map +1 -0
  291. package/dist/utils/embedding-text.d.ts +15 -0
  292. package/dist/utils/embedding-text.d.ts.map +1 -0
  293. package/dist/utils/embedding-text.js +86 -0
  294. package/dist/utils/embedding-text.js.map +1 -0
  295. package/dist/utils/format-review-share.d.ts +7 -0
  296. package/dist/utils/format-review-share.d.ts.map +1 -0
  297. package/dist/utils/format-review-share.js +16 -0
  298. package/dist/utils/format-review-share.js.map +1 -0
  299. package/dist/utils/index.d.ts +4 -0
  300. package/dist/utils/index.d.ts.map +1 -0
  301. package/dist/utils/index.js +4 -0
  302. package/dist/utils/index.js.map +1 -0
  303. package/dist/utils/tasks/utils.d.ts +4 -0
  304. package/dist/utils/tasks/utils.d.ts.map +1 -0
  305. package/dist/utils/tasks/utils.js +12 -0
  306. package/dist/utils/tasks/utils.js.map +1 -0
  307. package/dist/utils/utils.d.ts +25 -0
  308. package/dist/utils/utils.d.ts.map +1 -0
  309. package/dist/utils/utils.js +115 -0
  310. package/dist/utils/utils.js.map +1 -0
  311. package/package.json +128 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-tiers.js","sourceRoot":"","sources":["../../src/consts/user-tiers.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,wEAAwE;AACxE,uEAAuE;AACvE,oCAAoC;AACpC,yDAAyD;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAMrD,MAAM,CAAC,MAAM,aAAa,GAAmC;IACzD,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,YAAY;IACpC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM;IACxB,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,SAAS;IAC9B,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,YAAY;IACpC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,QAAQ;IAC5B,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,aAAa;IACtC,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,cAAc;CACxC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAA4C;IACnE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;QACpB,YAAY,EAAE,CAAC;QACf,mBAAmB,EAAE,CAAC;QACtB,gBAAgB,EAAE,CAAC;QACnB,iBAAiB,EAAE,CAAC;KACvB;IACD,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;QACd,YAAY,EAAE,EAAE;QAChB,mBAAmB,EAAE,EAAE;QACvB,gBAAgB,EAAE,GAAG;QACrB,iBAAiB,EAAE,MAAM;KAC5B;IACD,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;QACjB,YAAY,EAAE,IAAI;QAClB,mBAAmB,EAAE,EAAE;QACvB,gBAAgB,EAAE,GAAG;QACrB,iBAAiB,EAAE,OAAO;KAC7B;IACD,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;QACpB,YAAY,EAAE,OAAO;QACrB,mBAAmB,EAAE,KAAK;QAC1B,gBAAgB,EAAE,KAAK;QACvB,iBAAiB,EAAE,UAAU;KAChC;IACD,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;QAChB,YAAY,EAAE,CAAC;QACf,mBAAmB,EAAE,CAAC;QACtB,gBAAgB,EAAE,CAAC;QACnB,iBAAiB,EAAE,CAAC;KACvB;IACD,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE;QACrB,YAAY,EAAE,CAAC;QACf,mBAAmB,EAAE,CAAC;QACtB,gBAAgB,EAAE,CAAC;QACnB,iBAAiB,EAAE,CAAC;KACvB;IACD,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;QACnB,YAAY,EAAE,EAAE;QAChB,mBAAmB,EAAE,EAAE;QACvB,gBAAgB,EAAE,GAAG;QACrB,iBAAiB,EAAE,CAAC;KACvB;CACJ,CAAA"}
@@ -0,0 +1,94 @@
1
+ import { ArgumentEngine, type TArgumentEngineSnapshot, type TCoreValidationIssue, type TReactiveSnapshot } from "@proposit/proposit-core";
2
+ import type { TArgument } from "../schemas/model/arguments.js";
3
+ import type { TPropositionalExpressionCombined, TPropositionalPremise, TPropositionalVariable } from "../schemas/logic.js";
4
+ import type { TClaim } from "../schemas/model/claims.js";
5
+ import type { TSourceNotStrict } from "../schemas/model/sources.js";
6
+ import type { TClaimSource } from "../schemas/model/sources.js";
7
+ /** Project-parameterized snapshot type used to bridge TypeBox schemas and core engine. */
8
+ export type TProjectSnapshot = TArgumentEngineSnapshot<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable>;
9
+ /**
10
+ * Extended reactive snapshot that includes domain-specific data alongside core engine state.
11
+ * Domain sources are stored in `domainSources` (not `sources`) because the core's
12
+ * `sources` field is typed as `Record<string, TCoreSource>` and our domain TSourceNotStrict
13
+ * is not structurally compatible. The core fields `variableSourceAssociations` and
14
+ * `expressionSourceAssociations` pass through from the base and will be empty until
15
+ * core source associations are used.
16
+ *
17
+ * `claims` and `claimSources` hold the domain-level claim data managed by proposit-server.
18
+ */
19
+ export type TProjectReactiveSnapshot = TReactiveSnapshot<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable> & {
20
+ claims: Record<string, TClaim>;
21
+ domainSources: Record<string, TSourceNotStrict>;
22
+ claimSources: Record<string, TClaimSource[]>;
23
+ validationIssues: TCoreValidationIssue[];
24
+ };
25
+ /**
26
+ * Project-specific extension of ArgumentEngine that manages domain data
27
+ * (claims, sources, claim-source relations) alongside the core
28
+ * propositional logic state.
29
+ *
30
+ * Mutations to domain data trigger reactive notifications via the inherited
31
+ * subscribe/getSnapshot protocol, enabling seamless integration with
32
+ * React's useSyncExternalStore.
33
+ */
34
+ export declare class PropositArgumentEngine extends ArgumentEngine<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable> {
35
+ private claimsMap;
36
+ private sourcesMap;
37
+ private claimSourcesMap;
38
+ private claimContext;
39
+ constructor(...args: ConstructorParameters<typeof ArgumentEngine<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable>>);
40
+ /**
41
+ * Overrides base rollback() to temporarily enable permissive claim stubs
42
+ * during the validate() call that rollback() performs internally.
43
+ *
44
+ * In proposit-core 0.8.0+, rollback() calls validate() which checks that
45
+ * every claim-bound variable's (claimId, claimVersion) exists in the claim
46
+ * library. When the engine is loaded from a server snapshot and the caller
47
+ * does not supply the full claims array (common in tests), this would fail.
48
+ *
49
+ * Permissive stubs are ONLY active during rollback's validate() pass:
50
+ * - addVariable() explicit check: claimContext.permissiveForRestore = false
51
+ * (addVariable is not called inside rollbackInternal)
52
+ * - validate() inside rollback(): permissiveForRestore = true
53
+ */
54
+ rollback(snapshot: Parameters<InstanceType<typeof ArgumentEngine<TArgument, TPropositionalPremise, TPropositionalExpressionCombined, TPropositionalVariable>>["rollback"]>[0]): void;
55
+ private claimsDirty;
56
+ private sourcesDirty;
57
+ private claimSourcesDirty;
58
+ private cachedClaims;
59
+ private cachedSources;
60
+ private cachedClaimSources;
61
+ private cachedProjectSnapshot;
62
+ private lastBaseSnapshot;
63
+ private getClaimsRecord;
64
+ private getSourcesRecord;
65
+ private getClaimSourcesRecord;
66
+ getProjectSnapshot(): TProjectReactiveSnapshot;
67
+ getClaim(id: string): TClaim | undefined;
68
+ getClaims(): Record<string, TClaim>;
69
+ setClaim(claim: TClaim): void;
70
+ removeClaim(id: string): void;
71
+ getDomainSource(id: string): TSourceNotStrict | undefined;
72
+ getDomainSources(): Record<string, TSourceNotStrict>;
73
+ setDomainSource(source: TSourceNotStrict): void;
74
+ removeDomainSource(id: string): void;
75
+ getSourcesForClaim(claimId: string): TClaimSource[];
76
+ getClaimSources(): Record<string, TClaimSource[]>;
77
+ addClaimSource(cs: TClaimSource): void;
78
+ removeClaimSource(claimId: string, sourceId: string): void;
79
+ /**
80
+ * Restricts forking to published arguments only.
81
+ * Overrides the base class default which returns true unconditionally.
82
+ */
83
+ canFork(): boolean;
84
+ protected buildReactiveSnapshot(): TProjectReactiveSnapshot;
85
+ /**
86
+ * Creates a PropositArgumentEngine from server-provided data: an engine
87
+ * snapshot (for logic state) plus arrays of claims, sources, and
88
+ * claim-source relations.
89
+ *
90
+ * Does NOT trigger reactive notifications during initial data loading.
91
+ */
92
+ static fromServerData(snapshot: TProjectSnapshot, claims: TClaim[], domainSources: TSourceNotStrict[], claimSources: TClaimSource[]): PropositArgumentEngine;
93
+ }
94
+ //# sourceMappingURL=engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,313 @@
1
+ import { ArgumentEngine, InvariantViolationError, } from "@proposit/proposit-core";
2
+ import { CHECKSUM_CONFIG } from "../checksum.js";
3
+ import { createClaimLookup, createSourceLookup, EMPTY_CLAIM_SOURCE_LOOKUP, } from "./library-adapters.js";
4
+ /**
5
+ * Project-specific extension of ArgumentEngine that manages domain data
6
+ * (claims, sources, claim-source relations) alongside the core
7
+ * propositional logic state.
8
+ *
9
+ * Mutations to domain data trigger reactive notifications via the inherited
10
+ * subscribe/getSnapshot protocol, enabling seamless integration with
11
+ * React's useSyncExternalStore.
12
+ */
13
+ export class PropositArgumentEngine extends ArgumentEngine {
14
+ // Internal storage — claimsMap also backs the base class's claimLibrary
15
+ // so that setClaim() makes new claims visible to addVariable() validation.
16
+ claimsMap;
17
+ sourcesMap = new Map();
18
+ claimSourcesMap = new Map();
19
+ // Shared context object that is captured by the mutableLookup closure
20
+ // and also accessible after construction so the rollback() override can
21
+ // temporarily enable permissive claim stubs (see rollback() below).
22
+ // Declared before super() — it must exist for the closure to capture it.
23
+ // The type annotation is a plain object to satisfy TS before this exists.
24
+ claimContext;
25
+ constructor(...args) {
26
+ const [argument, claimLookup, sourceLookup, claimSourceLookup, options,] = args;
27
+ // Create the shared claims map before super() so we can build a
28
+ // live lookup that the base class stores as this.claimLibrary.
29
+ const claimsMap = new Map();
30
+ const toCoreClaim = (c) => ({
31
+ id: c.id,
32
+ version: c.version,
33
+ frozen: false,
34
+ checksum: "",
35
+ });
36
+ // claimContext must be created before super() so the mutableLookup
37
+ // closure can capture it. We assign it to this.claimContext after
38
+ // super() returns so the rollback() override can access it.
39
+ const claimContext = { permissiveForRestore: false };
40
+ const mutableLookup = {
41
+ get(id, version) {
42
+ // Check the live map first (covers dynamically-added claims),
43
+ // then fall back to the original lookup (initial construction data).
44
+ const c = claimsMap.get(id);
45
+ if (c?.version === version)
46
+ return toCoreClaim(c);
47
+ const orig = claimLookup.get(id, version);
48
+ if (orig)
49
+ return toCoreClaim(orig);
50
+ // During snapshot rollback (restoring from server data), return
51
+ // a stub so validate() passes for claim references not present
52
+ // in the supplied claims array. This allows fromServerData to
53
+ // work when claims are omitted or incomplete. Normal mutations
54
+ // (addVariable) still check the lookup — but addVariable is not
55
+ // called during rollbackInternal, only validate() is.
56
+ if (claimContext.permissiveForRestore) {
57
+ return { id, version, frozen: false, checksum: "" };
58
+ }
59
+ return undefined;
60
+ },
61
+ };
62
+ super(argument, mutableLookup, sourceLookup, claimSourceLookup, options);
63
+ this.claimsMap = claimsMap;
64
+ this.claimContext = claimContext;
65
+ }
66
+ // ──── Rollback override for permissive claim stubs ────
67
+ /**
68
+ * Overrides base rollback() to temporarily enable permissive claim stubs
69
+ * during the validate() call that rollback() performs internally.
70
+ *
71
+ * In proposit-core 0.8.0+, rollback() calls validate() which checks that
72
+ * every claim-bound variable's (claimId, claimVersion) exists in the claim
73
+ * library. When the engine is loaded from a server snapshot and the caller
74
+ * does not supply the full claims array (common in tests), this would fail.
75
+ *
76
+ * Permissive stubs are ONLY active during rollback's validate() pass:
77
+ * - addVariable() explicit check: claimContext.permissiveForRestore = false
78
+ * (addVariable is not called inside rollbackInternal)
79
+ * - validate() inside rollback(): permissiveForRestore = true
80
+ */
81
+ rollback(snapshot) {
82
+ this.claimContext.permissiveForRestore = true;
83
+ try {
84
+ super.rollback(snapshot);
85
+ }
86
+ finally {
87
+ this.claimContext.permissiveForRestore = false;
88
+ }
89
+ }
90
+ // Dirty tracking for structural sharing
91
+ claimsDirty = true;
92
+ sourcesDirty = true;
93
+ claimSourcesDirty = true;
94
+ // Cached records for reactive snapshot
95
+ cachedClaims = {};
96
+ cachedSources = {};
97
+ cachedClaimSources = {};
98
+ // Full combined snapshot cache (for useSyncExternalStore referential stability)
99
+ cachedProjectSnapshot;
100
+ lastBaseSnapshot;
101
+ // ──── Private cache helpers ────
102
+ getClaimsRecord() {
103
+ if (this.claimsDirty) {
104
+ this.cachedClaims = Object.fromEntries(this.claimsMap);
105
+ this.claimsDirty = false;
106
+ }
107
+ return this.cachedClaims;
108
+ }
109
+ getSourcesRecord() {
110
+ if (this.sourcesDirty) {
111
+ this.cachedSources = Object.fromEntries(this.sourcesMap);
112
+ this.sourcesDirty = false;
113
+ }
114
+ return this.cachedSources;
115
+ }
116
+ getClaimSourcesRecord() {
117
+ if (this.claimSourcesDirty) {
118
+ this.cachedClaimSources = Object.fromEntries(this.claimSourcesMap);
119
+ this.claimSourcesDirty = false;
120
+ }
121
+ return this.cachedClaimSources;
122
+ }
123
+ // ──── Typed snapshot accessor ────
124
+ getProjectSnapshot() {
125
+ return this.getSnapshot();
126
+ }
127
+ // ──── Claim accessors ────
128
+ getClaim(id) {
129
+ return this.claimsMap.get(id);
130
+ }
131
+ getClaims() {
132
+ return this.getClaimsRecord();
133
+ }
134
+ setClaim(claim) {
135
+ this.claimsMap.set(claim.id, claim);
136
+ this.claimsDirty = true;
137
+ this.notifySubscribers();
138
+ }
139
+ removeClaim(id) {
140
+ if (this.claimsMap.delete(id)) {
141
+ this.claimsDirty = true;
142
+ this.notifySubscribers();
143
+ }
144
+ }
145
+ // ──── Domain source accessors ────
146
+ // Named with "Domain" prefix to avoid shadowing core's SourceManager
147
+ // methods (getSource, getSources, removeSource). Domain sources are
148
+ // managed at the proposit-server level, not through proposit-core.
149
+ getDomainSource(id) {
150
+ return this.sourcesMap.get(id);
151
+ }
152
+ getDomainSources() {
153
+ return this.getSourcesRecord();
154
+ }
155
+ setDomainSource(source) {
156
+ this.sourcesMap.set(source.id, source);
157
+ this.sourcesDirty = true;
158
+ this.notifySubscribers();
159
+ }
160
+ removeDomainSource(id) {
161
+ if (this.sourcesMap.delete(id)) {
162
+ this.sourcesDirty = true;
163
+ this.notifySubscribers();
164
+ }
165
+ }
166
+ // ──── ClaimSource accessors ────
167
+ getSourcesForClaim(claimId) {
168
+ return this.claimSourcesMap.get(claimId) ?? [];
169
+ }
170
+ getClaimSources() {
171
+ return { ...this.getClaimSourcesRecord() };
172
+ }
173
+ addClaimSource(cs) {
174
+ const existing = this.claimSourcesMap.get(cs.claimId) ?? [];
175
+ this.claimSourcesMap.set(cs.claimId, [...existing, cs]);
176
+ this.claimSourcesDirty = true;
177
+ this.notifySubscribers();
178
+ }
179
+ removeClaimSource(claimId, sourceId) {
180
+ const existing = this.claimSourcesMap.get(claimId);
181
+ if (!existing)
182
+ return;
183
+ const filtered = existing.filter((s) => s.sourceId !== sourceId);
184
+ if (filtered.length === existing.length)
185
+ return;
186
+ if (filtered.length > 0) {
187
+ this.claimSourcesMap.set(claimId, filtered);
188
+ }
189
+ else {
190
+ this.claimSourcesMap.delete(claimId);
191
+ }
192
+ this.claimSourcesDirty = true;
193
+ this.notifySubscribers();
194
+ }
195
+ // ──── canFork override ────
196
+ /**
197
+ * Restricts forking to published arguments only.
198
+ * Overrides the base class default which returns true unconditionally.
199
+ */
200
+ canFork() {
201
+ const arg = this.getArgument();
202
+ return arg?.published === true;
203
+ }
204
+ // ──── Reactive snapshot override ────
205
+ buildReactiveSnapshot() {
206
+ const base = super.buildReactiveSnapshot();
207
+ const claims = this.getClaimsRecord();
208
+ const domainSources = this.getSourcesRecord();
209
+ const claimSources = this.getClaimSourcesRecord();
210
+ // Recompute validation when base engine snapshot changes
211
+ let validationIssues;
212
+ if (base !== this.lastBaseSnapshot) {
213
+ const evaluability = this.validateEvaluability().issues;
214
+ const invariants = this.validate();
215
+ const mappedViolations = invariants.ok
216
+ ? []
217
+ : invariants.violations.map((v) => ({
218
+ code: v.code,
219
+ severity: "error",
220
+ message: v.message,
221
+ premiseId: v.premiseId,
222
+ }));
223
+ validationIssues = [...evaluability, ...mappedViolations];
224
+ }
225
+ else {
226
+ validationIssues =
227
+ this.cachedProjectSnapshot?.validationIssues ?? [];
228
+ }
229
+ // Return cached snapshot if neither the base nor domain data changed
230
+ // (preserves referential equality for useSyncExternalStore).
231
+ if (this.cachedProjectSnapshot &&
232
+ base === this.lastBaseSnapshot &&
233
+ claims === this.cachedProjectSnapshot.claims &&
234
+ domainSources === this.cachedProjectSnapshot.domainSources &&
235
+ claimSources === this.cachedProjectSnapshot.claimSources) {
236
+ return this.cachedProjectSnapshot;
237
+ }
238
+ const snapshot = {
239
+ ...base,
240
+ claims,
241
+ domainSources,
242
+ claimSources,
243
+ validationIssues,
244
+ };
245
+ this.cachedProjectSnapshot = snapshot;
246
+ this.lastBaseSnapshot = base;
247
+ return snapshot;
248
+ }
249
+ // ──── Static factory ────
250
+ /**
251
+ * Creates a PropositArgumentEngine from server-provided data: an engine
252
+ * snapshot (for logic state) plus arrays of claims, sources, and
253
+ * claim-source relations.
254
+ *
255
+ * Does NOT trigger reactive notifications during initial data loading.
256
+ */
257
+ static fromServerData(snapshot, claims, domainSources, claimSources) {
258
+ const claimLookup = createClaimLookup(claims);
259
+ const sourceLookup = createSourceLookup(domainSources);
260
+ const engine = new PropositArgumentEngine(snapshot.argument, claimLookup, sourceLookup, EMPTY_CLAIM_SOURCE_LOOKUP, {
261
+ checksumConfig: CHECKSUM_CONFIG,
262
+ positionConfig: snapshot.config?.positionConfig,
263
+ grammarConfig: {
264
+ autoNormalize: false,
265
+ enforceFormulaBetweenOperators: true,
266
+ },
267
+ generateId: () => crypto.randomUUID(),
268
+ });
269
+ // Restore engine state from the snapshot.
270
+ // Populate variables.config so that rollbackInternal creates a
271
+ // VariableManager with the correct checksumConfig. Without this,
272
+ // VariableManager.fromSnapshot() is called with no config and falls
273
+ // back to DEFAULT_CHECKSUM_CONFIG, causing checksum mismatches when
274
+ // the server's CHECKSUM_CONFIG includes extra fields (createdOn, etc.).
275
+ //
276
+ // NOTE: rollback() is overridden in PropositArgumentEngine to set
277
+ // claimContext.permissiveForRestore = true during the validate() call,
278
+ // so unknown claim references in the snapshot don't cause failures when
279
+ // the caller provides an incomplete claims array.
280
+ const snapshotWithVariableConfig = {
281
+ ...snapshot,
282
+ variables: {
283
+ ...snapshot.variables,
284
+ config: snapshot.variables.config ?? {
285
+ checksumConfig: CHECKSUM_CONFIG,
286
+ },
287
+ },
288
+ };
289
+ try {
290
+ engine.rollback(snapshotWithVariableConfig);
291
+ }
292
+ catch (error) {
293
+ if (error instanceof InvariantViolationError) {
294
+ throw new Error(`Failed to load argument ${snapshot.argument?.id}: invariant violation during rollback: ${error.violations.map((v) => v.message).join(", ")}`, { cause: error });
295
+ }
296
+ throw error;
297
+ }
298
+ // Load domain data into internal maps (no notifications)
299
+ for (const claim of claims) {
300
+ engine.claimsMap.set(claim.id, claim);
301
+ }
302
+ for (const src of domainSources) {
303
+ engine.sourcesMap.set(src.id, src);
304
+ }
305
+ for (const cs of claimSources) {
306
+ const existing = engine.claimSourcesMap.get(cs.claimId) ?? [];
307
+ existing.push(cs);
308
+ engine.claimSourcesMap.set(cs.claimId, existing);
309
+ }
310
+ return engine;
311
+ }
312
+ }
313
+ //# sourceMappingURL=engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/engine/engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { TClaimLookup, TSourceLookup } from "@proposit/proposit-core";
2
+ import { EMPTY_CLAIM_LOOKUP, EMPTY_SOURCE_LOOKUP, EMPTY_CLAIM_SOURCE_LOOKUP } from "@proposit/proposit-core";
3
+ export declare function createClaimLookup(claims: {
4
+ id: string;
5
+ version: number;
6
+ }[]): TClaimLookup;
7
+ export declare function createSourceLookup(sources: {
8
+ id: string;
9
+ version?: number;
10
+ }[]): TSourceLookup;
11
+ export { EMPTY_CLAIM_LOOKUP, EMPTY_SOURCE_LOOKUP, EMPTY_CLAIM_SOURCE_LOOKUP };
12
+ //# sourceMappingURL=library-adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"library-adapters.d.ts","sourceRoot":"","sources":["../../src/engine/library-adapters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC1E,OAAO,EAEH,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,EAC5B,MAAM,yBAAyB,CAAA;AAEhC,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,GAC1C,YAAY,CAGd;AAED,wBAAgB,kBAAkB,CAC9B,OAAO,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,GAC5C,aAAa,CAGf;AAED,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { createLookup, EMPTY_CLAIM_LOOKUP, EMPTY_SOURCE_LOOKUP, EMPTY_CLAIM_SOURCE_LOOKUP, } from "@proposit/proposit-core";
2
+ export function createClaimLookup(claims) {
3
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-return
4
+ return createLookup(claims, (c) => `${c.id}:${c.version}`);
5
+ }
6
+ export function createSourceLookup(sources) {
7
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-return
8
+ return createLookup(sources, (s) => `${s.id}:${s.version ?? 1}`);
9
+ }
10
+ export { EMPTY_CLAIM_LOOKUP, EMPTY_SOURCE_LOOKUP, EMPTY_CLAIM_SOURCE_LOOKUP };
11
+ //# sourceMappingURL=library-adapters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"library-adapters.js","sourceRoot":"","sources":["../../src/engine/library-adapters.ts"],"names":[],"mappings":"AACA,OAAO,EACH,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,GAC5B,MAAM,yBAAyB,CAAA;AAEhC,MAAM,UAAU,iBAAiB,CAC7B,MAAyC;IAEzC,mGAAmG;IACnG,OAAO,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAQ,CAAA;AACrE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAC9B,OAA2C;IAE3C,mGAAmG;IACnG,OAAO,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,EAAE,CAAQ,CAAA;AAC3E,CAAC;AAED,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,CAAA"}
@@ -0,0 +1,10 @@
1
+ import type { TClaim } from "../../schemas/model/claims.js";
2
+ import type { PropositArgumentEngine } from "../engine.js";
3
+ import type { ProjectChangeset } from "./types.js";
4
+ export declare function mutateSetClaim(engine: PropositArgumentEngine, claim: TClaim): void;
5
+ export declare function mutateUpdateClaim(engine: PropositArgumentEngine, claim: TClaim): void;
6
+ export declare function mutateRemoveClaimWithCascade(engine: PropositArgumentEngine, claimId: string): {
7
+ removedVariableIds: string[];
8
+ changes: ProjectChangeset;
9
+ };
10
+ //# sourceMappingURL=claims.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claims.d.ts","sourceRoot":"","sources":["../../../src/engine/mutations/claims.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAA;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAGlD,wBAAgB,cAAc,CAC1B,MAAM,EAAE,sBAAsB,EAC9B,KAAK,EAAE,MAAM,GACd,IAAI,CAEN;AAED,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,sBAAsB,EAC9B,KAAK,EAAE,MAAM,GACd,IAAI,CAEN;AAED,wBAAgB,4BAA4B,CACxC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,EAAE,MAAM,GAChB;IAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAgB7D"}
@@ -0,0 +1,22 @@
1
+ import { mergeChangesets } from "./types.js";
2
+ export function mutateSetClaim(engine, claim) {
3
+ engine.setClaim(claim);
4
+ }
5
+ export function mutateUpdateClaim(engine, claim) {
6
+ engine.setClaim(claim);
7
+ }
8
+ export function mutateRemoveClaimWithCascade(engine, claimId) {
9
+ const removedVariableIds = [];
10
+ let changes = {};
11
+ // Find and remove all variables referencing this claim (cascade to expressions)
12
+ for (const variable of engine.getVariables()) {
13
+ if ("claimId" in variable && variable.claimId === claimId) {
14
+ const { changes: varChanges } = engine.removeVariable(variable.id);
15
+ changes = mergeChangesets(changes, varChanges);
16
+ removedVariableIds.push(variable.id);
17
+ }
18
+ }
19
+ engine.removeClaim(claimId);
20
+ return { removedVariableIds, changes };
21
+ }
22
+ //# sourceMappingURL=claims.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claims.js","sourceRoot":"","sources":["../../../src/engine/mutations/claims.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAE5C,MAAM,UAAU,cAAc,CAC1B,MAA8B,EAC9B,KAAa;IAEb,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC7B,MAA8B,EAC9B,KAAa;IAEb,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;AAC1B,CAAC;AAED,MAAM,UAAU,4BAA4B,CACxC,MAA8B,EAC9B,OAAe;IAEf,MAAM,kBAAkB,GAAa,EAAE,CAAA;IACvC,IAAI,OAAO,GAAqB,EAAE,CAAA;IAElC,gFAAgF;IAChF,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC;QAC3C,IAAI,SAAS,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACxD,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;YAClE,OAAO,GAAG,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YAC9C,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACxC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAE3B,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,CAAA;AAC1C,CAAC"}
@@ -0,0 +1,109 @@
1
+ import type { TPropositionalExpressionCombined, TPropositionalExpressionTypes, TLogicalOperatorType } from "../../schemas/logic.js";
2
+ import type { ProjectEngine, ProjectChangeset } from "./types.js";
3
+ export type TAddSiblingExpressionData = {
4
+ premiseId: string;
5
+ targetExpressionId: string;
6
+ direction: "before" | "after";
7
+ siblingId: string;
8
+ type: TPropositionalExpressionTypes;
9
+ variableId?: string | null;
10
+ argumentId: string;
11
+ argumentVersion: number;
12
+ creatorId: string;
13
+ createdOn: Date;
14
+ };
15
+ export type TWrapExpressionData = {
16
+ premiseId: string;
17
+ targetExpressionId: string;
18
+ direction: "before" | "after";
19
+ operatorId: string;
20
+ operatorType: TLogicalOperatorType;
21
+ siblingId: string;
22
+ siblingType: TPropositionalExpressionTypes;
23
+ variableId?: string | null;
24
+ argumentId: string;
25
+ argumentVersion: number;
26
+ creatorId: string;
27
+ createdOn: Date;
28
+ };
29
+ export declare function mutateCreateExpression(engine: ProjectEngine, data: {
30
+ premiseId: string;
31
+ expressionId: string;
32
+ parentId: string | null;
33
+ position?: number;
34
+ type: TPropositionalExpressionTypes;
35
+ variableId?: string | null;
36
+ operator?: TLogicalOperatorType | null;
37
+ relativeTo?: {
38
+ expressionId: string;
39
+ direction: "before" | "after";
40
+ };
41
+ argumentId: string;
42
+ argumentVersion: number;
43
+ creatorId: string;
44
+ createdOn: Date;
45
+ }): {
46
+ created: TPropositionalExpressionCombined;
47
+ shifted: TPropositionalExpressionCombined[];
48
+ changes: ProjectChangeset;
49
+ };
50
+ export declare function mutateUpdateExpression(engine: ProjectEngine, expressionId: string, updates: {
51
+ position?: number;
52
+ variableId?: string | null;
53
+ operator?: TLogicalOperatorType | null;
54
+ }): {
55
+ expression: TPropositionalExpressionCombined;
56
+ changes: ProjectChangeset;
57
+ };
58
+ export declare function mutateDeleteExpression(engine: ProjectEngine, expressionId: string): {
59
+ removed: TPropositionalExpressionCombined | undefined;
60
+ changes: ProjectChangeset;
61
+ };
62
+ export declare function mutateToggleNegation(engine: ProjectEngine, expressionId: string, extraFields: {
63
+ creatorId: string;
64
+ createdOn: Date;
65
+ }): {
66
+ changes: ProjectChangeset;
67
+ };
68
+ export declare function mutateChangeOperator(engine: ProjectEngine, data: {
69
+ expressionId: string;
70
+ newOperator: TLogicalOperatorType;
71
+ sourceChildId?: string;
72
+ targetChildId?: string;
73
+ extraFields?: {
74
+ creatorId: string;
75
+ createdOn: Date;
76
+ };
77
+ }): {
78
+ changes: ProjectChangeset;
79
+ };
80
+ export type TCreateExpressionWithOperatorData = {
81
+ premiseId: string;
82
+ targetExpressionId: string;
83
+ operatorType: TLogicalOperatorType;
84
+ direction: "before" | "after";
85
+ operatorId: string;
86
+ siblingId: string;
87
+ type: TPropositionalExpressionTypes;
88
+ variableId?: string | null;
89
+ argumentId: string;
90
+ argumentVersion: number;
91
+ creatorId: string;
92
+ createdOn: Date;
93
+ };
94
+ export declare function mutateAddSiblingExpression(engine: ProjectEngine, data: TAddSiblingExpressionData): {
95
+ created: TPropositionalExpressionCombined[];
96
+ modified: TPropositionalExpressionCombined[];
97
+ changes: ProjectChangeset;
98
+ };
99
+ export declare function mutateWrapExpression(engine: ProjectEngine, data: TWrapExpressionData): {
100
+ created: TPropositionalExpressionCombined[];
101
+ modified: TPropositionalExpressionCombined[];
102
+ changes: ProjectChangeset;
103
+ };
104
+ export declare function mutateCreateExpressionWithOperator(engine: ProjectEngine, data: TCreateExpressionWithOperatorData): {
105
+ created: TPropositionalExpressionCombined[];
106
+ modified: TPropositionalExpressionCombined[];
107
+ changes: ProjectChangeset;
108
+ };
109
+ //# sourceMappingURL=expressions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expressions.d.ts","sourceRoot":"","sources":["../../../src/engine/mutations/expressions.ts"],"names":[],"mappings":"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"}