@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,360 +0,0 @@
1
- /**
2
- * Tauri Integration
3
- *
4
- * Integration with plures/svelte-tauri-template for cross-platform desktop applications.
5
- * Provides Praxis engine integration with Tauri 2 for native desktop capabilities.
6
- *
7
- * Features:
8
- * - Cross-Platform: Windows, macOS, Linux, Android, iOS
9
- * - Native Integration: File system, system tray, notifications
10
- * - IPC Bridge: Type-safe communication between Rust and TypeScript
11
- * - Auto-Updates: Built-in update system
12
- * - Code Signing: Support for signed releases
13
- *
14
- * @see https://github.com/plures/svelte-tauri-template
15
- */
16
- import type { LogicEngine } from "../core/engine.js";
17
- import type { PraxisEvent } from "../core/protocol.js";
18
- /**
19
- * Tauri app configuration
20
- */
21
- export interface TauriAppConfig {
22
- /** Application name */
23
- name: string;
24
- /** Application version */
25
- version: string;
26
- /** Application identifier (e.g., com.example.myapp) */
27
- identifier: string;
28
- /** Window configuration */
29
- window?: TauriWindowConfig;
30
- /** Security configuration */
31
- security?: TauriSecurityConfig;
32
- /** Update configuration */
33
- updates?: TauriUpdateConfig;
34
- /** Plugins to enable */
35
- plugins?: TauriPlugin[];
36
- }
37
- /**
38
- * Window configuration
39
- */
40
- export interface TauriWindowConfig {
41
- /** Window title */
42
- title?: string;
43
- /** Window width */
44
- width?: number;
45
- /** Window height */
46
- height?: number;
47
- /** Minimum width */
48
- minWidth?: number;
49
- /** Minimum height */
50
- minHeight?: number;
51
- /** Whether window is resizable */
52
- resizable?: boolean;
53
- /** Whether window is fullscreen */
54
- fullscreen?: boolean;
55
- /** Whether to show title bar */
56
- decorations?: boolean;
57
- /** Whether window is transparent */
58
- transparent?: boolean;
59
- /** Whether to always be on top */
60
- alwaysOnTop?: boolean;
61
- /** Center window on screen */
62
- center?: boolean;
63
- }
64
- /**
65
- * Security configuration
66
- */
67
- export interface TauriSecurityConfig {
68
- /** Content Security Policy */
69
- csp?: string;
70
- /** Allowed domains for fetch */
71
- allowedDomains?: string[];
72
- /** Enable dev tools in production */
73
- devTools?: boolean;
74
- /** Dangerous features to allow */
75
- dangerousAllowList?: string[];
76
- }
77
- /**
78
- * Auto-update configuration
79
- */
80
- export interface TauriUpdateConfig {
81
- /** Enable auto-updates */
82
- enabled: boolean;
83
- /** Update endpoint URL */
84
- endpoint?: string;
85
- /** Update check interval (ms) */
86
- checkInterval?: number;
87
- /** Whether to install silently */
88
- silent?: boolean;
89
- /** Public key for update verification */
90
- publicKey?: string;
91
- }
92
- /**
93
- * Tauri plugin definition
94
- */
95
- export interface TauriPlugin {
96
- /** Plugin name */
97
- name: string;
98
- /** Plugin version */
99
- version?: string;
100
- /** Plugin configuration */
101
- config?: Record<string, unknown>;
102
- }
103
- /**
104
- * IPC message from frontend to backend
105
- */
106
- export interface TauriCommand<T = unknown> {
107
- /** Command name */
108
- cmd: string;
109
- /** Command payload */
110
- payload?: T;
111
- }
112
- /**
113
- * IPC event from backend to frontend
114
- */
115
- export interface TauriEvent<T = unknown> {
116
- /** Event name */
117
- event: string;
118
- /** Event payload */
119
- payload?: T;
120
- /** Window label that emitted the event */
121
- windowLabel?: string;
122
- }
123
- /**
124
- * File system operations
125
- */
126
- export interface TauriFS {
127
- /** Read a file */
128
- readFile(path: string): Promise<Uint8Array>;
129
- /** Read a file as text */
130
- readTextFile(path: string): Promise<string>;
131
- /** Write to a file */
132
- writeFile(path: string, data: Uint8Array): Promise<void>;
133
- /** Write text to a file */
134
- writeTextFile(path: string, data: string): Promise<void>;
135
- /** Check if path exists */
136
- exists(path: string): Promise<boolean>;
137
- /** Create directory */
138
- mkdir(path: string, options?: {
139
- recursive?: boolean;
140
- }): Promise<void>;
141
- /** Remove file or directory */
142
- remove(path: string, options?: {
143
- recursive?: boolean;
144
- }): Promise<void>;
145
- /** Rename/move file */
146
- rename(oldPath: string, newPath: string): Promise<void>;
147
- /** List directory contents */
148
- readDir(path: string): Promise<TauriFileEntry[]>;
149
- }
150
- /**
151
- * File entry from directory listing
152
- */
153
- export interface TauriFileEntry {
154
- /** File name */
155
- name: string;
156
- /** Full path */
157
- path: string;
158
- /** Is directory */
159
- isDirectory: boolean;
160
- /** Is file */
161
- isFile: boolean;
162
- /** File size in bytes */
163
- size?: number;
164
- /** Last modified timestamp */
165
- modifiedAt?: number;
166
- }
167
- /**
168
- * System tray operations
169
- */
170
- export interface TauriTray {
171
- /** Set tray icon */
172
- setIcon(icon: string | Uint8Array): Promise<void>;
173
- /** Set tray tooltip */
174
- setTooltip(tooltip: string): Promise<void>;
175
- /** Set tray menu */
176
- setMenu(menu: TauriMenuItem[]): Promise<void>;
177
- /** Show tray */
178
- show(): Promise<void>;
179
- /** Hide tray */
180
- hide(): Promise<void>;
181
- }
182
- /**
183
- * Tray menu item
184
- */
185
- export interface TauriMenuItem {
186
- /** Item ID */
187
- id: string;
188
- /** Item label */
189
- label: string;
190
- /** Is item enabled */
191
- enabled?: boolean;
192
- /** Is item checked (for checkboxes) */
193
- checked?: boolean;
194
- /** Submenu items */
195
- submenu?: TauriMenuItem[];
196
- /** Click handler */
197
- onClick?: () => void;
198
- }
199
- /**
200
- * Notification API
201
- */
202
- export interface TauriNotification {
203
- /** Send a notification */
204
- send(options: TauriNotificationOptions): Promise<void>;
205
- /** Request notification permission */
206
- requestPermission(): Promise<'granted' | 'denied' | 'default'>;
207
- /** Check notification permission */
208
- checkPermission(): Promise<'granted' | 'denied' | 'default'>;
209
- }
210
- /**
211
- * Notification options
212
- */
213
- export interface TauriNotificationOptions {
214
- /** Notification title */
215
- title: string;
216
- /** Notification body */
217
- body?: string;
218
- /** Notification icon */
219
- icon?: string;
220
- /** Sound to play */
221
- sound?: string;
222
- }
223
- /**
224
- * Tauri bridge for Praxis integration
225
- *
226
- * Provides type-safe access to Tauri APIs from Praxis applications.
227
- */
228
- export interface TauriBridge {
229
- /** Application info */
230
- app: {
231
- name: string;
232
- version: string;
233
- tauriVersion: string;
234
- };
235
- /** File system operations */
236
- fs: TauriFS;
237
- /** System tray operations */
238
- tray: TauriTray;
239
- /** Notification operations */
240
- notification: TauriNotification;
241
- /** Invoke a Tauri command */
242
- invoke<T = unknown>(cmd: string, payload?: unknown): Promise<T>;
243
- /** Listen to a Tauri event */
244
- listen<T = unknown>(event: string, handler: (event: TauriEvent<T>) => void): Promise<() => void>;
245
- /** Emit a Tauri event */
246
- emit(event: string, payload?: unknown): Promise<void>;
247
- /** Get window operations */
248
- window: {
249
- /** Minimize window */
250
- minimize(): Promise<void>;
251
- /** Maximize window */
252
- maximize(): Promise<void>;
253
- /** Unmaximize window */
254
- unmaximize(): Promise<void>;
255
- /** Close window */
256
- close(): Promise<void>;
257
- /** Toggle fullscreen */
258
- toggleFullscreen(): Promise<void>;
259
- /** Set window title */
260
- setTitle(title: string): Promise<void>;
261
- /** Show window */
262
- show(): Promise<void>;
263
- /** Hide window */
264
- hide(): Promise<void>;
265
- /** Focus window */
266
- focus(): Promise<void>;
267
- };
268
- /** Check for updates */
269
- checkForUpdates(): Promise<TauriUpdateInfo | null>;
270
- /** Install update */
271
- installUpdate(): Promise<void>;
272
- }
273
- /**
274
- * Update information
275
- */
276
- export interface TauriUpdateInfo {
277
- /** New version available */
278
- version: string;
279
- /** Release date */
280
- date: string;
281
- /** Release notes */
282
- notes?: string;
283
- /** Download URL */
284
- url: string;
285
- }
286
- /**
287
- * Praxis-Tauri adapter for engine persistence
288
- */
289
- export interface TauriPraxisAdapter<TContext = unknown> {
290
- /** Save engine state to file */
291
- saveState(state: TContext): Promise<void>;
292
- /** Load engine state from file */
293
- loadState(): Promise<TContext | null>;
294
- /** Save events to file */
295
- saveEvents(events: PraxisEvent[]): Promise<void>;
296
- /** Load events from file */
297
- loadEvents(): Promise<PraxisEvent[]>;
298
- /** Watch for file changes */
299
- watchStateFile(handler: (state: TContext) => void): Promise<() => void>;
300
- /** Get state file path */
301
- getStatePath(): string;
302
- /** Get events file path */
303
- getEventsPath(): string;
304
- }
305
- /**
306
- * Create a mock Tauri bridge for development/testing
307
- *
308
- * This provides a mock implementation that works without Tauri runtime.
309
- */
310
- export declare function createMockTauriBridge(): TauriBridge;
311
- /**
312
- * Create a Tauri-Praxis adapter for engine persistence
313
- *
314
- * @example
315
- * ```typescript
316
- * import { createTauriPraxisAdapter } from '@plures/praxis/integrations/tauri';
317
- *
318
- * const adapter = createTauriPraxisAdapter({
319
- * bridge: tauriBridge,
320
- * statePath: 'app-state.json',
321
- * eventsPath: 'app-events.json',
322
- * });
323
- *
324
- * // Save state
325
- * await adapter.saveState(engine.getContext());
326
- *
327
- * // Load state
328
- * const savedState = await adapter.loadState();
329
- * ```
330
- */
331
- export declare function createTauriPraxisAdapter<TContext = unknown>(options: {
332
- bridge: TauriBridge;
333
- statePath?: string;
334
- eventsPath?: string;
335
- }): TauriPraxisAdapter<TContext>;
336
- /**
337
- * Attach Tauri bridge to a Praxis engine for auto-save
338
- *
339
- * @example
340
- * ```typescript
341
- * import { attachTauriToEngine } from '@plures/praxis/integrations/tauri';
342
- *
343
- * const cleanup = attachTauriToEngine(engine, adapter, {
344
- * autoSave: true,
345
- * saveInterval: 5000,
346
- * });
347
- *
348
- * // Later, cleanup subscriptions
349
- * cleanup();
350
- * ```
351
- */
352
- export declare function attachTauriToEngine<TContext>(engine: LogicEngine<TContext>, adapter: TauriPraxisAdapter<TContext>, options?: {
353
- autoSave?: boolean;
354
- saveInterval?: number;
355
- }): () => void;
356
- /**
357
- * Generate Tauri configuration from Praxis app config
358
- */
359
- export declare function generateTauriConfig(config: TauriAppConfig): Record<string, unknown>;
360
- //# sourceMappingURL=tauri.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tauri.d.ts","sourceRoot":"","sources":["../../../src/integrations/tauri.ts"],"names":[],"mappings":"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"}
@@ -1,278 +0,0 @@
1
- /**
2
- * Tauri Integration
3
- *
4
- * Integration with plures/svelte-tauri-template for cross-platform desktop applications.
5
- * Provides Praxis engine integration with Tauri 2 for native desktop capabilities.
6
- *
7
- * Features:
8
- * - Cross-Platform: Windows, macOS, Linux, Android, iOS
9
- * - Native Integration: File system, system tray, notifications
10
- * - IPC Bridge: Type-safe communication between Rust and TypeScript
11
- * - Auto-Updates: Built-in update system
12
- * - Code Signing: Support for signed releases
13
- *
14
- * @see https://github.com/plures/svelte-tauri-template
15
- */
16
- /**
17
- * Create a mock Tauri bridge for development/testing
18
- *
19
- * This provides a mock implementation that works without Tauri runtime.
20
- */
21
- export function createMockTauriBridge() {
22
- const eventHandlers = new Map();
23
- const storage = new Map();
24
- return {
25
- app: {
26
- name: 'Mock App',
27
- version: '0.0.0',
28
- tauriVersion: 'mock',
29
- },
30
- fs: {
31
- async readFile(path) {
32
- const data = storage.get(path);
33
- if (data instanceof Uint8Array)
34
- return data;
35
- throw new Error(`File not found: ${path}`);
36
- },
37
- async readTextFile(path) {
38
- const data = storage.get(path);
39
- if (typeof data === 'string')
40
- return data;
41
- throw new Error(`File not found: ${path}`);
42
- },
43
- async writeFile(path, data) {
44
- storage.set(path, data);
45
- },
46
- async writeTextFile(path, data) {
47
- storage.set(path, data);
48
- },
49
- async exists(path) {
50
- return storage.has(path);
51
- },
52
- async mkdir(_path, _options) {
53
- // No-op for mock
54
- },
55
- async remove(path, _options) {
56
- storage.delete(path);
57
- },
58
- async rename(oldPath, newPath) {
59
- const data = storage.get(oldPath);
60
- if (data !== undefined) {
61
- storage.set(newPath, data);
62
- storage.delete(oldPath);
63
- }
64
- },
65
- async readDir(_path) {
66
- return [];
67
- },
68
- },
69
- tray: {
70
- async setIcon(_icon) { },
71
- async setTooltip(_tooltip) { },
72
- async setMenu(_menu) { },
73
- async show() { },
74
- async hide() { },
75
- },
76
- notification: {
77
- async send(options) {
78
- console.log('Mock notification:', options.title, options.body);
79
- },
80
- async requestPermission() {
81
- return 'granted';
82
- },
83
- async checkPermission() {
84
- return 'granted';
85
- },
86
- },
87
- async invoke(cmd, payload) {
88
- console.log('Mock invoke:', cmd, payload);
89
- return null;
90
- },
91
- async listen(event, handler) {
92
- if (!eventHandlers.has(event)) {
93
- eventHandlers.set(event, new Set());
94
- }
95
- eventHandlers.get(event).add(handler);
96
- return () => {
97
- eventHandlers.get(event)?.delete(handler);
98
- };
99
- },
100
- async emit(event, payload) {
101
- const handlers = eventHandlers.get(event);
102
- if (handlers) {
103
- const tauriEvent = { event, payload };
104
- handlers.forEach(h => h(tauriEvent));
105
- }
106
- },
107
- window: {
108
- async minimize() { },
109
- async maximize() { },
110
- async unmaximize() { },
111
- async close() { },
112
- async toggleFullscreen() { },
113
- async setTitle(_title) { },
114
- async show() { },
115
- async hide() { },
116
- async focus() { },
117
- },
118
- async checkForUpdates() {
119
- return null;
120
- },
121
- async installUpdate() { },
122
- };
123
- }
124
- /**
125
- * Create a Tauri-Praxis adapter for engine persistence
126
- *
127
- * @example
128
- * ```typescript
129
- * import { createTauriPraxisAdapter } from '@plures/praxis/integrations/tauri';
130
- *
131
- * const adapter = createTauriPraxisAdapter({
132
- * bridge: tauriBridge,
133
- * statePath: 'app-state.json',
134
- * eventsPath: 'app-events.json',
135
- * });
136
- *
137
- * // Save state
138
- * await adapter.saveState(engine.getContext());
139
- *
140
- * // Load state
141
- * const savedState = await adapter.loadState();
142
- * ```
143
- */
144
- export function createTauriPraxisAdapter(options) {
145
- const { bridge, statePath = 'praxis-state.json', eventsPath = 'praxis-events.json' } = options;
146
- return {
147
- async saveState(state) {
148
- const json = JSON.stringify(state, null, 2);
149
- await bridge.fs.writeTextFile(statePath, json);
150
- },
151
- async loadState() {
152
- try {
153
- const exists = await bridge.fs.exists(statePath);
154
- if (!exists)
155
- return null;
156
- const json = await bridge.fs.readTextFile(statePath);
157
- return JSON.parse(json);
158
- }
159
- catch {
160
- return null;
161
- }
162
- },
163
- async saveEvents(events) {
164
- const json = JSON.stringify(events, null, 2);
165
- await bridge.fs.writeTextFile(eventsPath, json);
166
- },
167
- async loadEvents() {
168
- try {
169
- const exists = await bridge.fs.exists(eventsPath);
170
- if (!exists)
171
- return [];
172
- const json = await bridge.fs.readTextFile(eventsPath);
173
- return JSON.parse(json);
174
- }
175
- catch {
176
- return [];
177
- }
178
- },
179
- async watchStateFile(_handler) {
180
- // In a real implementation, this would use Tauri's fs watch API
181
- // For now, we'll just return a no-op cleanup function
182
- console.log('File watching not implemented in mock');
183
- return () => { };
184
- },
185
- getStatePath() {
186
- return statePath;
187
- },
188
- getEventsPath() {
189
- return eventsPath;
190
- },
191
- };
192
- }
193
- /**
194
- * Attach Tauri bridge to a Praxis engine for auto-save
195
- *
196
- * @example
197
- * ```typescript
198
- * import { attachTauriToEngine } from '@plures/praxis/integrations/tauri';
199
- *
200
- * const cleanup = attachTauriToEngine(engine, adapter, {
201
- * autoSave: true,
202
- * saveInterval: 5000,
203
- * });
204
- *
205
- * // Later, cleanup subscriptions
206
- * cleanup();
207
- * ```
208
- */
209
- export function attachTauriToEngine(engine, adapter, options = {}) {
210
- const { autoSave = true, saveInterval = 5000 } = options;
211
- const cleanupFns = [];
212
- if (autoSave) {
213
- let saveTimer = null;
214
- let pendingSave = false;
215
- const debouncedSave = async () => {
216
- pendingSave = true;
217
- if (saveTimer)
218
- clearTimeout(saveTimer);
219
- saveTimer = setTimeout(async () => {
220
- if (pendingSave) {
221
- await adapter.saveState(engine.getContext());
222
- pendingSave = false;
223
- }
224
- }, saveInterval);
225
- };
226
- // Note: In a future implementation, this would hook into engine state changes
227
- // For now, we provide manual save on interval if state is dirty
228
- // The caller can trigger debouncedSave manually after engine.step() calls
229
- // Initial save setup - clean up timer on dispose
230
- cleanupFns.push(() => {
231
- if (saveTimer)
232
- clearTimeout(saveTimer);
233
- });
234
- // Expose a way to trigger save (for future use)
235
- void debouncedSave;
236
- }
237
- return () => {
238
- cleanupFns.forEach(fn => fn());
239
- };
240
- }
241
- /**
242
- * Generate Tauri configuration from Praxis app config
243
- */
244
- export function generateTauriConfig(config) {
245
- return {
246
- $schema: "https://raw.githubusercontent.com/tauri-apps/tauri/tauri-v2.0.0/core/tauri-config-schema/schema.json",
247
- productName: config.name,
248
- version: config.version,
249
- identifier: config.identifier,
250
- app: {
251
- windows: [
252
- {
253
- title: config.window?.title || config.name,
254
- width: config.window?.width || 800,
255
- height: config.window?.height || 600,
256
- minWidth: config.window?.minWidth,
257
- minHeight: config.window?.minHeight,
258
- resizable: config.window?.resizable ?? true,
259
- fullscreen: config.window?.fullscreen ?? false,
260
- decorations: config.window?.decorations ?? true,
261
- transparent: config.window?.transparent ?? false,
262
- alwaysOnTop: config.window?.alwaysOnTop ?? false,
263
- center: config.window?.center ?? true,
264
- },
265
- ],
266
- security: {
267
- csp: config.security?.csp || "default-src 'self'",
268
- devtools: config.security?.devTools ?? false,
269
- },
270
- },
271
- build: {
272
- devUrl: "http://localhost:5173",
273
- frontendDist: "../dist",
274
- },
275
- plugins: Object.fromEntries((config.plugins || []).map(p => [p.name, p.config || {}])),
276
- };
277
- }
278
- //# sourceMappingURL=tauri.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tauri.js","sourceRoot":"","sources":["../../../src/integrations/tauri.ts"],"names":[],"mappings":"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"}