@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,6 +1,6 @@
1
1
  /**
2
2
  * Svelte Counter Example
3
- *
3
+ *
4
4
  * Demonstrates Svelte v5 integration with a simple counter.
5
5
  * Shows how to connect Praxis logic to reactive Svelte stores.
6
6
  */
@@ -12,8 +12,8 @@ import {
12
12
  defineEvent,
13
13
  defineRule,
14
14
  findEvent,
15
- } from "../../index.js";
16
- import { createPraxisStore, createDerivedStore } from "../../integrations/svelte.js";
15
+ } from '../../index.js';
16
+ import { createPraxisStore, createDerivedStore } from '../../integrations/svelte.js';
17
17
 
18
18
  // Define the context type
19
19
  interface CounterContext {
@@ -22,23 +22,19 @@ interface CounterContext {
22
22
  }
23
23
 
24
24
  // Define facts
25
- const CountIncremented = defineFact<"CountIncremented", { amount: number }>(
26
- "CountIncremented"
27
- );
28
- const CountDecremented = defineFact<"CountDecremented", { amount: number }>(
29
- "CountDecremented"
30
- );
31
- const CountReset = defineFact<"CountReset", {}>("CountReset");
25
+ const CountIncremented = defineFact<'CountIncremented', { amount: number }>('CountIncremented');
26
+ const CountDecremented = defineFact<'CountDecremented', { amount: number }>('CountDecremented');
27
+ const CountReset = defineFact<'CountReset', {}>('CountReset');
32
28
 
33
29
  // Define events
34
- const Increment = defineEvent<"INCREMENT", { amount?: number }>("INCREMENT");
35
- const Decrement = defineEvent<"DECREMENT", { amount?: number }>("DECREMENT");
36
- const Reset = defineEvent<"RESET", {}>("RESET");
30
+ const Increment = defineEvent<'INCREMENT', { amount?: number }>('INCREMENT');
31
+ const Decrement = defineEvent<'DECREMENT', { amount?: number }>('DECREMENT');
32
+ const Reset = defineEvent<'RESET', {}>('RESET');
37
33
 
38
34
  // Define rules
39
35
  const incrementRule = defineRule<CounterContext>({
40
- id: "counter.increment",
41
- description: "Increment the counter",
36
+ id: 'counter.increment',
37
+ description: 'Increment the counter',
42
38
  impl: (state, events) => {
43
39
  const incrementEvent = findEvent(events, Increment);
44
40
  if (!incrementEvent) {
@@ -54,8 +50,8 @@ const incrementRule = defineRule<CounterContext>({
54
50
  });
55
51
 
56
52
  const decrementRule = defineRule<CounterContext>({
57
- id: "counter.decrement",
58
- description: "Decrement the counter",
53
+ id: 'counter.decrement',
54
+ description: 'Decrement the counter',
59
55
  impl: (state, events) => {
60
56
  const decrementEvent = findEvent(events, Decrement);
61
57
  if (!decrementEvent) {
@@ -71,8 +67,8 @@ const decrementRule = defineRule<CounterContext>({
71
67
  });
72
68
 
73
69
  const resetRule = defineRule<CounterContext>({
74
- id: "counter.reset",
75
- description: "Reset the counter",
70
+ id: 'counter.reset',
71
+ description: 'Reset the counter',
76
72
  impl: (state, events) => {
77
73
  const resetEvent = findEvent(events, Reset);
78
74
  if (!resetEvent) {
@@ -132,30 +128,30 @@ function createCounterStores() {
132
128
 
133
129
  // Example usage (non-Svelte demonstration)
134
130
  function runExample() {
135
- console.log("=== Svelte Counter Example ===\n");
131
+ console.log('=== Svelte Counter Example ===\n');
136
132
 
137
133
  const { engine, countStore } = createCounterStores();
138
134
 
139
135
  // Subscribe to count changes
140
- console.log("Subscribing to count changes...\n");
136
+ console.log('Subscribing to count changes...\n');
141
137
  const unsubscribe = countStore.subscribe((count) => {
142
138
  console.log(`Count changed: ${count}`);
143
139
  });
144
140
 
145
141
  // Dispatch some events
146
- console.log("\nIncrementing by 1:");
142
+ console.log('\nIncrementing by 1:');
147
143
  engine.step([Increment.create({})]);
148
144
 
149
- console.log("\nIncrementing by 5:");
145
+ console.log('\nIncrementing by 5:');
150
146
  engine.step([Increment.create({ amount: 5 })]);
151
147
 
152
- console.log("\nDecrementing by 2:");
148
+ console.log('\nDecrementing by 2:');
153
149
  engine.step([Decrement.create({ amount: 2 })]);
154
150
 
155
- console.log("\nResetting:");
151
+ console.log('\nResetting:');
156
152
  engine.step([Reset.create({})]);
157
153
 
158
- console.log("\nContext:", engine.getContext());
154
+ console.log('\nContext:', engine.getContext());
159
155
 
160
156
  unsubscribe();
161
157
  }
package/src/flows.ts CHANGED
@@ -41,10 +41,7 @@ export interface FlowStep<E extends PraxisEvent = PraxisEvent> {
41
41
  /**
42
42
  * An actor maintains its own state and responds to events.
43
43
  */
44
- export interface Actor<
45
- S extends PraxisState = PraxisState,
46
- E extends PraxisEvent = PraxisEvent
47
- > {
44
+ export interface Actor<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent> {
48
45
  /** Unique identifier for the actor */
49
46
  id: string;
50
47
  /** Current state of the actor */
@@ -135,13 +132,8 @@ export function isFlowWaitingFor<E extends PraxisEvent = PraxisEvent>(
135
132
  */
136
133
  export function createActor<
137
134
  S extends PraxisState = PraxisState,
138
- E extends PraxisEvent = PraxisEvent
139
- >(
140
- id: string,
141
- initialState: S,
142
- stepFunction: StepFunction<S, E>,
143
- type?: string
144
- ): Actor<S, E> {
135
+ E extends PraxisEvent = PraxisEvent,
136
+ >(id: string, initialState: S, stepFunction: StepFunction<S, E>, type?: string): Actor<S, E> {
145
137
  return {
146
138
  id,
147
139
  state: initialState,
@@ -159,7 +151,7 @@ export function createActor<
159
151
  */
160
152
  export function processActorEvent<
161
153
  S extends PraxisState = PraxisState,
162
- E extends PraxisEvent = PraxisEvent
154
+ E extends PraxisEvent = PraxisEvent,
163
155
  >(actor: Actor<S, E>, event: E): { actor: Actor<S, E>; result: StepResult<S> } {
164
156
  const result = actor.step(actor.state, event);
165
157
 
@@ -174,10 +166,7 @@ export function processActorEvent<
174
166
  /**
175
167
  * Actor system for managing multiple actors.
176
168
  */
177
- export class ActorSystem<
178
- S extends PraxisState = PraxisState,
179
- E extends PraxisEvent = PraxisEvent
180
- > {
169
+ export class ActorSystem<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent> {
181
170
  private actors: Map<string, Actor<S, E>> = new Map();
182
171
 
183
172
  /**
@@ -262,7 +251,7 @@ export class ActorSystem<
262
251
  */
263
252
  export function createActorSystem<
264
253
  S extends PraxisState = PraxisState,
265
- E extends PraxisEvent = PraxisEvent
254
+ E extends PraxisEvent = PraxisEvent,
266
255
  >(): ActorSystem<S, E> {
267
256
  return new ActorSystem<S, E>();
268
257
  }
@@ -0,0 +1,204 @@
1
+ /**
2
+ * Praxis - Practical, Provable Application Logic (Browser Build)
3
+ *
4
+ * A typed, functional application logic engine built on strong types.
5
+ */
6
+
7
+ // Core protocol (language-neutral types)
8
+ export type {
9
+ PraxisFact,
10
+ PraxisEvent,
11
+ PraxisState,
12
+ PraxisDiagnostics,
13
+ PraxisStepConfig,
14
+ PraxisStepResult,
15
+ PraxisStepFn,
16
+ } from './core/protocol.js';
17
+ export { PRAXIS_PROTOCOL_VERSION } from './core/protocol.js';
18
+
19
+ // Rules and constraints
20
+ export type {
21
+ RuleId,
22
+ ConstraintId,
23
+ RuleFn,
24
+ ConstraintFn,
25
+ RuleDescriptor,
26
+ ConstraintDescriptor,
27
+ PraxisModule,
28
+ } from './core/rules.js';
29
+ export { PraxisRegistry } from './core/rules.js';
30
+
31
+ // Engine
32
+ export type { PraxisEngineOptions } from './core/engine.js';
33
+ export { LogicEngine, createPraxisEngine } from './core/engine.js';
34
+ export * from './core/reactive-engine.svelte.js';
35
+
36
+ // Actors
37
+ export type { Actor } from './core/actors.js';
38
+ export { ActorManager, createTimerActor } from './core/actors.js';
39
+
40
+ // Introspection
41
+ export type {
42
+ RuleNode,
43
+ ConstraintNode,
44
+ GraphEdge,
45
+ RegistryGraph,
46
+ RuleSchema,
47
+ ConstraintSchema,
48
+ RegistrySchema,
49
+ RegistryStats,
50
+ } from './core/introspection.js';
51
+ export { RegistryIntrospector, createIntrospector } from './core/introspection.js';
52
+
53
+ // DSL helpers
54
+ export {
55
+ defineFact,
56
+ defineEvent,
57
+ defineRule,
58
+ defineConstraint,
59
+ defineModule,
60
+ filterEvents,
61
+ filterFacts,
62
+ findEvent,
63
+ findFact,
64
+ } from './dsl/index.js';
65
+ export type {
66
+ FactDefinition,
67
+ EventDefinition,
68
+ DefineRuleOptions,
69
+ DefineConstraintOptions,
70
+ DefineModuleOptions,
71
+ } from './dsl/index.js';
72
+
73
+ // Terminal Node Runtime - EXCLUDED FOR BROWSER (uses child_process)
74
+ // export type { ... } from './runtime/terminal-adapter.js';
75
+ // export { ... } from './runtime/terminal-adapter.js';
76
+
77
+ // Schema Types (including Terminal Node types)
78
+ export type {
79
+ PraxisSchema,
80
+ NodeDefinition,
81
+ NodeBindings,
82
+ TerminalNodeProps,
83
+ OrchestrationDefinition,
84
+ ValidationResult,
85
+ ValidationError,
86
+ ModelDefinition,
87
+ ComponentDefinition,
88
+ LogicDefinition,
89
+ } from './core/schema/types.js';
90
+ export { validateSchema, createSchemaTemplate } from './core/schema/types.js';
91
+
92
+ // Schema Loader (supports JSON, YAML, and TS)
93
+ export type { LoaderOptions, LoaderResult } from './core/schema/loader.common.js';
94
+ export {
95
+ createSchema,
96
+ loadSchemaFromJson,
97
+ loadSchemaFromYaml,
98
+ validateForGeneration,
99
+ } from './core/schema/loader.common.js';
100
+
101
+ // PluresDB Integration
102
+ export type {
103
+ PraxisDB,
104
+ UnsubscribeFn,
105
+ EventStreamEntry,
106
+ PraxisDBStoreOptions,
107
+ StoredSchema,
108
+ PluresDBGeneratorOptions,
109
+ GeneratedPluresDBFile,
110
+ PluresDBAdapter,
111
+ PluresDBAdapterOptions,
112
+ } from './integrations/pluresdb.js';
113
+ export {
114
+ InMemoryPraxisDB,
115
+ createInMemoryDB,
116
+ PraxisDBStore,
117
+ createPraxisDBStore,
118
+ PRAXIS_PATHS,
119
+ getFactPath,
120
+ getEventPath,
121
+ generateId,
122
+ PraxisSchemaRegistry,
123
+ createSchemaRegistry,
124
+ registerSchema,
125
+ getSchemaPath,
126
+ PluresDBGenerator,
127
+ createPluresDBGenerator,
128
+ createPluresDBAdapter,
129
+ attachToEngine,
130
+ } from './integrations/pluresdb.js';
131
+
132
+ // Unum Integration (Identity & Channels)
133
+ export type {
134
+ UnumStore,
135
+ UnumChannel,
136
+ UnumMessage,
137
+ UnumIdentity,
138
+ UnumAdapterConfig,
139
+ UnumAdapter,
140
+ } from './integrations/unum.js';
141
+ export { createUnumAdapter, attachUnumToEngine } from './integrations/unum.js';
142
+
143
+ // CodeCanvas Integration (Visual Schema Editor)
144
+ export type {
145
+ CanvasNode,
146
+ CanvasEdge,
147
+ CanvasNodeStyle,
148
+ CanvasEdgeStyle,
149
+ CanvasDocument,
150
+ LifecycleState,
151
+ ActivityState,
152
+ CanvasEditorConfig,
153
+ GuardianResult,
154
+ GuardianError,
155
+ GuardianWarning,
156
+ } from './integrations/code-canvas.js';
157
+ export {
158
+ schemaToCanvas,
159
+ canvasToSchema,
160
+ canvasToYaml,
161
+ canvasToMermaid,
162
+ validateWithGuardian,
163
+ createCanvasEditor,
164
+ } from './integrations/code-canvas.js';
165
+
166
+ // State-Docs Integration (Documentation Generation)
167
+ export type {
168
+ StateDocsConfig,
169
+ GeneratedDoc,
170
+ StateMachineDoc,
171
+ StateDoc,
172
+ TransitionDoc,
173
+ } from './integrations/state-docs.js';
174
+ export {
175
+ StateDocsGenerator,
176
+ createStateDocsGenerator,
177
+ generateDocs,
178
+ } from './integrations/state-docs.js';
179
+
180
+ // Tauri Integration (Desktop Apps)
181
+ export type {
182
+ TauriAppConfig,
183
+ TauriWindowConfig,
184
+ TauriSecurityConfig,
185
+ TauriUpdateConfig,
186
+ TauriPlugin,
187
+ TauriCommand,
188
+ TauriEvent,
189
+ TauriFS,
190
+ TauriFileEntry,
191
+ TauriTray,
192
+ TauriMenuItem,
193
+ TauriNotification,
194
+ TauriNotificationOptions,
195
+ TauriBridge,
196
+ TauriUpdateInfo,
197
+ TauriPraxisAdapter,
198
+ } from './integrations/tauri.js';
199
+ export {
200
+ createMockTauriBridge,
201
+ createTauriPraxisAdapter,
202
+ attachTauriToEngine,
203
+ generateTauriConfig,
204
+ } from './integrations/tauri.js';
package/src/index.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Praxis - Practical, Provable Application Logic
3
- *
3
+ *
4
4
  * A typed, functional application logic engine built on strong types.
5
- *
5
+ *
6
6
  * Core concepts:
7
7
  * - Facts: typed propositions about the domain
8
8
  * - Events: temporally ordered facts meant to drive change
@@ -10,15 +10,15 @@
10
10
  * - Constraints: invariants that must always hold
11
11
  * - Flows: orchestrated behaviors
12
12
  * - Actors: effectful units that perform side effects
13
- *
13
+ *
14
14
  * @example
15
15
  * ```typescript
16
16
  * import { createPraxisEngine, PraxisRegistry, defineFact, defineEvent, defineRule } from "@plures/praxis";
17
- *
17
+ *
18
18
  * // Define facts and events
19
19
  * const UserLoggedIn = defineFact<"UserLoggedIn", { userId: string }>("UserLoggedIn");
20
20
  * const Login = defineEvent<"LOGIN", { username: string }>("LOGIN");
21
- *
21
+ *
22
22
  * // Define rules
23
23
  * const loginRule = defineRule({
24
24
  * id: "auth.login",
@@ -31,16 +31,16 @@
31
31
  * return [];
32
32
  * }
33
33
  * });
34
- *
34
+ *
35
35
  * // Create engine
36
36
  * const registry = new PraxisRegistry();
37
37
  * registry.registerRule(loginRule);
38
- *
38
+ *
39
39
  * const engine = createPraxisEngine({
40
40
  * initialContext: {},
41
41
  * registry
42
42
  * });
43
- *
43
+ *
44
44
  * // Dispatch events
45
45
  * const result = engine.step([Login.create({ username: "alice" })]);
46
46
  * console.log(result.state.facts); // [{ tag: "UserLoggedIn", payload: { userId: "alice" } }]
@@ -56,8 +56,8 @@ export type {
56
56
  PraxisStepConfig,
57
57
  PraxisStepResult,
58
58
  PraxisStepFn,
59
- } from "./core/protocol.js";
60
- export { PRAXIS_PROTOCOL_VERSION } from "./core/protocol.js";
59
+ } from './core/protocol.js';
60
+ export { PRAXIS_PROTOCOL_VERSION } from './core/protocol.js';
61
61
 
62
62
  // Rules and constraints
63
63
  export type {
@@ -68,16 +68,17 @@ export type {
68
68
  RuleDescriptor,
69
69
  ConstraintDescriptor,
70
70
  PraxisModule,
71
- } from "./core/rules.js";
72
- export { PraxisRegistry } from "./core/rules.js";
71
+ } from './core/rules.js';
72
+ export { PraxisRegistry } from './core/rules.js';
73
73
 
74
74
  // Engine
75
- export type { PraxisEngineOptions } from "./core/engine.js";
76
- export { LogicEngine, createPraxisEngine } from "./core/engine.js";
75
+ export type { PraxisEngineOptions } from './core/engine.js';
76
+ export { LogicEngine, createPraxisEngine } from './core/engine.js';
77
+ export * from './core/reactive-engine.svelte.js';
77
78
 
78
79
  // Actors
79
- export type { Actor } from "./core/actors.js";
80
- export { ActorManager, createTimerActor } from "./core/actors.js";
80
+ export type { Actor } from './core/actors.js';
81
+ export { ActorManager, createTimerActor } from './core/actors.js';
81
82
 
82
83
  // Introspection
83
84
  export type {
@@ -89,8 +90,8 @@ export type {
89
90
  ConstraintSchema,
90
91
  RegistrySchema,
91
92
  RegistryStats,
92
- } from "./core/introspection.js";
93
- export { RegistryIntrospector, createIntrospector } from "./core/introspection.js";
93
+ } from './core/introspection.js';
94
+ export { RegistryIntrospector, createIntrospector } from './core/introspection.js';
94
95
 
95
96
  // DSL helpers
96
97
  export {
@@ -103,14 +104,14 @@ export {
103
104
  filterFacts,
104
105
  findEvent,
105
106
  findFact,
106
- } from "./dsl/index.js";
107
+ } from './dsl/index.js';
107
108
  export type {
108
109
  FactDefinition,
109
110
  EventDefinition,
110
111
  DefineRuleOptions,
111
112
  DefineConstraintOptions,
112
113
  DefineModuleOptions,
113
- } from "./dsl/index.js";
114
+ } from './dsl/index.js';
114
115
 
115
116
  // Terminal Node Runtime
116
117
  export type {
@@ -118,13 +119,13 @@ export type {
118
119
  TerminalNodeState,
119
120
  TerminalAdapterOptions,
120
121
  CommandExecutor,
121
- } from "./runtime/terminal-adapter.js";
122
+ } from './runtime/terminal-adapter.js';
122
123
  export {
123
124
  TerminalAdapter,
124
125
  createTerminalAdapter,
125
126
  runTerminalCommand,
126
127
  createMockExecutor,
127
- } from "./runtime/terminal-adapter.js";
128
+ } from './runtime/terminal-adapter.js';
128
129
 
129
130
  // Schema Types (including Terminal Node types)
130
131
  export type {
@@ -138,21 +139,18 @@ export type {
138
139
  ModelDefinition,
139
140
  ComponentDefinition,
140
141
  LogicDefinition,
141
- } from "./core/schema/types.js";
142
- export { validateSchema, createSchemaTemplate } from "./core/schema/types.js";
142
+ } from './core/schema/types.js';
143
+ export { validateSchema, createSchemaTemplate } from './core/schema/types.js';
143
144
 
144
145
  // Schema Loader (supports JSON, YAML, and TS)
145
- export type {
146
- LoaderOptions,
147
- LoaderResult,
148
- } from "./core/schema/loader.js";
146
+ export type { LoaderOptions, LoaderResult } from './core/schema/loader.js';
149
147
  export {
150
148
  loadSchema,
151
149
  loadSchemaFromJson,
152
150
  loadSchemaFromYaml,
153
151
  loadSchemaFromFile,
154
152
  validateForGeneration,
155
- } from "./core/schema/loader.js";
153
+ } from './core/schema/loader.js';
156
154
 
157
155
  // PluresDB Integration
158
156
  export type {
@@ -165,7 +163,7 @@ export type {
165
163
  GeneratedPluresDBFile,
166
164
  PluresDBAdapter,
167
165
  PluresDBAdapterOptions,
168
- } from "./integrations/pluresdb.js";
166
+ } from './integrations/pluresdb.js';
169
167
  export {
170
168
  InMemoryPraxisDB,
171
169
  createInMemoryDB,
@@ -183,7 +181,7 @@ export {
183
181
  createPluresDBGenerator,
184
182
  createPluresDBAdapter,
185
183
  attachToEngine,
186
- } from "./integrations/pluresdb.js";
184
+ } from './integrations/pluresdb.js';
187
185
 
188
186
  // Unum Integration (Identity & Channels)
189
187
  export type {
@@ -193,11 +191,8 @@ export type {
193
191
  UnumIdentity,
194
192
  UnumAdapterConfig,
195
193
  UnumAdapter,
196
- } from "./integrations/unum.js";
197
- export {
198
- createUnumAdapter,
199
- attachUnumToEngine,
200
- } from "./integrations/unum.js";
194
+ } from './integrations/unum.js';
195
+ export { createUnumAdapter, attachUnumToEngine } from './integrations/unum.js';
201
196
 
202
197
  // CodeCanvas Integration (Visual Schema Editor)
203
198
  export type {
@@ -212,7 +207,7 @@ export type {
212
207
  GuardianResult,
213
208
  GuardianError,
214
209
  GuardianWarning,
215
- } from "./integrations/code-canvas.js";
210
+ } from './integrations/code-canvas.js';
216
211
  export {
217
212
  schemaToCanvas,
218
213
  canvasToSchema,
@@ -220,7 +215,7 @@ export {
220
215
  canvasToMermaid,
221
216
  validateWithGuardian,
222
217
  createCanvasEditor,
223
- } from "./integrations/code-canvas.js";
218
+ } from './integrations/code-canvas.js';
224
219
 
225
220
  // State-Docs Integration (Documentation Generation)
226
221
  export type {
@@ -229,12 +224,12 @@ export type {
229
224
  StateMachineDoc,
230
225
  StateDoc,
231
226
  TransitionDoc,
232
- } from "./integrations/state-docs.js";
227
+ } from './integrations/state-docs.js';
233
228
  export {
234
229
  StateDocsGenerator,
235
230
  createStateDocsGenerator,
236
231
  generateDocs,
237
- } from "./integrations/state-docs.js";
232
+ } from './integrations/state-docs.js';
238
233
 
239
234
  // Tauri Integration (Desktop Apps)
240
235
  export type {
@@ -254,10 +249,10 @@ export type {
254
249
  TauriBridge,
255
250
  TauriUpdateInfo,
256
251
  TauriPraxisAdapter,
257
- } from "./integrations/tauri.js";
252
+ } from './integrations/tauri.js';
258
253
  export {
259
254
  createMockTauriBridge,
260
255
  createTauriPraxisAdapter,
261
256
  attachTauriToEngine,
262
257
  generateTauriConfig,
263
- } from "./integrations/tauri.js";
258
+ } from './integrations/tauri.js';