@weave-kit/engine 0.4.0 → 0.6.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 (642) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +6 -6
  3. package/dist/adapters/auth/index.d.ts +4 -2
  4. package/dist/adapters/auth/index.d.ts.map +1 -1
  5. package/dist/adapters/auth/index.js +1 -0
  6. package/dist/adapters/auth/index.js.map +1 -1
  7. package/dist/adapters/auth/source.d.ts +4 -4
  8. package/dist/adapters/auth/source.d.ts.map +1 -1
  9. package/dist/adapters/auth/subject.d.ts +22 -0
  10. package/dist/adapters/auth/subject.d.ts.map +1 -0
  11. package/dist/adapters/auth/subject.js +42 -0
  12. package/dist/adapters/auth/subject.js.map +1 -0
  13. package/dist/adapters/auth/verify.d.ts +12 -0
  14. package/dist/adapters/auth/verify.d.ts.map +1 -0
  15. package/dist/adapters/auth/verify.js +2 -0
  16. package/dist/adapters/auth/verify.js.map +1 -0
  17. package/dist/adapters/events/index.d.ts +2 -1
  18. package/dist/adapters/events/index.d.ts.map +1 -1
  19. package/dist/adapters/events/index.js +2 -1
  20. package/dist/adapters/events/index.js.map +1 -1
  21. package/dist/adapters/mcp/generate.d.ts +3 -3
  22. package/dist/adapters/mcp/generate.d.ts.map +1 -1
  23. package/dist/adapters/mcp/generate.js +34 -11
  24. package/dist/adapters/mcp/generate.js.map +1 -1
  25. package/dist/adapters/mcp/guardrails.d.ts +1 -1
  26. package/dist/adapters/mcp/http.d.ts +3 -1
  27. package/dist/adapters/mcp/http.d.ts.map +1 -1
  28. package/dist/adapters/mcp/http.js +2 -2
  29. package/dist/adapters/mcp/http.js.map +1 -1
  30. package/dist/adapters/mcp/index.d.ts +13 -4
  31. package/dist/adapters/mcp/index.d.ts.map +1 -1
  32. package/dist/adapters/mcp/index.js +12 -8
  33. package/dist/adapters/mcp/index.js.map +1 -1
  34. package/dist/adapters/mcp/session.d.ts +5 -5
  35. package/dist/adapters/mcp/session.d.ts.map +1 -1
  36. package/dist/adapters/mcp/tools.d.ts +6 -0
  37. package/dist/adapters/mcp/tools.d.ts.map +1 -1
  38. package/dist/adapters/mcp/tools.js +38 -14
  39. package/dist/adapters/mcp/tools.js.map +1 -1
  40. package/dist/adapters/mcp/types.d.ts +3 -1
  41. package/dist/adapters/mcp/types.d.ts.map +1 -1
  42. package/dist/adapters/mcp/types.js +1 -1
  43. package/dist/adapters/mcp/types.js.map +1 -1
  44. package/dist/adapters/openapi/document.d.ts.map +1 -1
  45. package/dist/adapters/openapi/document.js +72 -2
  46. package/dist/adapters/openapi/document.js.map +1 -1
  47. package/dist/adapters/openapi/schema.d.ts.map +1 -1
  48. package/dist/adapters/openapi/schema.js +47 -7
  49. package/dist/adapters/openapi/schema.js.map +1 -1
  50. package/dist/adapters/openapi/types.d.ts +1 -0
  51. package/dist/adapters/openapi/types.d.ts.map +1 -1
  52. package/dist/adapters/openapi/types.js +2 -0
  53. package/dist/adapters/openapi/types.js.map +1 -1
  54. package/dist/adapters/rest/approvals.d.ts +2 -2
  55. package/dist/adapters/rest/approvals.js +2 -2
  56. package/dist/adapters/rest/audit.d.ts +2 -2
  57. package/dist/adapters/rest/audit.js +2 -2
  58. package/dist/adapters/rest/common.d.ts +3 -3
  59. package/dist/adapters/rest/common.d.ts.map +1 -1
  60. package/dist/adapters/rest/common.js +1 -1
  61. package/dist/adapters/rest/guardrails.d.ts +1 -1
  62. package/dist/adapters/rest/guardrails.js +1 -1
  63. package/dist/adapters/rest/identities.d.ts +4 -4
  64. package/dist/adapters/rest/identities.d.ts.map +1 -1
  65. package/dist/adapters/rest/identities.js +3 -3
  66. package/dist/adapters/rest/identities.js.map +1 -1
  67. package/dist/adapters/rest/identityAdmin.d.ts +18 -0
  68. package/dist/adapters/rest/identityAdmin.d.ts.map +1 -0
  69. package/dist/adapters/rest/identityAdmin.js +58 -0
  70. package/dist/adapters/rest/identityAdmin.js.map +1 -0
  71. package/dist/adapters/rest/index.d.ts +4 -0
  72. package/dist/adapters/rest/index.d.ts.map +1 -1
  73. package/dist/adapters/rest/index.js +3 -0
  74. package/dist/adapters/rest/index.js.map +1 -1
  75. package/dist/adapters/rest/metadata.d.ts +1 -1
  76. package/dist/adapters/rest/metadata.js +1 -1
  77. package/dist/adapters/rest/pages.d.ts +1 -1
  78. package/dist/adapters/rest/pages.d.ts.map +1 -1
  79. package/dist/adapters/rest/permissions.d.ts +1 -1
  80. package/dist/adapters/rest/permissions.js +1 -1
  81. package/dist/adapters/rest/plugin.d.ts +2 -2
  82. package/dist/adapters/rest/plugin.d.ts.map +1 -1
  83. package/dist/adapters/rest/schemas.d.ts +1 -1
  84. package/dist/adapters/rest/schemas.d.ts.map +1 -1
  85. package/dist/adapters/rest/workflow.d.ts +15 -0
  86. package/dist/adapters/rest/workflow.d.ts.map +1 -0
  87. package/dist/adapters/rest/workflow.js +89 -0
  88. package/dist/adapters/rest/workflow.js.map +1 -0
  89. package/dist/adapters/rest/workflowSource.d.ts +15 -0
  90. package/dist/adapters/rest/workflowSource.d.ts.map +1 -0
  91. package/dist/adapters/rest/workflowSource.js +63 -0
  92. package/dist/adapters/rest/workflowSource.js.map +1 -0
  93. package/dist/cli/commands/build.js +1 -1
  94. package/dist/cli/commands/build.js.map +1 -1
  95. package/dist/cli/commands/connect.d.ts +1 -1
  96. package/dist/cli/commands/default-view.d.ts +2 -2
  97. package/dist/cli/commands/default-view.js +2 -2
  98. package/dist/cli/commands/dev.d.ts.map +1 -1
  99. package/dist/cli/commands/dev.js +18 -9
  100. package/dist/cli/commands/dev.js.map +1 -1
  101. package/dist/cli/commands/field-add.d.ts.map +1 -1
  102. package/dist/cli/commands/field-add.js +12 -6
  103. package/dist/cli/commands/field-add.js.map +1 -1
  104. package/dist/cli/commands/field-types.d.ts.map +1 -1
  105. package/dist/cli/commands/field-types.js +10 -1
  106. package/dist/cli/commands/field-types.js.map +1 -1
  107. package/dist/cli/commands/identity.d.ts +15 -0
  108. package/dist/cli/commands/identity.d.ts.map +1 -0
  109. package/dist/cli/commands/identity.js +115 -0
  110. package/dist/cli/commands/identity.js.map +1 -0
  111. package/dist/cli/commands/introspect.d.ts.map +1 -1
  112. package/dist/cli/commands/introspect.js +23 -0
  113. package/dist/cli/commands/introspect.js.map +1 -1
  114. package/dist/cli/commands/mcp-config.js +1 -1
  115. package/dist/cli/commands/mcp-config.js.map +1 -1
  116. package/dist/cli/commands/migrate.js +2 -2
  117. package/dist/cli/commands/migrate.js.map +1 -1
  118. package/dist/cli/commands/module.d.ts +2 -2
  119. package/dist/cli/commands/module.d.ts.map +1 -1
  120. package/dist/cli/commands/module.js +2 -2
  121. package/dist/cli/commands/module.js.map +1 -1
  122. package/dist/cli/commands/object-create.d.ts.map +1 -1
  123. package/dist/cli/commands/object-create.js +15 -15
  124. package/dist/cli/commands/object-create.js.map +1 -1
  125. package/dist/cli/commands/schema-map.d.ts.map +1 -1
  126. package/dist/cli/commands/schema-map.js +6 -0
  127. package/dist/cli/commands/schema-map.js.map +1 -1
  128. package/dist/cli/commands/workflow-close.d.ts +9 -0
  129. package/dist/cli/commands/workflow-close.d.ts.map +1 -0
  130. package/dist/cli/commands/workflow-close.js +48 -0
  131. package/dist/cli/commands/workflow-close.js.map +1 -0
  132. package/dist/cli/commands/workflow-migrate.d.ts +11 -0
  133. package/dist/cli/commands/workflow-migrate.d.ts.map +1 -0
  134. package/dist/cli/commands/workflow-migrate.js +120 -0
  135. package/dist/cli/commands/workflow-migrate.js.map +1 -0
  136. package/dist/cli/commands/workflow-open.d.ts +10 -0
  137. package/dist/cli/commands/workflow-open.d.ts.map +1 -0
  138. package/dist/cli/commands/workflow-open.js +112 -0
  139. package/dist/cli/commands/workflow-open.js.map +1 -0
  140. package/dist/cli/commands/workflow-starter.d.ts +10 -0
  141. package/dist/cli/commands/workflow-starter.d.ts.map +1 -0
  142. package/dist/cli/commands/workflow-starter.js +29 -0
  143. package/dist/cli/commands/workflow-starter.js.map +1 -0
  144. package/dist/cli/commands/workflow-switch.d.ts +10 -0
  145. package/dist/cli/commands/workflow-switch.d.ts.map +1 -0
  146. package/dist/cli/commands/workflow-switch.js +60 -0
  147. package/dist/cli/commands/workflow-switch.js.map +1 -0
  148. package/dist/cli/commands/workflow-upgrade.d.ts +12 -0
  149. package/dist/cli/commands/workflow-upgrade.d.ts.map +1 -0
  150. package/dist/cli/commands/workflow-upgrade.js +116 -0
  151. package/dist/cli/commands/workflow-upgrade.js.map +1 -0
  152. package/dist/cli/index.js +74 -3
  153. package/dist/cli/index.js.map +1 -1
  154. package/dist/cli/project-types/manifest.d.ts +25 -0
  155. package/dist/cli/project-types/manifest.d.ts.map +1 -0
  156. package/dist/cli/project-types/manifest.js +40 -0
  157. package/dist/cli/project-types/manifest.js.map +1 -0
  158. package/dist/cli/ready-screen.js +1 -1
  159. package/dist/cli/ready-screen.js.map +1 -1
  160. package/dist/cli/scaffold.d.ts.map +1 -1
  161. package/dist/cli/scaffold.js +21 -34
  162. package/dist/cli/scaffold.js.map +1 -1
  163. package/dist/cli/types/commands.d.ts +48 -0
  164. package/dist/cli/types/commands.d.ts.map +1 -1
  165. package/dist/cli/types/index.d.ts +1 -1
  166. package/dist/cli/types/index.d.ts.map +1 -1
  167. package/dist/cli/types/values.d.ts +9 -0
  168. package/dist/cli/types/values.d.ts.map +1 -1
  169. package/dist/cli/types/values.js +9 -0
  170. package/dist/cli/types/values.js.map +1 -1
  171. package/dist/core/api/error.d.ts.map +1 -1
  172. package/dist/core/api/error.js +7 -4
  173. package/dist/core/api/error.js.map +1 -1
  174. package/dist/core/audit/types.d.ts +4 -2
  175. package/dist/core/audit/types.d.ts.map +1 -1
  176. package/dist/core/audit/types.js +2 -0
  177. package/dist/core/audit/types.js.map +1 -1
  178. package/dist/core/formula/validate.d.ts.map +1 -1
  179. package/dist/core/formula/validate.js +6 -0
  180. package/dist/core/formula/validate.js.map +1 -1
  181. package/dist/core/i18n/ar.d.ts.map +1 -1
  182. package/dist/core/i18n/ar.js +59 -3
  183. package/dist/core/i18n/ar.js.map +1 -1
  184. package/dist/core/i18n/de.d.ts.map +1 -1
  185. package/dist/core/i18n/de.js +59 -3
  186. package/dist/core/i18n/de.js.map +1 -1
  187. package/dist/core/i18n/en.d.ts +60 -4
  188. package/dist/core/i18n/en.d.ts.map +1 -1
  189. package/dist/core/i18n/en.js +60 -4
  190. package/dist/core/i18n/en.js.map +1 -1
  191. package/dist/core/i18n/es.d.ts.map +1 -1
  192. package/dist/core/i18n/es.js +59 -3
  193. package/dist/core/i18n/es.js.map +1 -1
  194. package/dist/core/i18n/fr.d.ts.map +1 -1
  195. package/dist/core/i18n/fr.js +59 -3
  196. package/dist/core/i18n/fr.js.map +1 -1
  197. package/dist/core/i18n/hi.d.ts.map +1 -1
  198. package/dist/core/i18n/hi.js +59 -3
  199. package/dist/core/i18n/hi.js.map +1 -1
  200. package/dist/core/i18n/id.d.ts.map +1 -1
  201. package/dist/core/i18n/id.js +59 -3
  202. package/dist/core/i18n/id.js.map +1 -1
  203. package/dist/core/i18n/ja.d.ts.map +1 -1
  204. package/dist/core/i18n/ja.js +59 -3
  205. package/dist/core/i18n/ja.js.map +1 -1
  206. package/dist/core/i18n/ko.d.ts.map +1 -1
  207. package/dist/core/i18n/ko.js +59 -3
  208. package/dist/core/i18n/ko.js.map +1 -1
  209. package/dist/core/i18n/pt.d.ts.map +1 -1
  210. package/dist/core/i18n/pt.js +59 -3
  211. package/dist/core/i18n/pt.js.map +1 -1
  212. package/dist/core/i18n/ru.d.ts.map +1 -1
  213. package/dist/core/i18n/ru.js +59 -3
  214. package/dist/core/i18n/ru.js.map +1 -1
  215. package/dist/core/i18n/vi.d.ts.map +1 -1
  216. package/dist/core/i18n/vi.js +59 -3
  217. package/dist/core/i18n/vi.js.map +1 -1
  218. package/dist/core/i18n/zh-hant.d.ts.map +1 -1
  219. package/dist/core/i18n/zh-hant.js +59 -3
  220. package/dist/core/i18n/zh-hant.js.map +1 -1
  221. package/dist/core/i18n/zh.d.ts.map +1 -1
  222. package/dist/core/i18n/zh.js +60 -4
  223. package/dist/core/i18n/zh.js.map +1 -1
  224. package/dist/core/object/describe.d.ts +62 -3
  225. package/dist/core/object/describe.d.ts.map +1 -1
  226. package/dist/core/object/describe.js +81 -11
  227. package/dist/core/object/describe.js.map +1 -1
  228. package/dist/core/object/gen-types.d.ts.map +1 -1
  229. package/dist/core/object/gen-types.js +14 -1
  230. package/dist/core/object/gen-types.js.map +1 -1
  231. package/dist/core/object/graph.d.ts +3 -0
  232. package/dist/core/object/graph.d.ts.map +1 -1
  233. package/dist/core/object/graph.js +90 -14
  234. package/dist/core/object/graph.js.map +1 -1
  235. package/dist/core/object/index.d.ts +6 -2
  236. package/dist/core/object/index.d.ts.map +1 -1
  237. package/dist/core/object/index.js +5 -1
  238. package/dist/core/object/index.js.map +1 -1
  239. package/dist/core/object/migrations.d.ts.map +1 -1
  240. package/dist/core/object/migrations.js +45 -0
  241. package/dist/core/object/migrations.js.map +1 -1
  242. package/dist/core/object/parse.d.ts +7 -0
  243. package/dist/core/object/parse.d.ts.map +1 -1
  244. package/dist/core/object/parse.js +32 -1
  245. package/dist/core/object/parse.js.map +1 -1
  246. package/dist/core/object/record-key.d.ts +19 -0
  247. package/dist/core/object/record-key.d.ts.map +1 -0
  248. package/dist/core/object/record-key.js +100 -0
  249. package/dist/core/object/record-key.js.map +1 -0
  250. package/dist/core/object/registry.js +1 -1
  251. package/dist/core/object/registry.js.map +1 -1
  252. package/dist/core/object/schema-version.d.ts +1 -1
  253. package/dist/core/object/schema-version.js +1 -1
  254. package/dist/core/object/system-objects.d.ts +16 -0
  255. package/dist/core/object/system-objects.d.ts.map +1 -0
  256. package/dist/core/object/system-objects.js +72 -0
  257. package/dist/core/object/system-objects.js.map +1 -0
  258. package/dist/core/object/validate/constraints.d.ts +9 -0
  259. package/dist/core/object/validate/constraints.d.ts.map +1 -0
  260. package/dist/core/object/validate/constraints.js +45 -0
  261. package/dist/core/object/validate/constraints.js.map +1 -0
  262. package/dist/core/object/validate/field.d.ts.map +1 -1
  263. package/dist/core/object/validate/field.js +339 -66
  264. package/dist/core/object/validate/field.js.map +1 -1
  265. package/dist/core/object/validate/formulas.d.ts.map +1 -1
  266. package/dist/core/object/validate/formulas.js +6 -0
  267. package/dist/core/object/validate/formulas.js.map +1 -1
  268. package/dist/core/object/validate/object.d.ts +2 -0
  269. package/dist/core/object/validate/object.d.ts.map +1 -1
  270. package/dist/core/object/validate/object.js +54 -19
  271. package/dist/core/object/validate/object.js.map +1 -1
  272. package/dist/core/object/validate/permissions.d.ts.map +1 -1
  273. package/dist/core/object/validate/permissions.js +4 -0
  274. package/dist/core/object/validate/permissions.js.map +1 -1
  275. package/dist/core/object/validate/primitives.d.ts +0 -1
  276. package/dist/core/object/validate/primitives.d.ts.map +1 -1
  277. package/dist/core/object/validate/primitives.js +1 -2
  278. package/dist/core/object/validate/primitives.js.map +1 -1
  279. package/dist/core/object/validate/workflow.d.ts +10 -0
  280. package/dist/core/object/validate/workflow.d.ts.map +1 -0
  281. package/dist/core/object/validate/workflow.js +143 -0
  282. package/dist/core/object/validate/workflow.js.map +1 -0
  283. package/dist/core/object/workflow-hash.d.ts +10 -0
  284. package/dist/core/object/workflow-hash.d.ts.map +1 -0
  285. package/dist/core/object/workflow-hash.js +27 -0
  286. package/dist/core/object/workflow-hash.js.map +1 -0
  287. package/dist/core/object/workflow-migrations.d.ts +27 -0
  288. package/dist/core/object/workflow-migrations.d.ts.map +1 -0
  289. package/dist/core/object/workflow-migrations.js +125 -0
  290. package/dist/core/object/workflow-migrations.js.map +1 -0
  291. package/dist/core/provider/event/index.d.ts +1 -1
  292. package/dist/core/provider/event/index.d.ts.map +1 -1
  293. package/dist/core/provider/event/index.js.map +1 -1
  294. package/dist/core/provider/event/types.d.ts +17 -2
  295. package/dist/core/provider/event/types.d.ts.map +1 -1
  296. package/dist/core/provider/event/types.js +2 -1
  297. package/dist/core/provider/event/types.js.map +1 -1
  298. package/dist/core/provider/identity/directory.d.ts +90 -0
  299. package/dist/core/provider/identity/directory.d.ts.map +1 -0
  300. package/dist/core/provider/identity/directory.js +3 -0
  301. package/dist/core/provider/identity/directory.js.map +1 -0
  302. package/dist/core/provider/identity/index.d.ts +5 -1
  303. package/dist/core/provider/identity/index.d.ts.map +1 -1
  304. package/dist/core/provider/identity/index.js +2 -1
  305. package/dist/core/provider/identity/index.js.map +1 -1
  306. package/dist/core/provider/identity/source.d.ts +22 -0
  307. package/dist/core/provider/identity/source.d.ts.map +1 -0
  308. package/dist/core/provider/identity/source.js +3 -0
  309. package/dist/core/provider/identity/source.js.map +1 -0
  310. package/dist/core/provider/identity/types.d.ts +62 -7
  311. package/dist/core/provider/identity/types.d.ts.map +1 -1
  312. package/dist/core/provider/identity/types.js +13 -0
  313. package/dist/core/provider/identity/types.js.map +1 -1
  314. package/dist/core/proxy/types.d.ts +4 -4
  315. package/dist/core/proxy/types.d.ts.map +1 -1
  316. package/dist/core/rbac/authorize.d.ts +10 -9
  317. package/dist/core/rbac/authorize.d.ts.map +1 -1
  318. package/dist/core/rbac/authorize.js +23 -18
  319. package/dist/core/rbac/authorize.js.map +1 -1
  320. package/dist/core/rbac/details.d.ts +33 -0
  321. package/dist/core/rbac/details.d.ts.map +1 -0
  322. package/dist/core/rbac/details.js +74 -0
  323. package/dist/core/rbac/details.js.map +1 -0
  324. package/dist/core/rbac/fields.d.ts +2 -1
  325. package/dist/core/rbac/fields.d.ts.map +1 -1
  326. package/dist/core/rbac/fields.js +3 -2
  327. package/dist/core/rbac/fields.js.map +1 -1
  328. package/dist/core/rbac/index.d.ts +3 -2
  329. package/dist/core/rbac/index.d.ts.map +1 -1
  330. package/dist/core/rbac/index.js +2 -1
  331. package/dist/core/rbac/index.js.map +1 -1
  332. package/dist/core/rbac/resolve.d.ts +3 -1
  333. package/dist/core/rbac/resolve.d.ts.map +1 -1
  334. package/dist/core/rbac/resolve.js +17 -9
  335. package/dist/core/rbac/resolve.js.map +1 -1
  336. package/dist/core/rbac/rls.d.ts +6 -0
  337. package/dist/core/rbac/rls.d.ts.map +1 -1
  338. package/dist/core/rbac/rls.js +52 -7
  339. package/dist/core/rbac/rls.js.map +1 -1
  340. package/dist/core/rbac/rowScope.d.ts +13 -6
  341. package/dist/core/rbac/rowScope.d.ts.map +1 -1
  342. package/dist/core/rbac/rowScope.js +88 -16
  343. package/dist/core/rbac/rowScope.js.map +1 -1
  344. package/dist/core/rbac/types.d.ts +6 -7
  345. package/dist/core/rbac/types.d.ts.map +1 -1
  346. package/dist/core/script/types.d.ts +1 -1
  347. package/dist/core/script/types.d.ts.map +1 -1
  348. package/dist/core/storage/diff.d.ts +10 -2
  349. package/dist/core/storage/diff.d.ts.map +1 -1
  350. package/dist/core/storage/diff.js +40 -18
  351. package/dist/core/storage/diff.js.map +1 -1
  352. package/dist/core/storage/index.d.ts +7 -1
  353. package/dist/core/storage/index.d.ts.map +1 -1
  354. package/dist/core/storage/index.js +6 -1
  355. package/dist/core/storage/index.js.map +1 -1
  356. package/dist/core/storage/inspect.d.ts +12 -3
  357. package/dist/core/storage/inspect.d.ts.map +1 -1
  358. package/dist/core/storage/inspect.js +39 -22
  359. package/dist/core/storage/inspect.js.map +1 -1
  360. package/dist/core/storage/introspect.d.ts +9 -2
  361. package/dist/core/storage/introspect.d.ts.map +1 -1
  362. package/dist/core/storage/introspect.js +100 -43
  363. package/dist/core/storage/introspect.js.map +1 -1
  364. package/dist/core/storage/link-table.d.ts +47 -0
  365. package/dist/core/storage/link-table.d.ts.map +1 -0
  366. package/dist/core/storage/link-table.js +110 -0
  367. package/dist/core/storage/link-table.js.map +1 -0
  368. package/dist/core/storage/map.d.ts +14 -5
  369. package/dist/core/storage/map.d.ts.map +1 -1
  370. package/dist/core/storage/map.js +207 -39
  371. package/dist/core/storage/map.js.map +1 -1
  372. package/dist/core/storage/meta.d.ts +6 -3
  373. package/dist/core/storage/meta.d.ts.map +1 -1
  374. package/dist/core/storage/meta.js +9 -5
  375. package/dist/core/storage/meta.js.map +1 -1
  376. package/dist/core/storage/migrate.d.ts.map +1 -1
  377. package/dist/core/storage/migrate.js +144 -11
  378. package/dist/core/storage/migrate.js.map +1 -1
  379. package/dist/core/storage/record-key-sql.d.ts +19 -0
  380. package/dist/core/storage/record-key-sql.d.ts.map +1 -0
  381. package/dist/core/storage/record-key-sql.js +43 -0
  382. package/dist/core/storage/record-key-sql.js.map +1 -0
  383. package/dist/core/storage/record-meta.d.ts +68 -0
  384. package/dist/core/storage/record-meta.d.ts.map +1 -0
  385. package/dist/core/storage/record-meta.js +108 -0
  386. package/dist/core/storage/record-meta.js.map +1 -0
  387. package/dist/core/storage/report.d.ts +10 -0
  388. package/dist/core/storage/report.d.ts.map +1 -1
  389. package/dist/core/storage/report.js +31 -9
  390. package/dist/core/storage/report.js.map +1 -1
  391. package/dist/core/storage/sql-literals.d.ts +9 -0
  392. package/dist/core/storage/sql-literals.d.ts.map +1 -0
  393. package/dist/core/storage/sql-literals.js +13 -0
  394. package/dist/core/storage/sql-literals.js.map +1 -0
  395. package/dist/core/storage/system-tables.d.ts +44 -0
  396. package/dist/core/storage/system-tables.d.ts.map +1 -0
  397. package/dist/core/storage/system-tables.js +268 -0
  398. package/dist/core/storage/system-tables.js.map +1 -0
  399. package/dist/core/tools/policies.d.ts +2 -2
  400. package/dist/core/tools/policies.js +2 -2
  401. package/dist/core/tools/types.d.ts +6 -6
  402. package/dist/core/tools/types.d.ts.map +1 -1
  403. package/dist/core/tools/values.d.ts +5 -0
  404. package/dist/core/tools/values.d.ts.map +1 -1
  405. package/dist/core/tools/values.js +9 -1
  406. package/dist/core/tools/values.js.map +1 -1
  407. package/dist/core/types/currency.d.ts +9 -0
  408. package/dist/core/types/currency.d.ts.map +1 -0
  409. package/dist/core/types/currency.js +28 -0
  410. package/dist/core/types/currency.js.map +1 -0
  411. package/dist/core/types/field-type.d.ts +60 -6
  412. package/dist/core/types/field-type.d.ts.map +1 -1
  413. package/dist/core/types/field-type.js +19 -3
  414. package/dist/core/types/field-type.js.map +1 -1
  415. package/dist/core/types/fields.d.ts +118 -20
  416. package/dist/core/types/fields.d.ts.map +1 -1
  417. package/dist/core/types/index.d.ts +11 -9
  418. package/dist/core/types/index.d.ts.map +1 -1
  419. package/dist/core/types/index.js +5 -4
  420. package/dist/core/types/index.js.map +1 -1
  421. package/dist/core/types/object.d.ts +27 -2
  422. package/dist/core/types/object.d.ts.map +1 -1
  423. package/dist/core/types/permission.d.ts +5 -0
  424. package/dist/core/types/permission.d.ts.map +1 -1
  425. package/dist/core/types/primaryField.d.ts +6 -1
  426. package/dist/core/types/primaryField.d.ts.map +1 -1
  427. package/dist/core/types/primaryField.js +8 -1
  428. package/dist/core/types/primaryField.js.map +1 -1
  429. package/dist/core/types/registry.d.ts +6 -4
  430. package/dist/core/types/registry.d.ts.map +1 -1
  431. package/dist/core/types/registry.js +40 -30
  432. package/dist/core/types/registry.js.map +1 -1
  433. package/dist/core/types/values.d.ts +102 -27
  434. package/dist/core/types/values.d.ts.map +1 -1
  435. package/dist/core/types/values.js +68 -29
  436. package/dist/core/types/values.js.map +1 -1
  437. package/dist/core/types/workflow.d.ts +140 -0
  438. package/dist/core/types/workflow.d.ts.map +1 -0
  439. package/dist/core/types/workflow.js +49 -0
  440. package/dist/core/types/workflow.js.map +1 -0
  441. package/dist/index.d.ts +2 -0
  442. package/dist/index.d.ts.map +1 -1
  443. package/dist/index.js +5 -3
  444. package/dist/index.js.map +1 -1
  445. package/dist/infrastructure/event/bus.d.ts.map +1 -1
  446. package/dist/infrastructure/event/bus.js +14 -0
  447. package/dist/infrastructure/event/bus.js.map +1 -1
  448. package/dist/infrastructure/identity.d.ts +2 -2
  449. package/dist/infrastructure/identity.d.ts.map +1 -1
  450. package/dist/infrastructure/identity.js.map +1 -1
  451. package/dist/layout-format.d.ts +6 -6
  452. package/dist/layout-format.js +4 -4
  453. package/dist/runtime/data-access/builder.d.ts +15 -5
  454. package/dist/runtime/data-access/builder.d.ts.map +1 -1
  455. package/dist/runtime/data-access/builder.js +222 -30
  456. package/dist/runtime/data-access/builder.js.map +1 -1
  457. package/dist/runtime/data-access/details.d.ts.map +1 -1
  458. package/dist/runtime/data-access/details.js +7 -2
  459. package/dist/runtime/data-access/details.js.map +1 -1
  460. package/dist/runtime/data-access/formula.d.ts +11 -3
  461. package/dist/runtime/data-access/formula.d.ts.map +1 -1
  462. package/dist/runtime/data-access/formula.js +82 -19
  463. package/dist/runtime/data-access/formula.js.map +1 -1
  464. package/dist/runtime/data-access/index.d.ts +1 -1
  465. package/dist/runtime/data-access/index.d.ts.map +1 -1
  466. package/dist/runtime/data-access/index.js +1 -1
  467. package/dist/runtime/data-access/index.js.map +1 -1
  468. package/dist/runtime/data-access/link.d.ts +7 -0
  469. package/dist/runtime/data-access/link.d.ts.map +1 -0
  470. package/dist/runtime/data-access/link.js +80 -0
  471. package/dist/runtime/data-access/link.js.map +1 -0
  472. package/dist/runtime/data-access/query.d.ts +48 -3
  473. package/dist/runtime/data-access/query.d.ts.map +1 -1
  474. package/dist/runtime/data-access/query.js +399 -45
  475. package/dist/runtime/data-access/query.js.map +1 -1
  476. package/dist/runtime/data-access/rbac.d.ts.map +1 -1
  477. package/dist/runtime/data-access/rbac.js +134 -16
  478. package/dist/runtime/data-access/rbac.js.map +1 -1
  479. package/dist/runtime/data-access/seqno.d.ts +0 -2
  480. package/dist/runtime/data-access/seqno.d.ts.map +1 -1
  481. package/dist/runtime/data-access/seqno.js +0 -9
  482. package/dist/runtime/data-access/seqno.js.map +1 -1
  483. package/dist/runtime/data-access/sql-executor.d.ts +13 -3
  484. package/dist/runtime/data-access/sql-executor.d.ts.map +1 -1
  485. package/dist/runtime/data-access/sql-executor.js +20 -14
  486. package/dist/runtime/data-access/sql-executor.js.map +1 -1
  487. package/dist/runtime/data-access/sql-gate.d.ts +4 -4
  488. package/dist/runtime/data-access/sql-gate.d.ts.map +1 -1
  489. package/dist/runtime/data-access/sql-gate.js +5 -5
  490. package/dist/runtime/data-access/sql-gate.js.map +1 -1
  491. package/dist/runtime/data-access/tx.d.ts +1 -1
  492. package/dist/runtime/data-access/tx.js +1 -1
  493. package/dist/runtime/data-access/types.d.ts +31 -3
  494. package/dist/runtime/data-access/types.d.ts.map +1 -1
  495. package/dist/runtime/data-access/validate.d.ts.map +1 -1
  496. package/dist/runtime/data-access/validate.js +186 -39
  497. package/dist/runtime/data-access/validate.js.map +1 -1
  498. package/dist/runtime/data-access/workflow.d.ts +146 -0
  499. package/dist/runtime/data-access/workflow.d.ts.map +1 -0
  500. package/dist/runtime/data-access/workflow.js +636 -0
  501. package/dist/runtime/data-access/workflow.js.map +1 -0
  502. package/dist/runtime/engine.d.ts +89 -14
  503. package/dist/runtime/engine.d.ts.map +1 -1
  504. package/dist/runtime/engine.js +123 -26
  505. package/dist/runtime/engine.js.map +1 -1
  506. package/dist/runtime/fieldtypes/loader.d.ts.map +1 -1
  507. package/dist/runtime/fieldtypes/loader.js +84 -2
  508. package/dist/runtime/fieldtypes/loader.js.map +1 -1
  509. package/dist/runtime/git/guardrailSource.d.ts +1 -1
  510. package/dist/runtime/git/index.d.ts +4 -2
  511. package/dist/runtime/git/index.d.ts.map +1 -1
  512. package/dist/runtime/git/index.js +2 -1
  513. package/dist/runtime/git/index.js.map +1 -1
  514. package/dist/runtime/git/layoutSource.d.ts +1 -1
  515. package/dist/runtime/git/loader.d.ts.map +1 -1
  516. package/dist/runtime/git/loader.js +18 -6
  517. package/dist/runtime/git/loader.js.map +1 -1
  518. package/dist/runtime/git/pageCatalog.d.ts +1 -1
  519. package/dist/runtime/git/schemaChange.d.ts +22 -0
  520. package/dist/runtime/git/schemaChange.d.ts.map +1 -1
  521. package/dist/runtime/git/schemaChange.js +28 -2
  522. package/dist/runtime/git/schemaChange.js.map +1 -1
  523. package/dist/runtime/git/schemaSource.d.ts +1 -1
  524. package/dist/runtime/git/sourceFile.d.ts +1 -1
  525. package/dist/runtime/git/sourceFile.js +1 -1
  526. package/dist/runtime/git/sourceTransaction.d.ts +1 -1
  527. package/dist/runtime/git/workflowSource.d.ts +40 -0
  528. package/dist/runtime/git/workflowSource.d.ts.map +1 -0
  529. package/dist/runtime/git/workflowSource.js +45 -0
  530. package/dist/runtime/git/workflowSource.js.map +1 -0
  531. package/dist/runtime/identity/admin.d.ts +18 -0
  532. package/dist/runtime/identity/admin.d.ts.map +1 -0
  533. package/dist/runtime/identity/admin.js +27 -0
  534. package/dist/runtime/identity/admin.js.map +1 -0
  535. package/dist/runtime/identity/directory.d.ts +12 -0
  536. package/dist/runtime/identity/directory.d.ts.map +1 -0
  537. package/dist/runtime/identity/directory.js +22 -0
  538. package/dist/runtime/identity/directory.js.map +1 -0
  539. package/dist/runtime/identity/index.d.ts +11 -0
  540. package/dist/runtime/identity/index.d.ts.map +1 -0
  541. package/dist/runtime/identity/index.js +8 -0
  542. package/dist/runtime/identity/index.js.map +1 -0
  543. package/dist/runtime/identity/resolve.d.ts +10 -0
  544. package/dist/runtime/identity/resolve.d.ts.map +1 -0
  545. package/dist/runtime/identity/resolve.js +16 -0
  546. package/dist/runtime/identity/resolve.js.map +1 -0
  547. package/dist/runtime/identity/sources/function.d.ts +10 -0
  548. package/dist/runtime/identity/sources/function.d.ts.map +1 -0
  549. package/dist/runtime/identity/sources/function.js +9 -0
  550. package/dist/runtime/identity/sources/function.js.map +1 -0
  551. package/dist/runtime/identity/sources/pg.d.ts +42 -0
  552. package/dist/runtime/identity/sources/pg.d.ts.map +1 -0
  553. package/dist/runtime/identity/sources/pg.js +121 -0
  554. package/dist/runtime/identity/sources/pg.js.map +1 -0
  555. package/dist/runtime/identity/store.d.ts +27 -0
  556. package/dist/runtime/identity/store.d.ts.map +1 -0
  557. package/dist/runtime/identity/store.js +139 -0
  558. package/dist/runtime/identity/store.js.map +1 -0
  559. package/dist/runtime/identity/sync.d.ts +34 -0
  560. package/dist/runtime/identity/sync.d.ts.map +1 -0
  561. package/dist/runtime/identity/sync.js +149 -0
  562. package/dist/runtime/identity/sync.js.map +1 -0
  563. package/dist/runtime/metadata/cache.d.ts +0 -2
  564. package/dist/runtime/metadata/cache.d.ts.map +1 -1
  565. package/dist/runtime/metadata/cache.js +0 -11
  566. package/dist/runtime/metadata/cache.js.map +1 -1
  567. package/dist/runtime/metadata/index.d.ts +1 -1
  568. package/dist/runtime/metadata/index.d.ts.map +1 -1
  569. package/dist/runtime/metadata/index.js +1 -1
  570. package/dist/runtime/metadata/index.js.map +1 -1
  571. package/dist/runtime/record-meta/index.d.ts +2 -0
  572. package/dist/runtime/record-meta/index.d.ts.map +1 -0
  573. package/dist/runtime/record-meta/index.js +2 -0
  574. package/dist/runtime/record-meta/index.js.map +1 -0
  575. package/dist/runtime/record-meta/store.d.ts +43 -0
  576. package/dist/runtime/record-meta/store.d.ts.map +1 -0
  577. package/dist/runtime/record-meta/store.js +88 -0
  578. package/dist/runtime/record-meta/store.js.map +1 -0
  579. package/dist/runtime/sql-analyzer/index.d.ts.map +1 -1
  580. package/dist/runtime/sql-analyzer/index.js +59 -0
  581. package/dist/runtime/sql-analyzer/index.js.map +1 -1
  582. package/dist/runtime/tools/executor.d.ts +11 -11
  583. package/dist/runtime/tools/executor.d.ts.map +1 -1
  584. package/dist/runtime/tools/executor.js +6 -6
  585. package/dist/runtime/tools/executor.js.map +1 -1
  586. package/dist/runtime/tools/index.d.ts +2 -0
  587. package/dist/runtime/tools/index.d.ts.map +1 -1
  588. package/dist/runtime/tools/index.js +1 -0
  589. package/dist/runtime/tools/index.js.map +1 -1
  590. package/dist/runtime/tools/policies.d.ts +22 -5
  591. package/dist/runtime/tools/policies.d.ts.map +1 -1
  592. package/dist/runtime/tools/policies.js +42 -12
  593. package/dist/runtime/tools/policies.js.map +1 -1
  594. package/dist/runtime/tunnel/connector.d.ts +1 -1
  595. package/dist/runtime/tunnel/forwarder.js +1 -1
  596. package/dist/runtime/tunnel/framing.d.ts +1 -1
  597. package/dist/runtime/tunnel/server.d.ts +1 -1
  598. package/dist/subsystems/approvals/index.d.ts +4 -4
  599. package/dist/subsystems/approvals/index.d.ts.map +1 -1
  600. package/dist/subsystems/approvals/index.js +5 -6
  601. package/dist/subsystems/approvals/index.js.map +1 -1
  602. package/dist/subsystems/approvals/store.d.ts +1 -3
  603. package/dist/subsystems/approvals/store.d.ts.map +1 -1
  604. package/dist/subsystems/approvals/store.js +1 -16
  605. package/dist/subsystems/approvals/store.js.map +1 -1
  606. package/dist/subsystems/audit/index.d.ts +1 -1
  607. package/dist/subsystems/audit/index.d.ts.map +1 -1
  608. package/dist/subsystems/audit/index.js +2 -3
  609. package/dist/subsystems/audit/index.js.map +1 -1
  610. package/dist/subsystems/audit/store.d.ts +0 -2
  611. package/dist/subsystems/audit/store.d.ts.map +1 -1
  612. package/dist/subsystems/audit/store.js +0 -21
  613. package/dist/subsystems/audit/store.js.map +1 -1
  614. package/dist/subsystems/quota/store.d.ts +9 -0
  615. package/dist/subsystems/quota/store.d.ts.map +1 -1
  616. package/dist/subsystems/quota/store.js +0 -8
  617. package/dist/subsystems/quota/store.js.map +1 -1
  618. package/dist/subsystems/script/backend/isolated-vm.js +1 -1
  619. package/dist/subsystems/script/backend/types.d.ts +2 -2
  620. package/dist/subsystems/script/backend/types.d.ts.map +1 -1
  621. package/dist/subsystems/script/bridge.d.ts +1 -1
  622. package/dist/subsystems/script/bridge.d.ts.map +1 -1
  623. package/dist/subsystems/script/bridge.js +6 -4
  624. package/dist/subsystems/script/bridge.js.map +1 -1
  625. package/dist/subsystems/script/dispatcher.d.ts.map +1 -1
  626. package/dist/subsystems/script/dispatcher.js +3 -1
  627. package/dist/subsystems/script/dispatcher.js.map +1 -1
  628. package/dist/subsystems/workflow/index.d.ts +4 -0
  629. package/dist/subsystems/workflow/index.d.ts.map +1 -0
  630. package/dist/subsystems/workflow/index.js +3 -0
  631. package/dist/subsystems/workflow/index.js.map +1 -0
  632. package/dist/subsystems/workflow/scheduler.d.ts +27 -0
  633. package/dist/subsystems/workflow/scheduler.d.ts.map +1 -0
  634. package/dist/subsystems/workflow/scheduler.js +109 -0
  635. package/dist/subsystems/workflow/scheduler.js.map +1 -0
  636. package/dist/subsystems/workflow/store.d.ts +10 -0
  637. package/dist/subsystems/workflow/store.d.ts.map +1 -0
  638. package/dist/subsystems/workflow/store.js +44 -0
  639. package/dist/subsystems/workflow/store.js.map +1 -0
  640. package/dist/version.d.ts +1 -1
  641. package/dist/version.js +1 -1
  642. package/package.json +7 -3
