@plures/praxis 1.0.3 → 1.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 (534) hide show
  1. package/FRAMEWORK.md +55 -5
  2. package/LICENSE +21 -21
  3. package/README.md +162 -375
  4. package/core/codegen/docs-generator.ts +5 -2
  5. package/core/codegen/index.ts +1 -1
  6. package/core/codegen/ts-generator.ts +15 -15
  7. package/core/db-adapter/index.ts +2 -2
  8. package/core/db-adapter/sync-engine.ts +17 -6
  9. package/core/logic-engine/engine.ts +1 -1
  10. package/core/logic-engine/index.ts +2 -2
  11. package/core/logic-engine/protocol.ts +1 -1
  12. package/core/logic-engine/psf-adapter.ts +8 -4
  13. package/core/logic-engine/rules.ts +1 -1
  14. package/core/schema-engine/compiler.ts +53 -11
  15. package/core/schema-engine/generator.ts +17 -7
  16. package/core/schema-engine/index.ts +2 -2
  17. package/core/schema-engine/psf.ts +12 -3
  18. package/core/schema-engine/types.ts +3 -11
  19. package/core/schema-engine/validator.ts +112 -22
  20. package/dist/browser/engine-BjdqxeXG.d.ts +333 -0
  21. package/dist/browser/index.d.ts +3004 -0
  22. package/dist/browser/index.js +2892 -0
  23. package/dist/{src → browser}/integrations/svelte.d.ts +19 -17
  24. package/dist/browser/integrations/svelte.js +298 -0
  25. package/dist/node/auth-STARLY7I.js +207 -0
  26. package/dist/node/build-Y7OT5VBF.js +144 -0
  27. package/dist/node/canvas-UERZHJYW.js +362 -0
  28. package/dist/node/chunk-DSDC2JWZ.js +256 -0
  29. package/dist/node/chunk-FXQZXAWF.js +175 -0
  30. package/dist/node/chunk-N5Y37EUV.js +202 -0
  31. package/dist/node/chunk-QGM4M3NI.js +37 -0
  32. package/dist/node/chunk-RJMWCNHR.js +175 -0
  33. package/dist/node/chunk-SRM3OPPM.js +404 -0
  34. package/dist/node/chunk-UATVJBNV.js +175 -0
  35. package/dist/node/chunk-UY7YEBE2.js +159 -0
  36. package/dist/node/chunk-XCY2VIFX.js +143 -0
  37. package/dist/node/chunk-YXH4Y7ZZ.js +349 -0
  38. package/dist/node/cli/index.cjs +217418 -0
  39. package/dist/node/cli/index.d.cts +1 -0
  40. package/dist/node/cli/index.d.ts +1 -0
  41. package/dist/node/cli/index.js +690 -0
  42. package/dist/node/cloud/index.cjs +1043 -0
  43. package/dist/node/cloud/index.d.cts +864 -0
  44. package/dist/node/cloud/index.d.ts +864 -0
  45. package/dist/node/cloud/index.js +456 -0
  46. package/dist/node/cloud-AXOK4PSN.js +212 -0
  47. package/dist/node/component.cjs +374 -0
  48. package/dist/node/component.d.cts +125 -0
  49. package/dist/{src/core/component/generator.d.ts → node/component.d.ts} +11 -8
  50. package/dist/node/component.js +9 -0
  51. package/dist/node/components/index.cjs +216 -0
  52. package/dist/node/components/index.d.cts +43 -0
  53. package/dist/{src → node}/components/index.d.ts +8 -8
  54. package/dist/node/components/index.js +7 -0
  55. package/dist/node/create-TRLSVCNQ.js +584 -0
  56. package/dist/node/dev-PMJZUYGE.js +65 -0
  57. package/dist/node/engine-1iqLe6_P.d.ts +214 -0
  58. package/dist/node/engine-CVJobhHm.d.cts +214 -0
  59. package/dist/node/index.cjs +3247 -0
  60. package/dist/node/index.d.cts +2579 -0
  61. package/dist/node/index.d.ts +2579 -0
  62. package/dist/node/index.js +2098 -0
  63. package/dist/node/integrations/svelte.cjs +330 -0
  64. package/dist/node/integrations/svelte.d.cts +309 -0
  65. package/dist/node/integrations/svelte.d.ts +309 -0
  66. package/dist/node/integrations/svelte.js +300 -0
  67. package/dist/node/orchestrate-737TCL5H.js +127 -0
  68. package/dist/{src/core/protocol.d.ts → node/protocol-Qek7ebBl.d.cts} +11 -10
  69. package/dist/node/protocol-Qek7ebBl.d.ts +122 -0
  70. package/dist/node/schema.cjs +200 -0
  71. package/dist/{src/core/schema/types.d.ts → node/schema.d.cts} +30 -29
  72. package/dist/node/schema.d.ts +371 -0
  73. package/dist/node/schema.js +9 -0
  74. package/dist/{src/runtime/terminal-adapter.d.ts → node/terminal-adapter-07HGftGQ.d.ts} +86 -11
  75. package/dist/node/terminal-adapter-XLtCjjb_.d.cts +231 -0
  76. package/dist/node/verify-YBZ7W24H.js +213239 -0
  77. package/docs/MONETIZATION.md +21 -16
  78. package/docs/REACTIVE_REDESIGN.md +132 -0
  79. package/docs/README.md +47 -36
  80. package/docs/SVELTE_INTEGRATION_STRATEGY.md +68 -0
  81. package/docs/TERMINAL_NODE.md +27 -24
  82. package/docs/core/building-extensions.md +58 -61
  83. package/docs/core/cli-usage.md +59 -59
  84. package/docs/core/code-canvas-sync.md +28 -16
  85. package/docs/core/logic-engine.md +77 -82
  86. package/docs/core/pluresdb-integration.md +29 -39
  87. package/docs/core/schema-model.md +66 -52
  88. package/docs/core/ui-generation.md +57 -49
  89. package/docs/core/what-is-praxis.md +32 -15
  90. package/docs/guides/canvas.md +21 -5
  91. package/docs/guides/getting-started.md +13 -7
  92. package/docs/guides/history-state-pattern.md +65 -51
  93. package/docs/guides/orchestration.md +46 -32
  94. package/docs/guides/parallel-state-pattern.md +56 -72
  95. package/docs/guides/svelte-integration.md +45 -53
  96. package/docs/tutorials/README.md +16 -0
  97. package/docs/tutorials/ecommerce-cart.md +177 -95
  98. package/docs/tutorials/first-app.md +26 -41
  99. package/docs/tutorials/form-builder.md +191 -138
  100. package/docs/tutorials/todo-pluresdb.md +71 -69
  101. package/package.json +132 -97
  102. package/src/__tests__/actors.test.ts +68 -68
  103. package/src/__tests__/billing.test.ts +32 -32
  104. package/src/__tests__/canvas-components.test.ts +94 -73
  105. package/src/__tests__/cli-create.test.ts +28 -28
  106. package/src/__tests__/cloud.test.ts +36 -36
  107. package/src/__tests__/code-canvas-integration.test.ts +132 -141
  108. package/src/__tests__/docs-generator.test.ts +3 -9
  109. package/src/__tests__/dsl.test.ts +58 -64
  110. package/src/__tests__/edge-cases.test.ts +106 -108
  111. package/src/__tests__/engine.test.ts +51 -25
  112. package/src/__tests__/generators.test.ts +42 -44
  113. package/src/__tests__/introspection.test.ts +104 -114
  114. package/src/__tests__/pluresdb.test.ts +189 -187
  115. package/src/__tests__/protocol.test.ts +15 -15
  116. package/src/__tests__/provisioning.test.ts +61 -61
  117. package/src/__tests__/schema.test.ts +7 -11
  118. package/src/__tests__/state-docs-integration.test.ts +162 -145
  119. package/src/__tests__/svelte-integration.test.ts +16 -19
  120. package/src/__tests__/tauri-integration.test.ts +149 -147
  121. package/src/__tests__/terminal-node.test.ts +12 -7
  122. package/src/__tests__/unum-integration.test.ts +68 -68
  123. package/src/adapters/cli.ts +21 -15
  124. package/src/cli/commands/auth.ts +82 -78
  125. package/src/cli/commands/build.ts +29 -27
  126. package/src/cli/commands/canvas.ts +338 -127
  127. package/src/cli/commands/cloud.ts +47 -47
  128. package/src/cli/commands/create.ts +59 -47
  129. package/src/cli/commands/dev.ts +12 -12
  130. package/src/cli/commands/generate.ts +29 -40
  131. package/src/cli/commands/orchestrate.ts +24 -24
  132. package/src/cli/commands/verify.ts +7 -8
  133. package/src/cli/index.ts +14 -10
  134. package/src/cloud/README.md +28 -15
  135. package/src/cloud/auth.ts +55 -70
  136. package/src/cloud/billing.ts +59 -58
  137. package/src/cloud/client.ts +29 -35
  138. package/src/cloud/index.ts +19 -40
  139. package/src/cloud/marketplace.ts +69 -78
  140. package/src/cloud/provisioning.ts +42 -51
  141. package/src/cloud/relay/endpoints.ts +30 -34
  142. package/src/cloud/relay/health/index.ts +1 -1
  143. package/src/cloud/relay/stats/index.ts +1 -1
  144. package/src/cloud/relay/sync/index.ts +1 -1
  145. package/src/cloud/relay/usage/index.ts +1 -1
  146. package/src/cloud/sponsors.ts +31 -34
  147. package/src/cloud/types.ts +4 -4
  148. package/src/components/README.md +1 -0
  149. package/src/components/TerminalNode.svelte +457 -457
  150. package/src/components/index.ts +3 -4
  151. package/src/core/actors.ts +7 -7
  152. package/src/core/component/generator.ts +10 -28
  153. package/src/core/engine.ts +51 -24
  154. package/src/core/introspection.ts +37 -35
  155. package/src/core/logic/generator.ts +62 -62
  156. package/src/core/pluresdb/adapter.ts +8 -8
  157. package/src/core/pluresdb/generator.ts +39 -35
  158. package/src/core/pluresdb/index.ts +9 -12
  159. package/src/core/pluresdb/schema-registry.ts +22 -25
  160. package/src/core/pluresdb/store.ts +57 -57
  161. package/src/core/protocol.ts +14 -14
  162. package/src/core/reactive-engine.svelte.ts +65 -0
  163. package/src/core/reactive-engine.ts +67 -0
  164. package/src/core/rules.ts +4 -4
  165. package/src/core/schema/loader.common.ts +150 -0
  166. package/src/core/schema/loader.ts +19 -149
  167. package/src/core/schema/normalize.ts +34 -51
  168. package/src/core/schema/types.ts +47 -11
  169. package/src/dsl/index.ts +8 -8
  170. package/src/dsl.ts +11 -17
  171. package/src/examples/advanced-todo/App.svelte +506 -506
  172. package/src/examples/advanced-todo/README.md +58 -40
  173. package/src/examples/advanced-todo/index.ts +3 -3
  174. package/src/examples/auth-basic/index.ts +30 -30
  175. package/src/examples/cart/index.ts +50 -50
  176. package/src/examples/hero-ecommerce/index.ts +130 -157
  177. package/src/examples/svelte-counter/index.ts +22 -26
  178. package/src/flows.ts +6 -17
  179. package/src/index.browser.ts +204 -0
  180. package/src/index.ts +37 -42
  181. package/src/integrations/code-canvas.ts +237 -193
  182. package/src/integrations/pluresdb.ts +55 -35
  183. package/src/integrations/state-docs.ts +104 -104
  184. package/src/integrations/svelte.ts +35 -35
  185. package/src/integrations/tauri.ts +75 -73
  186. package/src/integrations/unum.ts +68 -61
  187. package/src/registry.ts +7 -14
  188. package/src/runtime/terminal-adapter.ts +31 -26
  189. package/src/step.ts +10 -16
  190. package/src/types.ts +1 -1
  191. package/templates/basic-app/README.md +6 -9
  192. package/templates/fullstack-app/README.md +10 -0
  193. package/dist/core/codegen/docs-generator.d.ts +0 -123
  194. package/dist/core/codegen/docs-generator.d.ts.map +0 -1
  195. package/dist/core/codegen/docs-generator.js +0 -674
  196. package/dist/core/codegen/docs-generator.js.map +0 -1
  197. package/dist/core/codegen/index.d.ts +0 -11
  198. package/dist/core/codegen/index.d.ts.map +0 -1
  199. package/dist/core/codegen/index.js +0 -13
  200. package/dist/core/codegen/index.js.map +0 -1
  201. package/dist/core/codegen/ts-generator.d.ts +0 -8
  202. package/dist/core/codegen/ts-generator.d.ts.map +0 -1
  203. package/dist/core/codegen/ts-generator.js +0 -8
  204. package/dist/core/codegen/ts-generator.js.map +0 -1
  205. package/dist/core/db-adapter/index.d.ts +0 -18
  206. package/dist/core/db-adapter/index.d.ts.map +0 -1
  207. package/dist/core/db-adapter/index.js +0 -23
  208. package/dist/core/db-adapter/index.js.map +0 -1
  209. package/dist/core/db-adapter/sync-engine.d.ts +0 -180
  210. package/dist/core/db-adapter/sync-engine.d.ts.map +0 -1
  211. package/dist/core/db-adapter/sync-engine.js +0 -342
  212. package/dist/core/db-adapter/sync-engine.js.map +0 -1
  213. package/dist/core/logic-engine/engine.d.ts +0 -8
  214. package/dist/core/logic-engine/engine.d.ts.map +0 -1
  215. package/dist/core/logic-engine/engine.js +0 -8
  216. package/dist/core/logic-engine/engine.js.map +0 -1
  217. package/dist/core/logic-engine/index.d.ts +0 -16
  218. package/dist/core/logic-engine/index.d.ts.map +0 -1
  219. package/dist/core/logic-engine/index.js +0 -16
  220. package/dist/core/logic-engine/index.js.map +0 -1
  221. package/dist/core/logic-engine/protocol.d.ts +0 -7
  222. package/dist/core/logic-engine/protocol.d.ts.map +0 -1
  223. package/dist/core/logic-engine/protocol.js +0 -7
  224. package/dist/core/logic-engine/protocol.js.map +0 -1
  225. package/dist/core/logic-engine/psf-adapter.d.ts +0 -88
  226. package/dist/core/logic-engine/psf-adapter.d.ts.map +0 -1
  227. package/dist/core/logic-engine/psf-adapter.js +0 -207
  228. package/dist/core/logic-engine/psf-adapter.js.map +0 -1
  229. package/dist/core/logic-engine/rules.d.ts +0 -7
  230. package/dist/core/logic-engine/rules.d.ts.map +0 -1
  231. package/dist/core/logic-engine/rules.js +0 -7
  232. package/dist/core/logic-engine/rules.js.map +0 -1
  233. package/dist/core/schema-engine/compiler.d.ts +0 -198
  234. package/dist/core/schema-engine/compiler.d.ts.map +0 -1
  235. package/dist/core/schema-engine/compiler.js +0 -262
  236. package/dist/core/schema-engine/compiler.js.map +0 -1
  237. package/dist/core/schema-engine/generator.d.ts +0 -115
  238. package/dist/core/schema-engine/generator.d.ts.map +0 -1
  239. package/dist/core/schema-engine/generator.js +0 -506
  240. package/dist/core/schema-engine/generator.js.map +0 -1
  241. package/dist/core/schema-engine/index.d.ts +0 -18
  242. package/dist/core/schema-engine/index.d.ts.map +0 -1
  243. package/dist/core/schema-engine/index.js +0 -18
  244. package/dist/core/schema-engine/index.js.map +0 -1
  245. package/dist/core/schema-engine/psf.d.ts +0 -612
  246. package/dist/core/schema-engine/psf.d.ts.map +0 -1
  247. package/dist/core/schema-engine/psf.js +0 -45
  248. package/dist/core/schema-engine/psf.js.map +0 -1
  249. package/dist/core/schema-engine/types.d.ts +0 -10
  250. package/dist/core/schema-engine/types.d.ts.map +0 -1
  251. package/dist/core/schema-engine/types.js +0 -7
  252. package/dist/core/schema-engine/types.js.map +0 -1
  253. package/dist/core/schema-engine/validator.d.ts +0 -140
  254. package/dist/core/schema-engine/validator.d.ts.map +0 -1
  255. package/dist/core/schema-engine/validator.js +0 -407
  256. package/dist/core/schema-engine/validator.js.map +0 -1
  257. package/dist/src/adapters/cli.d.ts +0 -43
  258. package/dist/src/adapters/cli.d.ts.map +0 -1
  259. package/dist/src/adapters/cli.js +0 -126
  260. package/dist/src/adapters/cli.js.map +0 -1
  261. package/dist/src/cli/commands/auth.d.ts +0 -26
  262. package/dist/src/cli/commands/auth.d.ts.map +0 -1
  263. package/dist/src/cli/commands/auth.js +0 -233
  264. package/dist/src/cli/commands/auth.js.map +0 -1
  265. package/dist/src/cli/commands/build.d.ts +0 -23
  266. package/dist/src/cli/commands/build.d.ts.map +0 -1
  267. package/dist/src/cli/commands/build.js +0 -162
  268. package/dist/src/cli/commands/build.js.map +0 -1
  269. package/dist/src/cli/commands/canvas.d.ts +0 -23
  270. package/dist/src/cli/commands/canvas.d.ts.map +0 -1
  271. package/dist/src/cli/commands/canvas.js +0 -215
  272. package/dist/src/cli/commands/canvas.js.map +0 -1
  273. package/dist/src/cli/commands/cloud.d.ts +0 -27
  274. package/dist/src/cli/commands/cloud.d.ts.map +0 -1
  275. package/dist/src/cli/commands/cloud.js +0 -232
  276. package/dist/src/cli/commands/cloud.js.map +0 -1
  277. package/dist/src/cli/commands/create.d.ts +0 -21
  278. package/dist/src/cli/commands/create.d.ts.map +0 -1
  279. package/dist/src/cli/commands/create.js +0 -621
  280. package/dist/src/cli/commands/create.js.map +0 -1
  281. package/dist/src/cli/commands/dev.d.ts +0 -21
  282. package/dist/src/cli/commands/dev.d.ts.map +0 -1
  283. package/dist/src/cli/commands/dev.js +0 -71
  284. package/dist/src/cli/commands/dev.js.map +0 -1
  285. package/dist/src/cli/commands/generate.d.ts +0 -25
  286. package/dist/src/cli/commands/generate.d.ts.map +0 -1
  287. package/dist/src/cli/commands/generate.js +0 -168
  288. package/dist/src/cli/commands/generate.js.map +0 -1
  289. package/dist/src/cli/commands/orchestrate.d.ts +0 -44
  290. package/dist/src/cli/commands/orchestrate.d.ts.map +0 -1
  291. package/dist/src/cli/commands/orchestrate.js +0 -150
  292. package/dist/src/cli/commands/orchestrate.js.map +0 -1
  293. package/dist/src/cli/commands/verify.d.ts +0 -10
  294. package/dist/src/cli/commands/verify.d.ts.map +0 -1
  295. package/dist/src/cli/commands/verify.js +0 -39
  296. package/dist/src/cli/commands/verify.js.map +0 -1
  297. package/dist/src/cli/index.d.ts +0 -8
  298. package/dist/src/cli/index.d.ts.map +0 -1
  299. package/dist/src/cli/index.js +0 -226
  300. package/dist/src/cli/index.js.map +0 -1
  301. package/dist/src/cloud/auth.d.ts +0 -51
  302. package/dist/src/cloud/auth.d.ts.map +0 -1
  303. package/dist/src/cloud/auth.js +0 -194
  304. package/dist/src/cloud/auth.js.map +0 -1
  305. package/dist/src/cloud/billing.d.ts +0 -184
  306. package/dist/src/cloud/billing.d.ts.map +0 -1
  307. package/dist/src/cloud/billing.js +0 -179
  308. package/dist/src/cloud/billing.js.map +0 -1
  309. package/dist/src/cloud/client.d.ts +0 -39
  310. package/dist/src/cloud/client.d.ts.map +0 -1
  311. package/dist/src/cloud/client.js +0 -176
  312. package/dist/src/cloud/client.js.map +0 -1
  313. package/dist/src/cloud/index.d.ts +0 -44
  314. package/dist/src/cloud/index.d.ts.map +0 -1
  315. package/dist/src/cloud/index.js +0 -44
  316. package/dist/src/cloud/index.js.map +0 -1
  317. package/dist/src/cloud/marketplace.d.ts +0 -166
  318. package/dist/src/cloud/marketplace.d.ts.map +0 -1
  319. package/dist/src/cloud/marketplace.js +0 -159
  320. package/dist/src/cloud/marketplace.js.map +0 -1
  321. package/dist/src/cloud/provisioning.d.ts +0 -110
  322. package/dist/src/cloud/provisioning.d.ts.map +0 -1
  323. package/dist/src/cloud/provisioning.js +0 -148
  324. package/dist/src/cloud/provisioning.js.map +0 -1
  325. package/dist/src/cloud/relay/endpoints.d.ts +0 -62
  326. package/dist/src/cloud/relay/endpoints.d.ts.map +0 -1
  327. package/dist/src/cloud/relay/endpoints.js +0 -217
  328. package/dist/src/cloud/relay/endpoints.js.map +0 -1
  329. package/dist/src/cloud/relay/health/index.d.ts +0 -5
  330. package/dist/src/cloud/relay/health/index.d.ts.map +0 -1
  331. package/dist/src/cloud/relay/health/index.js +0 -9
  332. package/dist/src/cloud/relay/health/index.js.map +0 -1
  333. package/dist/src/cloud/relay/stats/index.d.ts +0 -5
  334. package/dist/src/cloud/relay/stats/index.d.ts.map +0 -1
  335. package/dist/src/cloud/relay/stats/index.js +0 -9
  336. package/dist/src/cloud/relay/stats/index.js.map +0 -1
  337. package/dist/src/cloud/relay/sync/index.d.ts +0 -5
  338. package/dist/src/cloud/relay/sync/index.d.ts.map +0 -1
  339. package/dist/src/cloud/relay/sync/index.js +0 -9
  340. package/dist/src/cloud/relay/sync/index.js.map +0 -1
  341. package/dist/src/cloud/relay/usage/index.d.ts +0 -5
  342. package/dist/src/cloud/relay/usage/index.d.ts.map +0 -1
  343. package/dist/src/cloud/relay/usage/index.js +0 -9
  344. package/dist/src/cloud/relay/usage/index.js.map +0 -1
  345. package/dist/src/cloud/sponsors.d.ts +0 -81
  346. package/dist/src/cloud/sponsors.d.ts.map +0 -1
  347. package/dist/src/cloud/sponsors.js +0 -130
  348. package/dist/src/cloud/sponsors.js.map +0 -1
  349. package/dist/src/cloud/types.d.ts +0 -169
  350. package/dist/src/cloud/types.d.ts.map +0 -1
  351. package/dist/src/cloud/types.js +0 -7
  352. package/dist/src/cloud/types.js.map +0 -1
  353. package/dist/src/components/index.d.ts.map +0 -1
  354. package/dist/src/components/index.js +0 -17
  355. package/dist/src/components/index.js.map +0 -1
  356. package/dist/src/core/actors.d.ts +0 -95
  357. package/dist/src/core/actors.d.ts.map +0 -1
  358. package/dist/src/core/actors.js +0 -158
  359. package/dist/src/core/actors.js.map +0 -1
  360. package/dist/src/core/component/generator.d.ts.map +0 -1
  361. package/dist/src/core/component/generator.js +0 -349
  362. package/dist/src/core/component/generator.js.map +0 -1
  363. package/dist/src/core/engine.d.ts +0 -92
  364. package/dist/src/core/engine.d.ts.map +0 -1
  365. package/dist/src/core/engine.js +0 -199
  366. package/dist/src/core/engine.js.map +0 -1
  367. package/dist/src/core/introspection.d.ts +0 -141
  368. package/dist/src/core/introspection.d.ts.map +0 -1
  369. package/dist/src/core/introspection.js +0 -208
  370. package/dist/src/core/introspection.js.map +0 -1
  371. package/dist/src/core/logic/generator.d.ts +0 -76
  372. package/dist/src/core/logic/generator.d.ts.map +0 -1
  373. package/dist/src/core/logic/generator.js +0 -370
  374. package/dist/src/core/logic/generator.js.map +0 -1
  375. package/dist/src/core/pluresdb/adapter.d.ts +0 -72
  376. package/dist/src/core/pluresdb/adapter.d.ts.map +0 -1
  377. package/dist/src/core/pluresdb/adapter.js +0 -73
  378. package/dist/src/core/pluresdb/adapter.js.map +0 -1
  379. package/dist/src/core/pluresdb/generator.d.ts +0 -58
  380. package/dist/src/core/pluresdb/generator.d.ts.map +0 -1
  381. package/dist/src/core/pluresdb/generator.js +0 -191
  382. package/dist/src/core/pluresdb/generator.js.map +0 -1
  383. package/dist/src/core/pluresdb/index.d.ts +0 -15
  384. package/dist/src/core/pluresdb/index.d.ts.map +0 -1
  385. package/dist/src/core/pluresdb/index.js +0 -11
  386. package/dist/src/core/pluresdb/index.js.map +0 -1
  387. package/dist/src/core/pluresdb/schema-registry.d.ts +0 -104
  388. package/dist/src/core/pluresdb/schema-registry.d.ts.map +0 -1
  389. package/dist/src/core/pluresdb/schema-registry.js +0 -130
  390. package/dist/src/core/pluresdb/schema-registry.js.map +0 -1
  391. package/dist/src/core/pluresdb/store.d.ts +0 -199
  392. package/dist/src/core/pluresdb/store.d.ts.map +0 -1
  393. package/dist/src/core/pluresdb/store.js +0 -344
  394. package/dist/src/core/pluresdb/store.js.map +0 -1
  395. package/dist/src/core/protocol.d.ts.map +0 -1
  396. package/dist/src/core/protocol.js +0 -46
  397. package/dist/src/core/protocol.js.map +0 -1
  398. package/dist/src/core/rules.d.ts +0 -120
  399. package/dist/src/core/rules.d.ts.map +0 -1
  400. package/dist/src/core/rules.js +0 -81
  401. package/dist/src/core/rules.js.map +0 -1
  402. package/dist/src/core/schema/loader.d.ts +0 -47
  403. package/dist/src/core/schema/loader.d.ts.map +0 -1
  404. package/dist/src/core/schema/loader.js +0 -189
  405. package/dist/src/core/schema/loader.js.map +0 -1
  406. package/dist/src/core/schema/normalize.d.ts +0 -72
  407. package/dist/src/core/schema/normalize.d.ts.map +0 -1
  408. package/dist/src/core/schema/normalize.js +0 -190
  409. package/dist/src/core/schema/normalize.js.map +0 -1
  410. package/dist/src/core/schema/types.d.ts.map +0 -1
  411. package/dist/src/core/schema/types.js +0 -161
  412. package/dist/src/core/schema/types.js.map +0 -1
  413. package/dist/src/dsl/index.d.ts +0 -152
  414. package/dist/src/dsl/index.d.ts.map +0 -1
  415. package/dist/src/dsl/index.js +0 -132
  416. package/dist/src/dsl/index.js.map +0 -1
  417. package/dist/src/dsl.d.ts +0 -124
  418. package/dist/src/dsl.d.ts.map +0 -1
  419. package/dist/src/dsl.js +0 -130
  420. package/dist/src/dsl.js.map +0 -1
  421. package/dist/src/examples/advanced-todo/index.d.ts +0 -55
  422. package/dist/src/examples/advanced-todo/index.d.ts.map +0 -1
  423. package/dist/src/examples/advanced-todo/index.js +0 -222
  424. package/dist/src/examples/advanced-todo/index.js.map +0 -1
  425. package/dist/src/examples/auth-basic/index.d.ts +0 -17
  426. package/dist/src/examples/auth-basic/index.d.ts.map +0 -1
  427. package/dist/src/examples/auth-basic/index.js +0 -122
  428. package/dist/src/examples/auth-basic/index.js.map +0 -1
  429. package/dist/src/examples/cart/index.d.ts +0 -19
  430. package/dist/src/examples/cart/index.d.ts.map +0 -1
  431. package/dist/src/examples/cart/index.js +0 -202
  432. package/dist/src/examples/cart/index.js.map +0 -1
  433. package/dist/src/examples/hero-ecommerce/index.d.ts +0 -39
  434. package/dist/src/examples/hero-ecommerce/index.d.ts.map +0 -1
  435. package/dist/src/examples/hero-ecommerce/index.js +0 -506
  436. package/dist/src/examples/hero-ecommerce/index.js.map +0 -1
  437. package/dist/src/examples/svelte-counter/index.d.ts +0 -31
  438. package/dist/src/examples/svelte-counter/index.d.ts.map +0 -1
  439. package/dist/src/examples/svelte-counter/index.js +0 -123
  440. package/dist/src/examples/svelte-counter/index.js.map +0 -1
  441. package/dist/src/flows.d.ts +0 -125
  442. package/dist/src/flows.d.ts.map +0 -1
  443. package/dist/src/flows.js +0 -160
  444. package/dist/src/flows.js.map +0 -1
  445. package/dist/src/index.d.ts +0 -77
  446. package/dist/src/index.d.ts.map +0 -1
  447. package/dist/src/index.js +0 -64
  448. package/dist/src/index.js.map +0 -1
  449. package/dist/src/integrations/code-canvas.d.ts +0 -265
  450. package/dist/src/integrations/code-canvas.d.ts.map +0 -1
  451. package/dist/src/integrations/code-canvas.js +0 -451
  452. package/dist/src/integrations/code-canvas.js.map +0 -1
  453. package/dist/src/integrations/pluresdb.d.ts +0 -117
  454. package/dist/src/integrations/pluresdb.d.ts.map +0 -1
  455. package/dist/src/integrations/pluresdb.js +0 -117
  456. package/dist/src/integrations/pluresdb.js.map +0 -1
  457. package/dist/src/integrations/state-docs.d.ts +0 -191
  458. package/dist/src/integrations/state-docs.d.ts.map +0 -1
  459. package/dist/src/integrations/state-docs.js +0 -515
  460. package/dist/src/integrations/state-docs.js.map +0 -1
  461. package/dist/src/integrations/svelte.d.ts.map +0 -1
  462. package/dist/src/integrations/svelte.js +0 -447
  463. package/dist/src/integrations/svelte.js.map +0 -1
  464. package/dist/src/integrations/tauri.d.ts +0 -360
  465. package/dist/src/integrations/tauri.d.ts.map +0 -1
  466. package/dist/src/integrations/tauri.js +0 -278
  467. package/dist/src/integrations/tauri.js.map +0 -1
  468. package/dist/src/integrations/unum.d.ts +0 -159
  469. package/dist/src/integrations/unum.d.ts.map +0 -1
  470. package/dist/src/integrations/unum.js +0 -240
  471. package/dist/src/integrations/unum.js.map +0 -1
  472. package/dist/src/registry.d.ts +0 -94
  473. package/dist/src/registry.d.ts.map +0 -1
  474. package/dist/src/registry.js +0 -181
  475. package/dist/src/registry.js.map +0 -1
  476. package/dist/src/runtime/terminal-adapter.d.ts.map +0 -1
  477. package/dist/src/runtime/terminal-adapter.js +0 -239
  478. package/dist/src/runtime/terminal-adapter.js.map +0 -1
  479. package/dist/src/step.d.ts +0 -34
  480. package/dist/src/step.d.ts.map +0 -1
  481. package/dist/src/step.js +0 -111
  482. package/dist/src/step.js.map +0 -1
  483. package/dist/src/types.d.ts +0 -63
  484. package/dist/src/types.d.ts.map +0 -1
  485. package/dist/src/types.js +0 -6
  486. package/dist/src/types.js.map +0 -1
  487. package/dist/tools/ast-analyzer/src/ast-analyzer.d.ts +0 -8
  488. package/dist/tools/ast-analyzer/src/ast-analyzer.d.ts.map +0 -1
  489. package/dist/tools/ast-analyzer/src/ast-analyzer.js +0 -119
  490. package/dist/tools/ast-analyzer/src/ast-analyzer.js.map +0 -1
  491. package/dist/tools/cli/commands/index.d.ts +0 -7
  492. package/dist/tools/cli/commands/index.d.ts.map +0 -1
  493. package/dist/tools/cli/commands/index.js +0 -7
  494. package/dist/tools/cli/commands/index.js.map +0 -1
  495. package/dist/tools/cli/index.d.ts +0 -8
  496. package/dist/tools/cli/index.d.ts.map +0 -1
  497. package/dist/tools/cli/index.js +0 -9
  498. package/dist/tools/cli/index.js.map +0 -1
  499. package/dist/tools/watcher/index.d.ts +0 -105
  500. package/dist/tools/watcher/index.d.ts.map +0 -1
  501. package/dist/tools/watcher/index.js +0 -213
  502. package/dist/tools/watcher/index.js.map +0 -1
  503. package/dist/ui/canvas/canvas-projection.d.ts +0 -78
  504. package/dist/ui/canvas/canvas-projection.d.ts.map +0 -1
  505. package/dist/ui/canvas/canvas-projection.js +0 -416
  506. package/dist/ui/canvas/canvas-projection.js.map +0 -1
  507. package/dist/ui/canvas/canvas-state.d.ts +0 -200
  508. package/dist/ui/canvas/canvas-state.d.ts.map +0 -1
  509. package/dist/ui/canvas/canvas-state.js +0 -464
  510. package/dist/ui/canvas/canvas-state.js.map +0 -1
  511. package/dist/ui/canvas/components/index.d.ts +0 -95
  512. package/dist/ui/canvas/components/index.d.ts.map +0 -1
  513. package/dist/ui/canvas/components/index.js +0 -19
  514. package/dist/ui/canvas/components/index.js.map +0 -1
  515. package/dist/ui/canvas/index.d.ts +0 -32
  516. package/dist/ui/canvas/index.d.ts.map +0 -1
  517. package/dist/ui/canvas/index.js +0 -32
  518. package/dist/ui/canvas/index.js.map +0 -1
  519. package/dist/ui/canvas-inspector/src/server.d.ts +0 -2
  520. package/dist/ui/canvas-inspector/src/server.d.ts.map +0 -1
  521. package/dist/ui/canvas-inspector/src/server.js +0 -248
  522. package/dist/ui/canvas-inspector/src/server.js.map +0 -1
  523. package/dist/ui/canvas-inspector/src/verify-fsm-implementation.d.ts +0 -5
  524. package/dist/ui/canvas-inspector/src/verify-fsm-implementation.d.ts.map +0 -1
  525. package/dist/ui/canvas-inspector/src/verify-fsm-implementation.js +0 -58
  526. package/dist/ui/canvas-inspector/src/verify-fsm-implementation.js.map +0 -1
  527. package/dist/ui/svelte-generator/index.d.ts +0 -9
  528. package/dist/ui/svelte-generator/index.d.ts.map +0 -1
  529. package/dist/ui/svelte-generator/index.js +0 -11
  530. package/dist/ui/svelte-generator/index.js.map +0 -1
  531. package/dist/ui/svelte-generator/psf-generator.d.ts +0 -128
  532. package/dist/ui/svelte-generator/psf-generator.d.ts.map +0 -1
  533. package/dist/ui/svelte-generator/psf-generator.js +0 -506
  534. package/dist/ui/svelte-generator/psf-generator.js.map +0 -1
