@rakun-kit/core 1.1.1 → 1.2.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 (387) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/bootstrapState.js.map +1 -1
  3. package/dist/cjs/client.js +3 -2
  4. package/dist/cjs/client.js.map +1 -1
  5. package/dist/cjs/index.js +0 -14
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/cjs/lib/ContentType.js +106 -74
  8. package/dist/cjs/lib/ContentType.js.map +1 -1
  9. package/dist/cjs/lib/Logger.js +56 -0
  10. package/dist/cjs/lib/Logger.js.map +1 -1
  11. package/dist/cjs/lib/Registry.js +35 -22
  12. package/dist/cjs/lib/Registry.js.map +1 -1
  13. package/dist/cjs/lib/fields/Boolean.js +14 -9
  14. package/dist/cjs/lib/fields/Boolean.js.map +1 -1
  15. package/dist/cjs/lib/fields/ContentReference.js +29 -17
  16. package/dist/cjs/lib/fields/ContentReference.js.map +1 -1
  17. package/dist/cjs/lib/fields/Date.js +26 -22
  18. package/dist/cjs/lib/fields/Date.js.map +1 -1
  19. package/dist/cjs/lib/fields/Field.js +79 -59
  20. package/dist/cjs/lib/fields/Field.js.map +1 -1
  21. package/dist/cjs/lib/fields/Fields.js +32 -0
  22. package/dist/cjs/lib/fields/Fields.js.map +1 -0
  23. package/dist/cjs/lib/fields/File.js +60 -85
  24. package/dist/cjs/lib/fields/File.js.map +1 -1
  25. package/dist/cjs/lib/fields/Iterator.js +8 -10
  26. package/dist/cjs/lib/fields/Iterator.js.map +1 -1
  27. package/dist/cjs/lib/fields/Link.js +20 -15
  28. package/dist/cjs/lib/fields/Link.js.map +1 -1
  29. package/dist/cjs/lib/fields/List.js +47 -16
  30. package/dist/cjs/lib/fields/List.js.map +1 -1
  31. package/dist/cjs/lib/fields/Number.js +35 -17
  32. package/dist/cjs/lib/fields/Number.js.map +1 -1
  33. package/dist/cjs/lib/fields/Relation.js +73 -66
  34. package/dist/cjs/lib/fields/Relation.js.map +1 -1
  35. package/dist/cjs/lib/fields/Select.js +28 -17
  36. package/dist/cjs/lib/fields/Select.js.map +1 -1
  37. package/dist/cjs/lib/fields/SelfRelation.js +30 -21
  38. package/dist/cjs/lib/fields/SelfRelation.js.map +1 -1
  39. package/dist/cjs/lib/fields/SimpleList.js +38 -21
  40. package/dist/cjs/lib/fields/SimpleList.js.map +1 -1
  41. package/dist/cjs/lib/fields/String.js +54 -40
  42. package/dist/cjs/lib/fields/String.js.map +1 -1
  43. package/dist/cjs/lib/fields/index.js +29 -37
  44. package/dist/cjs/lib/fields/index.js.map +1 -1
  45. package/dist/cjs/orm/operations/findDependencies.js +4 -2
  46. package/dist/cjs/orm/operations/findDependencies.js.map +1 -1
  47. package/dist/esm/api/context.d.ts +1 -1
  48. package/dist/esm/api/context.js +2 -2
  49. package/dist/esm/api/operations/custom.d.ts +1 -1
  50. package/dist/esm/api/operations/custom.js +1 -1
  51. package/dist/esm/api/operations/index.d.ts +56 -57
  52. package/dist/esm/api/operations/index.d.ts.map +1 -1
  53. package/dist/esm/api/operations/index.js +7 -7
  54. package/dist/esm/api/operations/manager-contract.d.ts +37 -36
  55. package/dist/esm/api/operations/manager-contract.d.ts.map +1 -1
  56. package/dist/esm/api/operations/manager-contract.js +4 -4
  57. package/dist/esm/api/operations/manager.d.ts +38 -37
  58. package/dist/esm/api/operations/manager.d.ts.map +1 -1
  59. package/dist/esm/api/operations/manager.js +35 -35
  60. package/dist/esm/api/operations/types.d.ts +1 -1
  61. package/dist/esm/api/operations/web-contract.d.ts +11 -13
  62. package/dist/esm/api/operations/web-contract.d.ts.map +1 -1
  63. package/dist/esm/api/operations/web-contract.js +3 -3
  64. package/dist/esm/api/operations/web.d.ts +12 -14
  65. package/dist/esm/api/operations/web.d.ts.map +1 -1
  66. package/dist/esm/api/operations/web.js +5 -5
  67. package/dist/esm/api/proxies/context.d.ts +2 -2
  68. package/dist/esm/api/proxies/index.d.ts +9 -5
  69. package/dist/esm/api/proxies/index.d.ts.map +1 -1
  70. package/dist/esm/api/proxies/index.js +1 -1
  71. package/dist/esm/api/routes/manager/auth/accountInfo.d.ts +2 -2
  72. package/dist/esm/api/routes/manager/auth/accountInfo.js +3 -3
  73. package/dist/esm/api/routes/manager/auth/deleteSession.d.ts +2 -2
  74. package/dist/esm/api/routes/manager/auth/deleteSession.js +3 -3
  75. package/dist/esm/api/routes/manager/auth/login.d.ts +1 -1
  76. package/dist/esm/api/routes/manager/auth/login.js +4 -4
  77. package/dist/esm/api/routes/manager/auth/logout.d.ts +1 -1
  78. package/dist/esm/api/routes/manager/auth/logout.js +3 -3
  79. package/dist/esm/api/routes/manager/auth/totp/confirmTotp.d.ts +2 -2
  80. package/dist/esm/api/routes/manager/auth/totp/confirmTotp.js +2 -2
  81. package/dist/esm/api/routes/manager/auth/totp/enrollTotp.d.ts +1 -1
  82. package/dist/esm/api/routes/manager/auth/totp/enrollTotp.js +3 -3
  83. package/dist/esm/api/routes/manager/auth/totp/verifyTotp.d.ts +1 -1
  84. package/dist/esm/api/routes/manager/auth/totp/verifyTotp.js +3 -3
  85. package/dist/esm/api/routes/manager/auth/updatePassword.d.ts +2 -2
  86. package/dist/esm/api/routes/manager/auth/updatePassword.js +3 -3
  87. package/dist/esm/api/routes/manager/auth/webauthn/webauthnAuthOptions.js +4 -4
  88. package/dist/esm/api/routes/manager/auth/webauthn/webauthnAuthVerify.js +4 -4
  89. package/dist/esm/api/routes/manager/auth/webauthn/webauthnRegisterOptions.d.ts +2 -2
  90. package/dist/esm/api/routes/manager/auth/webauthn/webauthnRegisterOptions.js +3 -3
  91. package/dist/esm/api/routes/manager/auth/webauthn/webauthnRegisterVerify.d.ts +1 -1
  92. package/dist/esm/api/routes/manager/auth/webauthn/webauthnRegisterVerify.js +4 -4
  93. package/dist/esm/api/routes/manager/create.d.ts +2 -2
  94. package/dist/esm/api/routes/manager/create.js +8 -8
  95. package/dist/esm/api/routes/manager/delete.d.ts +2 -2
  96. package/dist/esm/api/routes/manager/delete.js +8 -8
  97. package/dist/esm/api/routes/manager/get.d.ts +2 -2
  98. package/dist/esm/api/routes/manager/get.js +6 -6
  99. package/dist/esm/api/routes/manager/list.d.ts +2 -2
  100. package/dist/esm/api/routes/manager/list.js +8 -8
  101. package/dist/esm/api/routes/manager/literals/list.d.ts +2 -2
  102. package/dist/esm/api/routes/manager/literals/list.js +5 -5
  103. package/dist/esm/api/routes/manager/literals/upsert.d.ts +2 -2
  104. package/dist/esm/api/routes/manager/literals/upsert.js +6 -6
  105. package/dist/esm/api/routes/manager/media/createFolder.d.ts +2 -2
  106. package/dist/esm/api/routes/manager/media/createFolder.js +7 -7
  107. package/dist/esm/api/routes/manager/media/finalizeUpload.d.ts +2 -2
  108. package/dist/esm/api/routes/manager/media/finalizeUpload.js +9 -9
  109. package/dist/esm/api/routes/manager/media/getMediaUrl.d.ts +2 -2
  110. package/dist/esm/api/routes/manager/media/getMediaUrl.js +3 -3
  111. package/dist/esm/api/routes/manager/media/listFolders.d.ts +2 -2
  112. package/dist/esm/api/routes/manager/media/listFolders.js +4 -4
  113. package/dist/esm/api/routes/manager/media/prepareUpload.d.ts +2 -2
  114. package/dist/esm/api/routes/manager/media/prepareUpload.js +4 -4
  115. package/dist/esm/api/routes/manager/media/uploadBinary.d.ts +1 -1
  116. package/dist/esm/api/routes/manager/media/uploadBinary.js +6 -6
  117. package/dist/esm/api/routes/manager/setDefaultLanguage.d.ts +2 -2
  118. package/dist/esm/api/routes/manager/setDefaultLanguage.js +4 -4
  119. package/dist/esm/api/routes/manager/update.d.ts +2 -2
  120. package/dist/esm/api/routes/manager/update.js +8 -8
  121. package/dist/esm/api/routes/web/page.d.ts +1 -1
  122. package/dist/esm/api/routes/web/page.js +13 -13
  123. package/dist/esm/api/sessionCookie.d.ts +1 -1
  124. package/dist/esm/api/utils/checkFailureCase.d.ts +1 -1
  125. package/dist/esm/api/utils/checkFailureCase.js +1 -1
  126. package/dist/esm/api/utils/checkOwnership.d.ts +2 -2
  127. package/dist/esm/api/utils/checkOwnership.js +3 -3
  128. package/dist/esm/api/utils/checkPermissions.d.ts +2 -2
  129. package/dist/esm/api/utils/checkPermissions.js +2 -2
  130. package/dist/esm/api/utils/getLanguages.d.ts +2 -6
  131. package/dist/esm/api/utils/getLanguages.d.ts.map +1 -1
  132. package/dist/esm/api/utils/getLanguages.js +2 -2
  133. package/dist/esm/api/utils/getLink.d.ts +2 -2
  134. package/dist/esm/api/utils/getLink.js +4 -4
  135. package/dist/esm/api/utils/getUser.d.ts +7 -3
  136. package/dist/esm/api/utils/getUser.d.ts.map +1 -1
  137. package/dist/esm/api/utils/getUser.js +4 -4
  138. package/dist/esm/api/utils/parseId.d.ts +1 -1
  139. package/dist/esm/api/utils/parseId.js +1 -1
  140. package/dist/esm/api/utils/passwords.js +1 -1
  141. package/dist/esm/api/utils/populates/populateLinks.d.ts +2 -2
  142. package/dist/esm/api/utils/populates/populateLinks.js +4 -4
  143. package/dist/esm/api/utils/populates/populateRelations.d.ts +2 -2
  144. package/dist/esm/api/utils/populates/populateRelations.js +6 -6
  145. package/dist/esm/api/utils/redirects/resolveRedirect.js +2 -2
  146. package/dist/esm/api/utils/routes/revalidatePath.js +5 -5
  147. package/dist/esm/api/utils/routes/routeDefinitions.d.ts +1 -1
  148. package/dist/esm/api/utils/routes/routeMapHelpers.d.ts +3 -3
  149. package/dist/esm/api/utils/routes/routeMapHelpers.js +6 -6
  150. package/dist/esm/api/utils/routes/syncConfiguredRoutes.d.ts +2 -2
  151. package/dist/esm/api/utils/routes/syncConfiguredRoutes.js +5 -5
  152. package/dist/esm/api/utils/routes/updateRoutesMap.d.ts +2 -2
  153. package/dist/esm/api/utils/routes/updateRoutesMap.js +4 -4
  154. package/dist/esm/api/utils/transformObjectIdsToStrings.js +1 -1
  155. package/dist/esm/api/utils/transformStringToObjectIds.js +1 -1
  156. package/dist/esm/api/utils/translate.d.ts +1 -1
  157. package/dist/esm/api/utils/translate.js +3 -3
  158. package/dist/esm/api/utils/validateModule.d.ts +1 -1
  159. package/dist/esm/api/utils/validateModule.js +2 -2
  160. package/dist/esm/bootstrapState.d.ts +11 -10
  161. package/dist/esm/bootstrapState.d.ts.map +1 -1
  162. package/dist/esm/bootstrapState.js.map +1 -1
  163. package/dist/esm/client.d.ts +34 -34
  164. package/dist/esm/client.d.ts.map +1 -1
  165. package/dist/esm/client.js +25 -25
  166. package/dist/esm/client.js.map +1 -1
  167. package/dist/esm/contracts.d.ts +26 -26
  168. package/dist/esm/contracts.js +26 -26
  169. package/dist/esm/index.d.ts +29 -43
  170. package/dist/esm/index.d.ts.map +1 -1
  171. package/dist/esm/index.js +25 -39
  172. package/dist/esm/index.js.map +1 -1
  173. package/dist/esm/internal-content-types/HelloWorld.d.ts +55 -3
  174. package/dist/esm/internal-content-types/HelloWorld.d.ts.map +1 -1
  175. package/dist/esm/internal-content-types/HelloWorld.js +2 -2
  176. package/dist/esm/internal-content-types/Language.d.ts +70 -6
  177. package/dist/esm/internal-content-types/Language.d.ts.map +1 -1
  178. package/dist/esm/internal-content-types/Language.js +2 -2
  179. package/dist/esm/internal-content-types/LiteralTranslation.d.ts +109 -5
  180. package/dist/esm/internal-content-types/LiteralTranslation.d.ts.map +1 -1
  181. package/dist/esm/internal-content-types/LiteralTranslation.js +2 -2
  182. package/dist/esm/internal-content-types/ManagerRole.d.ts +56 -4
  183. package/dist/esm/internal-content-types/ManagerRole.d.ts.map +1 -1
  184. package/dist/esm/internal-content-types/ManagerRole.js +3 -3
  185. package/dist/esm/internal-content-types/ManagerUser.d.ts +350 -21
  186. package/dist/esm/internal-content-types/ManagerUser.d.ts.map +1 -1
  187. package/dist/esm/internal-content-types/ManagerUser.js +3 -3
  188. package/dist/esm/internal-content-types/Media.d.ts +472 -55
  189. package/dist/esm/internal-content-types/Media.d.ts.map +1 -1
  190. package/dist/esm/internal-content-types/Media.js +3 -3
  191. package/dist/esm/internal-content-types/MediaFolder.d.ts +163 -7
  192. package/dist/esm/internal-content-types/MediaFolder.d.ts.map +1 -1
  193. package/dist/esm/internal-content-types/MediaFolder.js +2 -2
  194. package/dist/esm/internal-content-types/MfaChallenge.d.ts +963 -55
  195. package/dist/esm/internal-content-types/MfaChallenge.d.ts.map +1 -1
  196. package/dist/esm/internal-content-types/MfaChallenge.js +3 -3
  197. package/dist/esm/internal-content-types/Page.d.ts +243 -27
  198. package/dist/esm/internal-content-types/Page.d.ts.map +1 -1
  199. package/dist/esm/internal-content-types/Page.js +3 -3
  200. package/dist/esm/internal-content-types/Redirect.d.ts +272 -14
  201. package/dist/esm/internal-content-types/Redirect.d.ts.map +1 -1
  202. package/dist/esm/internal-content-types/Redirect.js +2 -2
  203. package/dist/esm/internal-content-types/Route.d.ts +282 -11
  204. package/dist/esm/internal-content-types/Route.d.ts.map +1 -1
  205. package/dist/esm/internal-content-types/Route.js +2 -2
  206. package/dist/esm/internal-content-types/RouteLayoutModule.d.ts +308 -9
  207. package/dist/esm/internal-content-types/RouteLayoutModule.d.ts.map +1 -1
  208. package/dist/esm/internal-content-types/RouteLayoutModule.js +2 -2
  209. package/dist/esm/internal-content-types/RouteLayoutModuleOverride.d.ts +268 -8
  210. package/dist/esm/internal-content-types/RouteLayoutModuleOverride.d.ts.map +1 -1
  211. package/dist/esm/internal-content-types/RouteLayoutModuleOverride.js +2 -2
  212. package/dist/esm/internal-content-types/RouteMap.d.ts +267 -7
  213. package/dist/esm/internal-content-types/RouteMap.d.ts.map +1 -1
  214. package/dist/esm/internal-content-types/RouteMap.js +2 -2
  215. package/dist/esm/internal-content-types/RouteSettings.d.ts +299 -79
  216. package/dist/esm/internal-content-types/RouteSettings.d.ts.map +1 -1
  217. package/dist/esm/internal-content-types/RouteSettings.js +3 -3
  218. package/dist/esm/internal-content-types/Seo.d.ts +56 -4
  219. package/dist/esm/internal-content-types/Seo.d.ts.map +1 -1
  220. package/dist/esm/internal-content-types/Seo.js +2 -2
  221. package/dist/esm/internal-content-types/Session.d.ts +894 -51
  222. package/dist/esm/internal-content-types/Session.d.ts.map +1 -1
  223. package/dist/esm/internal-content-types/Session.js +3 -3
  224. package/dist/esm/internal-content-types/UserMfa.d.ts +831 -54
  225. package/dist/esm/internal-content-types/UserMfa.d.ts.map +1 -1
  226. package/dist/esm/internal-content-types/UserMfa.js +3 -3
  227. package/dist/esm/internal-content-types/WebAuthnCredential.d.ts +1066 -54
  228. package/dist/esm/internal-content-types/WebAuthnCredential.d.ts.map +1 -1
  229. package/dist/esm/internal-content-types/WebAuthnCredential.js +3 -3
  230. package/dist/esm/internal-content-types/WebAuthnRegChallenge.d.ts +948 -53
  231. package/dist/esm/internal-content-types/WebAuthnRegChallenge.d.ts.map +1 -1
  232. package/dist/esm/internal-content-types/WebAuthnRegChallenge.js +3 -3
  233. package/dist/esm/internal-content-types/index.d.ts +20 -20
  234. package/dist/esm/internal-content-types/index.js +20 -20
  235. package/dist/esm/lib/ContentType.d.ts +87 -49
  236. package/dist/esm/lib/ContentType.d.ts.map +1 -1
  237. package/dist/esm/lib/ContentType.js +94 -65
  238. package/dist/esm/lib/ContentType.js.map +1 -1
  239. package/dist/esm/lib/Logger.d.ts.map +1 -1
  240. package/dist/esm/lib/Logger.js +56 -0
  241. package/dist/esm/lib/Logger.js.map +1 -1
  242. package/dist/esm/lib/Permissions.d.ts +1 -1
  243. package/dist/esm/lib/Registry.d.ts +29 -7
  244. package/dist/esm/lib/Registry.d.ts.map +1 -1
  245. package/dist/esm/lib/Registry.js +35 -22
  246. package/dist/esm/lib/Registry.js.map +1 -1
  247. package/dist/esm/lib/errors/AppError.d.ts +1 -1
  248. package/dist/esm/lib/errors/AppError.js +1 -1
  249. package/dist/esm/lib/errors/index.d.ts +4 -4
  250. package/dist/esm/lib/errors/index.js +3 -3
  251. package/dist/esm/lib/errors/throwAppError.d.ts +1 -1
  252. package/dist/esm/lib/errors/throwAppError.js +3 -3
  253. package/dist/esm/lib/fields/Boolean.d.ts +8 -10
  254. package/dist/esm/lib/fields/Boolean.d.ts.map +1 -1
  255. package/dist/esm/lib/fields/Boolean.js +14 -8
  256. package/dist/esm/lib/fields/Boolean.js.map +1 -1
  257. package/dist/esm/lib/fields/ContentReference.d.ts +15 -15
  258. package/dist/esm/lib/fields/ContentReference.d.ts.map +1 -1
  259. package/dist/esm/lib/fields/ContentReference.js +30 -17
  260. package/dist/esm/lib/fields/ContentReference.js.map +1 -1
  261. package/dist/esm/lib/fields/Date.d.ts +14 -17
  262. package/dist/esm/lib/fields/Date.d.ts.map +1 -1
  263. package/dist/esm/lib/fields/Date.js +25 -21
  264. package/dist/esm/lib/fields/Date.js.map +1 -1
  265. package/dist/esm/lib/fields/Field.d.ts +122 -59
  266. package/dist/esm/lib/fields/Field.d.ts.map +1 -1
  267. package/dist/esm/lib/fields/Field.js +70 -55
  268. package/dist/esm/lib/fields/Field.js.map +1 -1
  269. package/dist/esm/lib/fields/Fields.d.ts +29 -0
  270. package/dist/esm/lib/fields/Fields.d.ts.map +1 -0
  271. package/dist/esm/lib/fields/Fields.js +29 -0
  272. package/dist/esm/lib/fields/Fields.js.map +1 -0
  273. package/dist/esm/lib/fields/File.d.ts +26 -51
  274. package/dist/esm/lib/fields/File.d.ts.map +1 -1
  275. package/dist/esm/lib/fields/File.js +60 -85
  276. package/dist/esm/lib/fields/File.js.map +1 -1
  277. package/dist/esm/lib/fields/Iterator.d.ts +13 -25
  278. package/dist/esm/lib/fields/Iterator.d.ts.map +1 -1
  279. package/dist/esm/lib/fields/Iterator.js +9 -10
  280. package/dist/esm/lib/fields/Iterator.js.map +1 -1
  281. package/dist/esm/lib/fields/Link.d.ts +13 -15
  282. package/dist/esm/lib/fields/Link.d.ts.map +1 -1
  283. package/dist/esm/lib/fields/Link.js +21 -15
  284. package/dist/esm/lib/fields/Link.js.map +1 -1
  285. package/dist/esm/lib/fields/List.d.ts +34 -34
  286. package/dist/esm/lib/fields/List.d.ts.map +1 -1
  287. package/dist/esm/lib/fields/List.js +46 -15
  288. package/dist/esm/lib/fields/List.js.map +1 -1
  289. package/dist/esm/lib/fields/Number.d.ts +12 -12
  290. package/dist/esm/lib/fields/Number.d.ts.map +1 -1
  291. package/dist/esm/lib/fields/Number.js +35 -16
  292. package/dist/esm/lib/fields/Number.js.map +1 -1
  293. package/dist/esm/lib/fields/Relation.d.ts +45 -39
  294. package/dist/esm/lib/fields/Relation.d.ts.map +1 -1
  295. package/dist/esm/lib/fields/Relation.js +75 -67
  296. package/dist/esm/lib/fields/Relation.js.map +1 -1
  297. package/dist/esm/lib/fields/Select.d.ts +14 -13
  298. package/dist/esm/lib/fields/Select.d.ts.map +1 -1
  299. package/dist/esm/lib/fields/Select.js +28 -16
  300. package/dist/esm/lib/fields/Select.js.map +1 -1
  301. package/dist/esm/lib/fields/SelfRelation.d.ts +19 -18
  302. package/dist/esm/lib/fields/SelfRelation.d.ts.map +1 -1
  303. package/dist/esm/lib/fields/SelfRelation.js +31 -21
  304. package/dist/esm/lib/fields/SelfRelation.js.map +1 -1
  305. package/dist/esm/lib/fields/SimpleList.d.ts +16 -20
  306. package/dist/esm/lib/fields/SimpleList.d.ts.map +1 -1
  307. package/dist/esm/lib/fields/SimpleList.js +38 -20
  308. package/dist/esm/lib/fields/SimpleList.js.map +1 -1
  309. package/dist/esm/lib/fields/String.d.ts +18 -25
  310. package/dist/esm/lib/fields/String.d.ts.map +1 -1
  311. package/dist/esm/lib/fields/String.js +55 -41
  312. package/dist/esm/lib/fields/String.js.map +1 -1
  313. package/dist/esm/lib/fields/index.d.ts +15 -83
  314. package/dist/esm/lib/fields/index.d.ts.map +1 -1
  315. package/dist/esm/lib/fields/index.js +15 -36
  316. package/dist/esm/lib/fields/index.js.map +1 -1
  317. package/dist/esm/lib/types/index.d.ts +8 -4
  318. package/dist/esm/lib/types/index.d.ts.map +1 -1
  319. package/dist/esm/lib/utils/getListField.d.ts +1 -1
  320. package/dist/esm/lib/utils/getSchemas.d.ts +1 -1
  321. package/dist/esm/lib/utils/getTranslation.d.ts +2 -2
  322. package/dist/esm/lib/utils/getTranslation.js +1 -1
  323. package/dist/esm/lib/utils/isTranslatableObject.d.ts +1 -1
  324. package/dist/esm/lib/utils/translateObject.d.ts +2 -2
  325. package/dist/esm/lib/utils/translateObject.js +3 -3
  326. package/dist/esm/literals/definitions.d.ts +1 -1
  327. package/dist/esm/literals/definitions.js +1 -1
  328. package/dist/esm/literals/index.d.ts +3 -3
  329. package/dist/esm/literals/index.js +3 -3
  330. package/dist/esm/literals/manager.d.ts +1 -1
  331. package/dist/esm/literals/manager.js +1 -1
  332. package/dist/esm/manager.d.ts +152 -148
  333. package/dist/esm/manager.d.ts.map +1 -1
  334. package/dist/esm/manager.js +2 -2
  335. package/dist/esm/media/imageOptimization.d.ts +1 -1
  336. package/dist/esm/media/imageOptimization.js +2 -2
  337. package/dist/esm/media/index.d.ts +4 -4
  338. package/dist/esm/media/index.js +3 -3
  339. package/dist/esm/media/mediaService.d.ts +1 -1
  340. package/dist/esm/orm/createIndexes.js +1 -1
  341. package/dist/esm/orm/database.js +3 -3
  342. package/dist/esm/orm/dbService.d.ts +3 -3
  343. package/dist/esm/orm/index.d.ts +2 -2
  344. package/dist/esm/orm/index.js +12 -12
  345. package/dist/esm/orm/mongodbPeer.js +1 -1
  346. package/dist/esm/orm/operations/clear.d.ts +1 -1
  347. package/dist/esm/orm/operations/clear.js +1 -1
  348. package/dist/esm/orm/operations/create.d.ts +2 -2
  349. package/dist/esm/orm/operations/create.js +4 -4
  350. package/dist/esm/orm/operations/delete.d.ts +2 -2
  351. package/dist/esm/orm/operations/delete.js +2 -2
  352. package/dist/esm/orm/operations/find.d.ts +2 -2
  353. package/dist/esm/orm/operations/find.js +3 -3
  354. package/dist/esm/orm/operations/findDependencies.d.ts +2 -2
  355. package/dist/esm/orm/operations/findDependencies.d.ts.map +1 -1
  356. package/dist/esm/orm/operations/findDependencies.js +8 -6
  357. package/dist/esm/orm/operations/findDependencies.js.map +1 -1
  358. package/dist/esm/orm/operations/get.d.ts +3 -3
  359. package/dist/esm/orm/operations/get.js +3 -3
  360. package/dist/esm/orm/operations/getAll.d.ts +2 -2
  361. package/dist/esm/orm/operations/getAll.js +2 -2
  362. package/dist/esm/orm/operations/list.d.ts +2 -2
  363. package/dist/esm/orm/operations/list.js +3 -3
  364. package/dist/esm/orm/operations/update.d.ts +3 -3
  365. package/dist/esm/orm/operations/update.js +5 -5
  366. package/dist/esm/orm/operations/updateMany.d.ts +2 -2
  367. package/dist/esm/orm/operations/updateMany.js +3 -3
  368. package/dist/esm/orm/operations/upsert.d.ts +2 -2
  369. package/dist/esm/orm/operations/upsert.js +4 -4
  370. package/dist/esm/orm/utils/deepDeleteNulls.js +1 -1
  371. package/dist/esm/orm/utils/parseId.d.ts +2 -2
  372. package/dist/esm/orm/utils/parseId.d.ts.map +1 -1
  373. package/dist/esm/orm/utils/parseId.js +1 -1
  374. package/dist/esm/orm/utils/transformObjectIdsToStrings.js +1 -1
  375. package/dist/esm/orm/utils/transformStringToObjectIds.js +1 -1
  376. package/dist/esm/schemas/manager/literals/upsert.js +1 -1
  377. package/dist/esm/schemas/manager/media/finalizeUpload.js +1 -1
  378. package/dist/esm/schemas/manager/media/getMediaUrl.js +1 -1
  379. package/dist/esm/schemas/manager/media/listFolders.js +1 -1
  380. package/dist/esm/schemas/web/page.d.ts +66 -18
  381. package/dist/esm/schemas/web/page.d.ts.map +1 -1
  382. package/dist/esm/schemas/web/page.js +1 -1
  383. package/dist/esm/web/index.d.ts +1 -1
  384. package/dist/esm/web/index.js +1 -1
  385. package/dist/esm/web/page.d.ts +1 -1
  386. package/dist/tsconfig.build.tsbuildinfo +1 -1
  387. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"file":"WebAuthnRegChallenge.d.ts","sourceRoot":"","sources":["../../../src/internal-content-types/WebAuthnRegChallenge.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAUb,CAAC;AAErB,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC;AAC/D,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"WebAuthnRegChallenge.d.ts","sourceRoot":"","sources":["../../../src/internal-content-types/WebAuthnRegChallenge.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxC,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAUb,CAAC;AAErB,MAAM,MAAM,oBAAoB,GAAG,OAAO,oBAAoB,CAAC;AAC/D,MAAM,MAAM,2BAA2B,GAAG,QAAQ,CAAC,oBAAoB,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
- import ContentType from "../lib/ContentType.js";
2
- import { Fields } from "../lib/fields/index.js";
3
- import { ManagerUser } from "./ManagerUser.js";
1
+ import ContentType from "../lib/ContentType";
2
+ import { Fields } from "../lib/fields";
3
+ import { ManagerUser } from "./ManagerUser";
4
4
  export const WebAuthnRegChallenge = new ContentType({
5
5
  name: "WebAuthnRegChallenge",
6
6
  fields: {
@@ -1,21 +1,21 @@
1
- export * from "./Language.js";
2
- export * from "./LiteralTranslation.js";
3
- export * from "./ManagerRole.js";
4
- export * from "./ManagerUser.js";
5
- export * from "./Media.js";
6
- export * from "./MediaFolder.js";
7
- export * from "./MfaChallenge.js";
8
- export * from "./Route.js";
9
- export * from "./RouteLayoutModule.js";
10
- export * from "./RouteLayoutModuleOverride.js";
11
- export * from "./RouteMap.js";
12
- export * from "./RouteSettings.js";
13
- export * from "./Seo.js";
14
- export * from "./Session.js";
15
- export * from "./UserMfa.js";
16
- export * from "./WebAuthnCredential.js";
17
- export * from "./WebAuthnRegChallenge.js";
18
- export * from "./Redirect.js";
19
- export * from "./Page.js";
20
- export * from "./HelloWorld.js";
1
+ export * from "./Language";
2
+ export * from "./LiteralTranslation";
3
+ export * from "./ManagerRole";
4
+ export * from "./ManagerUser";
5
+ export * from "./Media";
6
+ export * from "./MediaFolder";
7
+ export * from "./MfaChallenge";
8
+ export * from "./Route";
9
+ export * from "./RouteLayoutModule";
10
+ export * from "./RouteLayoutModuleOverride";
11
+ export * from "./RouteMap";
12
+ export * from "./RouteSettings";
13
+ export * from "./Seo";
14
+ export * from "./Session";
15
+ export * from "./UserMfa";
16
+ export * from "./WebAuthnCredential";
17
+ export * from "./WebAuthnRegChallenge";
18
+ export * from "./Redirect";
19
+ export * from "./Page";
20
+ export * from "./HelloWorld";
21
21
  //# sourceMappingURL=index.d.ts.map
@@ -1,21 +1,21 @@
1
- export * from "./Language.js";
2
- export * from "./LiteralTranslation.js";
3
- export * from "./ManagerRole.js";
4
- export * from "./ManagerUser.js";
5
- export * from "./Media.js";
6
- export * from "./MediaFolder.js";
7
- export * from "./MfaChallenge.js";
8
- export * from "./Route.js";
9
- export * from "./RouteLayoutModule.js";
10
- export * from "./RouteLayoutModuleOverride.js";
11
- export * from "./RouteMap.js";
12
- export * from "./RouteSettings.js";
13
- export * from "./Seo.js";
14
- export * from "./Session.js";
15
- export * from "./UserMfa.js";
16
- export * from "./WebAuthnCredential.js";
17
- export * from "./WebAuthnRegChallenge.js";
18
- export * from "./Redirect.js";
19
- export * from "./Page.js";
20
- export * from "./HelloWorld.js";
1
+ export * from "./Language";
2
+ export * from "./LiteralTranslation";
3
+ export * from "./ManagerRole";
4
+ export * from "./ManagerUser";
5
+ export * from "./Media";
6
+ export * from "./MediaFolder";
7
+ export * from "./MfaChallenge";
8
+ export * from "./Route";
9
+ export * from "./RouteLayoutModule";
10
+ export * from "./RouteLayoutModuleOverride";
11
+ export * from "./RouteMap";
12
+ export * from "./RouteSettings";
13
+ export * from "./Seo";
14
+ export * from "./Session";
15
+ export * from "./UserMfa";
16
+ export * from "./WebAuthnCredential";
17
+ export * from "./WebAuthnRegChallenge";
18
+ export * from "./Redirect";
19
+ export * from "./Page";
20
+ export * from "./HelloWorld";
21
21
  //# sourceMappingURL=index.js.map
@@ -1,20 +1,79 @@
1
- import { z } from "zod";
2
- import type { EncodedFieldUnknown, Field } from "./fields/Field.js";
3
- import { DataPopulated, NestedPaths } from "./types/index.js";
4
- import { IteratorField } from "./fields/Iterator.js";
1
+ import z from "zod";
2
+ import type { AnyField, EncodedFieldUnknown, InferDb, InferInput, InferOutput, InferPopulated } from "./fields/Field";
5
3
  export declare const Menu: z.ZodOptional<z.ZodObject<{
6
4
  title: z.ZodString;
7
5
  icon: z.ZodOptional<z.ZodString>;
8
6
  category: z.ZodOptional<z.ZodString>;
9
7
  }, z.core.$strip>>;
10
8
  export type Menu = z.infer<typeof Menu>;
11
- type ApiOnlyFields<F extends Record<string, Field<any, any, any, any, any, any>>> = {
9
+ type Primitive = string | number | boolean | bigint | symbol | null | undefined | Date | Function;
10
+ type IsPlainObject<T> = T extends Primitive ? false : T extends readonly unknown[] ? false : T extends Record<string, unknown> ? true : false;
11
+ export type NestedPaths<T, Seen = never> = T extends Seen ? never : {
12
+ [K in Extract<keyof T, string>]: IsPlainObject<NonNullable<T[K]>> extends true ? `${K}` | `${K}.${NestedPaths<NonNullable<T[K]>, Seen | T>}` : `${K}`;
13
+ }[Extract<keyof T, string>];
14
+ type Simplify<T> = {
15
+ [K in keyof T as T[K] extends undefined ? never : undefined extends T[K] ? never : K]: T[K];
16
+ } & {
17
+ [K in keyof T as T[K] extends undefined ? never : undefined extends T[K] ? K : never]?: Exclude<T[K], undefined>;
18
+ } extends infer O ? {
19
+ [K in keyof O]: O[K];
20
+ } : never;
21
+ type FieldRecord = Record<string, AnyField>;
22
+ type InputFields<F extends FieldRecord> = Simplify<{
23
+ [K in keyof F]: InferInput<F[K]>;
24
+ }>;
25
+ type DbFields<F extends FieldRecord> = Simplify<{
26
+ [K in keyof F]: InferDb<F[K]>;
27
+ }>;
28
+ type OutputFields<F extends FieldRecord> = Simplify<{
29
+ [K in keyof F]: InferOutput<F[K]>;
30
+ }>;
31
+ type PopulatedFields<F extends FieldRecord> = Simplify<{
32
+ [K in keyof F]: InferPopulated<F[K]>;
33
+ }>;
34
+ type ApiOnlyFields<F extends FieldRecord> = {
12
35
  [K in keyof F]: ReturnType<F[K]["apiOnly"]>;
13
36
  };
14
- type ManagerOnlyFields<F extends Record<string, Field<any, any, any, any, any, any>>> = {
37
+ type ManagerOnlyFields<F extends FieldRecord> = {
15
38
  [K in keyof F]: ReturnType<F[K]["managerOnly"]>;
16
39
  };
17
- export default class ContentType<F extends Record<string, Field<any, any, any, any, any, any>> = Record<string, Field<any, any, any, any, any, any>>, N extends string = string> {
40
+ type NonIteratorFields<F extends FieldRecord> = {
41
+ [K in keyof F as F[K]["meta"] extends {
42
+ ui: "Iterator";
43
+ } ? never : K]: F[K];
44
+ };
45
+ type ContentTypeInputShape<F extends FieldRecord, N extends string> = Simplify<InputFields<F> & {
46
+ _type: N;
47
+ createdBy?: string;
48
+ updatedBy?: string;
49
+ }>;
50
+ type ContentTypeDbShape<F extends FieldRecord, N extends string> = Simplify<DbFields<F> & {
51
+ _id: string;
52
+ _type: N;
53
+ createdAt?: Date;
54
+ updatedAt?: Date;
55
+ createdBy?: string;
56
+ updatedBy?: string;
57
+ }>;
58
+ type ContentTypeOutputShape<F extends FieldRecord, N extends string> = Simplify<OutputFields<F> & {
59
+ _type: N;
60
+ _id: string;
61
+ createdAt?: Date;
62
+ updatedAt?: Date;
63
+ }>;
64
+ type ContentTypePopulatedShape<F extends FieldRecord, N extends string> = Simplify<PopulatedFields<F> & {
65
+ _type: N;
66
+ _id: string;
67
+ createdAt?: Date;
68
+ updatedAt?: Date;
69
+ createdBy?: string;
70
+ updatedBy?: string;
71
+ }>;
72
+ export type ContentTypeInput<CT> = CT extends ContentType<infer F, infer N> ? ContentTypeInputShape<F, N> : never;
73
+ export type ContentTypeDb<CT> = CT extends ContentType<infer F, infer N> ? ContentTypeDbShape<F, N> : never;
74
+ export type ContentTypeOutput<CT> = CT extends ContentType<infer F, infer N> ? ContentTypeOutputShape<F, N> : never;
75
+ export type ContentTypePopulated<CT> = CT extends ContentType<infer F, infer N> ? ContentTypePopulatedShape<F, N> : never;
76
+ export default class ContentType<F extends FieldRecord = FieldRecord, N extends string = string> {
18
77
  name: N;
19
78
  fields: F;
20
79
  menu?: Menu;
@@ -27,52 +86,31 @@ export default class ContentType<F extends Record<string, Field<any, any, any, a
27
86
  fields: F;
28
87
  menu?: Menu;
29
88
  uniques?: Array<Array<keyof F>>;
30
- listFields?: NestedPaths<DataPopulated<ContentType<F, N>>>[];
89
+ listFields?: NestedPaths<ContentTypePopulatedShape<F, N>>[];
31
90
  });
32
- setSelfRelateds(): void;
33
- getInputSchema(): z.ZodObject<{ [K in keyof F]: ReturnType<F[K]["getInputSchema"]>; } & {
34
- _type: z.ZodLiteral<N>;
35
- createdBy: z.ZodOptional<z.ZodString>;
36
- updatedBy: z.ZodOptional<z.ZodString>;
37
- } extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, z.core.$strip>;
38
- getSchema(): z.ZodObject<{ [K in keyof F]: ReturnType<F[K]["getSchema"]>; } & {
39
- _type: z.ZodLiteral<N>;
40
- } extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, z.core.$strip>;
41
- getPopulatedSchema(): z.ZodObject<{ [K in keyof F]: F[K] extends {
42
- getPopulatedSchema: () => z.ZodTypeAny;
43
- } ? ReturnType<F[K]["getPopulatedSchema"]> : ReturnType<F[K]["getSchema"]>; } & {
44
- _type: z.ZodLiteral<N>;
45
- _id: z.ZodString;
46
- createdBy: z.ZodOptional<z.ZodString>;
47
- updatedBy: z.ZodOptional<z.ZodString>;
48
- } extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, z.core.$strip>;
49
- getOutputSchema(): z.ZodObject<{ [K in keyof F]: ReturnType<F[K]["getOutputSchema"]>; } & {
50
- _type: z.ZodLiteral<N>;
51
- _id: z.ZodString;
52
- } extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, z.core.$strip>;
53
- getOutputSchemaWithoutIterators(): z.ZodObject<{ [K in keyof F]: F[K] extends IteratorField<any, any, any, any, any, any> ? never : ReturnType<F[K]["getOutputSchema"]>; } & {
54
- _type: z.ZodLiteral<N>;
55
- _id: z.ZodString;
56
- } extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, z.core.$strip>;
57
- validate(data: unknown): z.core.$InferObjectOutput<{ [K in keyof F]: ReturnType<F[K]["getInputSchema"]>; } & {
58
- _type: z.ZodLiteral<N>;
59
- createdBy: z.ZodOptional<z.ZodString>;
60
- updatedBy: z.ZodOptional<z.ZodString>;
61
- } extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, {}>;
62
- partialValidate(data: unknown): z.core.$InferObjectOutput<({ [K in keyof F]: ReturnType<F[K]["getInputSchema"]>; } & {
63
- _type: z.ZodLiteral<N>;
64
- createdBy: z.ZodOptional<z.ZodString>;
65
- updatedBy: z.ZodOptional<z.ZodString>;
66
- } extends infer T_1 ? { -readonly [P in keyof T_1]: T_1[P]; } : never) extends infer T extends Readonly<{
67
- [k: string]: z.core.$ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>;
68
- }> ? { [k in keyof T]: z.ZodOptional<T[k]>; } : never, {}>;
69
- validateOutput(data: unknown): z.core.$InferObjectOutput<{ [K in keyof F]: ReturnType<F[K]["getOutputSchema"]>; } & {
70
- _type: z.ZodLiteral<N>;
71
- _id: z.ZodString;
72
- } extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, {}>;
91
+ getInputSchema(): z.ZodType<ContentTypeInputShape<F, N>, ContentTypeInputShape<F, N>>;
92
+ getSchema(): z.ZodType<ContentTypeDbShape<F, N>, ContentTypeDbShape<F, N>>;
93
+ getPopulatedSchema(): z.ZodType<ContentTypePopulatedShape<F, N>, ContentTypePopulatedShape<F, N>>;
94
+ getOutputSchema(): z.ZodType<ContentTypeOutputShape<F, N>, ContentTypeOutputShape<F, N>>;
95
+ getOutputSchemaWithoutIterators(): z.ZodType<ContentTypeOutputShape<NonIteratorFields<F>, N>, ContentTypeOutputShape<NonIteratorFields<F>, N>>;
96
+ validate(data: unknown): Simplify<Simplify<{ [K in keyof F]: InferInput<F[K]>; }> & {
97
+ _type: N;
98
+ createdBy?: string;
99
+ updatedBy?: string;
100
+ }>;
101
+ partialValidate(data: unknown): Record<string, any>;
102
+ validateOutput(data: unknown): Simplify<Simplify<{ [K in keyof F]: InferOutput<F[K]>; }> & {
103
+ _type: N;
104
+ _id: string;
105
+ createdAt?: Date;
106
+ updatedAt?: Date;
107
+ }>;
73
108
  hideFromManager(): this;
74
109
  apiOnly(): ContentType<ApiOnlyFields<F>, N>;
75
110
  managerOnly(): ContentType<ManagerOnlyFields<F>, N>;
111
+ private fieldSchemas;
112
+ private outputFieldSchemas;
113
+ private bindSelfRelations;
76
114
  }
77
115
  export declare const EncodedContentTypeSchema: z.ZodObject<{
78
116
  name: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"ContentType.d.ts","sourceRoot":"","sources":["../../../src/lib/ContentType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContentType.d.ts","sourceRoot":"","sources":["../../../src/lib/ContentType.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,5 @@
1
- import { z } from "zod";
2
- import { SelfRelationField } from "./fields/SelfRelation.js";
3
- import { RelationField } from "./fields/Relation.js";
4
- import { isNeverOptional } from "./utils/isNeverOptional.js";
5
- import { IteratorField } from "./fields/Iterator.js";
1
+ import z from "zod";
2
+ import { isNeverOptional } from "./utils/isNeverOptional";
6
3
  export const Menu = z
7
4
  .object({
8
5
  title: z.string(),
@@ -14,80 +11,55 @@ export default class ContentType {
14
11
  constructor(params) {
15
12
  this.uniques = [];
16
13
  this.name = params.name;
17
- this.fields = params.fields;
14
+ this.fields = this.bindSelfRelations(params.fields);
18
15
  this.menu = params.menu;
19
16
  this.listFields = params.listFields;
20
17
  this.uniques = params.uniques || [];
21
- this.setSelfRelateds();
22
- }
23
- setSelfRelateds() {
24
- Object.values(this.fields).forEach((field) => {
25
- if (field instanceof SelfRelationField) {
26
- field.setContentType(this);
27
- }
28
- if (field instanceof RelationField) {
29
- field.setSelfRelateds();
30
- }
31
- });
32
18
  }
33
19
  getInputSchema() {
34
- return z.object(Object.fromEntries([
35
- ...Object.entries(this.fields).map(([key, field]) => [
36
- key,
37
- field.getInputSchema(),
38
- ]),
39
- ["_type", z.literal(this.name)],
40
- ["createdBy", z.string().optional()],
41
- ["updatedBy", z.string().optional()],
42
- ]));
20
+ return z.object({
21
+ ...this.fieldSchemas("input"),
22
+ _type: z.literal(this.name),
23
+ createdBy: z.string().optional(),
24
+ updatedBy: z.string().optional(),
25
+ });
43
26
  }
44
27
  getSchema() {
45
- return z.object(Object.fromEntries([
46
- ...Object.entries(this.fields).map(([key, field]) => [
47
- key,
48
- field.getSchema(),
49
- ]),
50
- ["_type", z.literal(this.name)],
51
- ]));
28
+ return z.object({
29
+ ...this.fieldSchemas("db"),
30
+ _type: z.literal(this.name),
31
+ });
52
32
  }
53
33
  getPopulatedSchema() {
54
- return z.object(Object.fromEntries([
55
- ...Object.entries(this.fields).map(([key, field]) => [
56
- key,
57
- field instanceof RelationField
58
- ? field.getPopulatedSchema()
59
- : field.getSchema(),
60
- ]),
61
- ["_type", z.literal(this.name)],
62
- ["_id", z.string()],
63
- ["createdBy", z.string().optional()],
64
- ["updatedBy", z.string().optional()],
65
- ]));
34
+ return z.object({
35
+ ...this.fieldSchemas("populated"),
36
+ _type: z.literal(this.name),
37
+ _id: z.string(),
38
+ createdBy: z.string().optional(),
39
+ updatedBy: z.string().optional(),
40
+ });
66
41
  }
67
42
  getOutputSchema() {
68
- return z.object(Object.fromEntries([
69
- ...Object.entries(this.fields)
70
- .map(([key, field]) => [key, field.getOutputSchema()])
71
- .filter(([, schema]) => !isNeverOptional(schema)),
72
- ["_type", z.literal(this.name)],
73
- ["_id", z.string()],
74
- ]));
43
+ return z.object({
44
+ ...this.outputFieldSchemas(this.fields),
45
+ _type: z.literal(this.name),
46
+ _id: z.string(),
47
+ });
75
48
  }
76
49
  getOutputSchemaWithoutIterators() {
77
- return z.object(Object.fromEntries([
78
- ...Object.entries(this.fields)
79
- .filter(([, field]) => !(field instanceof IteratorField))
80
- .map(([key, field]) => [key, field.getOutputSchema()])
81
- .filter(([, schema]) => !isNeverOptional(schema)),
82
- ["_type", z.literal(this.name)],
83
- ["_id", z.string()],
84
- ]));
50
+ return z.object({
51
+ ...this.outputFieldSchemas(Object.fromEntries(Object.entries(this.fields).filter(([, field]) => field.meta.ui !== "Iterator"))),
52
+ _type: z.literal(this.name),
53
+ _id: z.string(),
54
+ });
85
55
  }
86
56
  validate(data) {
87
57
  return this.getInputSchema().parse(data);
88
58
  }
89
59
  partialValidate(data) {
90
- return this.getInputSchema().partial().parse(data);
60
+ return this.getInputSchema()
61
+ .partial()
62
+ .parse(data);
91
63
  }
92
64
  validateOutput(data) {
93
65
  return this.getOutputSchema().parse(data);
@@ -97,13 +69,70 @@ export default class ContentType {
97
69
  return this;
98
70
  }
99
71
  apiOnly() {
100
- Object.values(this.fields).forEach((field) => field.apiOnly());
101
- return this;
72
+ const fields = mapFields(this.fields, (field) => field.apiOnly());
73
+ const contentType = new ContentType({
74
+ name: this.name,
75
+ fields,
76
+ menu: this.menu,
77
+ uniques: this.uniques,
78
+ listFields: this.listFields,
79
+ });
80
+ contentType.isHiddenFromManager = this.isHiddenFromManager;
81
+ contentType.collapseFields = this.collapseFields;
82
+ return contentType;
102
83
  }
103
84
  managerOnly() {
104
- Object.values(this.fields).forEach((field) => field.managerOnly());
105
- return this;
85
+ const fields = mapFields(this.fields, (field) => field.managerOnly());
86
+ const contentType = new ContentType({
87
+ name: this.name,
88
+ fields,
89
+ menu: this.menu,
90
+ uniques: this.uniques,
91
+ listFields: this.listFields,
92
+ });
93
+ contentType.isHiddenFromManager = this.isHiddenFromManager;
94
+ contentType.collapseFields = this.collapseFields;
95
+ return contentType;
96
+ }
97
+ fieldSchemas(mode) {
98
+ return Object.fromEntries(Object.entries(this.fields).map(([key, field]) => [
99
+ key,
100
+ getFieldSchema(field, mode),
101
+ ]));
106
102
  }
103
+ outputFieldSchemas(fields) {
104
+ return Object.fromEntries(Object.entries(fields)
105
+ .map(([key, field]) => [key, field.getOutputSchema()])
106
+ .filter(([, schema]) => !isNeverOptional(schema)));
107
+ }
108
+ bindSelfRelations(fields) {
109
+ return mapFields(fields, (field) => {
110
+ if (field.meta.ui === "SelfRelation" &&
111
+ "setContentType" in field &&
112
+ typeof field.setContentType === "function") {
113
+ return field.setContentType(this);
114
+ }
115
+ return field;
116
+ });
117
+ }
118
+ }
119
+ function getFieldSchema(field, mode) {
120
+ if (mode === "input")
121
+ return field.getInputSchema();
122
+ if (mode === "db")
123
+ return field.getSchema();
124
+ if (mode === "output")
125
+ return field.getOutputSchema();
126
+ return "getPopulatedSchema" in field &&
127
+ typeof field.getPopulatedSchema === "function"
128
+ ? field.getPopulatedSchema()
129
+ : field.getSchema();
130
+ }
131
+ function mapFields(fields, map) {
132
+ return Object.fromEntries(Object.entries(fields).map(([key, field]) => [
133
+ key,
134
+ map(field, key),
135
+ ]));
107
136
  }
108
137
  export const EncodedContentTypeSchema = z.object({
109
138
  name: z.string(),
@@ -1 +1 @@
1
- {"version":3,"file":"ContentType.js","sourceRoot":"","sources":["../../../src/lib/ContentType.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContentType.js","sourceRoot":"","sources":["../../../src/lib/ContentType.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AAUpB,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;KAClB,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC;KACD,QAAQ,EAAE,CAAC;AA2Id,MAAM,CAAC,OAAO,OAAO,WAAW;IAY9B,YAAY,MAMX;QAXD,YAAO,GAAyB,EAAE,CAAC;QAYjC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAM,CAAC;QACzD,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAsB,CAAC;QAChD,IAAI,CAAC,OAAO,GAAI,MAAM,CAAC,OAAgC,IAAI,EAAE,CAAC;IAChE,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,CAAC,MAAM,CAAC;YACd,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YAC7B,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SACjC,CAGA,CAAC;IACJ,CAAC;IAED,SAAS;QACP,OAAO,CAAC,CAAC,MAAM,CAAC;YACd,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YAC1B,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;SAC5B,CAGA,CAAC;IACJ,CAAC;IAED,kBAAkB;QAChB,OAAO,CAAC,CAAC,MAAM,CAAC;YACd,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;YACjC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;YACf,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SACjC,CAGA,CAAC;IACJ,CAAC;IAED,eAAe;QACb,OAAO,CAAC,CAAC,MAAM,CAAC;YACd,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC;YACvC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;SAChB,CAGA,CAAC;IACJ,CAAC;IAED,+BAA+B;QAC7B,OAAO,CAAC,CAAC,MAAM,CAAC;YACd,GAAG,IAAI,CAAC,kBAAkB,CACxB,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAChC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,UAAU,CAC5C,CACsB,CAC1B;YACD,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAC3B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;SAChB,CAGA,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,IAAa;QACpB,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,eAAe,CAAC,IAAa;QAC3B,OAAQ,IAAI,CAAC,cAAc,EAAkC;aAC1D,OAAO,EAAE;aACT,KAAK,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAED,cAAc,CAAC,IAAa;QAC1B,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,eAAe;QACb,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM,MAAM,GAAG,SAAS,CACtB,IAAI,CAAC,MAAM,EACX,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CACI,CAAC;QAEjC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAsB;YACvD,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAA+C;YAC7D,UAAU,EAAE,IAAI,CAAC,UAEd;SACJ,CAAC,CAAC;QACH,WAAW,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAC3D,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACjD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,WAAW;QACT,MAAM,MAAM,GAAG,SAAS,CACtB,IAAI,CAAC,MAAM,EACX,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CACI,CAAC;QAErC,MAAM,WAAW,GAAG,IAAI,WAAW,CAA0B;YAC3D,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAmD;YACjE,UAAU,EAAE,IAAI,CAAC,UAEd;SACJ,CAAC,CAAC;QACH,WAAW,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAC3D,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QACjD,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,YAAY,CAAC,IAA6C;QAChE,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YAChD,GAAG;YACH,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC;SAC5B,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,kBAAkB,CAA6B,MAAc;QACnE,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aACnB,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,eAAe,EAAE,CAAU,CAAC;aAC9D,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CACpD,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,MAAS;QACjC,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YACjC,IACE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,cAAc;gBAChC,gBAAgB,IAAI,KAAK;gBACzB,OAAO,KAAK,CAAC,cAAc,KAAK,UAAU,EAC1C,CAAC;gBACD,OAAO,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACpC,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC,CAAM,CAAC;IACV,CAAC;CACF;AAED,SAAS,cAAc,CACrB,KAAe,EACf,IAA6C;IAE7C,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,cAAc,EAAE,CAAC;IACpD,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5C,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,eAAe,EAAE,CAAC;IAEtD,OAAO,oBAAoB,IAAI,KAAK;QAClC,OAAO,KAAK,CAAC,kBAAkB,KAAK,UAAU;QAC9C,CAAC,CAAC,KAAK,CAAC,kBAAkB,EAAE;QAC5B,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,SAAS,CAChB,MAAS,EACT,GAAkD;IAElD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QAC3C,GAAG;QACH,GAAG,CAAC,KAAmB,EAAE,GAAG,CAAC;KAC9B,CAAC,CAGH,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IACzC,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1C,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../../src/lib/Logger.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,MAAM;;;;;;;CAOlB,CAAC;AAcF,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,MAAM,CAAC;AAS5C,KAAK,SAAS,GAAG;IACf,CAAC,EAAE,MAAM,CAAC;IACV,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,KAAc,EACd,IAAW,EACX,QAAiB,EACjB,SAAe,EACf,eAAmB,EACnB,QAAgB,EAChB,eAAqB,EACrB,OAAe,GAChB,GAAE;IACD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACd;qBA0Ke,CAAC,MAAM,MAAM,CAAC,KAAG,CAAC;oBACnB,MAAM,SAAS,OAAO;;;;eAe3B,MAAM,MAAM,MAAM,GAAG,MAAM;eAC3B,MAAM,MAAM,MAAM,GAAG,MAAM;cAC5B,MAAM,MAAM,MAAM,GAAG,MAAM;cAC3B,MAAM,MAAM,MAAM,GAAG,MAAM;eAC1B,MAAM,MAAM,MAAM,GAAG,MAAM;eAC3B,MAAM,MAAM,MAAM,GAAG,MAAM;;;EAwCzC;AAED,QAAA,IAAI,OAAO,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AAE7C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../../src/lib/Logger.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,MAAM;;;;;;;CAOlB,CAAC;AAgBF,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,MAAM,CAAC;AAS5C,KAAK,SAAS,GAAG;IACf,CAAC,EAAE,MAAM,CAAC;IACV,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,KAAc,EACd,IAAW,EACX,QAAiB,EACjB,SAAe,EACf,eAAmB,EACnB,QAAgB,EAChB,eAAqB,EACrB,OAAe,GAChB,GAAE;IACD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACd;qBA8Oe,CAAC,MAAM,MAAM,CAAC,KAAG,CAAC;oBACnB,MAAM,SAAS,OAAO;;;;eAe3B,MAAM,MAAM,MAAM,GAAG,MAAM;eAC3B,MAAM,MAAM,MAAM,GAAG,MAAM;cAC5B,MAAM,MAAM,MAAM,GAAG,MAAM;cAC3B,MAAM,MAAM,MAAM,GAAG,MAAM;eAC1B,MAAM,MAAM,MAAM,GAAG,MAAM;eAC3B,MAAM,MAAM,MAAM,GAAG,MAAM;;;EAwCzC;AAED,QAAA,IAAI,OAAO,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AAE7C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,CAAC"}
@@ -16,6 +16,8 @@ const COLORS = {
16
16
  warn: "\x1b[33m", // amarillo
17
17
  error: "\x1b[31m", // rojo
18
18
  fatal: "\x1b[35m", // magenta
19
+ label: "\x1b[34m",
20
+ value: "\x1b[36m",
19
21
  reset: "\x1b[0m",
20
22
  dim: "\x1b[2m",
21
23
  bright: "\x1b[1m",
@@ -59,6 +61,55 @@ export function createLogger({ level = "info", file = null, maxQueue = 50000, ba
59
61
  })
60
62
  .join("\n");
61
63
  }
64
+ function isTraceStep(value) {
65
+ if (!value || typeof value !== "object")
66
+ return false;
67
+ const step = value;
68
+ return typeof step.t === "number" && typeof step.msg === "string";
69
+ }
70
+ function isTraceSteps(value) {
71
+ return Array.isArray(value) && value.every(isTraceStep);
72
+ }
73
+ function formatTraceStepTimestamp(t) {
74
+ return new Date(t)
75
+ .toISOString()
76
+ .replace("T", " ")
77
+ .replace("Z", "");
78
+ }
79
+ function formatTraceStepsPretty(steps, color) {
80
+ if (steps.length === 0) {
81
+ return [
82
+ `${color}│${COLORS.reset} ${COLORS.dim}(sin pasos)${COLORS.reset}`,
83
+ ];
84
+ }
85
+ return steps.flatMap((step, index) => {
86
+ const last = index === steps.length - 1;
87
+ const branch = last ? "└─" : "├─";
88
+ const child = last ? " " : "│ ";
89
+ const previous = steps[index - 1];
90
+ const delta = previous ? `+${step.t - previous.t}ms` : "+0ms";
91
+ const header = `${COLORS.dim}${branch}${COLORS.reset} ` +
92
+ `${COLORS.bright}#${index + 1}${COLORS.reset} ` +
93
+ `${COLORS.value}${delta}${COLORS.reset} ` +
94
+ `${COLORS.bright}${step.msg}${COLORS.reset} ` +
95
+ `${COLORS.dim}${formatTraceStepTimestamp(step.t)}${COLORS.reset}`;
96
+ const lines = [`${color}│${COLORS.reset} ${header}`];
97
+ if (step.data !== undefined) {
98
+ lines.push(`${color}│${COLORS.reset} ${COLORS.dim}${child}${COLORS.reset}${COLORS.label}data${COLORS.reset}:`);
99
+ const rendered = inspect(step.data, {
100
+ depth: 8,
101
+ colors: true,
102
+ compact: false,
103
+ breakLength: 100,
104
+ sorted: true,
105
+ });
106
+ for (const line of rendered.split("\n")) {
107
+ lines.push(`${color}│${COLORS.reset} ${COLORS.dim}${child} ${COLORS.reset}${line}`);
108
+ }
109
+ }
110
+ return lines;
111
+ });
112
+ }
62
113
  function formatPretty(entry) {
63
114
  const color = COLORS[entry.lvl] || COLORS.reset;
64
115
  const timestamp = new Date(entry.t)
@@ -71,6 +122,11 @@ export function createLogger({ level = "info", file = null, maxQueue = 50000, ba
71
122
  for (const [key, value] of Object.entries(entry)) {
72
123
  if (key === "t" || key === "lvl" || key === "pid")
73
124
  continue;
125
+ if (key === "steps" && isTraceSteps(value)) {
126
+ lines.push(`${color}│${COLORS.reset} ${color}${key}${COLORS.reset}:`);
127
+ lines.push(...formatTraceStepsPretty(value, color));
128
+ continue;
129
+ }
74
130
  if (key === "stack" && typeof value === "string") {
75
131
  lines.push(`${color}│${COLORS.reset} ${color}${key}${COLORS.reset}:`);
76
132
  const stackLines = value.split("\n");