@plures/praxis 1.0.2 → 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 (518) 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 -96
  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 +49 -0
  133. package/src/cli/index.ts +21 -2
  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/index.d.ts +0 -8
  294. package/dist/src/cli/index.d.ts.map +0 -1
  295. package/dist/src/cli/index.js +0 -211
  296. package/dist/src/cli/index.js.map +0 -1
  297. package/dist/src/cloud/auth.d.ts +0 -51
  298. package/dist/src/cloud/auth.d.ts.map +0 -1
  299. package/dist/src/cloud/auth.js +0 -194
  300. package/dist/src/cloud/auth.js.map +0 -1
  301. package/dist/src/cloud/billing.d.ts +0 -184
  302. package/dist/src/cloud/billing.d.ts.map +0 -1
  303. package/dist/src/cloud/billing.js +0 -179
  304. package/dist/src/cloud/billing.js.map +0 -1
  305. package/dist/src/cloud/client.d.ts +0 -39
  306. package/dist/src/cloud/client.d.ts.map +0 -1
  307. package/dist/src/cloud/client.js +0 -176
  308. package/dist/src/cloud/client.js.map +0 -1
  309. package/dist/src/cloud/index.d.ts +0 -44
  310. package/dist/src/cloud/index.d.ts.map +0 -1
  311. package/dist/src/cloud/index.js +0 -44
  312. package/dist/src/cloud/index.js.map +0 -1
  313. package/dist/src/cloud/marketplace.d.ts +0 -166
  314. package/dist/src/cloud/marketplace.d.ts.map +0 -1
  315. package/dist/src/cloud/marketplace.js +0 -159
  316. package/dist/src/cloud/marketplace.js.map +0 -1
  317. package/dist/src/cloud/provisioning.d.ts +0 -110
  318. package/dist/src/cloud/provisioning.d.ts.map +0 -1
  319. package/dist/src/cloud/provisioning.js +0 -148
  320. package/dist/src/cloud/provisioning.js.map +0 -1
  321. package/dist/src/cloud/relay/endpoints.d.ts +0 -62
  322. package/dist/src/cloud/relay/endpoints.d.ts.map +0 -1
  323. package/dist/src/cloud/relay/endpoints.js +0 -217
  324. package/dist/src/cloud/relay/endpoints.js.map +0 -1
  325. package/dist/src/cloud/relay/health/index.d.ts +0 -5
  326. package/dist/src/cloud/relay/health/index.d.ts.map +0 -1
  327. package/dist/src/cloud/relay/health/index.js +0 -9
  328. package/dist/src/cloud/relay/health/index.js.map +0 -1
  329. package/dist/src/cloud/relay/stats/index.d.ts +0 -5
  330. package/dist/src/cloud/relay/stats/index.d.ts.map +0 -1
  331. package/dist/src/cloud/relay/stats/index.js +0 -9
  332. package/dist/src/cloud/relay/stats/index.js.map +0 -1
  333. package/dist/src/cloud/relay/sync/index.d.ts +0 -5
  334. package/dist/src/cloud/relay/sync/index.d.ts.map +0 -1
  335. package/dist/src/cloud/relay/sync/index.js +0 -9
  336. package/dist/src/cloud/relay/sync/index.js.map +0 -1
  337. package/dist/src/cloud/relay/usage/index.d.ts +0 -5
  338. package/dist/src/cloud/relay/usage/index.d.ts.map +0 -1
  339. package/dist/src/cloud/relay/usage/index.js +0 -9
  340. package/dist/src/cloud/relay/usage/index.js.map +0 -1
  341. package/dist/src/cloud/sponsors.d.ts +0 -81
  342. package/dist/src/cloud/sponsors.d.ts.map +0 -1
  343. package/dist/src/cloud/sponsors.js +0 -130
  344. package/dist/src/cloud/sponsors.js.map +0 -1
  345. package/dist/src/cloud/types.d.ts +0 -169
  346. package/dist/src/cloud/types.d.ts.map +0 -1
  347. package/dist/src/cloud/types.js +0 -7
  348. package/dist/src/cloud/types.js.map +0 -1
  349. package/dist/src/components/index.d.ts.map +0 -1
  350. package/dist/src/components/index.js +0 -17
  351. package/dist/src/components/index.js.map +0 -1
  352. package/dist/src/core/actors.d.ts +0 -95
  353. package/dist/src/core/actors.d.ts.map +0 -1
  354. package/dist/src/core/actors.js +0 -158
  355. package/dist/src/core/actors.js.map +0 -1
  356. package/dist/src/core/component/generator.d.ts.map +0 -1
  357. package/dist/src/core/component/generator.js +0 -349
  358. package/dist/src/core/component/generator.js.map +0 -1
  359. package/dist/src/core/engine.d.ts +0 -92
  360. package/dist/src/core/engine.d.ts.map +0 -1
  361. package/dist/src/core/engine.js +0 -199
  362. package/dist/src/core/engine.js.map +0 -1
  363. package/dist/src/core/introspection.d.ts +0 -141
  364. package/dist/src/core/introspection.d.ts.map +0 -1
  365. package/dist/src/core/introspection.js +0 -208
  366. package/dist/src/core/introspection.js.map +0 -1
  367. package/dist/src/core/logic/generator.d.ts +0 -76
  368. package/dist/src/core/logic/generator.d.ts.map +0 -1
  369. package/dist/src/core/logic/generator.js +0 -370
  370. package/dist/src/core/logic/generator.js.map +0 -1
  371. package/dist/src/core/pluresdb/adapter.d.ts +0 -72
  372. package/dist/src/core/pluresdb/adapter.d.ts.map +0 -1
  373. package/dist/src/core/pluresdb/adapter.js +0 -73
  374. package/dist/src/core/pluresdb/adapter.js.map +0 -1
  375. package/dist/src/core/pluresdb/generator.d.ts +0 -58
  376. package/dist/src/core/pluresdb/generator.d.ts.map +0 -1
  377. package/dist/src/core/pluresdb/generator.js +0 -191
  378. package/dist/src/core/pluresdb/generator.js.map +0 -1
  379. package/dist/src/core/pluresdb/index.d.ts +0 -15
  380. package/dist/src/core/pluresdb/index.d.ts.map +0 -1
  381. package/dist/src/core/pluresdb/index.js +0 -11
  382. package/dist/src/core/pluresdb/index.js.map +0 -1
  383. package/dist/src/core/pluresdb/schema-registry.d.ts +0 -104
  384. package/dist/src/core/pluresdb/schema-registry.d.ts.map +0 -1
  385. package/dist/src/core/pluresdb/schema-registry.js +0 -130
  386. package/dist/src/core/pluresdb/schema-registry.js.map +0 -1
  387. package/dist/src/core/pluresdb/store.d.ts +0 -199
  388. package/dist/src/core/pluresdb/store.d.ts.map +0 -1
  389. package/dist/src/core/pluresdb/store.js +0 -344
  390. package/dist/src/core/pluresdb/store.js.map +0 -1
  391. package/dist/src/core/protocol.d.ts.map +0 -1
  392. package/dist/src/core/protocol.js +0 -46
  393. package/dist/src/core/protocol.js.map +0 -1
  394. package/dist/src/core/rules.d.ts +0 -120
  395. package/dist/src/core/rules.d.ts.map +0 -1
  396. package/dist/src/core/rules.js +0 -81
  397. package/dist/src/core/rules.js.map +0 -1
  398. package/dist/src/core/schema/loader.d.ts +0 -47
  399. package/dist/src/core/schema/loader.d.ts.map +0 -1
  400. package/dist/src/core/schema/loader.js +0 -189
  401. package/dist/src/core/schema/loader.js.map +0 -1
  402. package/dist/src/core/schema/normalize.d.ts +0 -72
  403. package/dist/src/core/schema/normalize.d.ts.map +0 -1
  404. package/dist/src/core/schema/normalize.js +0 -190
  405. package/dist/src/core/schema/normalize.js.map +0 -1
  406. package/dist/src/core/schema/types.d.ts.map +0 -1
  407. package/dist/src/core/schema/types.js +0 -161
  408. package/dist/src/core/schema/types.js.map +0 -1
  409. package/dist/src/dsl/index.d.ts +0 -152
  410. package/dist/src/dsl/index.d.ts.map +0 -1
  411. package/dist/src/dsl/index.js +0 -132
  412. package/dist/src/dsl/index.js.map +0 -1
  413. package/dist/src/dsl.d.ts +0 -124
  414. package/dist/src/dsl.d.ts.map +0 -1
  415. package/dist/src/dsl.js +0 -130
  416. package/dist/src/dsl.js.map +0 -1
  417. package/dist/src/examples/advanced-todo/index.d.ts +0 -55
  418. package/dist/src/examples/advanced-todo/index.d.ts.map +0 -1
  419. package/dist/src/examples/advanced-todo/index.js +0 -222
  420. package/dist/src/examples/advanced-todo/index.js.map +0 -1
  421. package/dist/src/examples/auth-basic/index.d.ts +0 -17
  422. package/dist/src/examples/auth-basic/index.d.ts.map +0 -1
  423. package/dist/src/examples/auth-basic/index.js +0 -122
  424. package/dist/src/examples/auth-basic/index.js.map +0 -1
  425. package/dist/src/examples/cart/index.d.ts +0 -19
  426. package/dist/src/examples/cart/index.d.ts.map +0 -1
  427. package/dist/src/examples/cart/index.js +0 -202
  428. package/dist/src/examples/cart/index.js.map +0 -1
  429. package/dist/src/examples/hero-ecommerce/index.d.ts +0 -39
  430. package/dist/src/examples/hero-ecommerce/index.d.ts.map +0 -1
  431. package/dist/src/examples/hero-ecommerce/index.js +0 -506
  432. package/dist/src/examples/hero-ecommerce/index.js.map +0 -1
  433. package/dist/src/examples/svelte-counter/index.d.ts +0 -31
  434. package/dist/src/examples/svelte-counter/index.d.ts.map +0 -1
  435. package/dist/src/examples/svelte-counter/index.js +0 -123
  436. package/dist/src/examples/svelte-counter/index.js.map +0 -1
  437. package/dist/src/flows.d.ts +0 -125
  438. package/dist/src/flows.d.ts.map +0 -1
  439. package/dist/src/flows.js +0 -160
  440. package/dist/src/flows.js.map +0 -1
  441. package/dist/src/index.d.ts +0 -77
  442. package/dist/src/index.d.ts.map +0 -1
  443. package/dist/src/index.js +0 -64
  444. package/dist/src/index.js.map +0 -1
  445. package/dist/src/integrations/code-canvas.d.ts +0 -265
  446. package/dist/src/integrations/code-canvas.d.ts.map +0 -1
  447. package/dist/src/integrations/code-canvas.js +0 -451
  448. package/dist/src/integrations/code-canvas.js.map +0 -1
  449. package/dist/src/integrations/pluresdb.d.ts +0 -117
  450. package/dist/src/integrations/pluresdb.d.ts.map +0 -1
  451. package/dist/src/integrations/pluresdb.js +0 -117
  452. package/dist/src/integrations/pluresdb.js.map +0 -1
  453. package/dist/src/integrations/state-docs.d.ts +0 -191
  454. package/dist/src/integrations/state-docs.d.ts.map +0 -1
  455. package/dist/src/integrations/state-docs.js +0 -515
  456. package/dist/src/integrations/state-docs.js.map +0 -1
  457. package/dist/src/integrations/svelte.d.ts.map +0 -1
  458. package/dist/src/integrations/svelte.js +0 -447
  459. package/dist/src/integrations/svelte.js.map +0 -1
  460. package/dist/src/integrations/tauri.d.ts +0 -360
  461. package/dist/src/integrations/tauri.d.ts.map +0 -1
  462. package/dist/src/integrations/tauri.js +0 -278
  463. package/dist/src/integrations/tauri.js.map +0 -1
  464. package/dist/src/integrations/unum.d.ts +0 -159
  465. package/dist/src/integrations/unum.d.ts.map +0 -1
  466. package/dist/src/integrations/unum.js +0 -240
  467. package/dist/src/integrations/unum.js.map +0 -1
  468. package/dist/src/registry.d.ts +0 -94
  469. package/dist/src/registry.d.ts.map +0 -1
  470. package/dist/src/registry.js +0 -181
  471. package/dist/src/registry.js.map +0 -1
  472. package/dist/src/runtime/terminal-adapter.d.ts.map +0 -1
  473. package/dist/src/runtime/terminal-adapter.js +0 -239
  474. package/dist/src/runtime/terminal-adapter.js.map +0 -1
  475. package/dist/src/step.d.ts +0 -34
  476. package/dist/src/step.d.ts.map +0 -1
  477. package/dist/src/step.js +0 -111
  478. package/dist/src/step.js.map +0 -1
  479. package/dist/src/types.d.ts +0 -63
  480. package/dist/src/types.d.ts.map +0 -1
  481. package/dist/src/types.js +0 -6
  482. package/dist/src/types.js.map +0 -1
  483. package/dist/tools/cli/commands/index.d.ts +0 -7
  484. package/dist/tools/cli/commands/index.d.ts.map +0 -1
  485. package/dist/tools/cli/commands/index.js +0 -7
  486. package/dist/tools/cli/commands/index.js.map +0 -1
  487. package/dist/tools/cli/index.d.ts +0 -8
  488. package/dist/tools/cli/index.d.ts.map +0 -1
  489. package/dist/tools/cli/index.js +0 -9
  490. package/dist/tools/cli/index.js.map +0 -1
  491. package/dist/tools/watcher/index.d.ts +0 -105
  492. package/dist/tools/watcher/index.d.ts.map +0 -1
  493. package/dist/tools/watcher/index.js +0 -213
  494. package/dist/tools/watcher/index.js.map +0 -1
  495. package/dist/ui/canvas/canvas-projection.d.ts +0 -78
  496. package/dist/ui/canvas/canvas-projection.d.ts.map +0 -1
  497. package/dist/ui/canvas/canvas-projection.js +0 -416
  498. package/dist/ui/canvas/canvas-projection.js.map +0 -1
  499. package/dist/ui/canvas/canvas-state.d.ts +0 -200
  500. package/dist/ui/canvas/canvas-state.d.ts.map +0 -1
  501. package/dist/ui/canvas/canvas-state.js +0 -464
  502. package/dist/ui/canvas/canvas-state.js.map +0 -1
  503. package/dist/ui/canvas/components/index.d.ts +0 -95
  504. package/dist/ui/canvas/components/index.d.ts.map +0 -1
  505. package/dist/ui/canvas/components/index.js +0 -19
  506. package/dist/ui/canvas/components/index.js.map +0 -1
  507. package/dist/ui/canvas/index.d.ts +0 -32
  508. package/dist/ui/canvas/index.d.ts.map +0 -1
  509. package/dist/ui/canvas/index.js +0 -32
  510. package/dist/ui/canvas/index.js.map +0 -1
  511. package/dist/ui/svelte-generator/index.d.ts +0 -9
  512. package/dist/ui/svelte-generator/index.d.ts.map +0 -1
  513. package/dist/ui/svelte-generator/index.js +0 -11
  514. package/dist/ui/svelte-generator/index.js.map +0 -1
  515. package/dist/ui/svelte-generator/psf-generator.d.ts +0 -128
  516. package/dist/ui/svelte-generator/psf-generator.d.ts.map +0 -1
  517. package/dist/ui/svelte-generator/psf-generator.js +0 -506
  518. package/dist/ui/svelte-generator/psf-generator.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dsl/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoBH;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CACxB,GAAS;IAET,OAAO;QACL,GAAG;QACH,MAAM,CAAC,OAAiB;YACtB,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;QAC1B,CAAC;QACD,EAAE,CAAC,IAAgB;YACjB,OAAO,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC;AAWD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,GAAS;IAET,OAAO;QACL,GAAG;QACH,MAAM,CAAC,OAAiB;YACtB,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;QAC1B,CAAC;QACD,EAAE,CAAC,KAAkB;YACnB,OAAO,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC;QAC3B,CAAC;KACF,CAAC;AACJ,CAAC;AAYD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,UAAU,CACxB,OAAoC;IAEpC,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC;AACJ,CAAC;AAYD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAA0C;IAE1C,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC;AACJ,CAAC;AAWD;;;;;;;;;GASG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAsC;IAEtC,OAAO;QACL,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;QAC1B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;QACtC,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAC1B,MAAqB,EACrB,UAA2C;IAE3C,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,KAAmB,EACnB,UAA0C;IAE1C,OAAO,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CACvB,MAAqB,EACrB,UAA2C;IAE3C,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CACtB,KAAmB,EACnB,UAA0C;IAE1C,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;AACnC,CAAC"}
