rimecms 0.31.4 → 0.32.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 (1079) hide show
  1. package/README.md +1 -1
  2. package/dist/adapter-sqlite/area.server.d.ts +10 -46
  3. package/dist/adapter-sqlite/area.server.js +31 -309
  4. package/dist/adapter-sqlite/auth.server.d.ts +11 -19
  5. package/dist/adapter-sqlite/auth.server.js +20 -77
  6. package/dist/adapter-sqlite/blocks.server.d.ts +7 -8
  7. package/dist/adapter-sqlite/blocks.server.js +17 -12
  8. package/dist/adapter-sqlite/collection.server.d.ts +10 -67
  9. package/dist/adapter-sqlite/collection.server.js +22 -418
  10. package/dist/adapter-sqlite/columns.server.d.ts +140 -0
  11. package/dist/adapter-sqlite/columns.server.js +307 -0
  12. package/dist/adapter-sqlite/generate-schema/column.server.js +1 -1
  13. package/dist/adapter-sqlite/generate-schema/index.server.d.ts +3 -3
  14. package/dist/adapter-sqlite/generate-schema/index.server.js +64 -139
  15. package/dist/adapter-sqlite/generate-schema/relations/junction.server.d.ts +3 -2
  16. package/dist/adapter-sqlite/generate-schema/relations/junction.server.js +14 -7
  17. package/dist/adapter-sqlite/generate-schema/root.server.d.ts +31 -7
  18. package/dist/adapter-sqlite/generate-schema/root.server.js +35 -19
  19. package/dist/adapter-sqlite/generate-schema/templates.server.d.ts +55 -60
  20. package/dist/adapter-sqlite/generate-schema/templates.server.js +110 -169
  21. package/dist/adapter-sqlite/generate-schema/write.server.js +19 -6
  22. package/dist/adapter-sqlite/index.server.d.ts +17 -23
  23. package/dist/adapter-sqlite/index.server.js +33 -36
  24. package/dist/adapter-sqlite/locales.server.d.ts +31 -0
  25. package/dist/adapter-sqlite/locales.server.js +57 -0
  26. package/dist/adapter-sqlite/naming.server.d.ts +134 -0
  27. package/dist/adapter-sqlite/naming.server.js +98 -0
  28. package/dist/adapter-sqlite/order-by.server.d.ts +29 -0
  29. package/dist/adapter-sqlite/order-by.server.js +115 -0
  30. package/dist/adapter-sqlite/read.server.d.ts +78 -0
  31. package/dist/adapter-sqlite/read.server.js +188 -0
  32. package/dist/adapter-sqlite/registry.server.d.ts +45 -0
  33. package/dist/adapter-sqlite/registry.server.js +63 -0
  34. package/dist/adapter-sqlite/relations.server.d.ts +10 -12
  35. package/dist/adapter-sqlite/relations.server.js +24 -8
  36. package/dist/adapter-sqlite/rows.server.d.ts +36 -0
  37. package/dist/adapter-sqlite/rows.server.js +6 -0
  38. package/dist/adapter-sqlite/select.server.d.ts +25 -0
  39. package/dist/adapter-sqlite/select.server.js +274 -0
  40. package/dist/adapter-sqlite/table.server.d.ts +18 -0
  41. package/dist/adapter-sqlite/table.server.js +63 -0
  42. package/dist/adapter-sqlite/transform.server.d.ts +13 -12
  43. package/dist/adapter-sqlite/transform.server.js +118 -197
  44. package/dist/adapter-sqlite/tree.server.d.ts +7 -8
  45. package/dist/adapter-sqlite/tree.server.js +13 -12
  46. package/dist/adapter-sqlite/types.server.d.ts +6 -5
  47. package/dist/adapter-sqlite/where.server.d.ts +25 -3
  48. package/dist/adapter-sqlite/where.server.js +46 -36
  49. package/dist/adapter-sqlite/write.server.d.ts +166 -0
  50. package/dist/adapter-sqlite/write.server.js +272 -0
  51. package/dist/core/adapter.d.ts +456 -0
  52. package/dist/core/adapter.js +13 -0
  53. package/dist/core/auth/access.d.ts +73 -0
  54. package/dist/core/auth/augment.d.ts +18 -0
  55. package/dist/core/auth/augment.js +110 -0
  56. package/dist/core/auth/augment.server.d.ts +3 -0
  57. package/dist/core/auth/augment.server.js +23 -0
  58. package/dist/core/auth/better-auth/config.server.d.ts +2122 -0
  59. package/dist/core/auth/better-auth/config.server.js +81 -0
  60. package/dist/core/auth/better-auth/hooks.server.js +132 -0
  61. package/dist/core/auth/better-auth/instance.server.d.ts +4215 -0
  62. package/dist/core/auth/better-auth/instance.server.js +26 -0
  63. package/dist/core/auth/better-auth-tables.server.d.ts +33 -0
  64. package/dist/core/auth/better-auth-tables.server.js +50 -0
  65. package/dist/core/auth/configure.d.ts +21 -0
  66. package/dist/core/auth/configure.js +21 -0
  67. package/dist/core/auth/constant.server.d.ts +28 -0
  68. package/dist/core/auth/constant.server.js +43 -0
  69. package/dist/core/auth/enabled.d.ts +10 -0
  70. package/dist/core/auth/enabled.js +10 -0
  71. package/dist/core/auth/handler/index.server.js +159 -0
  72. package/dist/core/auth/hooks/augment-fields-password.server.d.ts +20 -0
  73. package/dist/core/auth/hooks/augment-fields-password.server.js +44 -0
  74. package/dist/core/auth/hooks/create-better-auth-user.server.d.ts +4 -0
  75. package/dist/core/auth/hooks/create-better-auth-user.server.js +212 -0
  76. package/dist/core/auth/hooks/delete-better-auth-user.server.d.ts +4 -0
  77. package/dist/core/auth/hooks/delete-better-auth-user.server.js +25 -0
  78. package/dist/core/auth/hooks/forward-roles.server.d.ts +12 -0
  79. package/dist/core/auth/hooks/forward-roles.server.js +58 -0
  80. package/dist/core/auth/hooks/index.server.d.ts +18 -0
  81. package/dist/core/auth/hooks/index.server.js +18 -0
  82. package/dist/core/auth/hooks/populate-api-key.server.d.ts +5 -0
  83. package/dist/core/auth/hooks/populate-api-key.server.js +22 -0
  84. package/dist/core/auth/hooks/prevent-superadmin-deletion.server.d.ts +6 -0
  85. package/dist/core/auth/hooks/prevent-superadmin-deletion.server.js +16 -0
  86. package/dist/core/auth/hooks/prevent-superadmin-mutation.server.d.ts +5 -0
  87. package/dist/core/auth/hooks/prevent-superadmin-mutation.server.js +28 -0
  88. package/dist/core/auth/hooks/prevent-user-mutations.server.d.ts +5 -0
  89. package/dist/core/auth/hooks/prevent-user-mutations.server.js +13 -0
  90. package/dist/core/auth/hooks/remove-private-fields.server.d.ts +7 -0
  91. package/dist/core/auth/hooks/remove-private-fields.server.js +11 -0
  92. package/dist/core/auth/hooks/sign-in-new-user.server.d.ts +12 -0
  93. package/dist/core/auth/hooks/sign-in-new-user.server.js +29 -0
  94. package/dist/core/auth/module.d.ts +2 -0
  95. package/dist/core/auth/module.js +2 -0
  96. package/dist/core/auth/module.server.d.ts +2 -0
  97. package/dist/core/auth/module.server.js +2 -0
  98. package/dist/core/auth/staff/configure.d.ts +7 -0
  99. package/dist/core/auth/staff/configure.js +13 -0
  100. package/dist/core/auth/staff/configure.server.d.ts +7 -0
  101. package/dist/core/auth/staff/configure.server.js +14 -0
  102. package/dist/core/auth/staff/derive.d.ts +23 -0
  103. package/dist/core/auth/staff/derive.js +58 -0
  104. package/dist/core/auth/tables.d.ts +38 -0
  105. package/dist/core/auth/tables.js +157 -0
  106. package/dist/core/auth/types.d.ts +47 -0
  107. package/dist/core/auth/user.server.d.ts +43 -0
  108. package/dist/core/auth/user.server.js +73 -0
  109. package/dist/core/auth/util.d.ts +13 -0
  110. package/dist/core/auth/validate-config.d.ts +13 -0
  111. package/dist/core/auth/validate-config.js +42 -0
  112. package/dist/core/boot.server.d.ts +4227 -0
  113. package/dist/core/boot.server.js +61 -0
  114. package/dist/core/codegen.server.d.ts +22 -0
  115. package/dist/core/codegen.server.js +58 -0
  116. package/dist/core/config/build.d.ts +23 -0
  117. package/dist/core/config/build.js +22 -0
  118. package/dist/core/config/build.server.d.ts +70 -0
  119. package/dist/core/config/build.server.js +33 -0
  120. package/dist/core/config/configure.d.ts +26 -0
  121. package/dist/core/config/configure.js +40 -0
  122. package/dist/core/config/context.server.d.ts +82 -0
  123. package/dist/core/config/context.server.js +118 -0
  124. package/dist/core/config/index.d.ts +4 -0
  125. package/dist/core/config/index.js +4 -0
  126. package/dist/core/config/index.server.d.ts +9 -0
  127. package/dist/core/config/index.server.js +11 -0
  128. package/dist/core/config/types.d.ts +88 -170
  129. package/dist/core/config/validate.server.d.ts +3 -0
  130. package/dist/core/config/validate.server.js +259 -0
  131. package/dist/core/constants.d.ts +69 -0
  132. package/dist/core/constants.js +69 -0
  133. package/dist/core/constants.server.d.ts +5 -0
  134. package/dist/core/constants.server.js +6 -0
  135. package/dist/core/cors/configure.server.d.ts +11 -0
  136. package/dist/core/cors/configure.server.js +14 -0
  137. package/dist/core/cors/handler.server.js +75 -0
  138. package/dist/core/cors/module.browser.js +1 -0
  139. package/dist/core/cors/module.server.d.ts +1 -0
  140. package/dist/core/cors/module.server.js +7 -0
  141. package/dist/core/dev/cache.server.d.ts +17 -0
  142. package/dist/core/dev/cache.server.js +65 -0
  143. package/dist/core/dev/cli/commands/build.js +70 -0
  144. package/dist/core/dev/cli/commands/clear.server.js +42 -0
  145. package/dist/core/dev/cli/commands/generate-exports.server.d.ts +26 -0
  146. package/dist/core/dev/cli/commands/generate-exports.server.js +155 -0
  147. package/dist/core/dev/cli/commands/generate.server.js +98 -0
  148. package/dist/core/dev/cli/commands/init.server.js +242 -0
  149. package/dist/core/dev/cli/index.js +16 -16
  150. package/dist/core/dev/cli/templates/build.js +45 -0
  151. package/dist/core/dev/cli/templates/init.d.ts +18 -0
  152. package/dist/core/dev/cli/templates/init.js +117 -0
  153. package/dist/core/dev/cli/util/package-manager.server.js +7 -3
  154. package/dist/core/dev/cli/util/package.server.d.ts +0 -8
  155. package/dist/core/dev/cli/util/package.server.js +0 -10
  156. package/dist/core/dev/codegen/routes/common.server.d.ts +35 -0
  157. package/dist/core/dev/codegen/routes/common.server.js +437 -0
  158. package/dist/core/dev/codegen/routes/custom-css.server.js +86 -0
  159. package/dist/core/dev/codegen/routes/index.server.d.ts +17 -0
  160. package/dist/core/dev/codegen/routes/index.server.js +110 -0
  161. package/dist/core/dev/codegen/routes/util.server.d.ts +52 -0
  162. package/dist/core/dev/codegen/routes/util.server.js +118 -0
  163. package/dist/core/dev/codegen/runtime/index.server.d.ts +78 -0
  164. package/dist/core/dev/codegen/runtime/index.server.js +92 -0
  165. package/dist/core/dev/codegen/runtime/parse-exports.server.d.ts +16 -0
  166. package/dist/core/dev/codegen/runtime/parse-exports.server.js +60 -0
  167. package/dist/core/dev/codegen/sanitize/index.server.js +834 -0
  168. package/dist/core/dev/codegen/types/contributions.server.d.ts +37 -0
  169. package/dist/core/dev/codegen/types/contributions.server.js +25 -0
  170. package/dist/core/dev/codegen/types/index.server.js +132 -0
  171. package/dist/core/dev/codegen/types/templates.server.d.ts +13 -0
  172. package/dist/core/dev/codegen/types/templates.server.js +134 -0
  173. package/dist/core/dev/config-memo.server.js +85 -0
  174. package/dist/core/dev/constants.server.d.ts +20 -0
  175. package/dist/core/dev/constants.server.js +63 -0
  176. package/dist/core/dev/ensure.server.d.ts +30 -0
  177. package/dist/core/dev/ensure.server.js +82 -0
  178. package/dist/core/dev/prototype-routes.server.d.ts +16 -0
  179. package/dist/core/dev/prototype-routes.server.js +23 -0
  180. package/dist/core/dev/version.server.d.ts +12 -0
  181. package/dist/core/dev/version.server.js +27 -0
  182. package/dist/core/dev/vite.server.js +237 -0
  183. package/dist/core/errors/handler.server.d.ts +17 -1
  184. package/dist/core/errors/handler.server.js +4 -23
  185. package/dist/core/fields/builders/boolean-builder.d.ts +1 -1
  186. package/dist/core/fields/builders/field-builder.d.ts +12 -1
  187. package/dist/core/fields/builders/form-field-builder.d.ts +16 -5
  188. package/dist/core/fields/builders/form-field-builder.js +19 -8
  189. package/dist/core/fields/builders/select-builder.d.ts +1 -1
  190. package/dist/core/fields/types.d.ts +16 -0
  191. package/dist/core/fields/util.d.ts +60 -0
  192. package/dist/core/fields/util.js +84 -1
  193. package/dist/core/fields/validate.js +171 -0
  194. package/dist/core/handler.server.d.ts +4 -0
  195. package/dist/core/handler.server.js +25 -0
  196. package/dist/core/i18n/en/common.d.ts +18 -0
  197. package/dist/core/i18n/en/common.js +20 -1
  198. package/dist/core/i18n/fr/common.d.ts +18 -0
  199. package/dist/core/i18n/fr/common.js +20 -1
  200. package/dist/core/i18n/index.d.ts +0 -1
  201. package/dist/core/i18n/index.js +0 -1
  202. package/dist/core/locale/copy.server.d.ts +35 -0
  203. package/dist/core/locale/copy.server.js +93 -0
  204. package/dist/core/locale/types.d.ts +20 -0
  205. package/dist/core/panel/configure.d.ts +63 -0
  206. package/dist/core/panel/configure.js +56 -0
  207. package/dist/core/panel/types.d.ts +61 -0
  208. package/dist/core/pipeline/build-document.server.d.ts +26 -0
  209. package/dist/core/pipeline/build-document.server.js +83 -0
  210. package/dist/core/pipeline/build.server.d.ts +23 -0
  211. package/dist/core/pipeline/build.server.js +76 -0
  212. package/dist/core/pipeline/config-map/build-tree-map.d.ts +4 -0
  213. package/dist/core/pipeline/config-map/index.d.ts +6 -0
  214. package/dist/core/pipeline/config-map/index.js +54 -0
  215. package/dist/core/pipeline/define-hook.d.ts +42 -0
  216. package/dist/core/pipeline/define-hook.js +40 -0
  217. package/dist/core/pipeline/extract-data.server.d.ts +18 -0
  218. package/dist/core/pipeline/extract-data.server.js +78 -0
  219. package/dist/core/pipeline/hook-name.server.d.ts +11 -0
  220. package/dist/core/pipeline/hook-name.server.js +14 -0
  221. package/dist/core/pipeline/hooks/authorize.server.d.ts +6 -0
  222. package/dist/core/pipeline/hooks/authorize.server.js +37 -0
  223. package/dist/core/pipeline/hooks/data-config-map.server.d.ts +8 -0
  224. package/dist/core/pipeline/hooks/data-config-map.server.js +19 -0
  225. package/dist/core/pipeline/hooks/get-original-document.server.d.ts +9 -0
  226. package/dist/core/pipeline/hooks/get-original-document.server.js +34 -0
  227. package/dist/core/pipeline/hooks/normalize-resolved-references.server.d.ts +16 -0
  228. package/dist/core/pipeline/hooks/normalize-resolved-references.server.js +40 -0
  229. package/dist/core/pipeline/hooks/original-config-map.server.d.ts +8 -0
  230. package/dist/core/pipeline/hooks/original-config-map.server.js +23 -0
  231. package/dist/core/pipeline/hooks/process-document-fields.server.d.ts +5 -0
  232. package/dist/core/pipeline/hooks/process-document-fields.server.js +62 -0
  233. package/dist/core/pipeline/hooks/resolve-content-owner.server.d.ts +17 -0
  234. package/dist/core/pipeline/hooks/resolve-content-owner.server.js +24 -0
  235. package/dist/core/pipeline/hooks/set-default-values.server.d.ts +16 -0
  236. package/dist/core/pipeline/hooks/set-default-values.server.js +79 -0
  237. package/dist/core/pipeline/hooks/set-document-locale.server.d.ts +5 -0
  238. package/dist/core/pipeline/hooks/set-document-locale.server.js +19 -0
  239. package/dist/core/pipeline/hooks/set-document-type.server.d.ts +6 -0
  240. package/dist/core/pipeline/hooks/set-document-type.server.js +19 -0
  241. package/dist/core/pipeline/hooks/sort-document-props.server.d.ts +7 -0
  242. package/dist/core/pipeline/hooks/sort-document-props.server.js +71 -0
  243. package/dist/core/pipeline/hooks/validate-fields.server.d.ts +12 -0
  244. package/dist/core/pipeline/hooks/validate-fields.server.js +170 -0
  245. package/dist/core/pipeline/persist/blocks/diff.server.d.ts +15 -0
  246. package/dist/core/pipeline/persist/blocks/diff.server.js +69 -0
  247. package/dist/core/pipeline/persist/blocks/extract.server.d.ts +9 -0
  248. package/dist/core/pipeline/persist/blocks/extract.server.js +33 -0
  249. package/dist/core/pipeline/persist/blocks/index.server.d.ts +27 -0
  250. package/dist/core/pipeline/persist/blocks/index.server.js +68 -0
  251. package/dist/core/pipeline/persist/relations/diff.server.d.ts +14 -0
  252. package/dist/core/pipeline/persist/relations/diff.server.js +47 -0
  253. package/dist/core/pipeline/persist/relations/extract.server.d.ts +11 -0
  254. package/dist/core/pipeline/persist/relations/extract.server.js +59 -0
  255. package/dist/core/pipeline/persist/relations/index.server.d.ts +26 -0
  256. package/dist/core/pipeline/persist/relations/index.server.js +66 -0
  257. package/dist/core/pipeline/persist/tree/diff.server.d.ts +20 -0
  258. package/dist/core/pipeline/persist/tree/diff.server.js +51 -0
  259. package/dist/core/pipeline/persist/tree/extract.server.d.ts +9 -0
  260. package/dist/core/pipeline/persist/tree/extract.server.js +34 -0
  261. package/dist/core/pipeline/persist/tree/index.server.d.ts +14 -0
  262. package/dist/core/pipeline/persist/tree/index.server.js +50 -0
  263. package/dist/core/pipeline/query.d.ts +14 -0
  264. package/dist/core/pipeline/query.js +36 -0
  265. package/dist/core/pipeline/run.server.d.ts +146 -0
  266. package/dist/core/pipeline/run.server.js +256 -0
  267. package/dist/core/pipeline/types.d.ts +140 -0
  268. package/dist/core/pipeline/types.js +10 -0
  269. package/dist/core/plugins/api-init/index.server.js +84 -0
  270. package/dist/core/plugins/cache/cache.server.js +1 -1
  271. package/dist/core/plugins/cache/handler.server.js +1 -1
  272. package/dist/core/plugins/cache/index.d.ts +1 -2
  273. package/dist/core/plugins/cache/index.js +3 -1
  274. package/dist/core/plugins/cache/types.d.ts +5 -0
  275. package/dist/core/plugins/configure.d.ts +12 -0
  276. package/dist/core/plugins/configure.js +26 -0
  277. package/dist/core/plugins/defaults/index.d.ts +1 -0
  278. package/dist/core/plugins/defaults/index.js +3 -0
  279. package/dist/core/plugins/defaults/module.d.ts +12 -0
  280. package/dist/core/plugins/defaults/module.js +14 -0
  281. package/dist/core/plugins/defaults/module.server.d.ts +4 -0
  282. package/dist/core/plugins/defaults/module.server.js +15 -0
  283. package/dist/core/plugins/defaults/types.d.ts +18 -0
  284. package/dist/core/plugins/defaults/types.js +1 -0
  285. package/dist/core/plugins/mailer/index.server.js +29 -0
  286. package/dist/core/plugins/plugins.server.js +10 -0
  287. package/dist/core/plugins/sse/bus.server.d.ts +16 -0
  288. package/dist/core/plugins/sse/bus.server.js +69 -0
  289. package/dist/core/plugins/sse/client.d.ts +14 -16
  290. package/dist/core/plugins/sse/client.js +42 -34
  291. package/dist/core/plugins/sse/index.d.ts +10 -2
  292. package/dist/core/plugins/sse/index.js +9 -1
  293. package/dist/core/plugins/sse/index.server.d.ts +29 -0
  294. package/dist/core/plugins/sse/index.server.js +18 -0
  295. package/dist/core/plugins/sse/types.d.ts +15 -7
  296. package/dist/core/prototype/area/api.server.d.ts +91 -0
  297. package/dist/core/prototype/area/api.server.js +117 -0
  298. package/dist/core/prototype/area/augment-label.d.ts +16 -0
  299. package/dist/core/prototype/area/augment-label.js +13 -0
  300. package/dist/core/prototype/area/definition.d.ts +18 -0
  301. package/dist/core/prototype/area/definition.js +44 -0
  302. package/dist/core/prototype/area/definition.server.d.ts +9 -0
  303. package/dist/core/prototype/area/definition.server.js +40 -0
  304. package/dist/core/prototype/area/hooks.server.d.ts +17 -0
  305. package/dist/core/prototype/area/hooks.server.js +61 -0
  306. package/dist/core/prototype/area/index.d.ts +1 -0
  307. package/dist/core/prototype/area/index.js +1 -0
  308. package/dist/core/prototype/area/operations/find.d.ts +18 -0
  309. package/dist/core/prototype/area/operations/find.js +43 -0
  310. package/dist/core/prototype/area/operations/update.d.ts +29 -0
  311. package/dist/core/prototype/area/operations/update.js +44 -0
  312. package/dist/core/prototype/area/rest/endpoint.server.d.ts +14 -0
  313. package/dist/core/prototype/area/rest/endpoint.server.js +15 -0
  314. package/dist/core/prototype/area/rest/get.server.d.ts +4 -0
  315. package/dist/core/prototype/area/rest/get.server.js +31 -0
  316. package/dist/core/prototype/area/rest/index.server.d.ts +9 -0
  317. package/dist/core/prototype/area/rest/index.server.js +14 -0
  318. package/dist/core/prototype/area/rest/lock.server.d.ts +2 -0
  319. package/dist/core/prototype/area/rest/lock.server.js +38 -0
  320. package/dist/core/prototype/area/rest/update.server.d.ts +4 -0
  321. package/dist/core/prototype/area/rest/update.server.js +38 -0
  322. package/dist/core/prototype/area/types.js +1 -0
  323. package/dist/core/prototype/collection/api.server.d.ts +173 -0
  324. package/dist/core/prototype/collection/api.server.js +224 -0
  325. package/dist/core/prototype/collection/augment-label.d.ts +6 -0
  326. package/dist/core/prototype/collection/definition.d.ts +26 -0
  327. package/dist/core/prototype/collection/definition.js +74 -0
  328. package/dist/core/prototype/collection/definition.server.d.ts +8 -0
  329. package/dist/core/prototype/collection/definition.server.js +24 -0
  330. package/dist/core/prototype/collection/hooks/merge-with-blank.server.d.ts +5 -0
  331. package/dist/core/prototype/collection/hooks/merge-with-blank.server.js +28 -0
  332. package/dist/core/prototype/collection/hooks.server.d.ts +28 -0
  333. package/dist/core/prototype/collection/hooks.server.js +133 -0
  334. package/dist/core/prototype/collection/index.d.ts +1 -0
  335. package/dist/core/prototype/collection/index.js +1 -0
  336. package/dist/core/prototype/collection/nested/enabled.d.ts +8 -0
  337. package/dist/core/prototype/collection/nested/enabled.js +7 -0
  338. package/dist/core/prototype/collection/nested/hooks/add-children.server.d.ts +4 -0
  339. package/dist/core/prototype/collection/nested/hooks/add-children.server.js +40 -0
  340. package/dist/core/prototype/collection/nested/hooks/index.server.d.ts +9 -0
  341. package/dist/core/prototype/collection/nested/hooks/index.server.js +9 -0
  342. package/dist/core/prototype/collection/nested/module.d.ts +15 -0
  343. package/dist/core/prototype/collection/nested/module.js +17 -0
  344. package/dist/core/prototype/collection/nested/module.server.d.ts +16 -0
  345. package/dist/core/prototype/collection/nested/module.server.js +21 -0
  346. package/dist/core/prototype/collection/operations/create.d.ts +18 -0
  347. package/dist/core/prototype/collection/operations/create.js +68 -0
  348. package/dist/core/prototype/collection/operations/delete-by-id.d.ts +11 -0
  349. package/dist/core/prototype/collection/operations/delete-by-id.js +44 -0
  350. package/dist/core/prototype/collection/operations/delete.d.ts +15 -0
  351. package/dist/core/prototype/collection/operations/delete.js +34 -0
  352. package/dist/core/prototype/collection/operations/duplicate.d.ts +12 -0
  353. package/dist/core/prototype/collection/operations/duplicate.js +112 -0
  354. package/dist/core/prototype/collection/operations/find-by-id.d.ts +22 -0
  355. package/dist/core/prototype/collection/operations/find-by-id.js +47 -0
  356. package/dist/core/prototype/collection/operations/find.d.ts +22 -0
  357. package/dist/core/prototype/collection/operations/find.js +65 -0
  358. package/dist/core/prototype/collection/operations/update-by-id.d.ts +30 -0
  359. package/dist/core/prototype/collection/operations/update-by-id.js +52 -0
  360. package/dist/core/prototype/collection/rest/create.server.d.ts +4 -0
  361. package/dist/core/prototype/collection/rest/create.server.js +26 -0
  362. package/dist/core/prototype/collection/rest/delete-by-id.server.d.ts +4 -0
  363. package/dist/core/prototype/collection/rest/delete-by-id.server.js +16 -0
  364. package/dist/core/prototype/collection/rest/delete.server.d.ts +4 -0
  365. package/dist/core/prototype/collection/rest/delete.server.js +33 -0
  366. package/dist/core/prototype/collection/rest/duplicate.server.d.ts +1 -0
  367. package/dist/core/prototype/collection/rest/duplicate.server.js +17 -0
  368. package/dist/core/prototype/collection/rest/endpoint.server.d.ts +27 -0
  369. package/dist/core/prototype/collection/rest/endpoint.server.js +23 -0
  370. package/dist/core/prototype/collection/rest/get-by-id.server.d.ts +4 -0
  371. package/dist/core/prototype/collection/rest/get-by-id.server.js +40 -0
  372. package/dist/core/prototype/collection/rest/get.server.d.ts +4 -0
  373. package/dist/core/prototype/collection/rest/get.server.js +38 -0
  374. package/dist/core/prototype/collection/rest/index.server.d.ts +12 -0
  375. package/dist/core/prototype/collection/rest/index.server.js +24 -0
  376. package/dist/core/prototype/collection/rest/lock.server.d.ts +2 -0
  377. package/dist/core/prototype/collection/rest/lock.server.js +59 -0
  378. package/dist/core/prototype/collection/rest/update-by-id.server.d.ts +4 -0
  379. package/dist/core/prototype/collection/rest/update-by-id.server.js +44 -0
  380. package/dist/core/prototype/collection/thumbnail/augment.d.ts +13 -0
  381. package/dist/core/prototype/collection/thumbnail/augment.js +15 -0
  382. package/dist/core/prototype/collection/thumbnail/find-thumbnail.d.ts +9 -0
  383. package/dist/core/prototype/collection/thumbnail/find-thumbnail.js +34 -0
  384. package/dist/core/prototype/collection/thumbnail/hooks/index.server.d.ts +9 -0
  385. package/dist/core/prototype/collection/thumbnail/hooks/index.server.js +9 -0
  386. package/dist/core/prototype/collection/thumbnail/hooks/set-document-thumbnail.server.d.ts +7 -0
  387. package/dist/core/prototype/collection/thumbnail/hooks/set-document-thumbnail.server.js +40 -0
  388. package/dist/core/prototype/collection/types.d.ts +14 -0
  389. package/dist/core/prototype/collection/types.js +1 -0
  390. package/dist/core/prototype/collection/upload/boot/index.server.d.ts +13 -0
  391. package/dist/core/prototype/collection/upload/boot/index.server.js +11 -0
  392. package/dist/core/prototype/collection/upload/constant.d.ts +10 -0
  393. package/dist/core/prototype/collection/upload/constant.js +10 -0
  394. package/dist/core/prototype/collection/upload/directories/configure.d.ts +14 -0
  395. package/dist/core/prototype/collection/upload/directories/configure.js +19 -0
  396. package/dist/core/prototype/collection/upload/directories/configure.server.d.ts +12 -0
  397. package/dist/core/prototype/collection/upload/directories/configure.server.js +35 -0
  398. package/dist/core/prototype/collection/upload/directories/derive.d.ts +7 -0
  399. package/dist/core/prototype/collection/upload/directories/derive.js +56 -0
  400. package/dist/core/prototype/collection/upload/directories/pipeline.server.d.ts +10 -0
  401. package/dist/core/prototype/collection/upload/directories/pipeline.server.js +22 -0
  402. package/dist/core/prototype/collection/upload/disk/delete.server.d.ts +9 -0
  403. package/dist/core/prototype/collection/upload/disk/delete.server.js +106 -0
  404. package/dist/core/prototype/collection/upload/disk/save.server.d.ts +32 -0
  405. package/dist/core/prototype/collection/upload/disk/save.server.js +190 -0
  406. package/dist/core/prototype/collection/upload/doc-type.d.ts +14 -0
  407. package/dist/core/prototype/collection/upload/doc-type.js +28 -0
  408. package/dist/core/prototype/collection/upload/enabled.d.ts +8 -0
  409. package/dist/core/prototype/collection/upload/enabled.js +7 -0
  410. package/dist/core/prototype/collection/upload/ensure.server.d.ts +12 -0
  411. package/dist/core/prototype/collection/upload/ensure.server.js +19 -0
  412. package/dist/core/prototype/collection/upload/hooks/clean-up-files.server.d.ts +10 -0
  413. package/dist/core/prototype/collection/upload/hooks/clean-up-files.server.js +17 -0
  414. package/dist/core/prototype/collection/upload/hooks/convert-base64.server.d.ts +13 -0
  415. package/dist/core/prototype/collection/upload/hooks/convert-base64.server.js +36 -0
  416. package/dist/core/prototype/collection/upload/hooks/extract-path.server.d.ts +6 -0
  417. package/dist/core/prototype/collection/upload/hooks/extract-path.server.js +25 -0
  418. package/dist/core/prototype/collection/upload/hooks/handle-path-creation.server.d.ts +6 -0
  419. package/dist/core/prototype/collection/upload/hooks/handle-path-creation.server.js +82 -0
  420. package/dist/core/prototype/collection/upload/hooks/index.server.d.ts +13 -0
  421. package/dist/core/prototype/collection/upload/hooks/index.server.js +13 -0
  422. package/dist/core/prototype/collection/upload/hooks/populate-sizes.server.d.ts +4 -0
  423. package/dist/core/prototype/collection/upload/hooks/populate-sizes.server.js +48 -0
  424. package/dist/core/prototype/collection/upload/hooks/process-file-upload.server.d.ts +20 -0
  425. package/dist/core/prototype/collection/upload/hooks/process-file-upload.server.js +60 -0
  426. package/dist/core/prototype/collection/upload/hooks/update-directory-children.server.d.ts +10 -0
  427. package/dist/core/prototype/collection/upload/hooks/update-directory-children.server.js +47 -0
  428. package/dist/core/prototype/collection/upload/module.d.ts +15 -0
  429. package/dist/core/prototype/collection/upload/module.js +92 -0
  430. package/dist/core/prototype/collection/upload/module.server.d.ts +24 -0
  431. package/dist/core/prototype/collection/upload/module.server.js +36 -0
  432. package/dist/core/prototype/collection/upload/naming.d.ts +23 -0
  433. package/dist/core/prototype/collection/upload/naming.js +37 -0
  434. package/dist/core/prototype/collection/upload/types.d.ts +102 -0
  435. package/dist/core/prototype/collection/upload/types.js +1 -0
  436. package/dist/core/prototype/collection/upload/util/config.d.ts +16 -0
  437. package/dist/core/prototype/collection/upload/util/converter.server.d.ts +29 -0
  438. package/dist/core/prototype/collection/upload/util/converter.server.js +127 -0
  439. package/dist/core/prototype/collection/upload/util/path.d.ts +69 -0
  440. package/dist/core/prototype/collection/upload/util/path.js +143 -0
  441. package/dist/core/prototype/define.d.ts +112 -0
  442. package/dist/core/prototype/define.js +50 -0
  443. package/dist/core/prototype/doc.d.ts +31 -0
  444. package/dist/core/prototype/doc.js +118 -0
  445. package/dist/core/prototype/index.d.ts +14 -0
  446. package/dist/core/prototype/index.js +14 -0
  447. package/dist/core/prototype/naming.d.ts +22 -0
  448. package/dist/core/prototype/naming.js +23 -0
  449. package/dist/core/prototype/shared/metas/constant.d.ts +16 -0
  450. package/dist/core/prototype/shared/metas/constant.js +16 -0
  451. package/dist/core/prototype/shared/metas/fields.d.ts +8 -0
  452. package/dist/core/prototype/shared/metas/fields.js +27 -0
  453. package/dist/core/prototype/shared/metas/hooks/delete-panel-lock-metas.server.d.ts +9 -0
  454. package/dist/core/prototype/shared/metas/hooks/delete-panel-lock-metas.server.js +20 -0
  455. package/dist/core/prototype/shared/metas/hooks/index.server.d.ts +7 -0
  456. package/dist/core/prototype/shared/metas/hooks/index.server.js +7 -0
  457. package/dist/core/prototype/shared/metas/hooks/stamp-authorship.server.d.ts +2 -0
  458. package/dist/core/prototype/shared/metas/hooks/stamp-authorship.server.js +27 -0
  459. package/dist/core/prototype/shared/metas/lock.d.ts +15 -0
  460. package/dist/core/prototype/shared/metas/lock.js +30 -0
  461. package/dist/core/prototype/shared/metas/lock.server.d.ts +46 -0
  462. package/dist/core/prototype/shared/metas/lock.server.js +91 -0
  463. package/dist/core/prototype/shared/metas/module.d.ts +38 -0
  464. package/dist/core/prototype/shared/metas/module.js +38 -0
  465. package/dist/core/prototype/shared/metas/module.server.d.ts +30 -0
  466. package/dist/core/prototype/shared/metas/module.server.js +38 -0
  467. package/dist/core/prototype/shared/title/augment.d.ts +27 -0
  468. package/dist/core/prototype/shared/title/augment.js +19 -0
  469. package/dist/core/prototype/shared/title/find-title.d.ts +14 -0
  470. package/dist/core/prototype/shared/title/find-title.js +35 -0
  471. package/dist/core/prototype/shared/title/hooks/index.server.d.ts +9 -0
  472. package/dist/core/prototype/shared/title/hooks/index.server.js +9 -0
  473. package/dist/core/prototype/shared/title/hooks/set-document-title.server.d.ts +4 -0
  474. package/dist/core/prototype/shared/title/hooks/set-document-title.server.js +32 -0
  475. package/dist/core/prototype/shared/title/select.d.ts +16 -0
  476. package/dist/core/prototype/shared/title/select.js +24 -0
  477. package/dist/core/prototype/shared/url/augment.d.ts +13 -0
  478. package/dist/core/prototype/shared/url/augment.js +11 -0
  479. package/dist/core/prototype/shared/url/enabled.d.ts +8 -0
  480. package/dist/core/prototype/shared/url/enabled.js +7 -0
  481. package/dist/core/prototype/shared/url/hooks/index.server.d.ts +9 -0
  482. package/dist/core/prototype/shared/url/hooks/index.server.js +9 -0
  483. package/dist/core/prototype/shared/url/hooks/populate-url.server.d.ts +4 -0
  484. package/dist/core/prototype/shared/url/hooks/populate-url.server.js +120 -0
  485. package/dist/core/prototype/shared/versions/augment.d.ts +23 -0
  486. package/dist/core/prototype/shared/versions/augment.js +47 -0
  487. package/dist/core/prototype/shared/versions/auto-saves.server.d.ts +16 -0
  488. package/dist/core/prototype/shared/versions/auto-saves.server.js +29 -0
  489. package/dist/core/prototype/shared/versions/blank.d.ts +13 -0
  490. package/dist/core/prototype/shared/versions/blank.js +15 -0
  491. package/dist/core/prototype/shared/versions/configure.server.d.ts +7 -0
  492. package/dist/core/prototype/shared/versions/configure.server.js +75 -0
  493. package/dist/core/prototype/shared/versions/constant.d.ts +14 -0
  494. package/dist/core/prototype/shared/versions/constant.js +13 -0
  495. package/dist/core/prototype/shared/versions/doc-type.d.ts +8 -0
  496. package/dist/core/prototype/shared/versions/doc-type.js +9 -0
  497. package/dist/core/prototype/shared/versions/enabled.d.ts +10 -0
  498. package/dist/core/prototype/shared/versions/enabled.js +9 -0
  499. package/dist/core/prototype/shared/versions/hooks/define-version-operation.server.d.ts +19 -0
  500. package/dist/core/prototype/shared/versions/hooks/define-version-operation.server.js +37 -0
  501. package/dist/core/prototype/shared/versions/hooks/demote-other-versions.d.ts +17 -0
  502. package/dist/core/prototype/shared/versions/hooks/demote-other-versions.js +37 -0
  503. package/dist/core/prototype/shared/versions/hooks/discard-auto-saves-of.server.d.ts +8 -0
  504. package/dist/core/prototype/shared/versions/hooks/discard-auto-saves-of.server.js +17 -0
  505. package/dist/core/prototype/shared/versions/hooks/expose-version-id.d.ts +12 -0
  506. package/dist/core/prototype/shared/versions/hooks/expose-version-id.js +17 -0
  507. package/dist/core/prototype/shared/versions/hooks/fallback-data-from-original.d.ts +9 -0
  508. package/dist/core/prototype/shared/versions/hooks/fallback-data-from-original.js +31 -0
  509. package/dist/core/prototype/shared/versions/hooks/handle-new-version.server.d.ts +32 -0
  510. package/dist/core/prototype/shared/versions/hooks/handle-new-version.server.js +194 -0
  511. package/dist/core/prototype/shared/versions/hooks/index.server.d.ts +15 -0
  512. package/dist/core/prototype/shared/versions/hooks/index.server.js +15 -0
  513. package/dist/core/prototype/shared/versions/hooks/prevent-last-version-deletion.server.d.ts +7 -0
  514. package/dist/core/prototype/shared/versions/hooks/prevent-last-version-deletion.server.js +21 -0
  515. package/dist/core/prototype/shared/versions/hooks/strip-auto-save-flag.server.d.ts +7 -0
  516. package/dist/core/prototype/shared/versions/hooks/strip-auto-save-flag.server.js +14 -0
  517. package/dist/core/prototype/shared/versions/module.browser.js +1 -0
  518. package/dist/core/prototype/shared/versions/module.server.d.ts +1 -0
  519. package/dist/core/prototype/shared/versions/module.server.js +4 -0
  520. package/dist/core/prototype/shared/versions/naming.d.ts +7 -0
  521. package/dist/core/prototype/shared/versions/naming.js +21 -0
  522. package/dist/core/prototype/shared/versions/read-query.d.ts +27 -0
  523. package/dist/core/prototype/shared/versions/read-query.js +35 -0
  524. package/dist/core/prototype/shared/versions/retire-auto-saves.server.d.ts +16 -0
  525. package/dist/core/prototype/shared/versions/retire-auto-saves.server.js +29 -0
  526. package/dist/core/prototype/shared/versions/strategy.d.ts +86 -0
  527. package/dist/core/prototype/shared/versions/strategy.js +93 -0
  528. package/dist/core/prototype/shared/versions/types.d.ts +37 -0
  529. package/dist/core/prototype/shared/versions/types.js +1 -0
  530. package/dist/core/prototype/shared/versions/validate-config.server.d.ts +8 -0
  531. package/dist/core/prototype/shared/versions/validate-config.server.js +21 -0
  532. package/dist/core/prototype/shared/versions/write-plan.d.ts +30 -0
  533. package/dist/core/prototype/shared/versions/write-plan.js +38 -0
  534. package/dist/core/prototype/types.d.ts +79 -0
  535. package/dist/core/prototype/types.js +1 -0
  536. package/dist/core/prototype/when.d.ts +25 -0
  537. package/dist/core/prototype/when.js +32 -0
  538. package/dist/core/rime.server.d.ts +64 -4363
  539. package/dist/core/rime.server.js +45 -93
  540. package/dist/core/routes/constants.d.ts +12 -0
  541. package/dist/core/routes/constants.js +16 -0
  542. package/dist/core/routes/constants.server.d.ts +5 -0
  543. package/dist/core/routes/constants.server.js +9 -0
  544. package/dist/core/routes/context.server.d.ts +17 -0
  545. package/dist/core/routes/context.server.js +29 -0
  546. package/dist/core/routes/handler.server.d.ts +58 -0
  547. package/dist/core/routes/handler.server.js +107 -0
  548. package/dist/core/routes/panel-navigation.d.ts +18 -0
  549. package/dist/core/routes/panel-navigation.js +64 -0
  550. package/dist/core/routes/util.d.ts +24 -0
  551. package/dist/core/routes/util.js +44 -0
  552. package/dist/fields/blocks/component/AddBlockButton.svelte +1 -1
  553. package/dist/fields/blocks/component/AddBlockButton.svelte.d.ts +1 -1
  554. package/dist/fields/blocks/component/Block.svelte +1 -1
  555. package/dist/fields/blocks/component/Blocks.svelte +1 -1
  556. package/dist/fields/blocks/index.d.ts +2 -1
  557. package/dist/fields/blocks/index.js +18 -2
  558. package/dist/fields/email/index.js +1 -1
  559. package/dist/fields/group/component/Group.svelte +1 -1
  560. package/dist/fields/group/component/Group.svelte.d.ts +1 -1
  561. package/dist/fields/group/index.d.ts +2 -2
  562. package/dist/fields/link/component/RessourceInput.svelte +2 -2
  563. package/dist/fields/link/index.d.ts +1 -1
  564. package/dist/fields/link/index.js +57 -60
  565. package/dist/fields/link/module.server.js +1 -1
  566. package/dist/fields/number/index.d.ts +1 -1
  567. package/dist/fields/relation/component/Cell.svelte +2 -2
  568. package/dist/fields/relation/component/Relation.svelte +13 -22
  569. package/dist/fields/relation/component/default/Default.svelte +4 -3
  570. package/dist/fields/relation/component/types.d.ts +2 -1
  571. package/dist/fields/relation/component/upload/Browse.svelte +4 -4
  572. package/dist/fields/relation/component/upload/Upload.svelte +2 -2
  573. package/dist/fields/relation/index.d.ts +11 -1
  574. package/dist/fields/relation/index.js +81 -63
  575. package/dist/fields/relation/module.server.js +3 -8
  576. package/dist/fields/rich-text/core/features/link/component/link-selector.svelte +2 -2
  577. package/dist/fields/rich-text/core/features/resource/resource-extension.d.ts +1 -1
  578. package/dist/fields/rich-text/core/features/resource/resource.svelte +2 -2
  579. package/dist/fields/rich-text/core/features/upload/upload.svelte +2 -2
  580. package/dist/fields/slug/index.d.ts +1 -1
  581. package/dist/fields/tabs/index.d.ts +1 -1
  582. package/dist/fields/text/index.d.ts +1 -1
  583. package/dist/fields/textarea/index.d.ts +1 -1
  584. package/dist/fields/toggle/index.d.ts +1 -1
  585. package/dist/fields/tree/component/TreeBlock.svelte +1 -1
  586. package/dist/fields/tree/component/TreeBlock.svelte.d.ts +1 -1
  587. package/dist/fields/tree/component/props.d.ts +1 -1
  588. package/dist/fields/tree/index.d.ts +1 -1
  589. package/dist/fields/tree/index.js +12 -1
  590. package/dist/fields/types.d.ts +4 -9
  591. package/dist/index.d.ts +5 -2
  592. package/dist/index.js +2 -1
  593. package/dist/panel/components/Root.svelte +12 -8
  594. package/dist/panel/components/Root.svelte.d.ts +1 -1
  595. package/dist/panel/components/sections/auth/AuthForm.svelte +3 -0
  596. package/dist/panel/components/sections/collection/StatusDot.svelte +2 -1
  597. package/dist/panel/components/sections/collection/StatusDot.svelte.d.ts +1 -1
  598. package/dist/panel/components/sections/collection/bulk-upload/DropZone.svelte +1 -1
  599. package/dist/panel/components/sections/collection/folder/FolderEdit.svelte +2 -2
  600. package/dist/panel/components/sections/collection/folder/FolderEdit.svelte.d.ts +1 -1
  601. package/dist/panel/components/sections/collection/folder/FolderWithActions.svelte +8 -8
  602. package/dist/panel/components/sections/collection/folder/FolderWithActions.svelte.d.ts +1 -1
  603. package/dist/panel/components/sections/collection/grid/create-directory-dialog/CreateDirectoryDialog.svelte +1 -1
  604. package/dist/panel/components/sections/collection/grid/grid-item/GridItem.svelte +7 -5
  605. package/dist/panel/components/sections/collection/grid/grid-item/GridItem.svelte.d.ts +1 -1
  606. package/dist/panel/components/sections/collection/header/ButtonCreate.svelte +9 -6
  607. package/dist/panel/components/sections/collection/header/DisplayMode.svelte +1 -2
  608. package/dist/panel/components/sections/collection/header/Header.svelte +2 -5
  609. package/dist/panel/components/sections/collection/list/CollectionList.svelte +1 -1
  610. package/dist/panel/components/sections/collection/list/header/Header.svelte +7 -1
  611. package/dist/panel/components/sections/collection/list/row/Row.svelte +9 -3
  612. package/dist/panel/components/sections/collection/list/row/Row.svelte.d.ts +1 -1
  613. package/dist/panel/components/sections/collection/tree/CollectionTreeNode.svelte +3 -2
  614. package/dist/panel/components/sections/collection/tree/CollectionTreeNode.svelte.d.ts +1 -1
  615. package/dist/panel/components/sections/collection/upload-thumb-cell/UploadThumbCell.svelte +1 -1
  616. package/dist/panel/components/sections/document/AuthFooter.svelte +4 -3
  617. package/dist/panel/components/sections/document/AutoSaveBanner.svelte +115 -0
  618. package/dist/panel/components/sections/document/AutoSaveBanner.svelte.d.ts +16 -0
  619. package/dist/panel/components/sections/document/ButtonStatus.svelte +12 -5
  620. package/dist/panel/components/sections/document/CurrentlyEdited.svelte +10 -27
  621. package/dist/panel/components/sections/document/CurrentlyEdited.svelte.d.ts +6 -5
  622. package/dist/panel/components/sections/document/Document.svelte +220 -18
  623. package/dist/panel/components/sections/document/Document.svelte.d.ts +1 -1
  624. package/dist/panel/components/sections/document/Header.svelte +49 -5
  625. package/dist/panel/components/sections/document/Header.svelte.d.ts +2 -0
  626. package/dist/panel/components/sections/document/Settings.svelte +77 -21
  627. package/dist/panel/components/sections/document/Versions.svelte +140 -51
  628. package/dist/panel/components/sections/document/Versions.svelte.d.ts +11 -8
  629. package/dist/panel/components/sections/document/upload-header/UploadHeader.svelte +4 -2
  630. package/dist/panel/components/sections/document/upload-header/UploadHeader.svelte.d.ts +1 -1
  631. package/dist/panel/components/sections/document/upload-header/drop-zone/DropZone.svelte +1 -1
  632. package/dist/panel/components/sections/document/upload-header/drop-zone/DropZone.svelte.d.ts +2 -2
  633. package/dist/panel/components/sections/document/versions-list.d.ts +10 -0
  634. package/dist/panel/components/sections/document/versions-list.js +10 -0
  635. package/dist/panel/components/sections/live/Consumer.svelte +1 -1
  636. package/dist/panel/components/sections/live/Consumer.svelte.d.ts +1 -1
  637. package/dist/panel/components/sections/live/LiveEdit.svelte +1 -1
  638. package/dist/panel/components/ui/card-resource/card-resource.svelte +13 -1
  639. package/dist/panel/components/ui/nav/Nav.svelte +3 -3
  640. package/dist/panel/components/ui/nav/NavItem.svelte +5 -3
  641. package/dist/panel/components/ui/nav/UserButton.svelte +3 -3
  642. package/dist/panel/context/collection.svelte.d.ts +2 -2
  643. package/dist/panel/context/collection.svelte.js +6 -7
  644. package/dist/panel/context/config.svelte.d.ts +1 -1
  645. package/dist/panel/context/documentForm.svelte.d.ts +19 -3
  646. package/dist/panel/context/documentForm.svelte.js +214 -41
  647. package/dist/panel/context/live.svelte.d.ts +1 -1
  648. package/dist/panel/context/live.svelte.js +2 -2
  649. package/dist/panel/context/user.svelte.d.ts +1 -1
  650. package/dist/panel/context/versions.svelte.d.ts +8 -0
  651. package/dist/panel/context/versions.svelte.js +34 -0
  652. package/dist/panel/index.d.ts +15 -12
  653. package/dist/panel/index.js +1 -3
  654. package/dist/panel/pages/area/Area.svelte +7 -2
  655. package/dist/panel/pages/area/Area.svelte.d.ts +1 -1
  656. package/dist/panel/pages/area/actions.server.js +31 -16
  657. package/dist/panel/pages/area/load.server.d.ts +1 -1
  658. package/dist/panel/pages/area/load.server.js +10 -24
  659. package/dist/panel/pages/auth/fields.js +1 -1
  660. package/dist/panel/pages/auth/forgot-password/ForgotPassword.svelte +2 -1
  661. package/dist/panel/pages/auth/forgot-password/load.server.js +3 -2
  662. package/dist/panel/pages/auth/reset-password/ResetPassword.svelte +2 -1
  663. package/dist/panel/pages/auth/reset-password/load.server.js +3 -2
  664. package/dist/panel/pages/auth/sign-in/SignIn.svelte +3 -2
  665. package/dist/panel/pages/auth/sign-in/actions.server.js +2 -2
  666. package/dist/panel/pages/auth/sign-in/load.server.js +4 -3
  667. package/dist/panel/pages/collection/Collection.svelte +15 -138
  668. package/dist/panel/pages/collection/Collection.svelte.d.ts +5 -8
  669. package/dist/panel/pages/collection/CollectionPage.svelte +146 -0
  670. package/dist/panel/pages/collection/CollectionPage.svelte.d.ts +18 -0
  671. package/dist/panel/pages/collection/load.server.d.ts +3 -3
  672. package/dist/panel/pages/collection/load.server.js +12 -9
  673. package/dist/panel/pages/collection-document/CollectionDocument.svelte +7 -2
  674. package/dist/panel/pages/collection-document/CollectionDocument.svelte.d.ts +1 -1
  675. package/dist/panel/pages/collection-document/actions.server.js +28 -10
  676. package/dist/panel/pages/collection-document/load.server.d.ts +1 -1
  677. package/dist/panel/pages/collection-document/load.server.js +19 -24
  678. package/dist/panel/pages/dashboard/Dashboard.svelte +1 -1
  679. package/dist/panel/pages/dashboard/Dashboard.svelte.d.ts +1 -1
  680. package/dist/panel/pages/dashboard/load.server.js +23 -20
  681. package/dist/panel/pages/dashboard/types.d.ts +1 -1
  682. package/dist/panel/pages/live/Live.svelte +3 -8
  683. package/dist/panel/pages/live/load.server.js +1 -1
  684. package/dist/panel/types.d.ts +2 -2
  685. package/dist/panel/util/live.server.d.ts +1 -1
  686. package/dist/panel/util/live.server.js +2 -2
  687. package/dist/panel/util/url.d.ts +0 -6
  688. package/dist/panel/util/url.js +1 -9
  689. package/dist/server.d.ts +6 -5
  690. package/dist/server.js +6 -5
  691. package/dist/types.d.ts +12 -6
  692. package/dist/util/coerce.d.ts +12 -0
  693. package/dist/util/coerce.js +38 -0
  694. package/dist/util/index.d.ts +16 -9
  695. package/dist/util/index.js +14 -12
  696. package/dist/util/object.d.ts +10 -0
  697. package/dist/util/object.js +14 -1
  698. package/dist/util/path.d.ts +16 -0
  699. package/dist/util/path.js +19 -0
  700. package/dist/util/string.d.ts +25 -0
  701. package/dist/util/string.js +30 -0
  702. package/dist/util/types.d.ts +5 -10
  703. package/dist/util/types.js +5 -0
  704. package/package.json +83 -21
  705. package/dist/.rime-modules.d.ts +0 -23
  706. package/dist/.rime-modules.json +0 -1
  707. package/dist/adapter-sqlite/generate-schema/relations/definition.server.d.ts +0 -55
  708. package/dist/adapter-sqlite/generate-schema/relations/definition.server.js +0 -52
  709. package/dist/adapter-sqlite/generate-schema/util.server.d.ts +0 -49
  710. package/dist/adapter-sqlite/generate-schema/util.server.js +0 -58
  711. package/dist/adapter-sqlite/orderBy.server.d.ts +0 -11
  712. package/dist/adapter-sqlite/orderBy.server.js +0 -98
  713. package/dist/adapter-sqlite/url.server.d.ts +0 -14
  714. package/dist/adapter-sqlite/url.server.js +0 -77
  715. package/dist/adapter-sqlite/util.server.d.ts +0 -174
  716. package/dist/adapter-sqlite/util.server.js +0 -357
  717. package/dist/adapter-sqlite/with.server.d.ts +0 -9
  718. package/dist/adapter-sqlite/with.server.js +0 -266
  719. package/dist/core/areas/config/augment-hooks.server.d.ts +0 -10
  720. package/dist/core/areas/config/augment-hooks.server.js +0 -51
  721. package/dist/core/areas/config/augment-metas.d.ts +0 -10
  722. package/dist/core/areas/config/augment-metas.js +0 -13
  723. package/dist/core/areas/config/augment-title.d.ts +0 -9
  724. package/dist/core/areas/config/augment-title.js +0 -8
  725. package/dist/core/areas/config/augment-url.d.ts +0 -10
  726. package/dist/core/areas/config/augment-url.js +0 -14
  727. package/dist/core/areas/config/augment-versions.d.ts +0 -14
  728. package/dist/core/areas/config/augment-versions.js +0 -25
  729. package/dist/core/areas/config/builder.d.ts +0 -3
  730. package/dist/core/areas/config/builder.js +0 -33
  731. package/dist/core/areas/config/builder.server.d.ts +0 -15
  732. package/dist/core/areas/config/builder.server.js +0 -35
  733. package/dist/core/areas/local-api.server.d.ts +0 -80
  734. package/dist/core/areas/local-api.server.js +0 -126
  735. package/dist/core/areas/operations/find.d.ts +0 -15
  736. package/dist/core/areas/operations/find.js +0 -52
  737. package/dist/core/areas/operations/update.d.ts +0 -15
  738. package/dist/core/areas/operations/update.js +0 -101
  739. package/dist/core/areas/rest/get.server.d.ts +0 -18
  740. package/dist/core/areas/rest/get.server.js +0 -45
  741. package/dist/core/areas/rest/index.server.d.ts +0 -6
  742. package/dist/core/areas/rest/index.server.js +0 -3
  743. package/dist/core/areas/rest/update.server.d.ts +0 -18
  744. package/dist/core/areas/rest/update.server.js +0 -43
  745. package/dist/core/collections/auth/constant.server.d.ts +0 -9
  746. package/dist/core/collections/auth/constant.server.js +0 -9
  747. package/dist/core/collections/auth/fields.d.ts +0 -13
  748. package/dist/core/collections/auth/fields.js +0 -55
  749. package/dist/core/collections/auth/hooks/after-create/populate-api-key.server.d.ts +0 -5
  750. package/dist/core/collections/auth/hooks/after-create/populate-api-key.server.js +0 -22
  751. package/dist/core/collections/auth/hooks/after-delete/delete-better-auth-user.server.d.ts +0 -4
  752. package/dist/core/collections/auth/hooks/after-delete/delete-better-auth-user.server.js +0 -25
  753. package/dist/core/collections/auth/hooks/before-create/create-better-auth-user.server.d.ts +0 -4
  754. package/dist/core/collections/auth/hooks/before-create/create-better-auth-user.server.js +0 -187
  755. package/dist/core/collections/auth/hooks/before-delete/prevent-superadmin-deletion.server.d.ts +0 -1
  756. package/dist/core/collections/auth/hooks/before-delete/prevent-superadmin-deletion.server.js +0 -10
  757. package/dist/core/collections/auth/hooks/before-read/remove-private-fields.server.d.ts +0 -1
  758. package/dist/core/collections/auth/hooks/before-read/remove-private-fields.server.js +0 -8
  759. package/dist/core/collections/auth/hooks/before-update/forward-roles.server.d.ts +0 -4
  760. package/dist/core/collections/auth/hooks/before-update/forward-roles.server.js +0 -54
  761. package/dist/core/collections/auth/hooks/before-update/prevent-superadmin-mutation.server.d.ts +0 -5
  762. package/dist/core/collections/auth/hooks/before-update/prevent-superadmin-mutation.server.js +0 -27
  763. package/dist/core/collections/auth/hooks/before-update/prevent-user-mutations.server.d.ts +0 -5
  764. package/dist/core/collections/auth/hooks/before-update/prevent-user-mutations.server.js +0 -18
  765. package/dist/core/collections/auth/hooks/before-upsert/augment-fields-password.server.d.ts +0 -6
  766. package/dist/core/collections/auth/hooks/before-upsert/augment-fields-password.server.js +0 -21
  767. package/dist/core/collections/auth/hooks/hooks.server.d.ts +0 -8
  768. package/dist/core/collections/auth/hooks/hooks.server.js +0 -8
  769. package/dist/core/collections/auth/types.d.ts +0 -8
  770. package/dist/core/collections/auth/util.d.ts +0 -13
  771. package/dist/core/collections/config/augment-auth.d.ts +0 -17
  772. package/dist/core/collections/config/augment-auth.js +0 -88
  773. package/dist/core/collections/config/augment-auth.server.d.ts +0 -3
  774. package/dist/core/collections/config/augment-auth.server.js +0 -23
  775. package/dist/core/collections/config/augment-hooks.server.d.ts +0 -14
  776. package/dist/core/collections/config/augment-hooks.server.js +0 -98
  777. package/dist/core/collections/config/augment-label.d.ts +0 -6
  778. package/dist/core/collections/config/augment-metas.d.ts +0 -9
  779. package/dist/core/collections/config/augment-metas.js +0 -12
  780. package/dist/core/collections/config/augment-nested.d.ts +0 -12
  781. package/dist/core/collections/config/augment-nested.js +0 -15
  782. package/dist/core/collections/config/augment-nested.server.d.ts +0 -12
  783. package/dist/core/collections/config/augment-nested.server.js +0 -18
  784. package/dist/core/collections/config/augment-panel.d.ts +0 -13
  785. package/dist/core/collections/config/augment-panel.js +0 -19
  786. package/dist/core/collections/config/augment-thumbnail.d.ts +0 -16
  787. package/dist/core/collections/config/augment-thumbnail.js +0 -15
  788. package/dist/core/collections/config/augment-title.d.ts +0 -16
  789. package/dist/core/collections/config/augment-title.js +0 -27
  790. package/dist/core/collections/config/augment-upload.d.ts +0 -10
  791. package/dist/core/collections/config/augment-upload.js +0 -59
  792. package/dist/core/collections/config/augment-upload.server.d.ts +0 -7
  793. package/dist/core/collections/config/augment-upload.server.js +0 -19
  794. package/dist/core/collections/config/augment-url.d.ts +0 -10
  795. package/dist/core/collections/config/augment-url.js +0 -14
  796. package/dist/core/collections/config/augment-versions.d.ts +0 -14
  797. package/dist/core/collections/config/augment-versions.js +0 -24
  798. package/dist/core/collections/config/builder.d.ts +0 -3
  799. package/dist/core/collections/config/builder.js +0 -51
  800. package/dist/core/collections/config/builder.server.d.ts +0 -15
  801. package/dist/core/collections/config/builder.server.js +0 -47
  802. package/dist/core/collections/config/types.d.ts +0 -3
  803. package/dist/core/collections/local-api.server.d.ts +0 -166
  804. package/dist/core/collections/local-api.server.js +0 -303
  805. package/dist/core/collections/nested/hooks/index.server.d.ts +0 -4
  806. package/dist/core/collections/nested/hooks/index.server.js +0 -33
  807. package/dist/core/collections/operations/create.d.ts +0 -16
  808. package/dist/core/collections/operations/create.js +0 -119
  809. package/dist/core/collections/operations/delete.d.ts +0 -17
  810. package/dist/core/collections/operations/delete.js +0 -32
  811. package/dist/core/collections/operations/deleteById.d.ts +0 -13
  812. package/dist/core/collections/operations/deleteById.js +0 -48
  813. package/dist/core/collections/operations/duplicate.d.ts +0 -12
  814. package/dist/core/collections/operations/duplicate.js +0 -142
  815. package/dist/core/collections/operations/find.d.ts +0 -21
  816. package/dist/core/collections/operations/find.js +0 -70
  817. package/dist/core/collections/operations/findById.d.ts +0 -16
  818. package/dist/core/collections/operations/findById.js +0 -53
  819. package/dist/core/collections/operations/updateById.d.ts +0 -20
  820. package/dist/core/collections/operations/updateById.js +0 -111
  821. package/dist/core/collections/rest/create.server.d.ts +0 -18
  822. package/dist/core/collections/rest/create.server.js +0 -37
  823. package/dist/core/collections/rest/delete.server.d.ts +0 -18
  824. package/dist/core/collections/rest/delete.server.js +0 -37
  825. package/dist/core/collections/rest/deleteById.server.d.ts +0 -18
  826. package/dist/core/collections/rest/deleteById.server.js +0 -21
  827. package/dist/core/collections/rest/duplicate.server.d.ts +0 -15
  828. package/dist/core/collections/rest/duplicate.server.js +0 -20
  829. package/dist/core/collections/rest/get.server.d.ts +0 -18
  830. package/dist/core/collections/rest/get.server.js +0 -50
  831. package/dist/core/collections/rest/getById.server.d.ts +0 -18
  832. package/dist/core/collections/rest/getById.server.js +0 -35
  833. package/dist/core/collections/rest/index.server.d.ts +0 -16
  834. package/dist/core/collections/rest/index.server.js +0 -16
  835. package/dist/core/collections/rest/updateById.server.d.ts +0 -18
  836. package/dist/core/collections/rest/updateById.server.js +0 -44
  837. package/dist/core/collections/upload/disk/delete.server.d.ts +0 -9
  838. package/dist/core/collections/upload/disk/delete.server.js +0 -77
  839. package/dist/core/collections/upload/disk/save.server.d.ts +0 -32
  840. package/dist/core/collections/upload/disk/save.server.js +0 -190
  841. package/dist/core/collections/upload/hooks/clean-up-files.server.d.ts +0 -10
  842. package/dist/core/collections/upload/hooks/clean-up-files.server.js +0 -17
  843. package/dist/core/collections/upload/hooks/convert-base64.server.d.ts +0 -13
  844. package/dist/core/collections/upload/hooks/convert-base64.server.js +0 -36
  845. package/dist/core/collections/upload/hooks/extract-path.server.d.ts +0 -6
  846. package/dist/core/collections/upload/hooks/extract-path.server.js +0 -25
  847. package/dist/core/collections/upload/hooks/handle-path-creation.server.d.ts +0 -6
  848. package/dist/core/collections/upload/hooks/handle-path-creation.server.js +0 -64
  849. package/dist/core/collections/upload/hooks/populate-sizes.server.d.ts +0 -1
  850. package/dist/core/collections/upload/hooks/populate-sizes.server.js +0 -45
  851. package/dist/core/collections/upload/hooks/process-file-upload.server.d.ts +0 -20
  852. package/dist/core/collections/upload/hooks/process-file-upload.server.js +0 -60
  853. package/dist/core/collections/upload/hooks/update-directory-children.server.d.ts +0 -2
  854. package/dist/core/collections/upload/hooks/update-directory-children.server.js +0 -41
  855. package/dist/core/collections/upload/upload.d.ts +0 -16
  856. package/dist/core/collections/upload/util/config.d.ts +0 -16
  857. package/dist/core/collections/upload/util/converter.server.d.ts +0 -16
  858. package/dist/core/collections/upload/util/converter.server.js +0 -105
  859. package/dist/core/collections/upload/util/path.d.ts +0 -65
  860. package/dist/core/collections/upload/util/path.js +0 -139
  861. package/dist/core/collections/versions/operations.d.ts +0 -93
  862. package/dist/core/collections/versions/operations.js +0 -117
  863. package/dist/core/config/auth/better-auth-hooks.server.js +0 -138
  864. package/dist/core/config/auth/better-auth.server.d.ts +0 -2121
  865. package/dist/core/config/auth/better-auth.server.js +0 -81
  866. package/dist/core/config/client/augment-directories.d.ts +0 -6
  867. package/dist/core/config/client/augment-directories.js +0 -11
  868. package/dist/core/config/client/augment-panel.d.ts +0 -35
  869. package/dist/core/config/client/augment-panel.js +0 -22
  870. package/dist/core/config/client/augment-plugins.d.ts +0 -4
  871. package/dist/core/config/client/augment-plugins.js +0 -13
  872. package/dist/core/config/client/augment-staff.d.ts +0 -7
  873. package/dist/core/config/client/augment-staff.js +0 -6
  874. package/dist/core/config/client/build-config.d.ts +0 -41
  875. package/dist/core/config/client/build-config.js +0 -13
  876. package/dist/core/config/client/index.d.ts +0 -4
  877. package/dist/core/config/client/index.js +0 -4
  878. package/dist/core/config/config-context.server.d.ts +0 -70
  879. package/dist/core/config/config-context.server.js +0 -113
  880. package/dist/core/config/server/augment-cors.server.d.ts +0 -4
  881. package/dist/core/config/server/augment-cors.server.js +0 -7
  882. package/dist/core/config/server/augment-directories.server.d.ts +0 -6
  883. package/dist/core/config/server/augment-directories.server.js +0 -37
  884. package/dist/core/config/server/augment-panel-access.server.d.ts +0 -28
  885. package/dist/core/config/server/augment-panel-access.server.js +0 -8
  886. package/dist/core/config/server/augment-plugins.server.d.ts +0 -5
  887. package/dist/core/config/server/augment-plugins.server.js +0 -45
  888. package/dist/core/config/server/augment-staff.server.d.ts +0 -7
  889. package/dist/core/config/server/augment-staff.server.js +0 -6
  890. package/dist/core/config/server/build-config.server.d.ts +0 -123
  891. package/dist/core/config/server/build-config.server.js +0 -28
  892. package/dist/core/config/server/index.server.d.ts +0 -9
  893. package/dist/core/config/server/index.server.js +0 -11
  894. package/dist/core/config/server/validate.server.d.ts +0 -3
  895. package/dist/core/config/server/validate.server.js +0 -234
  896. package/dist/core/config/server/write.server.js +0 -77
  897. package/dist/core/config/shared/augment-icons.d.ts +0 -9
  898. package/dist/core/config/shared/augment-icons.js +0 -11
  899. package/dist/core/config/shared/augment-prototypes.d.ts +0 -8
  900. package/dist/core/config/shared/augment-prototypes.js +0 -7
  901. package/dist/core/config/shared/compile.d.ts +0 -19
  902. package/dist/core/config/shared/compile.js +0 -26
  903. package/dist/core/config/shared/find-thumbnail.d.ts +0 -9
  904. package/dist/core/config/shared/find-thumbnail.js +0 -34
  905. package/dist/core/config/shared/find-title.d.ts +0 -14
  906. package/dist/core/config/shared/find-title.js +0 -35
  907. package/dist/core/config/shared/get-staff-collection.d.ts +0 -22
  908. package/dist/core/config/shared/get-staff-collection.js +0 -55
  909. package/dist/core/config/shared/upload-directories.d.ts +0 -7
  910. package/dist/core/config/shared/upload-directories.js +0 -55
  911. package/dist/core/config/shared/versions-alias.server.d.ts +0 -10
  912. package/dist/core/config/shared/versions-alias.server.js +0 -59
  913. package/dist/core/constant.d.ts +0 -52
  914. package/dist/core/constant.js +0 -51
  915. package/dist/core/constant.server.d.ts +0 -2
  916. package/dist/core/constant.server.js +0 -3
  917. package/dist/core/dev/cache/index.server.d.ts +0 -11
  918. package/dist/core/dev/cache/index.server.js +0 -37
  919. package/dist/core/dev/cli/build/index.js +0 -70
  920. package/dist/core/dev/cli/build/templates.js +0 -43
  921. package/dist/core/dev/cli/clear/index.server.js +0 -42
  922. package/dist/core/dev/cli/generate/index.server.js +0 -98
  923. package/dist/core/dev/cli/generate-manifest/index.server.d.ts +0 -17
  924. package/dist/core/dev/cli/generate-manifest/index.server.js +0 -221
  925. package/dist/core/dev/cli/init/index.server.js +0 -240
  926. package/dist/core/dev/cli/init/templates.d.ts +0 -16
  927. package/dist/core/dev/cli/init/templates.js +0 -105
  928. package/dist/core/dev/cli/util/log.server.d.ts +0 -1
  929. package/dist/core/dev/cli/util/log.server.js +0 -4
  930. package/dist/core/dev/constants.d.ts +0 -29
  931. package/dist/core/dev/constants.js +0 -67
  932. package/dist/core/dev/generate/routes/common.server.d.ts +0 -17
  933. package/dist/core/dev/generate/routes/common.server.js +0 -500
  934. package/dist/core/dev/generate/routes/custom-css.server.js +0 -86
  935. package/dist/core/dev/generate/routes/index.server.d.ts +0 -12
  936. package/dist/core/dev/generate/routes/index.server.js +0 -83
  937. package/dist/core/dev/generate/routes/util.server.d.ts +0 -42
  938. package/dist/core/dev/generate/routes/util.server.js +0 -101
  939. package/dist/core/dev/generate/runtime/index.server.d.ts +0 -44
  940. package/dist/core/dev/generate/runtime/index.server.js +0 -92
  941. package/dist/core/dev/generate/runtime/parse-exports.server.d.ts +0 -7
  942. package/dist/core/dev/generate/runtime/parse-exports.server.js +0 -40
  943. package/dist/core/dev/generate/sanitize/index.server.js +0 -834
  944. package/dist/core/dev/generate/types/index.server.js +0 -368
  945. package/dist/core/dev/vite/index.server.js +0 -308
  946. package/dist/core/ensure.server.d.ts +0 -34
  947. package/dist/core/ensure.server.js +0 -91
  948. package/dist/core/handlers/auth.server.js +0 -154
  949. package/dist/core/handlers/cors.server.js +0 -73
  950. package/dist/core/handlers/index.d.ts +0 -3
  951. package/dist/core/handlers/index.js +0 -16
  952. package/dist/core/handlers/main.server.d.ts +0 -4
  953. package/dist/core/handlers/main.server.js +0 -14
  954. package/dist/core/handlers/plugins.server.js +0 -10
  955. package/dist/core/handlers/routes.server.d.ts +0 -71
  956. package/dist/core/handlers/routes.server.js +0 -88
  957. package/dist/core/naming.d.ts +0 -82
  958. package/dist/core/naming.js +0 -86
  959. package/dist/core/operations/blocks/diff.server.d.ts +0 -15
  960. package/dist/core/operations/blocks/diff.server.js +0 -82
  961. package/dist/core/operations/blocks/extract.server.d.ts +0 -9
  962. package/dist/core/operations/blocks/extract.server.js +0 -33
  963. package/dist/core/operations/blocks/index.server.d.ts +0 -26
  964. package/dist/core/operations/blocks/index.server.js +0 -71
  965. package/dist/core/operations/configMap/buildTreeMap.d.ts +0 -4
  966. package/dist/core/operations/configMap/index.d.ts +0 -6
  967. package/dist/core/operations/configMap/index.js +0 -54
  968. package/dist/core/operations/extract-data.server.d.ts +0 -37
  969. package/dist/core/operations/extract-data.server.js +0 -101
  970. package/dist/core/operations/hooks/before-create/merge-with-blank.server.d.ts +0 -1
  971. package/dist/core/operations/hooks/before-create/merge-with-blank.server.js +0 -24
  972. package/dist/core/operations/hooks/before-operation/authorize.server.d.ts +0 -1
  973. package/dist/core/operations/hooks/before-operation/authorize.server.js +0 -32
  974. package/dist/core/operations/hooks/before-read/populate-url.server.d.ts +0 -4
  975. package/dist/core/operations/hooks/before-read/populate-url.server.js +0 -107
  976. package/dist/core/operations/hooks/before-read/process-document-fields.server.d.ts +0 -1
  977. package/dist/core/operations/hooks/before-read/process-document-fields.server.js +0 -58
  978. package/dist/core/operations/hooks/before-read/set-document-locale.server.d.ts +0 -1
  979. package/dist/core/operations/hooks/before-read/set-document-locale.server.js +0 -15
  980. package/dist/core/operations/hooks/before-read/set-document-thumbnail.server.d.ts +0 -1
  981. package/dist/core/operations/hooks/before-read/set-document-thumbnail.server.js +0 -34
  982. package/dist/core/operations/hooks/before-read/set-document-title.server.d.ts +0 -1
  983. package/dist/core/operations/hooks/before-read/set-document-title.server.js +0 -29
  984. package/dist/core/operations/hooks/before-read/set-document-type.server.d.ts +0 -1
  985. package/dist/core/operations/hooks/before-read/set-document-type.server.js +0 -14
  986. package/dist/core/operations/hooks/before-read/sort-document-props.server.d.ts +0 -1
  987. package/dist/core/operations/hooks/before-read/sort-document-props.server.js +0 -63
  988. package/dist/core/operations/hooks/before-update/define-version-operation.server.d.ts +0 -1
  989. package/dist/core/operations/hooks/before-update/define-version-operation.server.js +0 -18
  990. package/dist/core/operations/hooks/before-update/get-original-document.server.d.ts +0 -1
  991. package/dist/core/operations/hooks/before-update/get-original-document.server.js +0 -37
  992. package/dist/core/operations/hooks/before-upsert/data-config-map.server.d.ts +0 -1
  993. package/dist/core/operations/hooks/before-upsert/data-config-map.server.js +0 -12
  994. package/dist/core/operations/hooks/before-upsert/handle-new-version.server.d.ts +0 -5
  995. package/dist/core/operations/hooks/before-upsert/handle-new-version.server.js +0 -98
  996. package/dist/core/operations/hooks/before-upsert/original-config-map.server.d.ts +0 -1
  997. package/dist/core/operations/hooks/before-upsert/original-config-map.server.js +0 -16
  998. package/dist/core/operations/hooks/before-upsert/set-default-values.server.d.ts +0 -10
  999. package/dist/core/operations/hooks/before-upsert/set-default-values.server.js +0 -70
  1000. package/dist/core/operations/hooks/before-upsert/validate-fields.server.d.ts +0 -1
  1001. package/dist/core/operations/hooks/before-upsert/validate-fields.server.js +0 -150
  1002. package/dist/core/operations/hooks/index.server.d.ts +0 -128
  1003. package/dist/core/operations/hooks/index.server.js +0 -45
  1004. package/dist/core/operations/relations/diff.server.d.ts +0 -14
  1005. package/dist/core/operations/relations/diff.server.js +0 -47
  1006. package/dist/core/operations/relations/extract.server.d.ts +0 -11
  1007. package/dist/core/operations/relations/extract.server.js +0 -59
  1008. package/dist/core/operations/relations/index.server.d.ts +0 -25
  1009. package/dist/core/operations/relations/index.server.js +0 -68
  1010. package/dist/core/operations/shared/fallback-data-from-original.d.ts +0 -9
  1011. package/dist/core/operations/shared/fallback-data-from-original.js +0 -31
  1012. package/dist/core/operations/tree/diff.server.d.ts +0 -20
  1013. package/dist/core/operations/tree/diff.server.js +0 -64
  1014. package/dist/core/operations/tree/extract.server.d.ts +0 -9
  1015. package/dist/core/operations/tree/extract.server.js +0 -34
  1016. package/dist/core/operations/tree/index.server.d.ts +0 -12
  1017. package/dist/core/operations/tree/index.server.js +0 -52
  1018. package/dist/core/plugins/api-init/index.d.ts +0 -2
  1019. package/dist/core/plugins/api-init/index.js +0 -1
  1020. package/dist/core/plugins/api-init/module.server.js +0 -83
  1021. package/dist/core/plugins/mailer/index.d.ts +0 -2
  1022. package/dist/core/plugins/mailer/index.js +0 -1
  1023. package/dist/core/plugins/mailer/module.server.js +0 -32
  1024. package/dist/core/plugins/sse/broadcast.d.ts +0 -13
  1025. package/dist/core/plugins/sse/broadcast.js +0 -30
  1026. package/dist/core/plugins/sse/module.server.d.ts +0 -16
  1027. package/dist/core/plugins/sse/module.server.js +0 -52
  1028. package/dist/core/types/doc.d.ts +0 -74
  1029. package/dist/core/types/index.d.ts +0 -5
  1030. package/dist/panel/navigation.d.ts +0 -13
  1031. package/dist/panel/navigation.js +0 -59
  1032. package/dist/panel/pages/area/AreaVersionsDoc.svelte +0 -24
  1033. package/dist/panel/pages/area/AreaVersionsDoc.svelte.d.ts +0 -7
  1034. package/dist/panel/pages/collection-document/CollectionDocVersions.svelte +0 -29
  1035. package/dist/panel/pages/collection-document/CollectionDocVersions.svelte.d.ts +0 -7
  1036. package/dist/util/access/index.d.ts +0 -73
  1037. package/dist/util/cases.d.ts +0 -39
  1038. package/dist/util/cases.js +0 -58
  1039. package/dist/util/doc.d.ts +0 -50
  1040. package/dist/util/doc.js +0 -140
  1041. package/dist/util/validate.js +0 -171
  1042. /package/dist/{util/access/index.js → core/auth/access.js} +0 -0
  1043. /package/dist/core/{config/auth/better-auth-hooks.server.d.ts → auth/better-auth/hooks.server.d.ts} +0 -0
  1044. /package/dist/core/{config/auth/better-auth-permissions.d.ts → auth/better-auth/permissions.d.ts} +0 -0
  1045. /package/dist/core/{config/auth/better-auth-permissions.js → auth/better-auth/permissions.js} +0 -0
  1046. /package/dist/core/{handlers/auth.server.d.ts → auth/handler/index.server.d.ts} +0 -0
  1047. /package/dist/core/{areas/config → auth}/types.js +0 -0
  1048. /package/dist/core/{collections/auth → auth}/util.js +0 -0
  1049. /package/dist/core/{handlers/cors.server.d.ts → cors/handler.server.d.ts} +0 -0
  1050. /package/dist/core/dev/cli/{build/index.d.ts → commands/build.d.ts} +0 -0
  1051. /package/dist/core/dev/cli/{clear/index.server.d.ts → commands/clear.server.d.ts} +0 -0
  1052. /package/dist/core/dev/cli/{generate/index.server.d.ts → commands/generate.server.d.ts} +0 -0
  1053. /package/dist/core/dev/cli/{init/index.server.d.ts → commands/init.server.d.ts} +0 -0
  1054. /package/dist/core/dev/cli/{build/templates.d.ts → templates/build.d.ts} +0 -0
  1055. /package/dist/core/dev/{generate → codegen}/routes/custom-css.server.d.ts +0 -0
  1056. /package/dist/core/dev/{generate → codegen}/sanitize/index.server.d.ts +0 -0
  1057. /package/dist/core/dev/{generate → codegen}/types/index.server.d.ts +0 -0
  1058. /package/dist/core/{config/server/write.server.d.ts → dev/config-memo.server.d.ts} +0 -0
  1059. /package/dist/core/dev/{vite/index.server.d.ts → vite.server.d.ts} +0 -0
  1060. /package/dist/core/{collections/auth → fields}/types.js +0 -0
  1061. /package/dist/{util → core/fields}/validate.d.ts +0 -0
  1062. /package/dist/core/{collections/config → locale}/types.js +0 -0
  1063. /package/dist/core/{logger/index.server.d.ts → logger.server.d.ts} +0 -0
  1064. /package/dist/core/{logger/index.server.js → logger.server.js} +0 -0
  1065. /package/dist/core/{operations/configMap → panel}/types.js +0 -0
  1066. /package/dist/core/{operations/configMap/buildTreeMap.js → pipeline/config-map/build-tree-map.js} +0 -0
  1067. /package/dist/core/{operations/configMap → pipeline/config-map}/types.d.ts +0 -0
  1068. /package/dist/core/{types/doc.js → pipeline/config-map/types.js} +0 -0
  1069. /package/dist/core/plugins/api-init/{module.server.d.ts → index.server.d.ts} +0 -0
  1070. /package/dist/core/{types/index.js → plugins/cache/types.js} +0 -0
  1071. /package/dist/core/plugins/mailer/{module.server.d.ts → index.server.d.ts} +0 -0
  1072. /package/dist/core/{handlers → plugins}/plugins.server.d.ts +0 -0
  1073. /package/dist/core/{areas/config → prototype/area}/types.d.ts +0 -0
  1074. /package/dist/core/{collections/config → prototype/collection}/augment-label.js +0 -0
  1075. /package/dist/core/{collections → prototype/collection}/upload/util/client.d.ts +0 -0
  1076. /package/dist/core/{collections → prototype/collection}/upload/util/client.js +0 -0
  1077. /package/dist/core/{collections → prototype/collection}/upload/util/config.js +0 -0
  1078. /package/dist/core/{collections → prototype/collection}/upload/util/mime.d.ts +0 -0
  1079. /package/dist/core/{collections → prototype/collection}/upload/util/mime.js +0 -0