@@ -1,159 +0,0 @@
1
- /**
2
- * Unum Integration
3
- *
4
- * Integration with plures/unum - A modern Svelte binding library for PluresDB
5
- * with full Svelte 5 compatibility. Provides identity and channels support.
6
- *
7
- * Features:
8
- * - Svelte 4 & 5 Compatible: Works with both store-based and runes-based reactivity
9
- * - Type-Safe: Full TypeScript support with proper types
10
- * - Action-Based: Modern Svelte actions for DOM binding
11
- * - Store-Based: Writable store implementation for reactive data
12
- * - Collection Support: Easy handling of PluresDB collections
13
- *
14
- * @see https://github.com/plures/unum
15
- */
16
- import type { LogicEngine } from "../core/engine.js";
17
- import type { PraxisEvent, PraxisFact } from "../core/protocol.js";
18
- import type { PraxisDB } from "../core/pluresdb/adapter.js";
19
- /**
20
- * Unum store interface for reactive PluresDB data
21
- */
22
- export interface UnumStore<T> {
23
- subscribe(run: (value: T) => void): () => void;
24
- set(value: T): void;
25
- update(updater: (value: T) => T): void;
26
- }
27
- /**
28
- * Unum channel for real-time communication
29
- */
30
- export interface UnumChannel {
31
- /** Channel identifier */
32
- id: string;
33
- /** Channel name */
34
- name: string;
35
- /** Subscribe to channel messages */
36
- subscribe(handler: (message: UnumMessage) => void): () => void;
37
- /** Publish a message to the channel */
38
- publish(message: Omit<UnumMessage, 'timestamp' | 'channelId'>): Promise<void>;
39
- /** Get channel members */
40
- getMembers(): Promise<UnumIdentity[]>;
41
- /** Leave the channel */
42
- leave(): Promise<void>;
43
- }
44
- /**
45
- * Message sent through a Unum channel
46
- */
47
- export interface UnumMessage {
48
- /** Message ID */
49
- id: string;
50
- /** Channel ID */
51
- channelId: string;
52
- /** Sender identity */
53
- sender: UnumIdentity;
54
- /** Message content */
55
- content: unknown;
56
- /** Message type */
57
- type: 'text' | 'event' | 'fact' | 'system';
58
- /** Timestamp */
59
- timestamp: number;
60
- }
61
- /**
62
- * Unum identity representing a user or system
63
- */
64
- export interface UnumIdentity {
65
- /** Unique identifier */
66
- id: string;
67
- /** Display name */
68
- name?: string;
69
- /** Public key for encryption */
70
- publicKey?: string;
71
- /** Identity metadata */
72
- metadata?: Record<string, unknown>;
73
- /** Creation timestamp */
74
- createdAt: number;
75
- /** Last seen timestamp */
76
- lastSeen?: number;
77
- }
78
- /**
79
- * Unum adapter configuration
80
- */
81
- export interface UnumAdapterConfig {
82
- /** PluresDB instance to use */
83
- db: PraxisDB;
84
- /** Current user identity */
85
- identity?: UnumIdentity;
86
- /** Whether to enable real-time sync */
87
- realtime?: boolean;
88
- /** Sync interval in milliseconds */
89
- syncInterval?: number;
90
- }
91
- /**
92
- * Unum adapter for Praxis engine integration
93
- *
94
- * Provides identity management and channel-based communication
95
- * for distributed Praxis applications.
96
- */
97
- export interface UnumAdapter {
98
- /** Current identity */
99
- identity: UnumIdentity | null;
100
- /** Create or update identity */
101
- setIdentity(identity: Omit<UnumIdentity, 'id' | 'createdAt'>): Promise<UnumIdentity>;
102
- /** Get identity by ID */
103
- getIdentity(id: string): Promise<UnumIdentity | null>;
104
- /** Create a new channel */
105
- createChannel(name: string, members?: string[]): Promise<UnumChannel>;
106
- /** Join an existing channel */
107
- joinChannel(channelId: string): Promise<UnumChannel>;
108
- /** List available channels */
109
- listChannels(): Promise<UnumChannel[]>;
110
- /** Broadcast a Praxis event to a channel */
111
- broadcastEvent(channelId: string, event: PraxisEvent): Promise<void>;
112
- /** Broadcast a Praxis fact to a channel */
113
- broadcastFact(channelId: string, fact: PraxisFact): Promise<void>;
114
- /** Subscribe to events from a channel */
115
- subscribeToEvents(channelId: string, handler: (event: PraxisEvent) => void): () => void;
116
- /** Subscribe to facts from a channel */
117
- subscribeToFacts(channelId: string, handler: (fact: PraxisFact) => void): () => void;
118
- /** Disconnect and cleanup */
119
- disconnect(): Promise<void>;
120
- }
121
- /**
122
- * Create a Unum adapter for Praxis engine integration
123
- *
124
- * @example
125
- * ```typescript
126
- * import { createUnumAdapter } from '@plures/praxis/integrations/unum';
127
- * import { createInMemoryDB } from '@plures/praxis/integrations/pluresdb';
128
- *
129
- * const db = createInMemoryDB();
130
- * const unum = await createUnumAdapter({
131
- * db,
132
- * identity: {
133
- * name: 'Alice',
134
- * },
135
- * realtime: true,
136
- * });
137
- *
138
- * // Create a channel
139
- * const channel = await unum.createChannel('my-channel');
140
- *
141
- * // Broadcast events to the channel
142
- * await unum.broadcastEvent(channel.id, myEvent);
143
- * ```
144
- */
145
- export declare function createUnumAdapter(config: UnumAdapterConfig): Promise<UnumAdapter>;
146
- /**
147
- * Attach Unum adapter to a Praxis engine
148
- *
149
- * Enables automatic event/fact broadcasting to connected channels.
150
- * This is a placeholder for future integration where the engine
151
- * would emit events that get broadcast to channels.
152
- *
153
- * @param _engine - The Praxis logic engine
154
- * @param _adapter - The Unum adapter
155
- * @param _channelId - The channel to broadcast to
156
- * @returns Cleanup function
157
- */
158
- export declare function attachUnumToEngine<TContext>(_engine: LogicEngine<TContext>, _adapter: UnumAdapter, _channelId: string): () => void;
159
- //# sourceMappingURL=unum.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unum.d.ts","sourceRoot":"","sources":["../../../src/integrations/unum.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC/C,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IACpB,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC/D,uCAAuC;IACvC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,0BAA0B;IAC1B,UAAU,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACtC,wBAAwB;IACxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iBAAiB;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,sBAAsB;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB;IACnB,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC3C,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,wBAAwB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,+BAA+B;IAC/B,EAAE,EAAE,QAAQ,CAAC;IACb,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,uBAAuB;IACvB,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;IAE9B,gCAAgC;IAChC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAErF,yBAAyB;IACzB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAEtD,2BAA2B;IAC3B,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEtE,+BAA+B;IAC/B,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAErD,8BAA8B;IAC9B,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAEvC,4CAA4C;IAC5C,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErE,2CAA2C;IAC3C,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElE,yCAAyC;IACzC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAExF,wCAAwC;IACxC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAErF,6BAA6B;IAC7B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,CAyMvF;AASD;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EACzC,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,EAC9B,QAAQ,EAAE,WAAW,EACrB,UAAU,EAAE,MAAM,GACjB,MAAM,IAAI,CAMZ"}
@@ -1,240 +0,0 @@
1
- /**
2
- * Unum Integration
3
- *
4
- * Integration with plures/unum - A modern Svelte binding library for PluresDB
5
- * with full Svelte 5 compatibility. Provides identity and channels support.
6
- *
7
- * Features:
8
- * - Svelte 4 & 5 Compatible: Works with both store-based and runes-based reactivity
9
- * - Type-Safe: Full TypeScript support with proper types
10
- * - Action-Based: Modern Svelte actions for DOM binding
11
- * - Store-Based: Writable store implementation for reactive data
12
- * - Collection Support: Easy handling of PluresDB collections
13
- *
14
- * @see https://github.com/plures/unum
15
- */
16
- /**
17
- * Create a Unum adapter for Praxis engine integration
18
- *
19
- * @example
20
- * ```typescript
21
- * import { createUnumAdapter } from '@plures/praxis/integrations/unum';
22
- * import { createInMemoryDB } from '@plures/praxis/integrations/pluresdb';
23
- *
24
- * const db = createInMemoryDB();
25
- * const unum = await createUnumAdapter({
26
- * db,
27
- * identity: {
28
- * name: 'Alice',
29
- * },
30
- * realtime: true,
31
- * });
32
- *
33
- * // Create a channel
34
- * const channel = await unum.createChannel('my-channel');
35
- *
36
- * // Broadcast events to the channel
37
- * await unum.broadcastEvent(channel.id, myEvent);
38
- * ```
39
- */
40
- export async function createUnumAdapter(config) {
41
- const { db, realtime = true } = config;
42
- // syncInterval could be used for periodic sync in a more complete implementation
43
- let currentIdentity = null;
44
- const channels = new Map();
45
- const subscriptions = new Set();
46
- // Set initial identity if provided
47
- if (config.identity) {
48
- currentIdentity = {
49
- ...config.identity,
50
- id: config.identity.id || generateId(),
51
- createdAt: Date.now(),
52
- };
53
- await db.set(`unum/identities/${currentIdentity.id}`, currentIdentity);
54
- }
55
- async function setIdentity(identity) {
56
- currentIdentity = {
57
- ...identity,
58
- id: generateId(),
59
- createdAt: Date.now(),
60
- };
61
- await db.set(`unum/identities/${currentIdentity.id}`, currentIdentity);
62
- return currentIdentity;
63
- }
64
- async function getIdentity(id) {
65
- return await db.get(`unum/identities/${id}`);
66
- }
67
- async function createChannel(name, members) {
68
- const channelId = generateId();
69
- const channelData = {
70
- id: channelId,
71
- name,
72
- members: members || [],
73
- createdAt: Date.now(),
74
- createdBy: currentIdentity?.id,
75
- };
76
- await db.set(`unum/channels/${channelId}`, channelData);
77
- const channel = createChannelInstance(channelId, name);
78
- channels.set(channelId, channel);
79
- return channel;
80
- }
81
- async function joinChannel(channelId) {
82
- const existing = channels.get(channelId);
83
- if (existing)
84
- return existing;
85
- const channelData = await db.get(`unum/channels/${channelId}`);
86
- if (!channelData) {
87
- throw new Error(`Channel ${channelId} not found`);
88
- }
89
- const channel = createChannelInstance(channelData.id, channelData.name);
90
- channels.set(channelId, channel);
91
- return channel;
92
- }
93
- async function listChannels() {
94
- return Array.from(channels.values());
95
- }
96
- function createChannelInstance(id, name) {
97
- const handlers = new Set();
98
- return {
99
- id,
100
- name,
101
- subscribe(handler) {
102
- handlers.add(handler);
103
- // Set up database subscription if realtime is enabled
104
- if (realtime) {
105
- const unsub = db.watch(`unum/channels/${id}/messages`, (data) => {
106
- if (data) {
107
- handler(data);
108
- }
109
- });
110
- subscriptions.add(unsub);
111
- }
112
- return () => {
113
- handlers.delete(handler);
114
- };
115
- },
116
- async publish(message) {
117
- const fullMessage = {
118
- ...message,
119
- id: message.id || generateId(),
120
- channelId: id,
121
- timestamp: Date.now(),
122
- };
123
- await db.set(`unum/channels/${id}/messages/${fullMessage.id}`, fullMessage);
124
- // Notify local handlers
125
- handlers.forEach(h => h(fullMessage));
126
- },
127
- async getMembers() {
128
- const channelData = await db.get(`unum/channels/${id}`);
129
- if (!channelData?.members)
130
- return [];
131
- const members = [];
132
- for (const memberId of channelData.members) {
133
- const identity = await getIdentity(memberId);
134
- if (identity)
135
- members.push(identity);
136
- }
137
- return members;
138
- },
139
- async leave() {
140
- channels.delete(id);
141
- },
142
- };
143
- }
144
- async function broadcastEvent(channelId, event) {
145
- const channel = channels.get(channelId);
146
- if (!channel) {
147
- throw new Error(`Not joined to channel ${channelId}`);
148
- }
149
- await channel.publish({
150
- id: generateId(),
151
- sender: currentIdentity || { id: 'anonymous', createdAt: Date.now() },
152
- content: event,
153
- type: 'event',
154
- });
155
- }
156
- async function broadcastFact(channelId, fact) {
157
- const channel = channels.get(channelId);
158
- if (!channel) {
159
- throw new Error(`Not joined to channel ${channelId}`);
160
- }
161
- await channel.publish({
162
- id: generateId(),
163
- sender: currentIdentity || { id: 'anonymous', createdAt: Date.now() },
164
- content: fact,
165
- type: 'fact',
166
- });
167
- }
168
- function subscribeToEvents(channelId, handler) {
169
- const channel = channels.get(channelId);
170
- if (!channel) {
171
- throw new Error(`Not joined to channel ${channelId}`);
172
- }
173
- return channel.subscribe((message) => {
174
- if (message.type === 'event') {
175
- handler(message.content);
176
- }
177
- });
178
- }
179
- function subscribeToFacts(channelId, handler) {
180
- const channel = channels.get(channelId);
181
- if (!channel) {
182
- throw new Error(`Not joined to channel ${channelId}`);
183
- }
184
- return channel.subscribe((message) => {
185
- if (message.type === 'fact') {
186
- handler(message.content);
187
- }
188
- });
189
- }
190
- async function disconnect() {
191
- // Cleanup all subscriptions
192
- subscriptions.forEach(unsub => unsub());
193
- subscriptions.clear();
194
- // Leave all channels
195
- for (const channel of channels.values()) {
196
- await channel.leave();
197
- }
198
- channels.clear();
199
- currentIdentity = null;
200
- }
201
- return {
202
- get identity() { return currentIdentity; },
203
- setIdentity,
204
- getIdentity,
205
- createChannel,
206
- joinChannel,
207
- listChannels,
208
- broadcastEvent,
209
- broadcastFact,
210
- subscribeToEvents,
211
- subscribeToFacts,
212
- disconnect,
213
- };
214
- }
215
- /**
216
- * Generate a unique ID
217
- */
218
- function generateId() {
219
- return `${Date.now().toString(36)}-${Math.random().toString(36).substr(2, 9)}`;
220
- }
221
- /**
222
- * Attach Unum adapter to a Praxis engine
223
- *
224
- * Enables automatic event/fact broadcasting to connected channels.
225
- * This is a placeholder for future integration where the engine
226
- * would emit events that get broadcast to channels.
227
- *
228
- * @param _engine - The Praxis logic engine
229
- * @param _adapter - The Unum adapter
230
- * @param _channelId - The channel to broadcast to
231
- * @returns Cleanup function
232
- */
233
- export function attachUnumToEngine(_engine, _adapter, _channelId) {
234
- // In a future implementation, this would:
235
- // 1. Hook into engine state changes
236
- // 2. Broadcast new events/facts to the channel
237
- // For now, return a no-op cleanup function
238
- return () => { };
239
- }
240
- //# sourceMappingURL=unum.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unum.js","sourceRoot":"","sources":["../../../src/integrations/unum.ts"],"names":[],"mappings":"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"}
@@ -1,94 +0,0 @@
1
- /**
2
- * Registry for managing rules and constraints in Praxis.
3
- * Provides registration, retrieval, and execution capabilities.
4
- */
5
- import type { PraxisState, PraxisEvent, Effect } from './types.js';
6
- import type { Rule, Constraint, ConstraintViolation } from './dsl.js';
7
- /**
8
- * Registry for managing rules and constraints.
9
- */
10
- export declare class Registry<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent> {
11
- private rules;
12
- private constraints;
13
- /**
14
- * Register a new rule.
15
- * @throws Error if a rule with the same ID already exists
16
- */
17
- registerRule(rule: Rule<S, E>): void;
18
- /**
19
- * Register multiple rules at once.
20
- */
21
- registerRules(rules: Rule<S, E>[]): void;
22
- /**
23
- * Unregister a rule by ID.
24
- */
25
- unregisterRule(id: string): boolean;
26
- /**
27
- * Get a rule by ID.
28
- */
29
- getRule(id: string): Rule<S, E> | undefined;
30
- /**
31
- * Get all registered rules.
32
- */
33
- getAllRules(): Rule<S, E>[];
34
- /**
35
- * Get rules that match a specific event type.
36
- */
37
- getRulesForEvent(eventType: string): Rule<S, E>[];
38
- /**
39
- * Register a new constraint.
40
- * @throws Error if a constraint with the same ID already exists
41
- */
42
- registerConstraint(constraint: Constraint<S>): void;
43
- /**
44
- * Register multiple constraints at once.
45
- */
46
- registerConstraints(constraints: Constraint<S>[]): void;
47
- /**
48
- * Unregister a constraint by ID.
49
- */
50
- unregisterConstraint(id: string): boolean;
51
- /**
52
- * Get a constraint by ID.
53
- */
54
- getConstraint(id: string): Constraint<S> | undefined;
55
- /**
56
- * Get all registered constraints.
57
- */
58
- getAllConstraints(): Constraint<S>[];
59
- /**
60
- * Evaluate all rules for a given state and event.
61
- * Returns all effects produced by rules that fire.
62
- */
63
- evaluateRules(state: S, event: E): Effect[];
64
- /**
65
- * Check all constraints for a given state.
66
- * Returns an array of violations (empty if all constraints pass).
67
- */
68
- checkConstraints(state: S): ConstraintViolation[];
69
- /**
70
- * Clear all rules from the registry.
71
- */
72
- clearRules(): void;
73
- /**
74
- * Clear all constraints from the registry.
75
- */
76
- clearConstraints(): void;
77
- /**
78
- * Clear all rules and constraints from the registry.
79
- */
80
- clear(): void;
81
- /**
82
- * Get statistics about the registry.
83
- */
84
- getStats(): {
85
- ruleCount: number;
86
- constraintCount: number;
87
- rulesByEventType: Record<string, number>;
88
- };
89
- }
90
- /**
91
- * Create a new registry instance.
92
- */
93
- export declare function createRegistry<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent>(): Registry<S, E>;
94
- //# sourceMappingURL=registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEtE;;GAEG;AACH,qBAAa,QAAQ,CACnB,CAAC,SAAS,WAAW,GAAG,WAAW,EACnC,CAAC,SAAS,WAAW,GAAG,WAAW;IAEnC,OAAO,CAAC,KAAK,CAAsC;IACnD,OAAO,CAAC,WAAW,CAAyC;IAE5D;;;OAGG;IACH,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI;IAOpC;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI;IAMxC;;OAEG;IACH,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAInC;;OAEG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS;IAI3C;;OAEG;IACH,WAAW,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;IAI3B;;OAEG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;IAMjD;;;OAGG;IACH,kBAAkB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI;IAOnD;;OAEG;IACH,mBAAmB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI;IAMvD;;OAEG;IACH,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIzC;;OAEG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS;IAIpD;;OAEG;IACH,iBAAiB,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE;IAIpC;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,EAAE;IA0B3C;;;OAGG;IACH,gBAAgB,CAAC,KAAK,EAAE,CAAC,GAAG,mBAAmB,EAAE;IA0BjD;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAIxB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,QAAQ,IAAI;QACV,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC1C;CAcF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,CAAC,SAAS,WAAW,GAAG,WAAW,EACnC,CAAC,SAAS,WAAW,GAAG,WAAW,KAChC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAElB"}