@onetype/framework 2.0.42 → 2.0.44

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 (351) hide show
  1. package/addons/ai/addon.js +78 -0
  2. package/addons/ai/addons/agents/item/functions/describe.js +28 -0
  3. package/addons/ai/addons/agents/item/functions/execute.js +41 -0
  4. package/addons/ai/addons/agents/item/functions/messages.js +38 -0
  5. package/addons/ai/addons/agents/item/functions/run.js +49 -0
  6. package/addons/ai/addons/agents/item/functions/schema.js +45 -0
  7. package/addons/ai/addons/agents/load.js +9 -0
  8. package/addons/ai/addons/orchestrators/item/functions/agents/execute.js +14 -0
  9. package/addons/ai/addons/orchestrators/item/functions/agents/steps.js +23 -0
  10. package/addons/ai/addons/orchestrators/item/functions/modes/action.js +131 -0
  11. package/addons/ai/addons/orchestrators/item/functions/run.js +28 -0
  12. package/addons/ai/addons/orchestrators/item/functions/utils/emit.js +11 -0
  13. package/addons/ai/addons/orchestrators/item/functions/utils/history.js +8 -0
  14. package/addons/ai/addons/orchestrators/item/functions/utils/state.js +29 -0
  15. package/addons/ai/addons/orchestrators/load.js +15 -0
  16. package/addons/ai/addons/pipelines/functions/execute.js +56 -0
  17. package/addons/ai/addons/pipelines/functions/run.js +72 -0
  18. package/addons/ai/addons/pipelines/load.js +6 -0
  19. package/addons/ai/addons/providers/functions/default.js +8 -0
  20. package/addons/ai/addons/providers/item/functions/request.js +108 -0
  21. package/addons/ai/addons/providers/items/nue.js +69 -0
  22. package/addons/ai/addons/providers/items/ollama.js +79 -0
  23. package/addons/ai/addons/providers/load.js +8 -0
  24. package/addons/ai/items/agents/steps.js +159 -0
  25. package/addons/ai/items/agents/summary.js +29 -0
  26. package/addons/ai/items/orchestrators/general.js +7 -0
  27. package/addons/ai/load.js +13 -0
  28. package/addons/ai/test/agents.js +149 -0
  29. package/addons/ai/test/index.js +63 -0
  30. package/addons/core/assets/back/functions/utils/transform.js +21 -23
  31. package/addons/core/assets/back/items/html/css.js +2 -2
  32. package/addons/core/assets/back/items/html/js.js +2 -2
  33. package/addons/core/clients/back/http/item/functions/gRPC/create.js +3 -3
  34. package/addons/core/clients/back/http/item/functions/http/create.js +3 -3
  35. package/addons/core/commands/back/functions/grpc/client.js +3 -3
  36. package/addons/core/commands/back/functions/grpc/server.js +2 -2
  37. package/addons/core/commands/core/addon.js +2 -1
  38. package/addons/core/commands/core/functions/run.js +1 -1
  39. package/addons/core/commands/core/item/functions/run.js +1 -1
  40. package/addons/core/commands/core/load.js +27 -9
  41. package/addons/core/database/back/events/addon.add.js +1 -1
  42. package/addons/core/database/back/events/middleware/addon.items.find.js +2 -2
  43. package/addons/core/database/back/events/middleware/item.crud.create.js +2 -2
  44. package/addons/core/database/back/events/middleware/item.crud.delete.js +2 -2
  45. package/addons/core/database/back/events/middleware/item.crud.update.js +2 -2
  46. package/addons/core/database/back/item/functions/create.js +4 -3
  47. package/addons/core/database/back/item/functions/delete.js +1 -1
  48. package/addons/core/database/back/item/functions/find.js +1 -1
  49. package/addons/core/database/back/item/functions/update.js +3 -3
  50. package/addons/core/database/front/events/addon.add.js +1 -1
  51. package/addons/core/servers/back/grpc/item/functions/start.js +1 -1
  52. package/addons/core/servers/back/http/item/functions/start.js +6 -6
  53. package/addons/float/overlays/css/overlay.css +35 -0
  54. package/addons/float/overlays/js/addon.js +18 -0
  55. package/addons/float/overlays/js/events/click.js +27 -0
  56. package/addons/float/overlays/js/events/escape.js +18 -0
  57. package/addons/float/overlays/js/functions/flip.js +51 -0
  58. package/addons/float/overlays/js/functions/index.js +17 -0
  59. package/addons/float/overlays/js/functions/position.js +62 -0
  60. package/addons/float/overlays/js/functions/reposition.js +29 -0
  61. package/addons/float/overlays/js/item/catch/add.js +123 -0
  62. package/addons/float/overlays/js/item/catch/remove.js +29 -0
  63. package/addons/float/popup/css/popup.css +93 -0
  64. package/addons/float/popup/js/addon.js +34 -0
  65. package/addons/float/popup/js/functions/close.js +25 -0
  66. package/addons/float/popup/js/functions/modal.js +31 -0
  67. package/addons/float/popup/js/functions/popup.js +21 -0
  68. package/addons/float/popup/js/functions/toast.js +55 -0
  69. package/addons/float/popup/js/functions/tooltip.js +34 -0
  70. package/addons/float/popup/js/items/directives/popup.js +58 -0
  71. package/addons/float/popup/js/items/directives/tooltip.js +72 -0
  72. package/addons/render/directives/front/{js/#register/addon.js → addon.js} +8 -8
  73. package/addons/render/directives/front/{js/functions → functions}/process/attributes.js +7 -2
  74. package/addons/render/directives/front/{js/functions → functions}/process/match.js +14 -9
  75. package/addons/render/directives/front/functions/process.js +88 -0
  76. package/{lib/items/directives → addons/render/directives/front/items/self}/1000-render.js +1 -0
  77. package/{lib/items/directives → addons/render/directives/front/items/self}/110-show.js +3 -5
  78. package/{lib/items/directives → addons/render/directives/front/items/self}/160-slot.js +1 -0
  79. package/{lib/items/directives → addons/render/directives/front/items/self}/200-for.js +3 -3
  80. package/addons/render/directives/front/items/self/2000-base.js +45 -0
  81. package/addons/render/directives/front/items/self/500-click-outside.js +45 -0
  82. package/addons/render/directives/front/items/self/500-events.js +68 -0
  83. package/addons/render/directives/front/items/self/500-mouse-enter.js +62 -0
  84. package/addons/render/directives/front/items/self/500-mouse-leave.js +62 -0
  85. package/{lib/items/directives → addons/render/directives/front/items/self}/650-fetch.js +2 -3
  86. package/{lib/items/directives → addons/render/directives/front/items/self}/660-form.js +5 -6
  87. package/addons/render/directives/front/items/self/750-node.js +43 -0
  88. package/addons/render/elements/front/items/directives/element.js +7 -1
  89. package/{lib/items/elements → addons/render/elements/front/items/self}/cards/pricing/pricing.js +2 -2
  90. package/addons/render/elements/front/items/self/core/builder/builder.css +180 -0
  91. package/addons/render/elements/front/items/self/core/builder/builder.js +257 -0
  92. package/addons/render/elements/front/items/self/core/repeater/repeater.css +197 -0
  93. package/addons/render/elements/front/items/self/core/repeater/repeater.js +224 -0
  94. package/{lib/items/elements → addons/render/elements/front/items/self}/form/button/button.js +2 -2
  95. package/{lib/items/elements → addons/render/elements/front/items/self}/form/checkbox/checkbox.js +21 -8
  96. package/{lib/items/elements → addons/render/elements/front/items/self}/form/color/color.css +28 -0
  97. package/{lib/items/elements → addons/render/elements/front/items/self}/form/color/color.js +35 -13
  98. package/{lib/items/elements → addons/render/elements/front/items/self}/form/date/date.js +3 -4
  99. package/{lib/items/elements → addons/render/elements/front/items/self}/form/input/input.js +40 -4
  100. package/{lib/items/elements → addons/render/elements/front/items/self}/form/radio/radio.js +24 -6
  101. package/{lib/items/elements → addons/render/elements/front/items/self}/form/rating/rating.js +2 -1
  102. package/{lib/items/elements → addons/render/elements/front/items/self}/form/select/select.js +3 -7
  103. package/{lib/items/elements → addons/render/elements/front/items/self}/form/slider/slider.js +89 -74
  104. package/{lib/items/elements → addons/render/elements/front/items/self}/form/tags/tags.js +5 -5
  105. package/{lib/items/elements → addons/render/elements/front/items/self}/form/textarea/textarea.js +41 -6
  106. package/{lib/items/elements → addons/render/elements/front/items/self}/form/toggle/toggle.css +4 -0
  107. package/{lib/items/elements → addons/render/elements/front/items/self}/form/toggle/toggle.js +7 -8
  108. package/{lib/items/elements → addons/render/elements/front/items/self}/global/code/code.js +3 -4
  109. package/{lib/items/elements → addons/render/elements/front/items/self}/global/faq/faq.js +2 -2
  110. package/{lib/items/elements → addons/render/elements/front/items/self}/global/heading/heading.js +6 -17
  111. package/addons/render/elements/front/items/self/global/markdown/markdown.js +26 -0
  112. package/{lib/items/elements → addons/render/elements/front/items/self}/global/menu/menu.js +1 -1
  113. package/{lib/items/elements → addons/render/elements/front/items/self}/global/tags/tags.js +1 -1
  114. package/{lib/items/elements → addons/render/elements/front/items/self}/navigation/navbar/navbar.js +5 -1
  115. package/{lib/items/elements → addons/render/elements/front/items/self}/navigation/sidebar/sidebar.js +1 -1
  116. package/{lib/items/elements → addons/render/elements/front/items/self}/navigation/tabs/tabs.js +1 -1
  117. package/{lib/items/elements → addons/render/elements/front/items/self}/status/code/code.css +1 -1
  118. package/{lib/items/elements → addons/render/elements/front/items/self}/status/empty/empty.css +1 -1
  119. package/{lib/items/elements → addons/render/elements/front/items/self}/status/empty/empty.js +4 -0
  120. package/{lib/items/elements → addons/render/elements/front/items/self}/status/error/error.css +1 -1
  121. package/{lib/items/elements → addons/render/elements/front/items/self}/status/error/error.js +1 -1
  122. package/{lib/items/elements → addons/render/elements/front/items/self}/status/loading/loading.css +8 -1
  123. package/addons/render/html/load.js +0 -1
  124. package/addons/render/pages/core/addon.js +16 -1
  125. package/addons/render/pages/core/load.js +1 -1
  126. package/addons/render/pages/front/events/click.js +2 -2
  127. package/addons/render/pages/front/events/load.js +6 -16
  128. package/addons/render/pages/front/functions/change.js +21 -110
  129. package/addons/render/pages/front/functions/match.js +2 -3
  130. package/addons/render/pages/front/functions/open.js +3 -35
  131. package/addons/render/pages/front/functions/resolve.js +30 -0
  132. package/addons/render/pages/front/item/catch/add.js +12 -10
  133. package/addons/render/pages/front/item/catch/remove.js +5 -7
  134. package/addons/render/pages/front/item/functions/enter.js +15 -28
  135. package/addons/render/pages/front/item/functions/leave.js +6 -8
  136. package/addons/render/pages/front/items/commands/change.js +60 -0
  137. package/addons/render/pages/front/items/commands/list.js +38 -0
  138. package/addons/render/pages/front/items/directives/change.js +1 -1
  139. package/addons/render/transforms/css/transforms.css +4 -0
  140. package/addons/render/transforms/{addon.js → js/addon.js} +7 -0
  141. package/addons/render/transforms/js/item/functions/run.js +87 -0
  142. package/addons/services/cloudflare/images/back/addon.js +23 -0
  143. package/addons/services/cloudflare/images/back/expose.js +22 -0
  144. package/addons/services/cloudflare/images/back/functions/api.js +47 -0
  145. package/addons/services/cloudflare/images/back/functions/meta/detect.js +28 -0
  146. package/addons/services/cloudflare/images/back/functions/meta/dimensions/gif.js +11 -0
  147. package/addons/services/cloudflare/images/back/functions/meta/dimensions/jpeg.js +31 -0
  148. package/addons/services/cloudflare/images/back/functions/meta/dimensions/png.js +11 -0
  149. package/addons/services/cloudflare/images/back/functions/meta/dimensions/webp.js +36 -0
  150. package/addons/services/cloudflare/images/back/functions/meta.js +16 -0
  151. package/addons/services/cloudflare/images/back/items/commands/delete.js +38 -0
  152. package/addons/services/cloudflare/images/back/items/commands/get.js +56 -0
  153. package/addons/services/cloudflare/images/back/items/commands/list.js +49 -0
  154. package/addons/services/cloudflare/images/back/items/commands/upload.js +79 -0
  155. package/addons/services/cloudflare/images/back/load.js +21 -0
  156. package/addons/services/cloudflare/images/front/items/elements/browse/browse.css +235 -0
  157. package/addons/services/cloudflare/images/front/items/elements/browse/browse.js +193 -0
  158. package/addons/services/cloudflare/images/front/items/elements/input/input.css +154 -0
  159. package/addons/services/cloudflare/images/front/items/elements/input/input.js +147 -0
  160. package/addons/services/cloudflare/images/sql.txt +43 -0
  161. package/lib/browser.js +16 -1
  162. package/lib/events.js +12 -12
  163. package/lib/load.js +11 -49
  164. package/lib/src/classes/addon/class.js +1 -2
  165. package/lib/src/classes/addon/classes/item/mixins/get.js +3 -3
  166. package/lib/src/classes/addon/classes/item/mixins/set.js +3 -5
  167. package/lib/src/classes/addon/classes/item/mixins/store.js +1 -1
  168. package/lib/src/classes/addon/classes/render/class.js +8 -22
  169. package/lib/src/classes/addon/classes/render/mixins/compile.js +6 -4
  170. package/lib/src/classes/addon/classes/render/mixins/dom.js +3 -1
  171. package/lib/src/classes/addon/classes/render/mixins/events.js +30 -43
  172. package/lib/src/classes/addon/classes/render/mixins/get.js +0 -5
  173. package/lib/src/classes/addon/classes/render/mixins/methods.js +105 -40
  174. package/lib/src/classes/addon/classes/render/mixins/process.js +7 -3
  175. package/lib/src/classes/addon/classes/render/mixins/set.js +3 -1
  176. package/lib/src/classes/addon/mixins/fields.js +4 -6
  177. package/lib/src/classes/addon/mixins/functions.js +11 -11
  178. package/lib/src/classes/addon/mixins/items.js +17 -9
  179. package/lib/src/classes/addon/mixins/render.js +1 -1
  180. package/lib/src/classes/addon/mixins/table.js +1 -1
  181. package/lib/src/classes/error/class.js +10 -0
  182. package/lib/src/mixins/addons.js +7 -20
  183. package/lib/src/mixins/assets.js +1 -1
  184. package/lib/src/mixins/base.js +14 -0
  185. package/lib/src/mixins/data.js +14 -14
  186. package/lib/src/mixins/dependencies.js +5 -5
  187. package/lib/src/mixins/dom.js +204 -201
  188. package/lib/src/mixins/emitter.js +13 -14
  189. package/lib/src/mixins/error.js +14 -1
  190. package/lib/src/mixins/function.js +1 -0
  191. package/lib/src/mixins/generate.js +1 -1
  192. package/lib/src/mixins/helper.js +3 -31
  193. package/lib/{items/elements/global/markdown → src/mixins}/markdown.js +90 -139
  194. package/lib/src/mixins/middleware.js +2 -2
  195. package/lib/src/mixins/observer.js +337 -0
  196. package/lib/src/mixins/request.js +2 -2
  197. package/lib/src/mixins/state.js +17 -3
  198. package/lib/src/onetype.js +13 -18
  199. package/lib/styles/classes/layout.css +1 -3
  200. package/lib/styles/variables.css +2 -1
  201. package/package.json +5 -7
  202. package/README.md +0 -86
  203. package/addons/ai/agents/addon.js +0 -23
  204. package/addons/ai/agents/functions/parse.js +0 -129
  205. package/addons/ai/agents/item/functions/run.js +0 -218
  206. package/addons/ai/agents/load.js +0 -8
  207. package/addons/ai/orchestrator/addon.js +0 -25
  208. package/addons/ai/orchestrator/item/functions/run.js +0 -277
  209. package/addons/ai/orchestrator/item/functions/state/agent.js +0 -41
  210. package/addons/ai/orchestrator/item/functions/state/conclusion.js +0 -27
  211. package/addons/ai/orchestrator/item/functions/state/done.js +0 -40
  212. package/addons/ai/orchestrator/item/functions/state/execute.js +0 -16
  213. package/addons/ai/orchestrator/item/functions/state/goal.js +0 -34
  214. package/addons/ai/orchestrator/item/functions/state/input.js +0 -55
  215. package/addons/ai/orchestrator/item/functions/state/summary.js +0 -26
  216. package/addons/ai/orchestrator/items/agents/achievable.js +0 -37
  217. package/addons/ai/orchestrator/items/agents/agent.js +0 -46
  218. package/addons/ai/orchestrator/items/agents/conclusion.js +0 -41
  219. package/addons/ai/orchestrator/items/agents/done.js +0 -40
  220. package/addons/ai/orchestrator/items/agents/goal.js +0 -58
  221. package/addons/ai/orchestrator/items/agents/input.js +0 -34
  222. package/addons/ai/orchestrator/items/agents/planner.js +0 -30
  223. package/addons/ai/orchestrator/items/agents/summary.js +0 -29
  224. package/addons/ai/orchestrator/items/chat.js +0 -10
  225. package/addons/ai/orchestrator/load.js +0 -25
  226. package/addons/ai/providers/addon.js +0 -16
  227. package/addons/ai/providers/functions/default.js +0 -14
  228. package/addons/ai/providers/item/functions/request.js +0 -62
  229. package/addons/ai/providers/items/nue.js +0 -98
  230. package/addons/ai/providers/load.js +0 -10
  231. package/addons/core/queue/index.js +0 -66
  232. package/addons/float/modals/front/css/modals.css +0 -26
  233. package/addons/float/modals/front/js/addon.js +0 -10
  234. package/addons/float/modals/front/js/item/catch/add.js +0 -48
  235. package/addons/float/modals/front/js/item/catch/remove.js +0 -9
  236. package/addons/float/overlays/front/css/overlays.css +0 -29
  237. package/addons/float/overlays/front/js/addon.js +0 -17
  238. package/addons/float/overlays/front/js/events/click.js +0 -27
  239. package/addons/float/overlays/front/js/events/escape.js +0 -18
  240. package/addons/float/overlays/front/js/functions/flip.js +0 -74
  241. package/addons/float/overlays/front/js/functions/index.js +0 -17
  242. package/addons/float/overlays/front/js/functions/position.js +0 -63
  243. package/addons/float/overlays/front/js/item/catch/add.js +0 -121
  244. package/addons/float/overlays/front/js/item/catch/remove.js +0 -16
  245. package/addons/float/popups/css/popups.css +0 -4
  246. package/addons/float/popups/js/addon.js +0 -18
  247. package/addons/float/popups/js/item/catch/add.js +0 -7
  248. package/addons/float/popups/js/item/catch/remove.js +0 -7
  249. package/addons/float/popups/js/item/catch/set.js +0 -73
  250. package/addons/float/popups/js/items/directives/popup.js +0 -54
  251. package/addons/float/toasts/addon.js +0 -17
  252. package/addons/float/toasts/item/catch/add.js +0 -7
  253. package/addons/float/toasts/item/catch/remove.js +0 -7
  254. package/addons/float/toasts/item/catch/set.js +0 -86
  255. package/addons/float/toasts/items/elements/toast/toast.css +0 -84
  256. package/addons/float/toasts/items/elements/toast/toast.js +0 -61
  257. package/addons/float/tooltips/addon.js +0 -15
  258. package/addons/float/tooltips/item/catch/add.js +0 -7
  259. package/addons/float/tooltips/item/catch/remove.js +0 -26
  260. package/addons/float/tooltips/item/catch/set.js +0 -65
  261. package/addons/float/tooltips/items/directives/tooltip.js +0 -74
  262. package/addons/float/tooltips/items/elements/tooltip.css +0 -64
  263. package/addons/float/tooltips/items/elements/tooltip.js +0 -42
  264. package/addons/render/directives/front/js/functions/process.js +0 -57
  265. package/addons/render/html/items/seo/theme-color.js +0 -12
  266. package/addons/render/transforms/item/functions/run.js +0 -18
  267. package/docs/addons.md +0 -281
  268. package/docs/architecture.md +0 -238
  269. package/docs/commands.md +0 -308
  270. package/docs/database.md +0 -171
  271. package/docs/frontend.md +0 -396
  272. package/docs/servers.md +0 -187
  273. package/examples/basic-api/README.md +0 -34
  274. package/examples/basic-api/addons/tasks/addon.js +0 -10
  275. package/examples/basic-api/addons/tasks/items/commands/create.js +0 -22
  276. package/examples/basic-api/addons/tasks/items/commands/delete.js +0 -26
  277. package/examples/basic-api/addons/tasks/items/commands/list.js +0 -17
  278. package/examples/basic-api/addons/tasks/items/commands/toggle.js +0 -26
  279. package/examples/basic-api/addons/tasks/load.js +0 -8
  280. package/examples/basic-api/index.js +0 -15
  281. package/examples/basic-api/package.json +0 -7
  282. package/examples/basic-front/back/assets.js +0 -12
  283. package/examples/basic-front/back/index.js +0 -13
  284. package/examples/basic-front/back/items/commands/html.js +0 -14
  285. package/examples/basic-front/back/items/commands/test.js +0 -19
  286. package/examples/basic-front/back/items/html/fonts.js +0 -12
  287. package/examples/basic-front/front/pages/home.js +0 -16
  288. package/examples/basic-front/front/styles/main.css +0 -31
  289. package/examples/basic-front/front/test.js +0 -7
  290. package/examples/basic-front/package.json +0 -7
  291. package/lib/items/directives/500-blur.js +0 -46
  292. package/lib/items/directives/500-change.js +0 -53
  293. package/lib/items/directives/500-click-outside.js +0 -50
  294. package/lib/items/directives/500-click.js +0 -52
  295. package/lib/items/directives/500-double-click.js +0 -52
  296. package/lib/items/directives/500-focus.js +0 -46
  297. package/lib/items/directives/500-input.js +0 -46
  298. package/lib/items/directives/500-keydown.js +0 -53
  299. package/lib/items/directives/500-keyup.js +0 -53
  300. package/lib/items/directives/500-mouse-enter.js +0 -61
  301. package/lib/items/directives/500-mouse-leave.js +0 -61
  302. package/lib/items/directives/500-mouse-move.js +0 -45
  303. package/lib/items/directives/500-scroll.js +0 -45
  304. package/lib/items/directives/500-submit.js +0 -52
  305. package/lib/items/elements/ai/chat/chat.css +0 -710
  306. package/lib/items/elements/ai/chat/chat.js +0 -429
  307. package/lib/src/mixins/logger.js +0 -83
  308. package/lib/styles/queries.css +0 -6
  309. package/lists.md +0 -586
  310. package/orchestrator.md +0 -288
  311. /package/addons/modules/shortcuts/front/{#register/addon.js → addon.js} +0 -0
  312. /package/addons/render/directives/front/{js/functions → functions}/process/data.js +0 -0
  313. /package/{lib/items/directives → addons/render/directives/front/items/self}/100-if.js +0 -0
  314. /package/{lib/items/directives → addons/render/directives/front/items/self}/700-text.js +0 -0
  315. /package/{lib/items/directives → addons/render/directives/front/items/self}/750-html.js +0 -0
  316. /package/addons/render/elements/front/{#register/addon.js → addon.js} +0 -0
  317. /package/{lib/items/elements → addons/render/elements/front/items/self}/cards/pricing/pricing.css +0 -0
  318. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/button/button.css +0 -0
  319. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/checkbox/checkbox.css +0 -0
  320. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/date/date.css +0 -0
  321. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/field/field.css +0 -0
  322. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/field/field.js +0 -0
  323. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/input/input.css +0 -0
  324. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/radio/radio.css +0 -0
  325. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/rating/rating.css +0 -0
  326. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/section/section.css +0 -0
  327. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/section/section.js +0 -0
  328. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/select/select.css +0 -0
  329. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/slider/slider.css +0 -0
  330. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/tags/tags.css +0 -0
  331. /package/{lib/items/elements → addons/render/elements/front/items/self}/form/textarea/textarea.css +0 -0
  332. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/code/code.css +0 -0
  333. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/faq/faq.css +0 -0
  334. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/heading/heading.css +0 -0
  335. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/markdown/markdown.css +0 -0
  336. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/menu/menu.css +0 -0
  337. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/notice/notice.css +0 -0
  338. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/notice/notice.js +0 -0
  339. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/parameters/parameters.css +0 -0
  340. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/parameters/parameters.js +0 -0
  341. /package/{lib/items/elements → addons/render/elements/front/items/self}/global/tags/tags.css +0 -0
  342. /package/{lib/items/elements → addons/render/elements/front/items/self}/navigation/navbar/navbar.css +0 -0
  343. /package/{lib/items/elements → addons/render/elements/front/items/self}/navigation/sidebar/sidebar.css +0 -0
  344. /package/{lib/items/elements → addons/render/elements/front/items/self}/navigation/tabs/tabs.css +0 -0
  345. /package/{lib/items/elements → addons/render/elements/front/items/self}/status/code/code.js +0 -0
  346. /package/{lib/items/elements → addons/render/elements/front/items/self}/status/loading/loading.js +0 -0
  347. /package/addons/render/transforms/{functions → js/functions}/data.js +0 -0
  348. /package/addons/render/transforms/{functions → js/functions}/run.js +0 -0
  349. /package/addons/render/transforms/{functions → js/functions}/runtime.js +0 -0
  350. /package/addons/render/transforms/{item → js/item}/functions/load.js +0 -0
  351. /package/addons/render/transforms/{items/directives → js/items/self}/transform.js +0 -0
@@ -0,0 +1,6 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ import '#ai/addons/pipelines/functions/execute.js';
4
+ import '#ai/addons/pipelines/functions/run.js';
5
+
6
+ export default ai.pipelines;
@@ -0,0 +1,8 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ ai.providers.Fn('default', function()
4
+ {
5
+ const items = Object.values(ai.providers.Items());
6
+
7
+ return items.find(p => p.Get('default')) || items[0] || null;
8
+ });
@@ -0,0 +1,108 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ ai.providers.Fn('item.request', async function(provider, payload, stream = null)
4
+ {
5
+ const key = (typeof process !== 'undefined' && process.env ? process.env[provider.Get('key')] : '') || '';
6
+ const model = payload.model || provider.Get('model');
7
+ const config = provider.Get('models')[model] || {};
8
+ const before = provider.Get('onBeforeRequest')({ payload: { ...payload, model }, key, config });
9
+
10
+ if (stream)
11
+ {
12
+ before.body.stream = true;
13
+ }
14
+
15
+ const endpoint = provider.Get('endpoint') + (stream ? (provider.Get('endpoint').includes('?') ? '&' : '?') + 'streaming=true' : '');
16
+ const start = Date.now();
17
+ const controller = new AbortController();
18
+ const timer = setTimeout(() => controller.abort(), 120000);
19
+
20
+ const response = await fetch(endpoint,
21
+ {
22
+ method: 'POST',
23
+ headers: before.headers,
24
+ body: JSON.stringify(before.body),
25
+ signal: controller.signal
26
+ });
27
+
28
+ clearTimeout(timer);
29
+
30
+ if (!response.ok)
31
+ {
32
+ throw new Error('API error: ' + response.status);
33
+ }
34
+
35
+ if (stream)
36
+ {
37
+ const reader = response.body.getReader();
38
+ const decoder = new TextDecoder();
39
+ const parse = provider.Get('onParse');
40
+ let content = '';
41
+ let buffer = '';
42
+ let tokens = 0;
43
+
44
+ while (true)
45
+ {
46
+ const { done, value } = await reader.read();
47
+
48
+ if (done)
49
+ {
50
+ break;
51
+ }
52
+
53
+ buffer += decoder.decode(value, { stream: true });
54
+
55
+ const lines = buffer.split('\n');
56
+ buffer = lines.pop();
57
+
58
+ for (const line of lines)
59
+ {
60
+ const token = parse(line);
61
+
62
+ if (token)
63
+ {
64
+ content += token;
65
+ tokens++;
66
+ stream(token);
67
+ }
68
+ }
69
+ }
70
+
71
+ if (buffer.trim())
72
+ {
73
+ const token = parse(buffer);
74
+
75
+ if (token)
76
+ {
77
+ content += token;
78
+ tokens++;
79
+ stream(token);
80
+ }
81
+ }
82
+
83
+ const time = Date.now() - start;
84
+ const input = Math.ceil(JSON.stringify(before.body).length / 4);
85
+ const tps = time > 0 ? parseFloat((tokens / (time / 1000)).toFixed(2)) : 0;
86
+
87
+ return {
88
+ content,
89
+ reasoning: null,
90
+ tokens: { input, output: tokens },
91
+ time,
92
+ tps
93
+ };
94
+ }
95
+
96
+ const raw = await response.json();
97
+ const time = Date.now() - start;
98
+ const after = provider.Get('onAfterRequest')({ response: raw, model, config });
99
+ const tps = time > 0 ? parseFloat((after.tokens.output / (time / 1000)).toFixed(2)) : 0;
100
+
101
+ return {
102
+ content: after.content,
103
+ reasoning: after.reasoning,
104
+ tokens: after.tokens,
105
+ time,
106
+ tps
107
+ };
108
+ });
@@ -0,0 +1,69 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ ai.providers.Item({
4
+ id: 'nue',
5
+ name: 'Nue Tools',
6
+ default: false,
7
+ endpoint: 'https://nue.tools.divhunt.com/api/run/ai-chat',
8
+ key: 'NUE_API_KEY',
9
+ model: 'qwen3.5-9b',
10
+ models: {
11
+ 'qwen3.5-9b': {
12
+ tokens: 8000
13
+ }
14
+ },
15
+ onBeforeRequest: ({ payload, key }) =>
16
+ {
17
+ const body = {
18
+ messages: payload.messages,
19
+ tokens: payload.tokens || 2000,
20
+ temperature: payload.temperature ?? 0.15,
21
+ top_p: payload.top_p ?? 0.8,
22
+ top_k: payload.top_k ?? 20,
23
+ presence_penalty: payload.presence_penalty ?? 1.5,
24
+ thinking: payload.thinking || false,
25
+ stream: false,
26
+ json_schema: payload.json_schema
27
+ };
28
+
29
+ return {
30
+ headers: {
31
+ 'Content-Type': 'application/json',
32
+ ...(key && { 'Authorization': 'Bearer ' + key })
33
+ },
34
+ body
35
+ };
36
+ },
37
+ onAfterRequest: ({ response }) =>
38
+ {
39
+ const data = response.data || {};
40
+ const usage = data.usage || {};
41
+
42
+ return {
43
+ content: (data.response || '').trim(),
44
+ reasoning: (data.thinking || '').trim() || null,
45
+ tokens: {
46
+ input: usage.prompt_tokens || 0,
47
+ output: usage.completion_tokens || 0
48
+ }
49
+ };
50
+ },
51
+ onParse: (line) =>
52
+ {
53
+ const trimmed = line.trim();
54
+
55
+ if (!trimmed)
56
+ {
57
+ return null;
58
+ }
59
+
60
+ try
61
+ {
62
+ return JSON.parse(trimmed).response || null;
63
+ }
64
+ catch (e)
65
+ {
66
+ return null;
67
+ }
68
+ }
69
+ });
@@ -0,0 +1,79 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ ai.providers.Item({
4
+ id: 'ollama',
5
+ name: 'Ollama',
6
+ default: true,
7
+ endpoint: 'http://localhost:11434/api/chat',
8
+ model: 'devstral-small-2:24b-cloud',
9
+ models: {
10
+ 'devstral-small-2:24b-cloud': {
11
+ tokens: 32000
12
+ }
13
+ },
14
+ onBeforeRequest: ({ payload, key }) =>
15
+ {
16
+ const messages = payload.messages.map(m => ({
17
+ role: m.role,
18
+ content: m.content
19
+ }));
20
+
21
+ if(payload.json_schema)
22
+ {
23
+ messages[messages.length - 1].content += '\n\nRespond with valid JSON matching this schema:\n' + JSON.stringify(payload.json_schema);
24
+ }
25
+
26
+ return {
27
+ headers: {
28
+ 'Content-Type': 'application/json'
29
+ },
30
+ body: {
31
+ model: payload.model || 'devstral-small-2:24b-cloud',
32
+ messages,
33
+ stream: false,
34
+ options: {
35
+ temperature: payload.temperature ?? 0.15,
36
+ top_p: payload.top_p ?? 0.9,
37
+ top_k: payload.top_k ?? 20,
38
+ num_predict: payload.tokens || 2000
39
+ },
40
+ format: payload.json_schema ? 'json' : undefined
41
+ }
42
+ };
43
+ },
44
+ onAfterRequest: ({ response }) =>
45
+ {
46
+ const message = response.message || {};
47
+ let content = (message.content || '').trim();
48
+
49
+ if(content.includes('```json'))
50
+ {
51
+ content = content.split('```json')[1].split('```')[0].trim();
52
+ }
53
+ else if(content.includes('```'))
54
+ {
55
+ content = content.split('```')[1].split('```')[0].trim();
56
+ }
57
+
58
+ return {
59
+ content,
60
+ reasoning: null,
61
+ tokens: {
62
+ input: response.prompt_eval_count || 0,
63
+ output: response.eval_count || 0
64
+ }
65
+ };
66
+ },
67
+ onParse: (line) =>
68
+ {
69
+ try
70
+ {
71
+ const data = JSON.parse(line);
72
+ return data.message?.content || null;
73
+ }
74
+ catch(e)
75
+ {
76
+ return null;
77
+ }
78
+ }
79
+ });
@@ -0,0 +1,8 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ import '#ai/addons/providers/items/nue.js';
4
+ import '#ai/addons/providers/items/ollama.js';
5
+ import '#ai/addons/providers/functions/default.js';
6
+ import '#ai/addons/providers/item/functions/request.js';
7
+
8
+ export default ai.providers;
@@ -0,0 +1,159 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ ai.agents.Item({
4
+ id: 'orchestrator-steps',
5
+ name: 'Orchestrator Steps',
6
+ description: 'Plans linear execution steps for a goal.',
7
+ instructions: `
8
+ You create execution steps from a goal and available agents.
9
+
10
+ STEPS:
11
+ - Agent: {"goal": "...", "agent": "id", "input": {...}, "as": "name"}
12
+ - Loop: {"goal": "task for one item", "loop": "$expression"}
13
+ - Any step can have "if": "$expression" to guard execution.
14
+
15
+ $ REFERENCES:
16
+ - $ prefix = JS expression. No $ = literal.
17
+ - Scope: all "as" results + "data" variables directly (not $data.x, just $x).
18
+
19
+ RULES:
20
+ 1. Use only provided agent IDs.
21
+ 2. Use only values from goal or $ references.
22
+ 3. "as" stores the ENTIRE agent output object. To access a field, use $name.field. A loop over an array field inside the output must be $name.arrayField, never just $name.
23
+ 4. Loop iterates arrays. Loop goal is for ONE item.
24
+ 5. Use data variables when available.
25
+ 6. Fewest steps.
26
+ 7. No matching agent = achievable false.
27
+
28
+ FORMAT EXAMPLES:
29
+ - Agent: {"goal": "...", "agent": "x", "input": {"field": "literal"}, "as": "result"}
30
+ - Agent with ref: {"goal": "...", "agent": "y", "input": {"field": "$result.value"}, "as": "output"}
31
+ - Loop: {"goal": "process this item", "loop": "$result.items"}
32
+ - Agent in loop uses $item: {"goal": "...", "agent": "z", "input": {"field": "$item.name"}}
33
+ - Guarded agent: {"goal": "...", "agent": "z", "input": {...}, "if": "$output.flag"}
34
+ - JS in $ref: {"input": {"count": "$item.name.length", "upper": "$item.name.toUpperCase()"}}
35
+
36
+ REASONING:
37
+ - For each agent, state what it returns from the output schema.
38
+ - For each loop, trace: $name → output schema → array field → $name.field.
39
+ - For each $item reference, confirm it matches a field from the loop source array items.
40
+ `,
41
+ condition: () => false,
42
+ tokens: 3000,
43
+ input: {
44
+ prompt: {
45
+ type: 'string',
46
+ description: 'The goal to plan execution for'
47
+ },
48
+ data: {
49
+ type: 'object',
50
+ description: 'Variables available in current scope. Reference with $ prefix.'
51
+ },
52
+ agents: {
53
+ type: 'array',
54
+ description: 'Available agents',
55
+ each: {
56
+ type: 'object',
57
+ config: {
58
+ id: {
59
+ type: 'string',
60
+ description: 'Agent ID'
61
+ },
62
+ description: {
63
+ type: 'string',
64
+ description: 'What this agent does'
65
+ },
66
+ input: {
67
+ type: 'object',
68
+ description: 'Input fields this agent accepts'
69
+ },
70
+ output: {
71
+ type: 'object',
72
+ description: 'Output fields this agent returns'
73
+ }
74
+ }
75
+ }
76
+ },
77
+ pipelines: {
78
+ type: 'array',
79
+ description: 'Predefined step sequences. Use as-is or adapt to the goal. Higher usage = more proven.',
80
+ each: {
81
+ type: 'object',
82
+ config: {
83
+ id: {
84
+ type: 'string',
85
+ description: 'Pipeline ID'
86
+ },
87
+ name: {
88
+ type: 'string',
89
+ description: 'Pipeline name'
90
+ },
91
+ description: {
92
+ type: 'string',
93
+ description: 'What this pipeline does'
94
+ },
95
+ usage: {
96
+ type: 'number',
97
+ description: 'How many times this pipeline was used'
98
+ },
99
+ steps: {
100
+ type: 'array',
101
+ description: 'The predefined steps'
102
+ }
103
+ }
104
+ }
105
+ }
106
+ },
107
+ output: {
108
+ reasoning: {
109
+ type: 'string',
110
+ description: 'Explain why this plan was chosen, what each step does, and how data flows between steps. If not achievable, explain what is missing. Always check input and output schema.'
111
+ },
112
+ achievable: {
113
+ type: 'boolean',
114
+ description: 'Whether the goal can be fully achieved with the available agents. If false, steps must be empty.'
115
+ },
116
+ steps: {
117
+ type: 'array',
118
+ description: 'Flat list of steps to execute',
119
+ each: {
120
+ type: 'object',
121
+ config: {
122
+ goal: {
123
+ type: 'string',
124
+ description: 'What this step does (max 20 words).'
125
+ },
126
+ agent: {
127
+ type: 'string',
128
+ required: false,
129
+ description: 'Agent ID to call. Omit for loop steps.'
130
+ },
131
+ input: {
132
+ type: 'object',
133
+ required: false,
134
+ description: 'Input for agent. Values can be literals or $ expressions.'
135
+ },
136
+ as: {
137
+ type: 'string',
138
+ required: false,
139
+ description: 'Variable name to store result'
140
+ },
141
+ loop: {
142
+ type: 'string',
143
+ required: false,
144
+ description: '$ expression that resolves to an array. Omit for agent steps.'
145
+ },
146
+ if: {
147
+ type: 'string',
148
+ required: false,
149
+ description: '$ expression condition. Step executes only when truthy.'
150
+ }
151
+ }
152
+ }
153
+ },
154
+ conclusion: {
155
+ type: 'string',
156
+ description: 'Short first-person message to the user (max 15 words). Speak as their assistant.'
157
+ }
158
+ }
159
+ });
@@ -0,0 +1,29 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ ai.agents.Item({
4
+ id: 'orchestrator-summary',
5
+ name: 'Orchestrator Summary',
6
+ description: 'Summarizes what happened during execution based on history.',
7
+ instructions: `
8
+ You receive a conversation history of an AI assistant executing tasks.
9
+ Write a short, friendly first-person summary of what was done.
10
+ Include key results, numbers, and outcomes.
11
+ If something failed or was skipped, mention it briefly.
12
+ Keep it under 3 sentences.
13
+ `,
14
+ condition: () => false,
15
+ tokens: 500,
16
+ format: 'json',
17
+ input: {
18
+ history: {
19
+ type: 'array',
20
+ description: 'Conversation history of the execution'
21
+ }
22
+ },
23
+ output: {
24
+ summary: {
25
+ type: 'string',
26
+ description: 'Short first-person summary of what happened'
27
+ }
28
+ }
29
+ });
@@ -0,0 +1,7 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ ai.orchestrators.Item({
4
+ id: 'general',
5
+ steps: 20,
6
+ concurrency: 3
7
+ });
@@ -0,0 +1,13 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ import '#ai/addons/providers/load.js';
4
+ import '#ai/addons/agents/load.js';
5
+ import '#ai/addons/pipelines/load.js';
6
+ import '#ai/addons/orchestrators/load.js';
7
+
8
+ /* Items */
9
+ import '#ai/items/agents/steps.js';
10
+ import '#ai/items/agents/summary.js';
11
+ import '#ai/items/orchestrators/general.js';
12
+
13
+ export default ai;
@@ -0,0 +1,149 @@
1
+ import ai from '#ai/addon.js';
2
+
3
+ ai.agents.Item({
4
+ id: 'read-emails',
5
+ name: 'Read Emails',
6
+ description: 'Reads emails by category and returns a list of emails.',
7
+ format: 'json',
8
+ input: {
9
+ category: {
10
+ type: 'string',
11
+ required: true,
12
+ description: 'Email category to filter by (business, personal, support)',
13
+ options: ['business', 'personal', 'support']
14
+ }
15
+ },
16
+ output: {
17
+ emails: {
18
+ type: 'array',
19
+ description: 'List of emails',
20
+ each: {
21
+ type: 'object',
22
+ config: {
23
+ id: { type: 'string', description: 'Email ID' },
24
+ sender: { type: 'string', description: 'Sender email' },
25
+ subject: { type: 'string', description: 'Subject line' },
26
+ body: { type: 'string', description: 'Email body' }
27
+ }
28
+ }
29
+ }
30
+ },
31
+ onAfter: async ({ input, output }) =>
32
+ {
33
+ const database = {
34
+ business: [
35
+ {
36
+ id: 'email-001',
37
+ sender: 'john@acme.com',
38
+ subject: 'Server down - urgent',
39
+ body: 'Hey team, the production server went down at 3:42 AM. Error logs show a memory leak in the payment service. Need someone to look at this ASAP. Customers are getting 502 errors on checkout.'
40
+ },
41
+ {
42
+ id: 'email-002',
43
+ sender: 'sarah@client.io',
44
+ subject: 'New project proposal',
45
+ body: 'Hi, we would like to discuss a new project for our e-commerce platform. Budget is $50k, timeline is 3 months. Can we schedule a call this week?'
46
+ },
47
+ {
48
+ id: 'email-003',
49
+ sender: 'mike@partner.dev',
50
+ subject: 'API integration ready',
51
+ body: 'The payment gateway API integration is complete and tested. All endpoints are live in staging. Ready for your team to review and approve for production deployment.'
52
+ }
53
+ ],
54
+ personal: [
55
+ {
56
+ id: 'email-004',
57
+ sender: 'mom@gmail.com',
58
+ subject: 'Dinner on Sunday?',
59
+ body: 'Hey, are you free for dinner this Sunday? Dad is making his famous lasagna.'
60
+ }
61
+ ]
62
+ };
63
+
64
+ output.emails = database[input.category] || [];
65
+ }
66
+ });
67
+
68
+ ai.agents.Item({
69
+ id: 'summarize',
70
+ name: 'Summarize',
71
+ description: 'Summarizes text into a short, actionable message.',
72
+ format: 'json',
73
+ instructions: 'You receive an email with sender, subject, and body. Write a short 1-2 sentence summary that captures the key point and urgency level. Be direct.',
74
+ tokens: 500,
75
+ input: {
76
+ sender: { type: 'string', description: 'Email sender' },
77
+ subject: { type: 'string', description: 'Email subject' },
78
+ body: { type: 'string', description: 'Email body text' }
79
+ },
80
+ output: {
81
+ summary: { type: 'string', description: 'Short summary of the email' },
82
+ urgent: { type: 'boolean', description: 'Whether the email is urgent' }
83
+ }
84
+ });
85
+
86
+ ai.agents.Item({
87
+ id: 'send-slack',
88
+ name: 'Send Slack',
89
+ description: 'Sends a message to a Slack channel via webhook.',
90
+ format: 'json',
91
+ input: {
92
+ text: {
93
+ type: 'string',
94
+ required: true,
95
+ description: 'Message text to send'
96
+ }
97
+ },
98
+ output: {
99
+ sent: { type: 'boolean', description: 'Whether the message was sent' }
100
+ },
101
+ onAfter: async ({ input, output }) =>
102
+ {
103
+ const response = await fetch(process.env.SLACK_WEBHOOK, {
104
+ method: 'POST',
105
+ headers: { 'Content-Type': 'application/json' },
106
+ body: JSON.stringify({ text: input.text })
107
+ });
108
+
109
+ output.sent = response.ok;
110
+ }
111
+ });
112
+
113
+ ai.agents.Item({
114
+ id: 'create-task',
115
+ name: 'Create Task',
116
+ description: 'Creates a task in the project management system.',
117
+ format: 'json',
118
+ input: {
119
+ title: {
120
+ type: 'string',
121
+ required: true,
122
+ description: 'Task title'
123
+ },
124
+ description: {
125
+ type: 'string',
126
+ description: 'Task description'
127
+ },
128
+ priority: {
129
+ type: 'string',
130
+ value: 'medium',
131
+ description: 'Task priority level',
132
+ options: ['low', 'medium', 'high', 'urgent']
133
+ },
134
+ assignee: {
135
+ type: 'string',
136
+ description: 'Person to assign the task to'
137
+ }
138
+ },
139
+ output: {
140
+ id: { type: 'string', description: 'Created task ID' },
141
+ created: { type: 'boolean', description: 'Whether the task was created' }
142
+ },
143
+ onAfter: async ({ input, output }) =>
144
+ {
145
+ console.log('[TASK CREATED]', input.title, '| priority:', input.priority, '| assignee:', input.assignee || 'unassigned');
146
+ output.id = 'task-' + Date.now();
147
+ output.created = true;
148
+ }
149
+ });