package/dist/src/dsl.d.ts DELETED
@@ -1,124 +0,0 @@
1
- /**
2
- * DSL for defining rules and constraints in Praxis.
3
- * Rules are condition-action pairs that fire when conditions are met.
4
- * Constraints are invariants that must hold true in valid states.
5
- */
6
- import type { PraxisState, PraxisEvent, Effect } from './types.js';
7
- /**
8
- * A condition function that checks if a rule should fire.
9
- */
10
- export type Condition<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent> = (state: S, event: E) => boolean;
11
- /**
12
- * An action function that produces effects when a rule fires.
13
- */
14
- export type Action<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent> = (state: S, event: E) => Effect[];
15
- /**
16
- * A rule that fires when its condition is met.
17
- */
18
- export interface Rule<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent> {
19
- /** Unique identifier for the rule */
20
- id: string;
21
- /** Human-readable description of what the rule does */
22
- description?: string;
23
- /** Priority for rule execution (higher numbers = higher priority) */
24
- priority?: number;
25
- /** Condition that must be true for the rule to fire */
26
- when: Condition<S, E>;
27
- /** Action to execute when the rule fires */
28
- then: Action<S, E>;
29
- /** Optional event type filter - only check this rule for matching events */
30
- eventType?: string;
31
- }
32
- /**
33
- * A constraint that must hold true in valid states.
34
- */
35
- export interface Constraint<S extends PraxisState = PraxisState> {
36
- /** Unique identifier for the constraint */
37
- id: string;
38
- /** Human-readable description of the constraint */
39
- description?: string;
40
- /** Function that returns true if the constraint is satisfied */
41
- check: (state: S) => boolean;
42
- /** Error message to return when constraint is violated */
43
- errorMessage?: string;
44
- }
45
- /**
46
- * Result of checking a constraint.
47
- */
48
- export interface ConstraintViolation {
49
- constraintId: string;
50
- message: string;
51
- state?: PraxisState;
52
- }
53
- /**
54
- * DSL builder for creating rules with a fluent interface.
55
- */
56
- export declare class RuleBuilder<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent> {
57
- private rule;
58
- /**
59
- * Set the rule ID.
60
- */
61
- id(id: string): this;
62
- /**
63
- * Set the rule description.
64
- */
65
- describe(description: string): this;
66
- /**
67
- * Set the rule priority.
68
- */
69
- priority(priority: number): this;
70
- /**
71
- * Set the event type filter.
72
- */
73
- on(eventType: string): this;
74
- /**
75
- * Set the condition for when the rule should fire.
76
- */
77
- when(condition: Condition<S, E>): this;
78
- /**
79
- * Set the action to execute when the rule fires.
80
- */
81
- then(action: Action<S, E>): this;
82
- /**
83
- * Build the final rule.
84
- */
85
- build(): Rule<S, E>;
86
- }
87
- /**
88
- * DSL builder for creating constraints with a fluent interface.
89
- */
90
- export declare class ConstraintBuilder<S extends PraxisState = PraxisState> {
91
- private constraint;
92
- /**
93
- * Set the constraint ID.
94
- */
95
- id(id: string): this;
96
- /**
97
- * Set the constraint description.
98
- */
99
- describe(description: string): this;
100
- /**
101
- * Set the constraint check function.
102
- */
103
- check(check: (state: S) => boolean): this;
104
- /**
105
- * Set the error message for constraint violations.
106
- */
107
- message(errorMessage: string): this;
108
- /**
109
- * Build the final constraint.
110
- */
111
- build(): Constraint<S>;
112
- }
113
- /**
114
- * Factory functions for creating rules and constraints using the DSL.
115
- */
116
- /**
117
- * Create a new rule using the fluent builder API.
118
- */
119
- export declare function rule<S extends PraxisState = PraxisState, E extends PraxisEvent = PraxisEvent>(): RuleBuilder<S, E>;
120
- /**
121
- * Create a new constraint using the fluent builder API.
122
- */
123
- export declare function constraint<S extends PraxisState = PraxisState>(): ConstraintBuilder<S>;
124
- //# sourceMappingURL=dsl.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dsl.d.ts","sourceRoot":"","sources":["../../src/dsl.ts"],"names":[],"mappings":"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"}
package/dist/src/dsl.js DELETED
@@ -1,130 +0,0 @@
1
- /**
2
- * DSL for defining rules and constraints in Praxis.
3
- * Rules are condition-action pairs that fire when conditions are met.
4
- * Constraints are invariants that must hold true in valid states.
5
- */
6
- /**
7
- * DSL builder for creating rules with a fluent interface.
8
- */
9
- export class RuleBuilder {
10
- rule = {};
11
- /**
12
- * Set the rule ID.
13
- */
14
- id(id) {
15
- this.rule.id = id;
16
- return this;
17
- }
18
- /**
19
- * Set the rule description.
20
- */
21
- describe(description) {
22
- this.rule.description = description;
23
- return this;
24
- }
25
- /**
26
- * Set the rule priority.
27
- */
28
- priority(priority) {
29
- this.rule.priority = priority;
30
- return this;
31
- }
32
- /**
33
- * Set the event type filter.
34
- */
35
- on(eventType) {
36
- this.rule.eventType = eventType;
37
- return this;
38
- }
39
- /**
40
- * Set the condition for when the rule should fire.
41
- */
42
- when(condition) {
43
- this.rule.when = condition;
44
- return this;
45
- }
46
- /**
47
- * Set the action to execute when the rule fires.
48
- */
49
- then(action) {
50
- this.rule.then = action;
51
- return this;
52
- }
53
- /**
54
- * Build the final rule.
55
- */
56
- build() {
57
- if (!this.rule.id) {
58
- throw new Error('Rule must have an id');
59
- }
60
- if (!this.rule.when) {
61
- throw new Error('Rule must have a when condition');
62
- }
63
- if (!this.rule.then) {
64
- throw new Error('Rule must have a then action');
65
- }
66
- return this.rule;
67
- }
68
- }
69
- /**
70
- * DSL builder for creating constraints with a fluent interface.
71
- */
72
- export class ConstraintBuilder {
73
- constraint = {};
74
- /**
75
- * Set the constraint ID.
76
- */
77
- id(id) {
78
- this.constraint.id = id;
79
- return this;
80
- }
81
- /**
82
- * Set the constraint description.
83
- */
84
- describe(description) {
85
- this.constraint.description = description;
86
- return this;
87
- }
88
- /**
89
- * Set the constraint check function.
90
- */
91
- check(check) {
92
- this.constraint.check = check;
93
- return this;
94
- }
95
- /**
96
- * Set the error message for constraint violations.
97
- */
98
- message(errorMessage) {
99
- this.constraint.errorMessage = errorMessage;
100
- return this;
101
- }
102
- /**
103
- * Build the final constraint.
104
- */
105
- build() {
106
- if (!this.constraint.id) {
107
- throw new Error('Constraint must have an id');
108
- }
109
- if (!this.constraint.check) {
110
- throw new Error('Constraint must have a check function');
111
- }
112
- return this.constraint;
113
- }
114
- }
115
- /**
116
- * Factory functions for creating rules and constraints using the DSL.
117
- */
118
- /**
119
- * Create a new rule using the fluent builder API.
120
- */
121
- export function rule() {
122
- return new RuleBuilder();
123
- }
124
- /**
125
- * Create a new constraint using the fluent builder API.
126
- */
127
- export function constraint() {
128
- return new ConstraintBuilder();
129
- }
130
- //# sourceMappingURL=dsl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dsl.js","sourceRoot":"","sources":["../../src/dsl.ts"],"names":[],"mappings":"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"}
@@ -1,55 +0,0 @@
1
- /**
2
- * Advanced Svelte 5 Integration Example
3
- *
4
- * Demonstrates the new Svelte 5 runes support with history state pattern.
5
- * This example shows a todo app with undo/redo and time-travel debugging.
6
- */
7
- interface TodoItem {
8
- id: string;
9
- text: string;
10
- completed: boolean;
11
- createdAt: number;
12
- }
13
- interface TodoContext {
14
- todos: TodoItem[];
15
- filter: 'all' | 'active' | 'completed';
16
- nextId: number;
17
- }
18
- declare const TodoAdded: import("../../index.js").FactDefinition<"TodoAdded", {
19
- id: string;
20
- text: string;
21
- }>;
22
- declare const TodoToggled: import("../../index.js").FactDefinition<"TodoToggled", {
23
- id: string;
24
- }>;
25
- declare const TodoRemoved: import("../../index.js").FactDefinition<"TodoRemoved", {
26
- id: string;
27
- }>;
28
- declare const FilterChanged: import("../../index.js").FactDefinition<"FilterChanged", {
29
- filter: string;
30
- }>;
31
- declare const AllCompleted: import("../../index.js").FactDefinition<"AllCompleted", {}>;
32
- declare const CompletedCleared: import("../../index.js").FactDefinition<"CompletedCleared", {}>;
33
- declare const AddTodo: import("../../index.js").EventDefinition<"ADD_TODO", {
34
- text: string;
35
- }>;
36
- declare const ToggleTodo: import("../../index.js").EventDefinition<"TOGGLE_TODO", {
37
- id: string;
38
- }>;
39
- declare const RemoveTodo: import("../../index.js").EventDefinition<"REMOVE_TODO", {
40
- id: string;
41
- }>;
42
- declare const SetFilter: import("../../index.js").EventDefinition<"SET_FILTER", {
43
- filter: "all" | "active" | "completed";
44
- }>;
45
- declare const CompleteAll: import("../../index.js").EventDefinition<"COMPLETE_ALL", {}>;
46
- declare const ClearCompleted: import("../../index.js").EventDefinition<"CLEAR_COMPLETED", {}>;
47
- export declare function createTodoEngine(): import("../../index.js").LogicEngine<TodoContext>;
48
- export declare function getFilteredTodos(todos: TodoItem[], filter: string): TodoItem[];
49
- export declare function getStats(todos: TodoItem[]): {
50
- total: number;
51
- active: number;
52
- completed: number;
53
- };
54
- export { type TodoItem, type TodoContext, AddTodo, ToggleTodo, RemoveTodo, SetFilter, CompleteAll, ClearCompleted, TodoAdded, TodoToggled, TodoRemoved, FilterChanged, AllCompleted, CompletedCleared, };
55
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/examples/advanced-todo/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAeH,UAAU,QAAQ;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,WAAW;IACnB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,MAAM,EAAE,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,QAAA,MAAM,SAAS;QAAiC,MAAM;UAAQ,MAAM;EAAgB,CAAC;AACrF,QAAA,MAAM,WAAW;QAAmC,MAAM;EAAkB,CAAC;AAC7E,QAAA,MAAM,WAAW;QAAmC,MAAM;EAAkB,CAAC;AAC7E,QAAA,MAAM,aAAa;YAAyC,MAAM;EAAoB,CAAC;AACvF,QAAA,MAAM,YAAY,6DAAiD,CAAC;AACpE,QAAA,MAAM,gBAAgB,iEAAyD,CAAC;AAMhF,QAAA,MAAM,OAAO;UAAmC,MAAM;EAAe,CAAC;AACtE,QAAA,MAAM,UAAU;QAAoC,MAAM;EAAkB,CAAC;AAC7E,QAAA,MAAM,UAAU;QAAoC,MAAM;EAAkB,CAAC;AAC7E,QAAA,MAAM,SAAS;YAAuC,KAAK,GAAG,QAAQ,GAAG,WAAW;EAEnF,CAAC;AACF,QAAA,MAAM,WAAW,8DAAkD,CAAC;AACpE,QAAA,MAAM,cAAc,iEAAwD,CAAC;AA4H7E,wBAAgB,gBAAgB,sDAkB/B;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,EAAE,CAS9E;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE;;;;EAMzC;AAsED,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,WAAW,EAEhB,OAAO,EACP,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,cAAc,EAEd,SAAS,EACT,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,EACZ,gBAAgB,GACjB,CAAC"}
@@ -1,222 +0,0 @@
1
- /**
2
- * Advanced Svelte 5 Integration Example
3
- *
4
- * Demonstrates the new Svelte 5 runes support with history state pattern.
5
- * This example shows a todo app with undo/redo and time-travel debugging.
6
- */
7
- import { createPraxisEngine, PraxisRegistry, defineFact, defineEvent, defineRule, findEvent, } from '../../index.js';
8
- // ============================================================================
9
- // Facts
10
- // ============================================================================
11
- const TodoAdded = defineFact('TodoAdded');
12
- const TodoToggled = defineFact('TodoToggled');
13
- const TodoRemoved = defineFact('TodoRemoved');
14
- const FilterChanged = defineFact('FilterChanged');
15
- const AllCompleted = defineFact('AllCompleted');
16
- const CompletedCleared = defineFact('CompletedCleared');
17
- // ============================================================================
18
- // Events
19
- // ============================================================================
20
- const AddTodo = defineEvent('ADD_TODO');
21
- const ToggleTodo = defineEvent('TOGGLE_TODO');
22
- const RemoveTodo = defineEvent('REMOVE_TODO');
23
- const SetFilter = defineEvent('SET_FILTER');
24
- const CompleteAll = defineEvent('COMPLETE_ALL');
25
- const ClearCompleted = defineEvent('CLEAR_COMPLETED');
26
- // ============================================================================
27
- // Rules
28
- // ============================================================================
29
- const addTodoRule = defineRule({
30
- id: 'todo.add',
31
- description: 'Add a new todo item',
32
- impl: (state, events) => {
33
- const event = findEvent(events, AddTodo);
34
- if (!event || !event.payload.text.trim()) {
35
- return [];
36
- }
37
- const id = `todo-${state.context.nextId}`;
38
- const todo = {
39
- id,
40
- text: event.payload.text.trim(),
41
- completed: false,
42
- createdAt: Date.now(),
43
- };
44
- state.context.todos.push(todo);
45
- state.context.nextId++;
46
- return [TodoAdded.create({ id, text: todo.text })];
47
- },
48
- });
49
- const toggleTodoRule = defineRule({
50
- id: 'todo.toggle',
51
- description: 'Toggle todo completion status',
52
- impl: (state, events) => {
53
- const event = findEvent(events, ToggleTodo);
54
- if (!event) {
55
- return [];
56
- }
57
- const todo = state.context.todos.find((t) => t.id === event.payload.id);
58
- if (todo) {
59
- todo.completed = !todo.completed;
60
- return [TodoToggled.create({ id: todo.id })];
61
- }
62
- return [];
63
- },
64
- });
65
- const removeTodoRule = defineRule({
66
- id: 'todo.remove',
67
- description: 'Remove a todo item',
68
- impl: (state, events) => {
69
- const event = findEvent(events, RemoveTodo);
70
- if (!event) {
71
- return [];
72
- }
73
- const index = state.context.todos.findIndex((t) => t.id === event.payload.id);
74
- if (index !== -1) {
75
- state.context.todos.splice(index, 1);
76
- return [TodoRemoved.create({ id: event.payload.id })];
77
- }
78
- return [];
79
- },
80
- });
81
- const setFilterRule = defineRule({
82
- id: 'todo.setFilter',
83
- description: 'Change the filter',
84
- impl: (state, events) => {
85
- const event = findEvent(events, SetFilter);
86
- if (!event) {
87
- return [];
88
- }
89
- state.context.filter = event.payload.filter;
90
- return [FilterChanged.create({ filter: event.payload.filter })];
91
- },
92
- });
93
- const completeAllRule = defineRule({
94
- id: 'todo.completeAll',
95
- description: 'Mark all todos as completed',
96
- impl: (state, events) => {
97
- const event = findEvent(events, CompleteAll);
98
- if (!event) {
99
- return [];
100
- }
101
- state.context.todos.forEach((todo) => {
102
- todo.completed = true;
103
- });
104
- return [AllCompleted.create({})];
105
- },
106
- });
107
- const clearCompletedRule = defineRule({
108
- id: 'todo.clearCompleted',
109
- description: 'Remove all completed todos',
110
- impl: (state, events) => {
111
- const event = findEvent(events, ClearCompleted);
112
- if (!event) {
113
- return [];
114
- }
115
- const beforeCount = state.context.todos.length;
116
- state.context.todos = state.context.todos.filter((t) => !t.completed);
117
- const afterCount = state.context.todos.length;
118
- if (beforeCount !== afterCount) {
119
- return [CompletedCleared.create({})];
120
- }
121
- return [];
122
- },
123
- });
124
- // ============================================================================
125
- // Engine Factory
126
- // ============================================================================
127
- export function createTodoEngine() {
128
- const registry = new PraxisRegistry();
129
- registry.registerRule(addTodoRule);
130
- registry.registerRule(toggleTodoRule);
131
- registry.registerRule(removeTodoRule);
132
- registry.registerRule(setFilterRule);
133
- registry.registerRule(completeAllRule);
134
- registry.registerRule(clearCompletedRule);
135
- return createPraxisEngine({
136
- initialContext: {
137
- todos: [],
138
- filter: 'all',
139
- nextId: 1,
140
- },
141
- registry,
142
- });
143
- }
144
- // ============================================================================
145
- // Helper Functions for Svelte
146
- // ============================================================================
147
- export function getFilteredTodos(todos, filter) {
148
- switch (filter) {
149
- case 'active':
150
- return todos.filter((t) => !t.completed);
151
- case 'completed':
152
- return todos.filter((t) => t.completed);
153
- default:
154
- return todos;
155
- }
156
- }
157
- export function getStats(todos) {
158
- const total = todos.length;
159
- const active = todos.filter((t) => !t.completed).length;
160
- const completed = todos.filter((t) => t.completed).length;
161
- return { total, active, completed };
162
- }
163
- // ============================================================================
164
- // Example Usage (non-Svelte demonstration)
165
- // ============================================================================
166
- function runExample() {
167
- console.log('=== Advanced Todo Example ===\n');
168
- const engine = createTodoEngine();
169
- // Add some todos
170
- console.log('1. Adding todos:');
171
- engine.step([AddTodo.create({ text: 'Learn Praxis' })]);
172
- engine.step([AddTodo.create({ text: 'Build awesome app' })]);
173
- engine.step([AddTodo.create({ text: 'Deploy to production' })]);
174
- const context1 = engine.getContext();
175
- console.log(` Total todos: ${context1.todos.length}`);
176
- context1.todos.forEach((todo) => {
177
- console.log(` - ${todo.text}`);
178
- });
179
- console.log();
180
- // Toggle a todo
181
- console.log('2. Completing first todo:');
182
- const firstId = context1.todos[0].id;
183
- engine.step([ToggleTodo.create({ id: firstId })]);
184
- const context2 = engine.getContext();
185
- const stats = getStats(context2.todos);
186
- console.log(` Active: ${stats.active}, Completed: ${stats.completed}`);
187
- console.log();
188
- // Change filter
189
- console.log('3. Filtering to active todos:');
190
- engine.step([SetFilter.create({ filter: 'active' })]);
191
- const context3 = engine.getContext();
192
- const filtered = getFilteredTodos(context3.todos, context3.filter);
193
- console.log(` Filter: ${context3.filter}`);
194
- console.log(` Showing ${filtered.length} todos:`);
195
- filtered.forEach((todo) => {
196
- console.log(` - ${todo.text}`);
197
- });
198
- console.log();
199
- // Complete all
200
- console.log('4. Completing all todos:');
201
- engine.step([CompleteAll.create({})]);
202
- const context4 = engine.getContext();
203
- const stats4 = getStats(context4.todos);
204
- console.log(` All completed: ${stats4.completed}/${stats4.total}`);
205
- console.log();
206
- // Clear completed
207
- console.log('5. Clearing completed todos:');
208
- engine.step([ClearCompleted.create({})]);
209
- const context5 = engine.getContext();
210
- console.log(` Remaining todos: ${context5.todos.length}`);
211
- console.log();
212
- }
213
- // Run example if executed directly
214
- if (import.meta.url === `file://${process.argv[1]}`) {
215
- runExample();
216
- }
217
- export {
218
- // Events
219
- AddTodo, ToggleTodo, RemoveTodo, SetFilter, CompleteAll, ClearCompleted,
220
- // Facts
221
- TodoAdded, TodoToggled, TodoRemoved, FilterChanged, AllCompleted, CompletedCleared, };
222
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/examples/advanced-todo/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,EACX,UAAU,EACV,SAAS,GACV,MAAM,gBAAgB,CAAC;AAmBxB,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E,MAAM,SAAS,GAAG,UAAU,CAA4C,WAAW,CAAC,CAAC;AACrF,MAAM,WAAW,GAAG,UAAU,CAAgC,aAAa,CAAC,CAAC;AAC7E,MAAM,WAAW,GAAG,UAAU,CAAgC,aAAa,CAAC,CAAC;AAC7E,MAAM,aAAa,GAAG,UAAU,CAAsC,eAAe,CAAC,CAAC;AACvF,MAAM,YAAY,GAAG,UAAU,CAAqB,cAAc,CAAC,CAAC;AACpE,MAAM,gBAAgB,GAAG,UAAU,CAAyB,kBAAkB,CAAC,CAAC;AAEhF,+EAA+E;AAC/E,SAAS;AACT,+EAA+E;AAE/E,MAAM,OAAO,GAAG,WAAW,CAA+B,UAAU,CAAC,CAAC;AACtE,MAAM,UAAU,GAAG,WAAW,CAAgC,aAAa,CAAC,CAAC;AAC7E,MAAM,UAAU,GAAG,WAAW,CAAgC,aAAa,CAAC,CAAC;AAC7E,MAAM,SAAS,GAAG,WAAW,CAC3B,YAAY,CACb,CAAC;AACF,MAAM,WAAW,GAAG,WAAW,CAAqB,cAAc,CAAC,CAAC;AACpE,MAAM,cAAc,GAAG,WAAW,CAAwB,iBAAiB,CAAC,CAAC;AAE7E,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E,MAAM,WAAW,GAAG,UAAU,CAAc;IAC1C,EAAE,EAAE,UAAU;IACd,WAAW,EAAE,qBAAqB;IAClC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACtB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACzC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,EAAE,GAAG,QAAQ,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAa;YACrB,EAAE;YACF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;YAC/B,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;QAEF,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAEvB,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,UAAU,CAAc;IAC7C,EAAE,EAAE,aAAa;IACjB,WAAW,EAAE,+BAA+B;IAC5C,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACtB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxE,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;YACjC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,UAAU,CAAc;IAC7C,EAAE,EAAE,aAAa;IACjB,WAAW,EAAE,oBAAoB;IACjC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACtB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC9E,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACrC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,UAAU,CAAc;IAC5C,EAAE,EAAE,gBAAgB;IACpB,WAAW,EAAE,mBAAmB;IAChC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACtB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5C,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,UAAU,CAAc;IAC9C,EAAE,EAAE,kBAAkB;IACtB,WAAW,EAAE,6BAA6B;IAC1C,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACtB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,UAAU,CAAc;IACjD,EAAE,EAAE,qBAAqB;IACzB,WAAW,EAAE,4BAA4B;IACzC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QACtB,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAC/C,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACtE,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAE9C,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;YAC/B,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC,CAAC;AAEH,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,MAAM,UAAU,gBAAgB;IAC9B,MAAM,QAAQ,GAAG,IAAI,cAAc,EAAe,CAAC;IAEnD,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACnC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IACrC,QAAQ,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IACvC,QAAQ,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;IAE1C,OAAO,kBAAkB,CAAc;QACrC,cAAc,EAAE;YACd,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,CAAC;SACV;QACD,QAAQ;KACT,CAAC,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,8BAA8B;AAC9B,+EAA+E;AAE/E,MAAM,UAAU,gBAAgB,CAAC,KAAiB,EAAE,MAAc;IAChE,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC3C,KAAK,WAAW;YACd,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC1C;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAiB;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;IACxD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;IAE1D,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AACtC,CAAC;AAED,+EAA+E;AAC/E,2CAA2C;AAC3C,+EAA+E;AAE/E,SAAS,UAAU;IACjB,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAElC,iBAAiB;IACjB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAChC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,mBAAmB,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACxD,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9B,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,gBAAgB;IAChB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,CAAC,MAAM,gBAAgB,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;IACzE,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,gBAAgB;IAChB,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC7C,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;IAErD,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,cAAc,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,cAAc,QAAQ,CAAC,MAAM,SAAS,CAAC,CAAC;IACpD,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,eAAe;IACf,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxC,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEtC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,kBAAkB;IAClB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC5C,MAAM,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,mCAAmC;AACnC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACpD,UAAU,EAAE,CAAC;AACf,CAAC;AAED,OAAO;AAIL,SAAS;AACT,OAAO,EACP,UAAU,EACV,UAAU,EACV,SAAS,EACT,WAAW,EACX,cAAc;AACd,QAAQ;AACR,SAAS,EACT,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,EACZ,gBAAgB,GACjB,CAAC"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Auth Basic Example
3
- *
4
- * Demonstrates basic authentication logic with login/logout using Praxis.
5
- * Shows how to define facts, events, rules, and constraints.
6
- */
7
- interface AuthContext {
8
- currentUser: string | null;
9
- sessions: Array<{
10
- userId: string;
11
- timestamp: number;
12
- }>;
13
- }
14
- declare function createAuthEngine(): import("../../index.js").LogicEngine<AuthContext>;
15
- declare function runExample(): void;
16
- export { createAuthEngine, runExample };
17
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/examples/auth-basic/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAcH,UAAU,WAAW;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACxD;AAuFD,iBAAS,gBAAgB,sDAgBxB;AAGD,iBAAS,UAAU,SA2BlB;AAOD,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC"}