@@ -1 +1 @@
1
- {"version":3,"file":"primaryField.d.ts","sourceRoot":"","sources":["../../../src/core/types/primaryField.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD;;;;;;;GAOG;AAEH,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,GAAG,EAAE,gBAAgB,GAAG,SAAS,GAAG,eAAe,GAAG,SAAS,CAE7F;AAED,sFAAsF;AACtF,wBAAgB,YAAY,CAAC,GAAG,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAElF"}
1
+ {"version":3,"file":"primaryField.d.ts","sourceRoot":"","sources":["../../../src/core/types/primaryField.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD;;;;;;;GAOG;AAEH,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,GAAG,EAAE,gBAAgB,GAAG,SAAS,GAAG,eAAe,GAAG,SAAS,CAE7F;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,gBAAgB,GAAG,SAAS,GAAG,eAAe,EAAE,CAEpF;AAED,8FAA8F;AAC9F,wBAAgB,YAAY,CAAC,GAAG,EAAE,gBAAgB,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAElF"}
@@ -10,7 +10,14 @@
10
10
  export function primaryFieldOf(def) {
11
11
  return def === undefined ? undefined : def.fields.find((f) => f.primary === true);
12
12
  }
13
- /** name of the primary field; undefined when the object has no primary declaration */
13
+ /**
14
+ * every primary field, in declaration order. A composite key carries more than
15
+ * one; declare order is the tuple order used by `record_key`.
16
+ */
17
+ export function primaryFieldsOf(def) {
18
+ return def === undefined ? [] : def.fields.filter((f) => f.primary === true);
19
+ }
20
+ /** name of the (first) primary field; undefined when the object has no primary declaration */
14
21
  export function primaryKeyOf(def) {
15
22
  return primaryFieldOf(def)?.name;
16
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"primaryField.js","sourceRoot":"","sources":["../../../src/core/types/primaryField.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AAEH,sEAAsE;AACtE,MAAM,UAAU,cAAc,CAAC,GAAiC;IAC9D,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;AACpF,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,YAAY,CAAC,GAAiC;IAC5D,OAAO,cAAc,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"primaryField.js","sourceRoot":"","sources":["../../../src/core/types/primaryField.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AAEH,sEAAsE;AACtE,MAAM,UAAU,cAAc,CAAC,GAAiC;IAC9D,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;AACpF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,GAAiC;IAC/D,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;AAC/E,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,YAAY,CAAC,GAAiC;IAC5D,OAAO,cAAc,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;AACnC,CAAC"}
@@ -12,16 +12,18 @@ export declare function buildFieldTypeRegistry(extra?: readonly FieldTypeRegistr
12
12
  export declare function fieldBase(registry: FieldTypeRegistry, type: FieldType): FieldType;
13
13
  /** true for a relation-like field (target-by-FK) */
14
14
  export declare function isRelationLike(registry: FieldTypeRegistry, type: FieldType): boolean;
15
- /** true for a field type that can be a primary key */
15
+ /** true for a scalar value type (see `isKeyEligible` for primary-key use) */
16
16
  export declare function isScalarFieldType(registry: FieldTypeRegistry, type: FieldType): boolean;
17
+ /** true for a field type eligible as a primary key (scalar + key-eligible) */
18
+ export declare function isKeyEligible(registry: FieldTypeRegistry, type: FieldType): boolean;
17
19
  /** the frontend visual hint for a type (single source) */
18
20
  export declare function fieldUiVisual(registry: FieldTypeRegistry, type: FieldType): string;
19
21
  /** the OpenAPI `format` hint for a type, if any */
20
22
  export declare function fieldOpenApiFormat(registry: FieldTypeRegistry, type: FieldType): string | undefined;
21
23
  /** a descriptor (or undefined for an unknown type) */
22
24
  export declare function describeFieldType(registry: FieldTypeRegistry, type: FieldType): FieldTypeRegistration | undefined;
23
- /** engine primitives — always allowed by the default whitelist. */
25
+ /** always-enabled types — every scaffold preset (including `agent`) starts from these. */
24
26
  export declare const PRIMITIVE_FIELD_TYPES: readonly FieldType[];
25
- /** semantic types that are gated by the config `features.fieldTypes` whitelist. */
26
- export declare const SEMANTIC_FIELD_TYPES: readonly FieldType[];
27
+ /** opt-in types — the non-`agent` presets add these; `features.fieldTypes` gates them. */
28
+ export declare const OPT_IN_FIELD_TYPES: readonly FieldType[];
27
29
  //# sourceMappingURL=registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/core/types/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AA6ChF,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,EAAE,iBAA4B,CAAC;AAEvE;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,GAAE,SAAS,qBAAqB,EAAO,GAAG,iBAAiB,CAKtG;AAED,gFAAgF;AAChF,wBAAgB,SAAS,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,SAAS,CAEjF;AAED,oDAAoD;AACpD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAIpF;AAED,sDAAsD;AACtD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAIvF;AAED,0DAA0D;AAC1D,wBAAgB,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAElF;AAED,mDAAmD;AACnD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAEnG;AAED,sDAAsD;AACtD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,qBAAqB,GAAG,SAAS,CAEjH;AAED,mEAAmE;AACnE,eAAO,MAAM,qBAAqB,EAAE,SAAS,SAAS,EAerD,CAAC;AAEF,mFAAmF;AACnF,eAAO,MAAM,oBAAoB,EAAE,SAAS,SAAS,EAQpD,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/core/types/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAqDhF,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,EAAE,iBAA4B,CAAC;AAEvE;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,GAAE,SAAS,qBAAqB,EAAO,GAAG,iBAAiB,CAKtG;AAED,gFAAgF;AAChF,wBAAgB,SAAS,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,SAAS,CAEjF;AAED,oDAAoD;AACpD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAIpF;AAED,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAIvF;AAED,8EAA8E;AAC9E,wBAAgB,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAMnF;AAED,0DAA0D;AAC1D,wBAAgB,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAElF;AAED,mDAAmD;AACnD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAEnG;AAED,sDAAsD;AACtD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,qBAAqB,GAAG,SAAS,CAEjH;AAED,0FAA0F;AAC1F,eAAO,MAAM,qBAAqB,EAAE,SAAS,SAAS,EAQrD,CAAC;AAEF,0FAA0F;AAC1F,eAAO,MAAM,kBAAkB,EAAE,SAAS,SAAS,EAQlD,CAAC"}
@@ -1,9 +1,8 @@
1
- import { FIELD_TYPES } from './values.js';
1
+ import { FIELD_TYPES, PG_FIELD_TYPES } from './values.js';
2
2
  /**
3
3
  * Field-type registry — the single source for the engine's field-type
4
- * descriptors. Primitive types (scalar + relation + sequence) carry `base:
5
- * undefined`; semantic types (string subtypes, media, identity FKs) carry a
6
- * `base` they fully inherit (storage/describe/gen-types/MCP behaviour), plus a
4
+ * descriptors. PG-native types carry `base: undefined`; custom types may carry a
5
+ * `base` they fully inherit (storage/describe/gen-types/MCP behaviour) plus a
7
6
  * small `ui` hints block consumed by `@weave-kit/ui`. Schema-level gating lives
8
7
  * in the config `features.fieldTypes` whitelist (see validate.ts), NOT here.
9
8
  *
@@ -14,28 +13,36 @@ const registry = new Map();
14
13
  function define(descriptor) {
15
14
  registry.set(descriptor.name, descriptor);
16
15
  }
17
- // ---- primitives ----
18
- define({ name: FIELD_TYPES.STRING, scalar: true });
19
- define({ name: FIELD_TYPES.TEXT, scalar: true });
20
- define({ name: FIELD_TYPES.INTEGER, scalar: true });
21
- define({ name: FIELD_TYPES.NUMBER, scalar: true });
22
- define({ name: FIELD_TYPES.CURRENCY, scalar: true });
23
- define({ name: FIELD_TYPES.BOOLEAN, scalar: true });
24
- define({ name: FIELD_TYPES.DATETIME, scalar: true });
25
- define({ name: FIELD_TYPES.DATE, scalar: true });
26
- define({ name: FIELD_TYPES.JSON, scalar: true });
16
+ // ---- PG-native value primitives (value scalars; PK-eligible as a base) ----
17
+ for (const name of Object.values(PG_FIELD_TYPES))
18
+ define({ name, scalar: true });
19
+ // value scalars PostgreSQL cannot use as a primary key: json/jsonb are not
20
+ // comparable for a key and real/double/interval have no natural equality. They
21
+ // stay scalar (usable as values, e.g. formula refs) but are not key-eligible.
22
+ const KEY_INELIGIBLE = [
23
+ FIELD_TYPES.JSON,
24
+ FIELD_TYPES.JSONB,
25
+ FIELD_TYPES.INTERVAL,
26
+ FIELD_TYPES.REAL,
27
+ FIELD_TYPES.DOUBLE,
28
+ ];
29
+ for (const name of KEY_INELIGIBLE)
30
+ define({ name, scalar: true, keyEligible: false });
31
+ // ---- engine custom primitives (each may carry its own rules) ----
27
32
  define({ name: FIELD_TYPES.ENUM, scalar: true });
28
33
  define({ name: FIELD_TYPES.RELATION, relationLike: true });
29
34
  define({ name: FIELD_TYPES.DETAILS, relationLike: true });
30
35
  define({ name: FIELD_TYPES.MULTI_RELATION, relationLike: true });
31
36
  define({ name: FIELD_TYPES.SEQ_NO });
32
- // ---- semantic types (base delegation + ui hints + format hints) ----
37
+ define({ name: FIELD_TYPES.CURRENCY, scalar: true });
38
+ // ---- engine custom types with base delegation + ui/format hints ----
33
39
  define({ name: FIELD_TYPES.FIRST_NAME, base: FIELD_TYPES.STRING, scalar: true, ui: { visual: 'none' } });
34
40
  define({ name: FIELD_TYPES.LAST_NAME, base: FIELD_TYPES.STRING, scalar: true, ui: { visual: 'none' } });
35
41
  define({ name: FIELD_TYPES.EMAIL, base: FIELD_TYPES.STRING, scalar: true, ui: { visual: 'none' }, openApiFormat: 'email' });
36
42
  define({ name: FIELD_TYPES.PHONE, base: FIELD_TYPES.STRING, scalar: true, ui: { visual: 'none' } });
37
43
  define({ name: FIELD_TYPES.IMAGE, base: FIELD_TYPES.STRING, scalar: true, ui: { visual: 'image' }, openApiFormat: 'uri' });
38
- define({ name: FIELD_TYPES.PERSON, base: FIELD_TYPES.RELATION, relationLike: true, ui: { visual: 'avatar' } });
44
+ // ---- identity FK types (relation-like; implicit target = the identity objects) ----
45
+ define({ name: FIELD_TYPES.USER, base: FIELD_TYPES.RELATION, relationLike: true, ui: { visual: 'avatar' } });
39
46
  define({ name: FIELD_TYPES.DEPARTMENT, base: FIELD_TYPES.RELATION, relationLike: true, ui: { visual: 'icon' } });
40
47
  /** the default registry: every engine built-in type (immutable by convention) */
41
48
  export const DEFAULT_FIELD_TYPE_REGISTRY = registry;
@@ -63,13 +70,23 @@ export function isRelationLike(registry, type) {
63
70
  return desc.relationLike;
64
71
  return registry.get(fieldBase(registry, type))?.relationLike === true;
65
72
  }
66
- /** true for a field type that can be a primary key */
73
+ /** true for a scalar value type (see `isKeyEligible` for primary-key use) */
67
74
  export function isScalarFieldType(registry, type) {
68
75
  const desc = registry.get(type);
69
76
  if (desc?.scalar !== undefined)
70
77
  return desc.scalar;
71
78
  return registry.get(fieldBase(registry, type))?.scalar === true;
72
79
  }
80
+ /** true for a field type eligible as a primary key (scalar + key-eligible) */
81
+ export function isKeyEligible(registry, type) {
82
+ const desc = registry.get(type);
83
+ if (desc?.keyEligible !== undefined)
84
+ return desc.keyEligible;
85
+ const base = desc?.base;
86
+ if (base !== undefined)
87
+ return registry.get(base)?.keyEligible !== false;
88
+ return isScalarFieldType(registry, type);
89
+ }
73
90
  /** the frontend visual hint for a type (single source) */
74
91
  export function fieldUiVisual(registry, type) {
75
92
  return registry.get(type)?.ui?.visual ?? 'none';
@@ -82,31 +99,24 @@ export function fieldOpenApiFormat(registry, type) {
82
99
  export function describeFieldType(registry, type) {
83
100
  return registry.get(type);
84
101
  }
85
- /** engine primitives — always allowed by the default whitelist. */
102
+ /** always-enabled types — every scaffold preset (including `agent`) starts from these. */
86
103
  export const PRIMITIVE_FIELD_TYPES = [
87
- FIELD_TYPES.STRING,
88
- FIELD_TYPES.TEXT,
89
- FIELD_TYPES.INTEGER,
90
- FIELD_TYPES.NUMBER,
91
- FIELD_TYPES.CURRENCY,
92
- FIELD_TYPES.BOOLEAN,
93
- FIELD_TYPES.DATETIME,
94
- FIELD_TYPES.DATE,
95
- FIELD_TYPES.JSON,
104
+ ...Object.values(PG_FIELD_TYPES),
96
105
  FIELD_TYPES.ENUM,
97
106
  FIELD_TYPES.RELATION,
98
107
  FIELD_TYPES.DETAILS,
99
108
  FIELD_TYPES.MULTI_RELATION,
100
109
  FIELD_TYPES.SEQ_NO,
110
+ FIELD_TYPES.CURRENCY,
101
111
  ];
102
- /** semantic types that are gated by the config `features.fieldTypes` whitelist. */
103
- export const SEMANTIC_FIELD_TYPES = [
112
+ /** opt-in types — the non-`agent` presets add these; `features.fieldTypes` gates them. */
113
+ export const OPT_IN_FIELD_TYPES = [
104
114
  FIELD_TYPES.FIRST_NAME,
105
115
  FIELD_TYPES.LAST_NAME,
106
116
  FIELD_TYPES.EMAIL,
107
117
  FIELD_TYPES.PHONE,
108
118
  FIELD_TYPES.IMAGE,
109
- FIELD_TYPES.PERSON,
119
+ FIELD_TYPES.USER,
110
120
  FIELD_TYPES.DEPARTMENT,
111
121
  ];
112
122
  //# sourceMappingURL=registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/types/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/types/registry.ts"],"names":[],"mappings":"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"}
@@ -5,17 +5,56 @@
5
5
  * `typeof X[keyof typeof X]`, so the value set lives in exactly one place.
6
6
  * Consumers import the const (runtime) or the derived type (compile-time).
7
7
  */
8
- /** every field type: scalar + relation + sequence */
9
- export declare const FIELD_TYPES: {
8
+ /**
9
+ * PG-native field types: near 1:1 with a native PostgreSQL column type
10
+ * (aliases allowed, e.g. `string`→varchar, `number`→numeric, `double`→double
11
+ * precision). No engine-specific rules beyond the column mapping.
12
+ */
13
+ export declare const PG_FIELD_TYPES: {
10
14
  readonly STRING: "string";
11
15
  readonly TEXT: "text";
16
+ readonly CHAR: "char";
17
+ readonly SMALLINT: "smallint";
12
18
  readonly INTEGER: "integer";
19
+ readonly BIGINT: "bigint";
13
20
  readonly NUMBER: "number";
14
- readonly CURRENCY: "currency";
21
+ readonly REAL: "real";
22
+ readonly DOUBLE: "double";
15
23
  readonly BOOLEAN: "boolean";
16
- readonly DATETIME: "datetime";
17
24
  readonly DATE: "date";
25
+ readonly TIME: "time";
26
+ readonly TIMETZ: "timetz";
27
+ readonly TIMESTAMP: "timestamp";
28
+ readonly TIMESTAMPTZ: "timestamptz";
29
+ readonly INTERVAL: "interval";
30
+ readonly UUID: "uuid";
18
31
  readonly JSON: "json";
32
+ readonly JSONB: "jsonb";
33
+ };
34
+ /**
35
+ * Engine-shipped custom field types (each may carry its own rules: enum options,
36
+ * relation target, currency code, identity target, …). External user/plugin
37
+ * registrations join this same category at runtime through the
38
+ * `FieldTypeRegistry` (namespaced), so only the engine-provided ones are
39
+ * enumerated statically here.
40
+ */
41
+ export declare const BUILTIN_CUSTOM_FIELD_TYPES: {
42
+ readonly ENUM: "enum";
43
+ readonly RELATION: "relation";
44
+ readonly DETAILS: "details";
45
+ readonly MULTI_RELATION: "multiRelation";
46
+ readonly SEQ_NO: "seq_no";
47
+ readonly FIRST_NAME: "firstName";
48
+ readonly LAST_NAME: "lastName";
49
+ readonly EMAIL: "email";
50
+ readonly PHONE: "phone";
51
+ readonly IMAGE: "image";
52
+ readonly CURRENCY: "currency";
53
+ readonly USER: "user";
54
+ readonly DEPARTMENT: "department";
55
+ };
56
+ /** every field type: PG-native columns + engine-shipped custom types */
57
+ export declare const FIELD_TYPES: {
19
58
  readonly ENUM: "enum";
20
59
  readonly RELATION: "relation";
21
60
  readonly DETAILS: "details";
@@ -26,8 +65,28 @@ export declare const FIELD_TYPES: {
26
65
  readonly EMAIL: "email";
27
66
  readonly PHONE: "phone";
28
67
  readonly IMAGE: "image";
29
- readonly PERSON: "person";
68
+ readonly CURRENCY: "currency";
69
+ readonly USER: "user";
30
70
  readonly DEPARTMENT: "department";
71
+ readonly STRING: "string";
72
+ readonly TEXT: "text";
73
+ readonly CHAR: "char";
74
+ readonly SMALLINT: "smallint";
75
+ readonly INTEGER: "integer";
76
+ readonly BIGINT: "bigint";
77
+ readonly NUMBER: "number";
78
+ readonly REAL: "real";
79
+ readonly DOUBLE: "double";
80
+ readonly BOOLEAN: "boolean";
81
+ readonly DATE: "date";
82
+ readonly TIME: "time";
83
+ readonly TIMETZ: "timetz";
84
+ readonly TIMESTAMP: "timestamp";
85
+ readonly TIMESTAMPTZ: "timestamptz";
86
+ readonly INTERVAL: "interval";
87
+ readonly UUID: "uuid";
88
+ readonly JSON: "json";
89
+ readonly JSONB: "jsonb";
31
90
  };
32
91
  /** a built-in field type (the closed set the engine ships) */
33
92
  export type BuiltinFieldType = typeof FIELD_TYPES[keyof typeof FIELD_TYPES];
@@ -37,25 +96,12 @@ export type BuiltinFieldType = typeof FIELD_TYPES[keyof typeof FIELD_TYPES];
37
96
  * names; behaviour is resolved through the `FieldTypeRegistry` (base delegation).
38
97
  */
39
98
  export type FieldType = BuiltinFieldType | (string & {});
40
- /** scalar subset of FIELD_TYPES (primary key only allows scalar types) */
41
- export declare const SCALAR_FIELD_TYPES: {
42
- readonly STRING: "string";
43
- readonly TEXT: "text";
44
- readonly INTEGER: "integer";
45
- readonly NUMBER: "number";
46
- readonly CURRENCY: "currency";
47
- readonly BOOLEAN: "boolean";
48
- readonly DATETIME: "datetime";
49
- readonly DATE: "date";
50
- readonly JSON: "json";
51
- readonly ENUM: "enum";
52
- readonly FIRST_NAME: "firstName";
53
- readonly LAST_NAME: "lastName";
54
- readonly EMAIL: "email";
55
- readonly PHONE: "phone";
56
- readonly IMAGE: "image";
99
+ /** the engine identity objects targeted by the `user`/`department` field types */
100
+ export declare const IDENTITY_OBJECT_NAMES: {
101
+ readonly USER: "weavekit_user";
102
+ readonly DEPARTMENT: "weavekit_department";
57
103
  };
58
- export type ScalarFieldType = typeof SCALAR_FIELD_TYPES[keyof typeof SCALAR_FIELD_TYPES];
104
+ export type IdentityObjectName = typeof IDENTITY_OBJECT_NAMES[keyof typeof IDENTITY_OBJECT_NAMES];
59
105
  /** FK delete behavior for `relation` fields (default restrict) */
60
106
  export declare const ON_DELETE_ACTIONS: {
61
107
  readonly CASCADE: "cascade";
@@ -63,19 +109,31 @@ export declare const ON_DELETE_ACTIONS: {
63
109
  readonly SET_NULL: "set_null";
64
110
  };
65
111
  export type OnDeleteAction = typeof ON_DELETE_ACTIONS[keyof typeof ON_DELETE_ACTIONS];
66
- /** row-level read scope for RBAC */
112
+ /** row-level read/manage scope for RBAC */
67
113
  export declare const READ_SCOPES: {
68
114
  readonly OWN: "own";
69
- readonly TEAM: "team";
115
+ readonly DEPARTMENT: "department";
70
116
  readonly ALL: "all";
71
117
  };
72
118
  export type ReadScope = typeof READ_SCOPES[keyof typeof READ_SCOPES];
73
- /** field markers that declare row-level scope columns (ownership/team) */
119
+ /** field markers that declare row-level scope columns (ownership/department) */
74
120
  export declare const ROW_SCOPE_MARKERS: {
75
121
  readonly OWNERSHIP: "ownership";
76
- readonly TEAM: "team";
122
+ readonly DEPARTMENT: "department";
77
123
  };
78
124
  export type RowScopeMarker = typeof ROW_SCOPE_MARKERS[keyof typeof ROW_SCOPE_MARKERS];
125
+ /**
126
+ * where a scope column's values come from:
127
+ * - `internal` — ids of the engine identity directory (`weavekit_*` uuids)
128
+ * - `external` — ids from the identity source (translated via `external_id`)
129
+ */
130
+ export declare const SCOPE_SOURCES: {
131
+ readonly INTERNAL: "internal";
132
+ readonly EXTERNAL: "external";
133
+ };
134
+ export type ScopeSource = typeof SCOPE_SOURCES[keyof typeof SCOPE_SOURCES];
135
+ /** object names reserved by the engine (system objects + engine-managed tables) */
136
+ export declare const RESERVED_OBJECT_PREFIX = "weavekit_";
79
137
  /** index access method */
80
138
  export declare const INDEX_TYPES: {
81
139
  readonly BTREE: "btree";
@@ -83,6 +141,11 @@ export declare const INDEX_TYPES: {
83
141
  readonly GIST: "gist";
84
142
  };
85
143
  export type IndexType = typeof INDEX_TYPES[keyof typeof INDEX_TYPES];
144
+ /** declarative table-level constraint kinds */
145
+ export declare const CONSTRAINT_TYPES: {
146
+ readonly UNIQUE: "unique";
147
+ };
148
+ export type ConstraintType = typeof CONSTRAINT_TYPES[keyof typeof CONSTRAINT_TYPES];
86
149
  /** seq_no counter restart strategy */
87
150
  export declare const SEQUENCE_CYCLES: {
88
151
  readonly NONE: "none";
@@ -104,6 +167,18 @@ export declare const DETAILS_COLUMNS: {
104
167
  readonly PARENT_IDX: "parent_idx";
105
168
  };
106
169
  export type DetailsColumn = typeof DETAILS_COLUMNS[keyof typeof DETAILS_COLUMNS];
170
+ /**
171
+ * Engine-managed record instance status (`weave_status`). The workflow runtime
172
+ * drives transitions between these; a record with no engine metadata defaults
173
+ * to `draft`.
174
+ */
175
+ export declare const WEAVE_STATUS: {
176
+ readonly DRAFT: "draft";
177
+ readonly RUNNING: "running";
178
+ readonly EFFECTIVE: "effective";
179
+ readonly CANCELED: "canceled";
180
+ };
181
+ export type WeaveStatus = typeof WEAVE_STATUS[keyof typeof WEAVE_STATUS];
107
182
  /** relation edge kinds in the normalized RelationGraph */
108
183
  export declare const RELATION_KINDS: {
109
184
  readonly BELONGS_TO: "belongsTo";
@@ -1 +1 @@
1
- {"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../src/core/types/values.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,qDAAqD;AACrD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;CAyBd,CAAC;AACX,8DAA8D;AAC9D,MAAM,MAAM,gBAAgB,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAC5E;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,gBAAgB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEzD,0EAA0E;AAC1E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;CAgBrB,CAAC;AACX,MAAM,MAAM,eAAe,GAAG,OAAO,kBAAkB,CAAC,MAAM,OAAO,kBAAkB,CAAC,CAAC;AAEzF,kEAAkE;AAClE,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAEtF,oCAAoC;AACpC,eAAO,MAAM,WAAW;;;;CAId,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAErE,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAEtF,0BAA0B;AAC1B,eAAO,MAAM,WAAW;;;;CAId,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAErE,sCAAsC;AACtC,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF,6DAA6D;AAC7D,eAAO,MAAM,eAAe;;;;;CAKlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF,iEAAiE;AACjE,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF,0DAA0D;AAC1D,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../src/core/types/values.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;CAoBjB,CAAC;AAEX;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;CAc7B,CAAC;AAEX,wEAAwE;AACxE,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGd,CAAC;AACX,8DAA8D;AAC9D,MAAM,MAAM,gBAAgB,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAC5E;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,gBAAgB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEzD,kFAAkF;AAClF,eAAO,MAAM,qBAAqB;;;CAGxB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,OAAO,qBAAqB,CAAC,MAAM,OAAO,qBAAqB,CAAC,CAAC;AAElG,kEAAkE;AAClE,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAEtF,2CAA2C;AAC3C,eAAO,MAAM,WAAW;;;;CAId,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAErE,gFAAgF;AAChF,eAAO,MAAM,iBAAiB;;;CAGpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAEtF;;;;GAIG;AACH,eAAO,MAAM,aAAa;;;CAGhB,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAE3E,mFAAmF;AACnF,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAElD,0BAA0B;AAC1B,eAAO,MAAM,WAAW;;;;CAId,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC;AAErE,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB;;CAEnB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,gBAAgB,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC;AAEpF,sCAAsC;AACtC,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF,6DAA6D;AAC7D,eAAO,MAAM,eAAe;;;;;CAKlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF,iEAAiE;AACjE,eAAO,MAAM,eAAe;;;;CAIlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,OAAO,eAAe,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEjF;;;;GAIG;AACH,eAAO,MAAM,YAAY;;;;;CAKf,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,OAAO,YAAY,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAEzE,0DAA0D;AAC1D,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC"}
@@ -5,50 +5,63 @@
5
5
  * `typeof X[keyof typeof X]`, so the value set lives in exactly one place.
6
6
  * Consumers import the const (runtime) or the derived type (compile-time).
7
7
  */
8
- /** every field type: scalar + relation + sequence */
9
- export const FIELD_TYPES = {
8
+ /**
9
+ * PG-native field types: near 1:1 with a native PostgreSQL column type
10
+ * (aliases allowed, e.g. `string`→varchar, `number`→numeric, `double`→double
11
+ * precision). No engine-specific rules beyond the column mapping.
12
+ */
13
+ export const PG_FIELD_TYPES = {
10
14
  STRING: 'string',
11
15
  TEXT: 'text',
16
+ CHAR: 'char',
17
+ SMALLINT: 'smallint',
12
18
  INTEGER: 'integer',
19
+ BIGINT: 'bigint',
13
20
  NUMBER: 'number',
14
- CURRENCY: 'currency',
21
+ REAL: 'real',
22
+ DOUBLE: 'double',
15
23
  BOOLEAN: 'boolean',
16
- DATETIME: 'datetime',
17
24
  DATE: 'date',
25
+ TIME: 'time',
26
+ TIMETZ: 'timetz',
27
+ TIMESTAMP: 'timestamp',
28
+ TIMESTAMPTZ: 'timestamptz',
29
+ INTERVAL: 'interval',
30
+ UUID: 'uuid',
18
31
  JSON: 'json',
32
+ JSONB: 'jsonb',
33
+ };
34
+ /**
35
+ * Engine-shipped custom field types (each may carry its own rules: enum options,
36
+ * relation target, currency code, identity target, …). External user/plugin
37
+ * registrations join this same category at runtime through the
38
+ * `FieldTypeRegistry` (namespaced), so only the engine-provided ones are
39
+ * enumerated statically here.
40
+ */
41
+ export const BUILTIN_CUSTOM_FIELD_TYPES = {
19
42
  ENUM: 'enum',
20
43
  RELATION: 'relation',
21
44
  DETAILS: 'details',
22
45
  MULTI_RELATION: 'multiRelation',
23
46
  SEQ_NO: 'seq_no',
24
- // string subtypes (first/last name, contact) and media (image/asset)
25
47
  FIRST_NAME: 'firstName',
26
48
  LAST_NAME: 'lastName',
27
49
  EMAIL: 'email',
28
50
  PHONE: 'phone',
29
51
  IMAGE: 'image',
30
- // identity FK to the internal address-book/person object (relation-like; not scalar)
31
- PERSON: 'person',
32
- // identity FK to the internal department/organization object (relation-like; not scalar)
52
+ CURRENCY: 'currency',
53
+ USER: 'user',
33
54
  DEPARTMENT: 'department',
34
55
  };
35
- /** scalar subset of FIELD_TYPES (primary key only allows scalar types) */
36
- export const SCALAR_FIELD_TYPES = {
37
- STRING: 'string',
38
- TEXT: 'text',
39
- INTEGER: 'integer',
40
- NUMBER: 'number',
41
- CURRENCY: 'currency',
42
- BOOLEAN: 'boolean',
43
- DATETIME: 'datetime',
44
- DATE: 'date',
45
- JSON: 'json',
46
- ENUM: 'enum',
47
- FIRST_NAME: 'firstName',
48
- LAST_NAME: 'lastName',
49
- EMAIL: 'email',
50
- PHONE: 'phone',
51
- IMAGE: 'image',
56
+ /** every field type: PG-native columns + engine-shipped custom types */
57
+ export const FIELD_TYPES = {
58
+ ...PG_FIELD_TYPES,
59
+ ...BUILTIN_CUSTOM_FIELD_TYPES,
60
+ };
61
+ /** the engine identity objects targeted by the `user`/`department` field types */
62
+ export const IDENTITY_OBJECT_NAMES = {
63
+ USER: 'weavekit_user',
64
+ DEPARTMENT: 'weavekit_department',
52
65
  };
53
66
  /** FK delete behavior for `relation` fields (default restrict) */
54
67
  export const ON_DELETE_ACTIONS = {
@@ -56,23 +69,38 @@ export const ON_DELETE_ACTIONS = {
56
69
  RESTRICT: 'restrict',
57
70
  SET_NULL: 'set_null',
58
71
  };
59
- /** row-level read scope for RBAC */
72
+ /** row-level read/manage scope for RBAC */
60
73
  export const READ_SCOPES = {
61
74
  OWN: 'own',
62
- TEAM: 'team',
75
+ DEPARTMENT: 'department',
63
76
  ALL: 'all',
64
77
  };
65
- /** field markers that declare row-level scope columns (ownership/team) */
78
+ /** field markers that declare row-level scope columns (ownership/department) */
66
79
  export const ROW_SCOPE_MARKERS = {
67
80
  OWNERSHIP: 'ownership',
68
- TEAM: 'team',
81
+ DEPARTMENT: 'department',
82
+ };
83
+ /**
84
+ * where a scope column's values come from:
85
+ * - `internal` — ids of the engine identity directory (`weavekit_*` uuids)
86
+ * - `external` — ids from the identity source (translated via `external_id`)
87
+ */
88
+ export const SCOPE_SOURCES = {
89
+ INTERNAL: 'internal',
90
+ EXTERNAL: 'external',
69
91
  };
92
+ /** object names reserved by the engine (system objects + engine-managed tables) */
93
+ export const RESERVED_OBJECT_PREFIX = 'weavekit_';
70
94
  /** index access method */
71
95
  export const INDEX_TYPES = {
72
96
  BTREE: 'btree',
73
97
  GIN: 'gin',
74
98
  GIST: 'gist',
75
99
  };
100
+ /** declarative table-level constraint kinds */
101
+ export const CONSTRAINT_TYPES = {
102
+ UNIQUE: 'unique',
103
+ };
76
104
  /** seq_no counter restart strategy */
77
105
  export const SEQUENCE_CYCLES = {
78
106
  NONE: 'none',
@@ -91,6 +119,17 @@ export const DETAILS_COLUMNS = {
91
119
  PARENT_TYPE: 'parent_type',
92
120
  PARENT_IDX: 'parent_idx',
93
121
  };
122
+ /**
123
+ * Engine-managed record instance status (`weave_status`). The workflow runtime
124
+ * drives transitions between these; a record with no engine metadata defaults
125
+ * to `draft`.
126
+ */
127
+ export const WEAVE_STATUS = {
128
+ DRAFT: 'draft',
129
+ RUNNING: 'running',
130
+ EFFECTIVE: 'effective',
131
+ CANCELED: 'canceled',
132
+ };
94
133
  /** relation edge kinds in the normalized RelationGraph */
95
134
  export const RELATION_KINDS = {
96
135
  BELONGS_TO: 'belongsTo',
@@ -1 +1 @@
1
- {"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/core/types/values.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,qDAAqD;AACrD,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,eAAe;IAC/B,MAAM,EAAE,QAAQ;IAChB,qEAAqE;IACrE,UAAU,EAAE,WAAW;IACvB,SAAS,EAAE,UAAU;IACrB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,qFAAqF;IACrF,MAAM,EAAE,QAAQ;IAChB,yFAAyF;IACzF,UAAU,EAAE,YAAY;CAChB,CAAC;AAUX,0EAA0E;AAC1E,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,WAAW;IACvB,SAAS,EAAE,UAAU;IACrB,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACN,CAAC;AAGX,kEAAkE;AAClE,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,oCAAoC;AACpC,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;CACF,CAAC;AAGX,0EAA0E;AAC1E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,SAAS,EAAE,WAAW;IACtB,IAAI,EAAE,MAAM;CACJ,CAAC;AAGX,0BAA0B;AAC1B,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;CACJ,CAAC;AAGX,sCAAsC;AACtC,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAC;AAGX,6DAA6D;AAC7D,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;CACF,CAAC;AAGX,iEAAiE;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;CAChB,CAAC;AAGX,0DAA0D;AAC1D,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,WAAW;IACvB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,eAAe;CACvB,CAAC"}
1
+ {"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/core/types/values.ts"],"names":[],"mappings":"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"}