@@ -1,2 +1,10 @@
1
- /// <reference path="../../../.rime-modules.d.ts" />
2
- export { sse } from "$rime/modules/rimecms/core/plugins/sse";
1
+ /**
2
+ * The event stream, client half. The server half is `index.server.ts`.
3
+ *
4
+ * - The client calls `openSse` with the keys it wants, which opens `GET /api/sse?keys=…`.
5
+ * - The server answers it in `connect`: it checks each key, then leaves the response open.
6
+ * - The server sends an event with `emit`, which writes it to the connections holding that key.
7
+ * - The client's handler is called with that event.
8
+ */
9
+ export { openSse } from './client.js';
10
+ export type { SSEAccess, SSEEvent, SSEHandler } from './types.js';
@@ -1 +1,9 @@
1
- export { sse } from "$rime/modules/rimecms/core/plugins/sse";
1
+ /**
2
+ * The event stream, client half. The server half is `index.server.ts`.
3
+ *
4
+ * - The client calls `openSse` with the keys it wants, which opens `GET /api/sse?keys=…`.
5
+ * - The server answers it in `connect`: it checks each key, then leaves the response open.
6
+ * - The server sends an event with `emit`, which writes it to the connections holding that key.
7
+ * - The client's handler is called with that event.
8
+ */
9
+ export { openSse } from './client.js';
@@ -0,0 +1,29 @@
1
+ import { emit } from './bus.server.js';
2
+ import type { SSEAccess } from './types.js';
3
+ /**
4
+ * The event stream, at `/api/sse`.
5
+ *
6
+ * Send with `rime.sse.emit(key, event, payload)`, listen with `openSse(keys, handler)`.
7
+ *
8
+ * `rime:` keys are the panel's and need staff; every other key is refused until `access` says
9
+ * otherwise, so an app opens its own deliberately rather than by leaving a default alone.
10
+ *
11
+ * @example
12
+ * sse({ access: (key) => key.startsWith('public:') })
13
+ */
14
+ export declare const sse: (options?: {
15
+ access?: SSEAccess;
16
+ }) => {
17
+ readonly name: "sse";
18
+ readonly actions: {
19
+ readonly emit: (key: string, event: string, payload?: Record<string, any>) => void;
20
+ };
21
+ readonly routes: {
22
+ readonly '/api/sse': {
23
+ readonly GET: import("@sveltejs/kit").RequestHandler;
24
+ };
25
+ };
26
+ };
27
+ export type SSEActions = {
28
+ emit: typeof emit;
29
+ };
@@ -0,0 +1,18 @@
1
+ import { definePlugin } from '../index.js';
2
+ import { connect, emit } from './bus.server.js';
3
+ /**
4
+ * The event stream, at `/api/sse`.
5
+ *
6
+ * Send with `rime.sse.emit(key, event, payload)`, listen with `openSse(keys, handler)`.
7
+ *
8
+ * `rime:` keys are the panel's and need staff; every other key is refused until `access` says
9
+ * otherwise, so an app opens its own deliberately rather than by leaving a default alone.
10
+ *
11
+ * @example
12
+ * sse({ access: (key) => key.startsWith('public:') })
13
+ */
14
+ export const sse = definePlugin((options) => ({
15
+ name: 'sse',
16
+ actions: { emit },
17
+ routes: { '/api/sse': { GET: connect(options?.access ?? (() => false)) } }
18
+ }));
@@ -1,8 +1,16 @@
1
- import type { Operation } from '../../operations/hooks/index.server.js';
2
- import type { PrototypeSlug } from '../../../types.js';
3
- export type ContentUpdatePayload = {
4
- documentType: PrototypeSlug;
5
- id: string;
6
- operation: Omit<Operation, 'read'>;
7
- timestamp: string;
1
+ import type { User } from '../../auth/types.js';
2
+ /** One event on the stream. */
3
+ export type SSEEvent = {
4
+ /** `rime:lock`, or an app's own name. */
5
+ event: string;
6
+ payload: Record<string, any>;
8
7
  };
8
+ /** Handles one event. Returning a promise is fine; nothing waits on it. */
9
+ export type SSEHandler = (event: SSEEvent) => void | Promise<void>;
10
+ /**
11
+ * Whether this caller may listen to this key.
12
+ *
13
+ * Asked once per key when the connection opens, before anything is written to it — which is the
14
+ * point of naming keys up front rather than filtering in the browser.
15
+ */
16
+ export type SSEAccess = (key: string, user?: User) => boolean;
@@ -0,0 +1,91 @@
1
+ import type { BuiltArea } from '../../config/types.js';
2
+ import type { RegisterArea } from '../../../index.js';
3
+ import type { PrototypeApiContext } from '../define.js';
4
+ import type { RequestEvent } from '@sveltejs/kit';
5
+ import type { Dic } from '../../../util/types.js';
6
+ import type { GenericDoc } from '../types.js';
7
+ import type { OperationQuery } from '../../pipeline/types.js';
8
+ import { type FindArgs } from './operations/find.js';
9
+ import { type UpdateArgs } from './operations/update.js';
10
+ /** What building an area's API for one request needs. */
11
+ export type AreaApiArgs = {
12
+ config: BuiltArea;
13
+ event: RequestEvent;
14
+ defaultLocale: string | undefined;
15
+ };
16
+ /**
17
+ * Everything `rime.area('settings')` can do: exactly two operations.
18
+ *
19
+ * There is no `create` and no `delete` — not switched off, absent, because a singleton has no
20
+ * second document to make and nothing left to read if its only one goes. Nor is there an id
21
+ * anywhere in these signatures. That is the whole difference from a collection, and it is why
22
+ * this is its own class rather than a collection with a flag.
23
+ *
24
+ * `blank()` is the document as its fields default it, full stop: no auth step, because an area
25
+ * lists no `auth`. The collection's strips auth's private members — the two were one
26
+ * `prototypeContext` with a `shapeBlank(doc, config, intent)` between them, for a branch neither
27
+ * kind could reach.
28
+ */
29
+ declare class AreaAPI<Doc extends GenericDoc> implements PrototypeApiContext<BuiltArea> {
30
+ private readonly args;
31
+ readonly config: BuiltArea;
32
+ readonly event: RequestEvent;
33
+ readonly defaultLocale: string | undefined;
34
+ /** True when rime itself is the caller: access checks and some hooks stand down. */
35
+ readonly isSystemOperation: boolean;
36
+ constructor(args: AreaApiArgs, isSystemOperation?: boolean);
37
+ /**
38
+ * The same API, telling the pipeline that rime is the caller.
39
+ *
40
+ * A new instance rather than a flag, so a system call cannot leak back into the one it was
41
+ * escalated from. `system(false)` hands this one back.
42
+ */
43
+ system(isSystem?: boolean): AreaAPI<Doc>;
44
+ /** The area's document with every default applied. */
45
+ blank(): Doc;
46
+ /** The locale to act in: the one asked for, else the request's, else the config's default. */
47
+ fallbackLocale(locale?: string): string | undefined;
48
+ /** Which version row a read means — see `versionsReadQuery`. */
49
+ versionQuery(params: {
50
+ latest?: boolean;
51
+ versionId?: string;
52
+ }): OperationQuery | undefined;
53
+ /** Read through the API cache when it is on and this is not a system call. */
54
+ cached<T>(operation: string, key: Dic, read: () => Promise<T>): Promise<T>;
55
+ /**
56
+ * Retrieves the area's document
57
+ *
58
+ * - For non-versioned areas: Returns the single document
59
+ * - For versioned areas without draft support: Returns the latest version by default, or a
60
+ * specific version if versionId is provided
61
+ * - For versioned areas with draft support:
62
+ * - If versionId is provided: Returns that specific version
63
+ * - If latest=true: Returns the newest version (regardless of status)
64
+ * - If draft=false: Returns the published version
65
+ *
66
+ * @example
67
+ * const doc = await rime.area('settings').find({ locale })
68
+ * const doc = await rime.area('settings').find({ versionId: '123' })
69
+ * const doc = await rime.area('settings').find({ latest: true })
70
+ */
71
+ find(args?: FindArgs): Promise<Doc>;
72
+ /**
73
+ * Updates the area's document
74
+ *
75
+ * `versionId`, else `latest`, else the published version selects the row; `fork` makes a new
76
+ * version from it instead of writing it. See the collection's `updateById`.
77
+ *
78
+ * @example
79
+ * rime.area('settings').update({ data, locale })
80
+ */
81
+ update(args: UpdateArgs<Doc>): Promise<Doc>;
82
+ }
83
+ /** Builds an area's API for one request. What `rime.area(slug)` calls. */
84
+ export declare const areaApi: <Doc extends GenericDoc>(args: AreaApiArgs) => AreaApi<Doc>;
85
+ /**
86
+ * What `rime.area(slug)` hands back — written out, not read off the class. See the note on
87
+ * `CollectionApi` for why the plumbing must not appear in this type.
88
+ */
89
+ export type AreaApi<Doc extends GenericDoc = GenericDoc> = Pick<AreaAPI<Doc>, 'config' | 'blank' | 'find' | 'update' | 'system'>;
90
+ export type AreaAccessor = <Slug extends keyof RegisterArea>(slug: Slug) => AreaApi<RegisterArea[Slug]>;
91
+ export {};
@@ -0,0 +1,117 @@
1
+ import { createBlankDocument } from '../doc.js';
2
+ import { versionsReadQuery } from '../shared/versions/read-query.js';
3
+ import { find } from './operations/find.js';
4
+ import { update } from './operations/update.js';
5
+ /**
6
+ * Everything `rime.area('settings')` can do: exactly two operations.
7
+ *
8
+ * There is no `create` and no `delete` — not switched off, absent, because a singleton has no
9
+ * second document to make and nothing left to read if its only one goes. Nor is there an id
10
+ * anywhere in these signatures. That is the whole difference from a collection, and it is why
11
+ * this is its own class rather than a collection with a flag.
12
+ *
13
+ * `blank()` is the document as its fields default it, full stop: no auth step, because an area
14
+ * lists no `auth`. The collection's strips auth's private members — the two were one
15
+ * `prototypeContext` with a `shapeBlank(doc, config, intent)` between them, for a branch neither
16
+ * kind could reach.
17
+ */
18
+ class AreaAPI {
19
+ args;
20
+ config;
21
+ event;
22
+ defaultLocale;
23
+ /** True when rime itself is the caller: access checks and some hooks stand down. */
24
+ isSystemOperation;
25
+ constructor(args, isSystemOperation = false) {
26
+ this.args = args;
27
+ this.config = args.config;
28
+ this.event = args.event;
29
+ this.defaultLocale = args.defaultLocale;
30
+ this.isSystemOperation = isSystemOperation;
31
+ }
32
+ /**
33
+ * The same API, telling the pipeline that rime is the caller.
34
+ *
35
+ * A new instance rather than a flag, so a system call cannot leak back into the one it was
36
+ * escalated from. `system(false)` hands this one back.
37
+ */
38
+ system(isSystem = true) {
39
+ return isSystem ? new AreaAPI(this.args, true) : this;
40
+ }
41
+ /** The area's document with every default applied. */
42
+ blank() {
43
+ return createBlankDocument(this.config, this.event);
44
+ }
45
+ /** The locale to act in: the one asked for, else the request's, else the config's default. */
46
+ fallbackLocale(locale) {
47
+ return locale || this.event.locals.locale || this.defaultLocale;
48
+ }
49
+ /** Which version row a read means — see `versionsReadQuery`. */
50
+ versionQuery(params) {
51
+ return versionsReadQuery({ config: this.config, params });
52
+ }
53
+ /** Read through the API cache when it is on and this is not a system call. */
54
+ cached(operation, key, read) {
55
+ if (!this.event.locals.cacheEnabled || this.isSystemOperation)
56
+ return read();
57
+ const cacheKey = this.event.locals.rime.cache.createKey(operation, {
58
+ slug: this.config.slug,
59
+ userEmail: this.event.locals.user?.email,
60
+ userRoles: this.event.locals.user?.roles,
61
+ ...key
62
+ });
63
+ return this.event.locals.rime.cache.get(cacheKey, read);
64
+ }
65
+ /**
66
+ * Retrieves the area's document
67
+ *
68
+ * - For non-versioned areas: Returns the single document
69
+ * - For versioned areas without draft support: Returns the latest version by default, or a
70
+ * specific version if versionId is provided
71
+ * - For versioned areas with draft support:
72
+ * - If versionId is provided: Returns that specific version
73
+ * - If latest=true: Returns the newest version (regardless of status)
74
+ * - If draft=false: Returns the published version
75
+ *
76
+ * @example
77
+ * const doc = await rime.area('settings').find({ locale })
78
+ * const doc = await rime.area('settings').find({ versionId: '123' })
79
+ * const doc = await rime.area('settings').find({ latest: true })
80
+ */
81
+ find(args = {}) {
82
+ const { locale, select = [], depth = 0, versionId, latest, localeFallback } = args;
83
+ // As on a collection's find: the key holds the caller's locale, not the resolved one.
84
+ return this.cached('area.find', { select, versionId, depth, latest, locale, localeFallback }, () => find({
85
+ ctx: this,
86
+ select,
87
+ versionId,
88
+ depth,
89
+ latest,
90
+ localeFallback,
91
+ locale: this.fallbackLocale(locale)
92
+ }));
93
+ }
94
+ /**
95
+ * Updates the area's document
96
+ *
97
+ * `versionId`, else `latest`, else the published version selects the row; `fork` makes a new
98
+ * version from it instead of writing it. See the collection's `updateById`.
99
+ *
100
+ * @example
101
+ * rime.area('settings').update({ data, locale })
102
+ */
103
+ update(args) {
104
+ const { data, locale, versionId, latest, fork, autoSave } = args;
105
+ return update({
106
+ ctx: this,
107
+ data,
108
+ versionId,
109
+ latest,
110
+ fork,
111
+ autoSave,
112
+ locale: this.fallbackLocale(locale)
113
+ });
114
+ }
115
+ }
116
+ /** Builds an area's API for one request. What `rime.area(slug)` calls. */
117
+ export const areaApi = (args) => new AreaAPI(args);
@@ -0,0 +1,16 @@
1
+ type WithAreaLabel<T> = Omit<T, 'label'> & {
2
+ label: string;
3
+ };
4
+ /**
5
+ * An area's label: what the author wrote, else its capitalised slug.
6
+ *
7
+ * The area's one own augment, and the mirror of the collection's — which normalises a string or
8
+ * an object into `{ singular, plural }`, because a collection is named in two numbers and an area
9
+ * in one. The kind's own statement about itself, so it belongs to the kind rather than to a
10
+ * shared factory.
11
+ */
12
+ export declare const augmentAreaLabel: <T extends {
13
+ slug: string;
14
+ label?: string;
15
+ }>(config: T) => WithAreaLabel<T>;
16
+ export {};
@@ -0,0 +1,13 @@
1
+ import { capitalize } from '../../../util/string.js';
2
+ /**
3
+ * An area's label: what the author wrote, else its capitalised slug.
4
+ *
5
+ * The area's one own augment, and the mirror of the collection's — which normalises a string or
6
+ * an object into `{ singular, plural }`, because a collection is named in two numbers and an area
7
+ * in one. The kind's own statement about itself, so it belongs to the kind rather than to a
8
+ * shared factory.
9
+ */
10
+ export const augmentAreaLabel = (config) => ({
11
+ ...config,
12
+ label: config.label ? config.label : capitalize(config.slug)
13
+ });
@@ -0,0 +1,18 @@
1
+ import type { BuiltArea } from '../../config/types.js';
2
+ import type { AreaWithoutSlug } from './types.js';
3
+ /**
4
+ * An area holds exactly one document, so create and delete are off and reads and updates need no
5
+ * id to say which one they mean.
6
+ *
7
+ * The adapter reads `config.type` and builds an `AreaHandle` accordingly —
8
+ * `adapter-sqlite/area.server.ts`.
9
+ *
10
+ * The client half of the pair — what an area *is*. `api`, `rest` and `boot` are server-only and
11
+ * live in `definition.server.ts`.
12
+ */
13
+ export declare const area: import("../define.js").PrototypeDefinition<import("../define.js").BuiltPrototype>;
14
+ /**
15
+ * The public authoring API: `Area.create('settings', {…})`. See the collection's for why the
16
+ * signature is stated here rather than on the definition.
17
+ */
18
+ export declare const create: <S extends string>(slug: S, config: AreaWithoutSlug<S>) => BuiltArea;
@@ -0,0 +1,44 @@
1
+ import { augmentMetas } from 'rimecms/core/prototype/shared/metas/module';
2
+ import { augmentTitle } from '../shared/title/augment.js';
3
+ import { augmentUrl } from '../shared/url/augment.js';
4
+ import { hasUrl } from '../shared/url/enabled.js';
5
+ import { augmentVersions } from '../shared/versions/augment.js';
6
+ import { when } from '../when.js';
7
+ import { definePrototype } from '../define.js';
8
+ import { augmentAreaLabel } from './augment-label.js';
9
+ /**
10
+ * An area holds exactly one document, so create and delete are off and reads and updates need no
11
+ * id to say which one they mean.
12
+ *
13
+ * The adapter reads `config.type` and builds an `AreaHandle` accordingly —
14
+ * `adapter-sqlite/area.server.ts`.
15
+ *
16
+ * The client half of the pair — what an area *is*. `api`, `rest` and `boot` are server-only and
17
+ * live in `definition.server.ts`.
18
+ */
19
+ export const area = definePrototype({
20
+ /** The name it is exported under, and the `type` every area config carries. */
21
+ name: 'area',
22
+ /**
23
+ * Everything that shapes an area config, in the order it runs — which is column order.
24
+ *
25
+ * Shorter than a collection's by four: no `auth`, `upload`, `nested` or `thumbnail`. An area is
26
+ * one document, so there is nothing to sign in as, nothing listing it, and nothing to nest it
27
+ * in — it simply does not list them. That is what the two lists say that a shared
28
+ * implementation with a flag could not.
29
+ */
30
+ augments: () => [
31
+ augmentAreaLabel,
32
+ augmentVersions,
33
+ when(hasUrl, augmentUrl),
34
+ augmentTitle,
35
+ augmentMetas
36
+ ]
37
+ });
38
+ /**
39
+ * The public authoring API: `Area.create('settings', {…})`. See the collection's for why the
40
+ * signature is stated here rather than on the definition.
41
+ */
42
+ export const create = (slug, config) =>
43
+ // See the collection's for the cast.
44
+ area.create(slug, config);
@@ -0,0 +1,9 @@
1
+ import type { BuiltArea } from '../../config/types.js';
2
+ /**
3
+ * The server half: the same area, plus `rest` and the boot step.
4
+ *
5
+ * `boot` is the consequence of `singleton: true`: nothing at runtime may create the row, so it has
6
+ * to exist before requests arrive. Doing it here keeps writes off the read path, and makes an
7
+ * area's creation time and locale a property of the config rather than of its first reader.
8
+ */
9
+ export declare const area: import("../define.js").PrototypeDefinition<BuiltArea>;
@@ -0,0 +1,40 @@
1
+ import { definePrototype } from '../define.js';
2
+ import { createBlankDocument } from '../doc.js';
3
+ import { blankVersion } from '../shared/versions/blank.js';
4
+ import { area as base } from './definition.js';
5
+ import { areaHooks } from './hooks.server.js';
6
+ import { rest } from './rest/index.server.js';
7
+ /**
8
+ * The server half: the same area, plus `rest` and the boot step.
9
+ *
10
+ * `boot` is the consequence of `singleton: true`: nothing at runtime may create the row, so it has
11
+ * to exist before requests arrive. Doing it here keeps writes off the read path, and makes an
12
+ * area's creation time and locale a property of the config rather than of its first reader.
13
+ */
14
+ export const area = definePrototype({
15
+ ...base,
16
+ rest,
17
+ /**
18
+ * The area's own document hooks, listed in `hooks.server.ts` beside this file. On the server
19
+ * half for the reason the collection's are — a hook typed through `event.locals.rime` cannot sit
20
+ * where the config factory imports it.
21
+ */
22
+ hooks: areaHooks,
23
+ boot: async ({ config, adapter, defaultLocale }) => {
24
+ /**
25
+ * No request event: boot has no request. `createBlankDocument` takes one only to pass to a
26
+ * field's `defaultValue({ event })`, which already declares it optional — so a default that
27
+ * reads it gets `undefined` here rather than whichever request arrived first.
28
+ *
29
+ * The locale is the config's default for the same reason: the locale of an area's first row
30
+ * is a property of the config, not of its first reader.
31
+ */
32
+ await adapter.area(config.slug).ensureExists({
33
+ // Intent `'seed'`, not `'create'`: a feature that gives this prototype a versions table may need
34
+ // the first row to differ from what an author's create starts with. See
35
+ // FeatureDefinition.blank.
36
+ blank: blankVersion(createBlankDocument(config), config),
37
+ locale: defaultLocale
38
+ });
39
+ }
40
+ });
@@ -0,0 +1,17 @@
1
+ import type { AnyHook, HookTiming } from '../../pipeline/types.js';
2
+ /**
3
+ * The area prototype's *own* document hooks — the ones that are its, unconditionally.
4
+ *
5
+ * In its own file for the reason the collection's are (see collection/hooks.server.ts): a list of
6
+ * hooks depends on nothing, so anything can import it without going through `definition.server.ts`
7
+ * and its module-scope `{ ...base }` spread. The area's config factory needs exactly this list and
8
+ * the feature list, and reaching them through the server definition is what made the collection
9
+ * silently lose its feature hooks when an import order changed.
10
+ *
11
+ * No create, no delete: a second row is not a thing.
12
+ *
13
+ * The order is written, not computed — see the long note in `collection/hooks.server.ts`, which
14
+ * also says what nothing checks. An area lists fewer features than a collection (no `auth`,
15
+ * `upload`, `nested` or `thumbnail`), so it places fewer hooks.
16
+ */
17
+ export declare const areaHooks: Partial<Record<HookTiming, AnyHook[]>>;
@@ -0,0 +1,61 @@
1
+ import { authorize } from '../../pipeline/hooks/authorize.server.js';
2
+ import { buildDataConfigMap } from '../../pipeline/hooks/data-config-map.server.js';
3
+ import { getOriginalDocument } from '../../pipeline/hooks/get-original-document.server.js';
4
+ import { normalizeResolvedReferences } from '../../pipeline/hooks/normalize-resolved-references.server.js';
5
+ import { buildOriginalDocConfigMap } from '../../pipeline/hooks/original-config-map.server.js';
6
+ import { processDocumentFields } from '../../pipeline/hooks/process-document-fields.server.js';
7
+ import { resolveContentOwner } from '../../pipeline/hooks/resolve-content-owner.server.js';
8
+ import { setDefaultValues } from '../../pipeline/hooks/set-default-values.server.js';
9
+ import { setDocumentLocale } from '../../pipeline/hooks/set-document-locale.server.js';
10
+ import { setDocumentType } from '../../pipeline/hooks/set-document-type.server.js';
11
+ import { validateFields } from '../../pipeline/hooks/validate-fields.server.js';
12
+ import * as metas from '../shared/metas/hooks/index.server.js';
13
+ import * as title from '../shared/title/hooks/index.server.js';
14
+ import { hasUrl } from '../shared/url/enabled.js';
15
+ import * as url from '../shared/url/hooks/index.server.js';
16
+ import { isVersioned } from '../shared/versions/enabled.js';
17
+ import * as versions from '../shared/versions/hooks/index.server.js';
18
+ import { when } from '../when.js';
19
+ /**
20
+ * The area prototype's *own* document hooks — the ones that are its, unconditionally.
21
+ *
22
+ * In its own file for the reason the collection's are (see collection/hooks.server.ts): a list of
23
+ * hooks depends on nothing, so anything can import it without going through `definition.server.ts`
24
+ * and its module-scope `{ ...base }` spread. The area's config factory needs exactly this list and
25
+ * the feature list, and reaching them through the server definition is what made the collection
26
+ * silently lose its feature hooks when an import order changed.
27
+ *
28
+ * No create, no delete: a second row is not a thing.
29
+ *
30
+ * The order is written, not computed — see the long note in `collection/hooks.server.ts`, which
31
+ * also says what nothing checks. An area lists fewer features than a collection (no `auth`,
32
+ * `upload`, `nested` or `thumbnail`), so it places fewer hooks.
33
+ */
34
+ export const areaHooks = {
35
+ beforeOperation: [authorize],
36
+ beforeRead: [
37
+ processDocumentFields,
38
+ setDocumentLocale,
39
+ setDocumentType,
40
+ when(isVersioned, versions.exposeVersionId),
41
+ title.setDocumentTitle,
42
+ // After the title, for the reason the collection's list gives.
43
+ when(hasUrl, url.populateURL),
44
+ metas.deletePanelLockMetas
45
+ ],
46
+ beforeUpdate: [
47
+ versions.stripAutoSaveFlag,
48
+ getOriginalDocument,
49
+ buildOriginalDocConfigMap,
50
+ resolveContentOwner,
51
+ when(isVersioned, versions.defineVersionOperation),
52
+ when(isVersioned, versions.handleNewVersion),
53
+ // Between the two, for the reasons the collection's list gives.
54
+ metas.stampUpdatedBy,
55
+ buildDataConfigMap,
56
+ setDefaultValues,
57
+ normalizeResolvedReferences,
58
+ validateFields,
59
+ when(isVersioned, versions.demoteOtherVersions)
60
+ ]
61
+ };
@@ -0,0 +1 @@
1
+ export { area, create } from './definition.js';
@@ -0,0 +1 @@
1
+ export { area, create } from './definition.js';
@@ -0,0 +1,18 @@
1
+ import type { BuiltArea } from '../../../config/types.js';
2
+ import type { PrototypeApiContext } from '../../define.js';
3
+ import type { GenericDoc } from '../../types.js';
4
+ export type FindArgs = {
5
+ locale?: string | undefined;
6
+ depth?: number;
7
+ select?: string[];
8
+ versionId?: string;
9
+ /** The newest version, whatever its status; the published one otherwise. */
10
+ latest?: boolean;
11
+ /** See the collection's findById. */
12
+ localeFallback?: boolean;
13
+ };
14
+ type Args = FindArgs & {
15
+ ctx: PrototypeApiContext<BuiltArea>;
16
+ };
17
+ export declare const find: <T extends GenericDoc>(args: Args) => Promise<T>;
18
+ export {};
@@ -0,0 +1,43 @@
1
+ import { RimeError } from '../../../errors/index.js';
2
+ import { readDocument, runBeforeOperation } from '../../../pipeline/run.server.js';
3
+ export const find = async (args) => {
4
+ const { ctx, locale, depth, select, versionId, latest, localeFallback } = args;
5
+ const { config, event, isSystemOperation } = ctx;
6
+ let context = {
7
+ params: {
8
+ locale,
9
+ depth,
10
+ select,
11
+ versionId,
12
+ latest
13
+ },
14
+ isSystemOperation
15
+ };
16
+ context = await runBeforeOperation({
17
+ config,
18
+ event,
19
+ operation: 'read',
20
+ context
21
+ });
22
+ // No id: a singleton has exactly one row, and the handle knows it.
23
+ const documentRaw = await event.locals.rime.adapter.area(config.slug).find({
24
+ locale,
25
+ localeFallback,
26
+ select,
27
+ // See the collection's findById.
28
+ content: ctx.versionQuery({ latest, versionId })
29
+ });
30
+ if (!documentRaw)
31
+ throw new RimeError(RimeError.NOT_FOUND);
32
+ const { doc } = await readDocument({
33
+ raw: documentRaw,
34
+ config,
35
+ event,
36
+ context,
37
+ locale,
38
+ localeFallback,
39
+ depth,
40
+ select
41
+ });
42
+ return doc;
43
+ };
@@ -0,0 +1,29 @@
1
+ import type { BuiltArea } from '../../../config/types.js';
2
+ import type { PrototypeApiContext } from '../../define.js';
3
+ import type { GenericDoc } from '../../types.js';
4
+ import type { DeepPartial } from '../../../../util/types.js';
5
+ export type UpdateArgs<T> = {
6
+ data: DeepPartial<T>;
7
+ locale?: string | undefined;
8
+ versionId?: string;
9
+ /** Start from the newest version rather than the published one. `PARAMS.LATEST`. */
10
+ latest?: boolean;
11
+ /** Make a new version from the selected row rather than write it. `PARAMS.FORK`. */
12
+ fork?: boolean;
13
+ /** Write the caller's auto-saved row of the version `versionId` names. Panel only. */
14
+ autoSave?: boolean;
15
+ /** This write copies another locale's rows onto the row — see `copyLocales`. */
16
+ isLocaleCopy?: boolean;
17
+ };
18
+ type Args<T> = UpdateArgs<T> & {
19
+ ctx: PrototypeApiContext<BuiltArea>;
20
+ };
21
+ /**
22
+ * Updates an area's single document.
23
+ *
24
+ * The pipeline itself lives in operations/run.server.ts — shared with a collection's
25
+ * updateById. Only the two prototype-specific pieces are here: which adapter method writes the
26
+ * root row, and how the saved document is read back.
27
+ */
28
+ export declare const update: <T extends GenericDoc = GenericDoc>(args: Args<T>) => Promise<T>;
29
+ export {};