@elsikora/nestjs-crud-automator 2.10.0 → 3.0.0-dev.1

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 (1130) hide show
  1. package/README.md +130 -27
  2. package/dist/cjs/class/api/authorization/bootstrap-validation.service.class.d.ts +9 -2
  3. package/dist/cjs/class/api/authorization/bootstrap-validation.service.class.js +32 -5
  4. package/dist/cjs/class/api/authorization/bootstrap-validation.service.class.js.map +1 -1
  5. package/dist/cjs/class/api/authorization/engine.class.js +1 -0
  6. package/dist/cjs/class/api/authorization/engine.class.js.map +1 -1
  7. package/dist/cjs/class/api/authorization/guard.class.js +1 -0
  8. package/dist/cjs/class/api/authorization/guard.class.js.map +1 -1
  9. package/dist/cjs/class/api/authorization/hook/permission/cache.class.d.ts +2 -0
  10. package/dist/cjs/class/api/authorization/hook/permission/cache.class.js +5 -1
  11. package/dist/cjs/class/api/authorization/hook/permission/cache.class.js.map +1 -1
  12. package/dist/cjs/class/api/authorization/hook/permission/resolver.class.js +1 -1
  13. package/dist/cjs/class/api/authorization/hook/permission/resolver.class.js.map +1 -1
  14. package/dist/cjs/class/api/authorization/iam/attachment/cache.class.d.ts +2 -0
  15. package/dist/cjs/class/api/authorization/iam/attachment/cache.class.js +5 -1
  16. package/dist/cjs/class/api/authorization/iam/attachment/cache.class.js.map +1 -1
  17. package/dist/cjs/class/api/authorization/iam/attachment/resolver.class.js +1 -1
  18. package/dist/cjs/class/api/authorization/iam/attachment/resolver.class.js.map +1 -1
  19. package/dist/cjs/class/api/authorization/iam/document/cache.class.d.ts +2 -0
  20. package/dist/cjs/class/api/authorization/iam/document/cache.class.js +5 -1
  21. package/dist/cjs/class/api/authorization/iam/document/cache.class.js.map +1 -1
  22. package/dist/cjs/class/api/authorization/iam/document/resolver.class.js +2 -2
  23. package/dist/cjs/class/api/authorization/iam/document/resolver.class.js.map +1 -1
  24. package/dist/cjs/class/api/authorization/iam/document/validator.class.js +1 -0
  25. package/dist/cjs/class/api/authorization/iam/document/validator.class.js.map +1 -1
  26. package/dist/cjs/class/api/authorization/iam/engine.class.js +2 -1
  27. package/dist/cjs/class/api/authorization/iam/engine.class.js.map +1 -1
  28. package/dist/cjs/class/api/authorization/policy/base.class.js +1 -0
  29. package/dist/cjs/class/api/authorization/policy/base.class.js.map +1 -1
  30. package/dist/cjs/class/api/authorization/policy/discovery-service.class.d.ts +1 -1
  31. package/dist/cjs/class/api/authorization/policy/discovery-service.class.js +2 -2
  32. package/dist/cjs/class/api/authorization/policy/discovery-service.class.js.map +1 -1
  33. package/dist/cjs/class/api/authorization/policy/executor.class.js +1 -1
  34. package/dist/cjs/class/api/authorization/policy/executor.class.js.map +1 -1
  35. package/dist/cjs/class/api/authorization/policy/registry.class.js +2 -2
  36. package/dist/cjs/class/api/authorization/policy/registry.class.js.map +1 -1
  37. package/dist/cjs/class/api/authorization/resolver/cache.class.d.ts +11 -0
  38. package/dist/cjs/class/api/authorization/resolver/cache.class.js +89 -0
  39. package/dist/cjs/class/api/authorization/resolver/cache.class.js.map +1 -0
  40. package/dist/cjs/class/api/authorization/resolver/index.d.ts +1 -0
  41. package/dist/cjs/class/api/authorization/runtime.class.d.ts +1 -1
  42. package/dist/cjs/class/api/authorization/runtime.class.js +11 -10
  43. package/dist/cjs/class/api/authorization/runtime.class.js.map +1 -1
  44. package/dist/cjs/class/api/authorization/simulator.class.d.ts +1 -1
  45. package/dist/cjs/class/api/authorization/simulator.class.js +1 -1
  46. package/dist/cjs/class/api/authorization/simulator.class.js.map +1 -1
  47. package/dist/cjs/class/api/controller/get-list/index.d.ts +1 -0
  48. package/dist/cjs/class/api/controller/get-list/query/index.d.ts +2 -0
  49. package/dist/cjs/class/api/controller/get-list/query/plan-compiler.class.d.ts +27 -0
  50. package/dist/cjs/class/api/controller/get-list/query/plan-compiler.class.js +355 -0
  51. package/dist/cjs/class/api/controller/get-list/query/plan-compiler.class.js.map +1 -0
  52. package/dist/cjs/class/api/controller/get-list/query/runtime.class.d.ts +11 -0
  53. package/dist/cjs/class/api/controller/get-list/query/runtime.class.js +266 -0
  54. package/dist/cjs/class/api/controller/get-list/query/runtime.class.js.map +1 -0
  55. package/dist/cjs/class/api/controller/index.d.ts +1 -0
  56. package/dist/cjs/class/api/function/context-storage.class.d.ts +7 -1
  57. package/dist/cjs/class/api/function/context-storage.class.js +72 -7
  58. package/dist/cjs/class/api/function/context-storage.class.js.map +1 -1
  59. package/dist/cjs/class/api/function/custom-runtime.class.d.ts +1 -0
  60. package/dist/cjs/class/api/function/custom-runtime.class.js +13 -2
  61. package/dist/cjs/class/api/function/custom-runtime.class.js.map +1 -1
  62. package/dist/cjs/class/api/function/index.d.ts +2 -1
  63. package/dist/cjs/class/api/function/step-runtime.class.d.ts +2 -0
  64. package/dist/cjs/class/api/function/step-runtime.class.js +30 -0
  65. package/dist/cjs/class/api/function/step-runtime.class.js.map +1 -1
  66. package/dist/cjs/class/api/function/transaction/exception/commit-unknown-outcome.class.d.ts +23 -0
  67. package/dist/cjs/class/api/function/transaction/exception/commit-unknown-outcome.class.js +69 -0
  68. package/dist/cjs/class/api/function/transaction/exception/commit-unknown-outcome.class.js.map +1 -0
  69. package/dist/cjs/class/api/function/transaction/exception/index.d.ts +3 -0
  70. package/dist/cjs/class/api/function/transaction/exception/post-commit.class.d.ts +20 -0
  71. package/dist/cjs/class/api/function/transaction/exception/post-commit.class.js +64 -0
  72. package/dist/cjs/class/api/function/transaction/exception/post-commit.class.js.map +1 -0
  73. package/dist/cjs/class/api/function/transaction/exception/rollback.class.d.ts +26 -0
  74. package/dist/cjs/class/api/function/transaction/exception/rollback.class.js +74 -0
  75. package/dist/cjs/class/api/function/transaction/exception/rollback.class.js.map +1 -0
  76. package/dist/cjs/class/api/function/transaction/index.d.ts +5 -0
  77. package/dist/cjs/class/api/function/transaction/lifecycle.class.d.ts +13 -0
  78. package/dist/cjs/class/api/function/transaction/lifecycle.class.js +228 -0
  79. package/dist/cjs/class/api/function/transaction/lifecycle.class.js.map +1 -0
  80. package/dist/cjs/class/api/function/transaction/registry.class.d.ts +23 -0
  81. package/dist/cjs/class/api/function/transaction/registry.class.js +119 -0
  82. package/dist/cjs/class/api/function/transaction/registry.class.js.map +1 -0
  83. package/dist/cjs/class/api/function/transaction/runtime.class.d.ts +11 -0
  84. package/dist/cjs/class/api/function/transaction/runtime.class.js +116 -0
  85. package/dist/cjs/class/api/function/transaction/runtime.class.js.map +1 -0
  86. package/dist/cjs/class/api/function/{transaction-scope.class.d.ts → transaction/scope.class.d.ts} +3 -1
  87. package/dist/cjs/class/api/function/transaction/scope.class.js +78 -0
  88. package/dist/cjs/class/api/function/transaction/scope.class.js.map +1 -0
  89. package/dist/cjs/class/api/index.d.ts +1 -1
  90. package/dist/cjs/class/api/route-runtime.class.d.ts +1 -0
  91. package/dist/cjs/class/api/route-runtime.class.js +115 -56
  92. package/dist/cjs/class/api/route-runtime.class.js.map +1 -1
  93. package/dist/cjs/class/api/subscriber/discovery-service.class.js +3 -3
  94. package/dist/cjs/class/api/subscriber/discovery-service.class.js.map +1 -1
  95. package/dist/cjs/class/api/subscriber/executor.class.js +14 -6
  96. package/dist/cjs/class/api/subscriber/executor.class.js.map +1 -1
  97. package/dist/cjs/class/api/subscriber/index.d.ts +7 -7
  98. package/dist/cjs/class/api/subscriber/registry.class.d.ts +3 -0
  99. package/dist/cjs/class/api/subscriber/registry.class.js +12 -1
  100. package/dist/cjs/class/api/subscriber/registry.class.js.map +1 -1
  101. package/dist/cjs/class/utility/dto/exception/details/foreign-key-violation.class.js +9 -1
  102. package/dist/cjs/class/utility/dto/exception/details/foreign-key-violation.class.js.map +1 -1
  103. package/dist/cjs/class/utility/dto/exception/details/unique-violation.class.js +9 -1
  104. package/dist/cjs/class/utility/dto/exception/details/unique-violation.class.js.map +1 -1
  105. package/dist/cjs/class/utility/dto/property/factory/number.class.js +9 -1
  106. package/dist/cjs/class/utility/dto/property/factory/number.class.js.map +1 -1
  107. package/dist/cjs/class/utility/dto/property/factory/relation.class.js +9 -1
  108. package/dist/cjs/class/utility/dto/property/factory/relation.class.js.map +1 -1
  109. package/dist/cjs/class/utility/dto/strategy/body.class.js +9 -1
  110. package/dist/cjs/class/utility/dto/strategy/body.class.js.map +1 -1
  111. package/dist/cjs/class/utility/dto/strategy/query.class.js +9 -1
  112. package/dist/cjs/class/utility/dto/strategy/query.class.js.map +1 -1
  113. package/dist/cjs/class/utility/dto/strategy/request.class.js +9 -1
  114. package/dist/cjs/class/utility/dto/strategy/request.class.js.map +1 -1
  115. package/dist/cjs/class/utility/dto/strategy/response.class.js +9 -1
  116. package/dist/cjs/class/utility/dto/strategy/response.class.js.map +1 -1
  117. package/dist/cjs/constant/decorator/api/controller.constant.d.ts +1 -0
  118. package/dist/cjs/constant/decorator/api/controller.constant.js +2 -0
  119. package/dist/cjs/constant/decorator/api/controller.constant.js.map +1 -1
  120. package/dist/cjs/constant/decorator/api/function.constant.js +1 -0
  121. package/dist/cjs/constant/decorator/api/function.constant.js.map +1 -1
  122. package/dist/cjs/constant/factory-dto-get-list-query.constant.d.ts +1 -0
  123. package/dist/cjs/constant/factory-dto-get-list-query.constant.js +2 -0
  124. package/dist/cjs/constant/factory-dto-get-list-query.constant.js.map +1 -1
  125. package/dist/cjs/constant/filter/index.d.ts +1 -0
  126. package/dist/cjs/constant/filter/operator-registry.constant.d.ts +9 -0
  127. package/dist/cjs/constant/filter/operator-registry.constant.js +169 -0
  128. package/dist/cjs/constant/filter/operator-registry.constant.js.map +1 -0
  129. package/dist/cjs/constant/index.d.ts +0 -1
  130. package/dist/cjs/constant/swagger/index.d.ts +1 -0
  131. package/dist/cjs/constant/swagger/metadata.constant.d.ts +4 -0
  132. package/dist/cjs/constant/swagger/metadata.constant.js +10 -0
  133. package/dist/cjs/constant/swagger/metadata.constant.js.map +1 -0
  134. package/dist/cjs/constant/utility/api/get-default-string-format-properties/bigint-string/constant.d.ts +4 -3
  135. package/dist/cjs/constant/utility/api/get-default-string-format-properties/bigint-string/constant.js.map +1 -1
  136. package/dist/cjs/constant/utility/api/get-default-string-format-properties/bigint-string/sign/default.constant.d.ts +2 -2
  137. package/dist/cjs/constant/utility/api/get-default-string-format-properties/bigint-string/sign/default.constant.js +3 -1
  138. package/dist/cjs/constant/utility/api/get-default-string-format-properties/bigint-string/sign/default.constant.js.map +1 -1
  139. package/dist/cjs/constant/utility/api/get-default-string-format-properties/bigint-string/sign/properties.constant.d.ts +3 -2
  140. package/dist/cjs/constant/utility/api/get-default-string-format-properties/bigint-string/sign/properties.constant.js +11 -9
  141. package/dist/cjs/constant/utility/api/get-default-string-format-properties/bigint-string/sign/properties.constant.js.map +1 -1
  142. package/dist/cjs/constant/utility/api/get-default-string-format-properties/constant.d.ts +4 -3
  143. package/dist/cjs/constant/utility/api/get-default-string-format-properties/constant.js +4 -2
  144. package/dist/cjs/constant/utility/api/get-default-string-format-properties/constant.js.map +1 -1
  145. package/dist/cjs/constant/utility/api/get-default-string-format-properties/{customizer/map.constant.d.ts → customizer-map.constant.d.ts} +1 -1
  146. package/dist/cjs/constant/utility/api/get-default-string-format-properties/customizer-map.constant.js +37 -0
  147. package/dist/cjs/constant/utility/api/get-default-string-format-properties/customizer-map.constant.js.map +1 -0
  148. package/dist/cjs/constant/utility/api/get-default-string-format-properties/index.d.ts +1 -0
  149. package/dist/cjs/constant/utility/api/index.d.ts +1 -1
  150. package/dist/cjs/constant/utility/dto/constant.d.ts +2 -1
  151. package/dist/cjs/constant/utility/dto/constant.js +12 -2
  152. package/dist/cjs/constant/utility/dto/constant.js.map +1 -1
  153. package/dist/cjs/constant/utility/dto/index.d.ts +1 -0
  154. package/dist/cjs/constant/utility/dto/manual-property-metadata.constant.d.ts +3 -0
  155. package/dist/cjs/constant/utility/dto/manual-property-metadata.constant.js +9 -0
  156. package/dist/cjs/constant/utility/dto/manual-property-metadata.constant.js.map +1 -0
  157. package/dist/cjs/constant/utility/index.d.ts +1 -1
  158. package/dist/cjs/decorator/api/function/create.decorator.js +16 -4
  159. package/dist/cjs/decorator/api/function/create.decorator.js.map +1 -1
  160. package/dist/cjs/decorator/api/function/custom.decorator.js +12 -3
  161. package/dist/cjs/decorator/api/function/custom.decorator.js.map +1 -1
  162. package/dist/cjs/decorator/api/function/decorator.js +16 -8
  163. package/dist/cjs/decorator/api/function/decorator.js.map +1 -1
  164. package/dist/cjs/decorator/api/function/delete.decorator.js +17 -5
  165. package/dist/cjs/decorator/api/function/delete.decorator.js.map +1 -1
  166. package/dist/cjs/decorator/api/function/get/decorator.js +22 -16
  167. package/dist/cjs/decorator/api/function/get/decorator.js.map +1 -1
  168. package/dist/cjs/decorator/api/function/get/list.decorator.js +16 -4
  169. package/dist/cjs/decorator/api/function/get/list.decorator.js.map +1 -1
  170. package/dist/cjs/decorator/api/function/get/many.decorator.js +16 -4
  171. package/dist/cjs/decorator/api/function/get/many.decorator.js.map +1 -1
  172. package/dist/cjs/decorator/api/function/step.decorator.js +12 -3
  173. package/dist/cjs/decorator/api/function/step.decorator.js.map +1 -1
  174. package/dist/cjs/decorator/api/function/update.decorator.js +49 -30
  175. package/dist/cjs/decorator/api/function/update.decorator.js.map +1 -1
  176. package/dist/cjs/decorator/api/index.d.ts +2 -2
  177. package/dist/cjs/decorator/api/method.decorator.js +12 -4
  178. package/dist/cjs/decorator/api/method.decorator.js.map +1 -1
  179. package/dist/cjs/decorator/api/property/boolean.decorator.js +13 -5
  180. package/dist/cjs/decorator/api/property/boolean.decorator.js.map +1 -1
  181. package/dist/cjs/decorator/api/property/date.decorator.js +13 -5
  182. package/dist/cjs/decorator/api/property/date.decorator.js.map +1 -1
  183. package/dist/cjs/decorator/api/property/enum.decorator.js +4 -4
  184. package/dist/cjs/decorator/api/property/enum.decorator.js.map +1 -1
  185. package/dist/cjs/decorator/api/property/number.decorator.js +13 -5
  186. package/dist/cjs/decorator/api/property/number.decorator.js.map +1 -1
  187. package/dist/cjs/decorator/api/property/object.decorator.js +7 -7
  188. package/dist/cjs/decorator/api/property/object.decorator.js.map +1 -1
  189. package/dist/cjs/decorator/api/property/string.decorator.js +13 -5
  190. package/dist/cjs/decorator/api/property/string.decorator.js.map +1 -1
  191. package/dist/cjs/decorator/api/property/uuid.decorator.js +13 -5
  192. package/dist/cjs/decorator/api/property/uuid.decorator.js.map +1 -1
  193. package/dist/cjs/decorator/api/route-custom.decorator.js +10 -2
  194. package/dist/cjs/decorator/api/route-custom.decorator.js.map +1 -1
  195. package/dist/cjs/decorator/api/service/decorator.js +12 -2
  196. package/dist/cjs/decorator/api/service/decorator.js.map +1 -1
  197. package/dist/cjs/decorator/api/service/index.d.ts +2 -2
  198. package/dist/cjs/decorator/api/subscriber/index.d.ts +2 -2
  199. package/dist/cjs/enum/class/authorization/cache-mode.enum.d.ts +4 -0
  200. package/dist/cjs/enum/class/authorization/cache-mode.enum.js +8 -0
  201. package/dist/cjs/enum/class/authorization/cache-mode.enum.js.map +1 -0
  202. package/dist/cjs/enum/class/authorization/index.d.ts +1 -0
  203. package/dist/cjs/enum/decorator/api/controller/get-list/index.d.ts +1 -0
  204. package/dist/cjs/enum/decorator/api/controller/get-list/query/filter/index.d.ts +1 -0
  205. package/dist/cjs/enum/decorator/api/controller/get-list/query/filter/missing-behavior.enum.d.ts +5 -0
  206. package/dist/cjs/enum/decorator/api/controller/get-list/query/filter/missing-behavior.enum.js +9 -0
  207. package/dist/cjs/enum/decorator/api/controller/get-list/query/filter/missing-behavior.enum.js.map +1 -0
  208. package/dist/cjs/enum/decorator/api/controller/get-list/query/index.d.ts +2 -0
  209. package/dist/cjs/enum/decorator/api/controller/get-list/query/unlisted-fields.enum.d.ts +4 -0
  210. package/dist/cjs/enum/decorator/api/controller/get-list/query/unlisted-fields.enum.js +8 -0
  211. package/dist/cjs/enum/decorator/api/controller/get-list/query/unlisted-fields.enum.js.map +1 -0
  212. package/dist/cjs/enum/decorator/api/controller/index.d.ts +1 -0
  213. package/dist/cjs/enum/decorator/api/function/context-storage-kind.enum.d.ts +5 -0
  214. package/dist/cjs/enum/decorator/api/function/context-storage-kind.enum.js +9 -0
  215. package/dist/cjs/enum/decorator/api/function/context-storage-kind.enum.js.map +1 -0
  216. package/dist/cjs/enum/decorator/api/function/index.d.ts +2 -1
  217. package/dist/cjs/enum/decorator/api/function/transaction/event-status.enum.d.ts +4 -0
  218. package/dist/cjs/enum/decorator/api/function/transaction/event-status.enum.js +8 -0
  219. package/dist/cjs/enum/decorator/api/function/transaction/event-status.enum.js.map +1 -0
  220. package/dist/cjs/enum/decorator/api/function/transaction/failure-stage.enum.d.ts +10 -0
  221. package/dist/cjs/enum/decorator/api/function/transaction/failure-stage.enum.js +14 -0
  222. package/dist/cjs/enum/decorator/api/function/transaction/failure-stage.enum.js.map +1 -0
  223. package/dist/cjs/enum/decorator/api/function/transaction/index.d.ts +6 -0
  224. package/dist/cjs/enum/decorator/api/function/{transaction-mode.enum.js → transaction/mode.enum.js} +1 -1
  225. package/dist/cjs/enum/decorator/api/function/transaction/mode.enum.js.map +1 -0
  226. package/dist/cjs/enum/decorator/api/function/transaction/outcome.enum.d.ts +5 -0
  227. package/dist/cjs/enum/decorator/api/function/transaction/outcome.enum.js +9 -0
  228. package/dist/cjs/enum/decorator/api/function/transaction/outcome.enum.js.map +1 -0
  229. package/dist/cjs/enum/decorator/api/function/transaction/owner-kind.enum.d.ts +5 -0
  230. package/dist/cjs/enum/decorator/api/function/transaction/owner-kind.enum.js +9 -0
  231. package/dist/cjs/enum/decorator/api/function/transaction/owner-kind.enum.js.map +1 -0
  232. package/dist/cjs/enum/decorator/api/function/transaction/trace-type.enum.d.ts +3 -0
  233. package/dist/cjs/enum/decorator/api/function/transaction/trace-type.enum.js +7 -0
  234. package/dist/cjs/enum/decorator/api/function/transaction/trace-type.enum.js.map +1 -0
  235. package/dist/cjs/enum/decorator/api/index.d.ts +4 -4
  236. package/dist/cjs/enum/filter/index.d.ts +1 -0
  237. package/dist/cjs/enum/filter/operand.enum.d.ts +6 -0
  238. package/dist/cjs/enum/filter/operand.enum.js +10 -0
  239. package/dist/cjs/enum/filter/operand.enum.js.map +1 -0
  240. package/dist/cjs/enum/index.d.ts +1 -1
  241. package/dist/cjs/enum/utility/get-default-string-format-properties-bigint-string-sign.enum.d.ts +5 -0
  242. package/dist/cjs/enum/utility/get-default-string-format-properties-bigint-string-sign.enum.js +9 -0
  243. package/dist/cjs/enum/utility/get-default-string-format-properties-bigint-string-sign.enum.js.map +1 -0
  244. package/dist/cjs/enum/utility/index.d.ts +2 -1
  245. package/dist/cjs/enum/utility/{dto/manual/property-metadata/decorator.enum.js → manual-dto-property-metadata-decorator.enum.js} +1 -1
  246. package/dist/cjs/enum/utility/manual-dto-property-metadata-decorator.enum.js.map +1 -0
  247. package/dist/cjs/enum/validator/index.d.ts +0 -1
  248. package/dist/cjs/factory/api-controller.factory.js +40 -13
  249. package/dist/cjs/factory/api-controller.factory.js.map +1 -1
  250. package/dist/cjs/index.js +75 -20
  251. package/dist/cjs/index.js.map +1 -1
  252. package/dist/cjs/interface/class/api/authorization/cache/index.d.ts +2 -0
  253. package/dist/cjs/interface/class/api/authorization/cache/memory-options.interface.d.ts +6 -0
  254. package/dist/cjs/interface/class/api/authorization/cache/source-first-options.interface.d.ts +4 -0
  255. package/dist/cjs/interface/class/api/authorization/decision/interface.d.ts +2 -2
  256. package/dist/cjs/interface/class/api/authorization/decision/trace.interface.d.ts +2 -2
  257. package/dist/cjs/interface/class/api/authorization/index.d.ts +1 -0
  258. package/dist/cjs/interface/class/api/authorization/module-options/async.interface.d.ts +2 -2
  259. package/dist/cjs/interface/class/api/authorization/module-options/interface.d.ts +2 -0
  260. package/dist/cjs/interface/class/api/authorization/policy/attachment/source.interface.d.ts +1 -1
  261. package/dist/cjs/interface/class/api/authorization/policy/subscriber/context/interface.d.ts +1 -1
  262. package/dist/cjs/interface/class/api/controller/get-list/index.d.ts +1 -0
  263. package/dist/cjs/interface/class/api/controller/get-list/query/ast/index.d.ts +2 -0
  264. package/dist/cjs/interface/class/api/controller/get-list/query/ast/interface.d.ts +4 -0
  265. package/dist/cjs/interface/class/api/controller/get-list/query/ast/node.interface.d.ts +7 -0
  266. package/dist/cjs/interface/class/api/controller/get-list/query/index.d.ts +5 -0
  267. package/dist/cjs/interface/class/api/controller/get-list/query/operator.interface.d.ts +8 -0
  268. package/dist/cjs/interface/class/api/controller/get-list/query/plan/condition.interface.d.ts +6 -0
  269. package/dist/cjs/interface/class/api/controller/get-list/query/plan/filter/field.interface.d.ts +14 -0
  270. package/dist/cjs/interface/class/api/controller/get-list/query/plan/filter/index.d.ts +2 -0
  271. package/dist/cjs/interface/class/api/controller/get-list/query/plan/filter/interface.d.ts +7 -0
  272. package/dist/cjs/interface/class/api/controller/get-list/query/plan/index.d.ts +4 -0
  273. package/dist/cjs/interface/class/api/controller/get-list/query/plan/interface.d.ts +9 -0
  274. package/dist/cjs/interface/class/api/controller/get-list/query/plan/order/field.interface.d.ts +4 -0
  275. package/dist/cjs/interface/class/api/controller/get-list/query/plan/order/index.d.ts +2 -0
  276. package/dist/cjs/interface/class/api/controller/get-list/query/plan/order/interface.d.ts +7 -0
  277. package/dist/cjs/interface/class/api/controller/get-list/query/raw-group.interface.d.ts +5 -0
  278. package/dist/cjs/interface/class/api/controller/get-list/query/runtime-result.interface.d.ts +10 -0
  279. package/dist/cjs/interface/class/api/controller/index.d.ts +1 -0
  280. package/dist/cjs/interface/class/api/function/context/interface.d.ts +1 -1
  281. package/dist/cjs/interface/class/api/function/index.d.ts +1 -0
  282. package/dist/cjs/interface/class/api/function/transaction/event/failed.interface.d.ts +11 -0
  283. package/dist/cjs/interface/class/api/function/transaction/event/index.d.ts +2 -0
  284. package/dist/cjs/interface/class/api/function/transaction/event/succeeded.interface.d.ts +10 -0
  285. package/dist/cjs/interface/class/api/function/transaction/failure.interface.d.ts +6 -0
  286. package/dist/cjs/interface/class/api/function/transaction/index.d.ts +4 -0
  287. package/dist/cjs/interface/class/api/function/transaction/interface.d.ts +5 -0
  288. package/dist/cjs/interface/class/api/function/transaction/owner/function.interface.d.ts +9 -0
  289. package/dist/cjs/interface/class/api/function/transaction/owner/index.d.ts +3 -0
  290. package/dist/cjs/interface/class/api/function/transaction/owner/route.interface.d.ts +7 -0
  291. package/dist/cjs/interface/class/api/function/transaction/owner/scope.interface.d.ts +5 -0
  292. package/dist/cjs/interface/class/api/route/runtime/generated/execution-options.interface.d.ts +1 -1
  293. package/dist/cjs/interface/class/api/subscriber/function/execution/context/{data/interface.d.ts → data.interface.d.ts} +2 -2
  294. package/dist/cjs/interface/class/api/subscriber/function/execution/context/index.d.ts +2 -1
  295. package/dist/cjs/interface/class/api/subscriber/function/execution/context/update-data.interface.d.ts +12 -0
  296. package/dist/cjs/interface/class/api/subscriber/function/index.d.ts +1 -0
  297. package/dist/cjs/interface/class/api/subscriber/function/interface.d.ts +12 -2
  298. package/dist/cjs/interface/class/api/subscriber/function/transaction/context/data.interface.d.ts +7 -0
  299. package/dist/cjs/interface/class/api/subscriber/function/transaction/context/index.d.ts +2 -0
  300. package/dist/cjs/interface/class/api/subscriber/function/transaction/context/interface.d.ts +4 -0
  301. package/dist/cjs/interface/class/api/subscriber/index.d.ts +4 -4
  302. package/dist/cjs/interface/class/api/subscriber/route/execution/context/data/extended.interface.d.ts +1 -1
  303. package/dist/cjs/interface/decorator/api/controller/properties/route/base/index.d.ts +1 -0
  304. package/dist/cjs/interface/decorator/api/controller/properties/route/base/interface.d.ts +2 -1
  305. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/request/load.interface.d.ts +2 -1
  306. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/response/load.interface.d.ts +1 -1
  307. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/index.d.ts +1 -0
  308. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/interface.d.ts +3 -2
  309. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/query/filter/index.d.ts +1 -0
  310. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/query/filter/interface.d.ts +6 -0
  311. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/query/index.d.ts +3 -0
  312. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/query/interface.d.ts +7 -0
  313. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/query/order/index.d.ts +1 -0
  314. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/query/order/interface.d.ts +6 -0
  315. package/dist/cjs/interface/decorator/api/controller/properties/route/base/response/interface.d.ts +1 -1
  316. package/dist/cjs/interface/decorator/api/controller/properties/route/base/transaction.interface.d.ts +4 -0
  317. package/dist/cjs/interface/decorator/api/controller/properties.interface.d.ts +1 -1
  318. package/dist/cjs/interface/decorator/api/function/update-executor-properties.interface.d.ts +2 -2
  319. package/dist/cjs/interface/decorator/api/index.d.ts +3 -3
  320. package/dist/cjs/interface/decorator/api/method-properties.interface.d.ts +5 -0
  321. package/dist/cjs/interface/decorator/api/route/custom-properties.interface.d.ts +1 -1
  322. package/dist/cjs/interface/decorator/api/route/metadata/interface.d.ts +2 -2
  323. package/dist/cjs/interface/decorator/api/route/response/properties.interface.d.ts +1 -1
  324. package/dist/cjs/interface/decorator/api/route/security/authentication-properties.interface.d.ts +1 -1
  325. package/dist/cjs/interface/utility/dto-generate-cache-key.interface.d.ts +2 -0
  326. package/dist/cjs/module/api/authorization.module.js +1 -0
  327. package/dist/cjs/module/api/authorization.module.js.map +1 -1
  328. package/dist/cjs/type/class/api/authorization/cache-options.type.d.ts +2 -0
  329. package/dist/cjs/type/class/api/authorization/index.d.ts +1 -0
  330. package/dist/cjs/type/class/api/authorization/policy/context/before/create-context.type.d.ts +1 -1
  331. package/dist/cjs/type/class/api/authorization/policy/context/before/get/list-context.type.d.ts +1 -1
  332. package/dist/cjs/type/class/api/authorization/policy/context/before/partial-update-context.type.d.ts +1 -1
  333. package/dist/cjs/type/class/api/authorization/policy/context/before/update-context.type.d.ts +1 -1
  334. package/dist/cjs/type/class/api/authorization/policy/hook/type.d.ts +1 -1
  335. package/dist/cjs/type/class/api/authorization/policy/subscriber/index.d.ts +1 -1
  336. package/dist/cjs/type/class/api/authorization/policy/subscriber/{permission-rule-options/without-transform.type.d.ts → permission-rule-options-without-transform.type.d.ts} +2 -2
  337. package/dist/cjs/type/class/api/function/context-storage-entry.type.d.ts +13 -5
  338. package/dist/cjs/type/class/api/function/index.d.ts +2 -0
  339. package/dist/cjs/type/class/api/function/transaction/event.type.d.ts +2 -0
  340. package/dist/cjs/type/class/api/function/transaction/index.d.ts +3 -0
  341. package/dist/cjs/type/class/api/function/transaction/owner.type.d.ts +2 -0
  342. package/dist/cjs/type/class/api/function/transaction/trace-type.type.d.ts +2 -0
  343. package/dist/cjs/type/class/api/index.d.ts +1 -0
  344. package/dist/cjs/type/class/api/subscriber/function/after/create-context.type.d.ts +1 -1
  345. package/dist/cjs/type/class/api/subscriber/function/after/delete-context.type.d.ts +1 -1
  346. package/dist/cjs/type/class/api/subscriber/function/after/get/context.type.d.ts +1 -1
  347. package/dist/cjs/type/class/api/subscriber/function/after/get/list-context.type.d.ts +1 -1
  348. package/dist/cjs/type/class/api/subscriber/function/after/get/many-context.type.d.ts +1 -1
  349. package/dist/cjs/type/class/api/subscriber/function/after/update-context.type.d.ts +1 -1
  350. package/dist/cjs/type/class/api/subscriber/function/before/create-context.type.d.ts +1 -1
  351. package/dist/cjs/type/class/api/subscriber/function/before/delete-context.type.d.ts +1 -1
  352. package/dist/cjs/type/class/api/subscriber/function/before/get/context.type.d.ts +1 -1
  353. package/dist/cjs/type/class/api/subscriber/function/before/get/list-context.type.d.ts +1 -1
  354. package/dist/cjs/type/class/api/subscriber/function/before/get/many-context.type.d.ts +1 -1
  355. package/dist/cjs/type/class/api/subscriber/function/before/update-context.type.d.ts +3 -2
  356. package/dist/cjs/type/class/api/subscriber/function/{execution/context/data.type.d.ts → execution-context-data.type.d.ts} +4 -4
  357. package/dist/cjs/type/class/api/subscriber/function/index.d.ts +1 -1
  358. package/dist/cjs/type/class/api/subscriber/function/transaction/data.type.d.ts +1 -1
  359. package/dist/cjs/type/decorator/api/controller/get-list/index.d.ts +1 -0
  360. package/dist/cjs/type/decorator/api/controller/get-list/query/dto-contract.type.d.ts +14 -0
  361. package/dist/cjs/type/decorator/api/controller/get-list/query/field/disabled.type.d.ts +6 -0
  362. package/dist/cjs/type/decorator/api/controller/get-list/query/field/index.d.ts +1 -0
  363. package/dist/cjs/type/decorator/api/controller/get-list/query/filter/condition.type.d.ts +19 -0
  364. package/dist/cjs/type/decorator/api/controller/get-list/query/filter/field/enabled.type.d.ts +15 -0
  365. package/dist/cjs/type/decorator/api/controller/get-list/query/filter/field/index.d.ts +3 -0
  366. package/dist/cjs/type/decorator/api/controller/get-list/query/filter/field/map.type.d.ts +5 -0
  367. package/dist/cjs/type/decorator/api/controller/get-list/query/filter/field/type.d.ts +3 -0
  368. package/dist/cjs/type/decorator/api/controller/get-list/query/filter/index.d.ts +3 -0
  369. package/dist/cjs/type/decorator/api/controller/get-list/query/filter/operation-for-value.type.d.ts +2 -0
  370. package/dist/cjs/type/decorator/api/controller/get-list/query/index.d.ts +6 -0
  371. package/dist/cjs/type/decorator/api/controller/get-list/query/order/field/enabled.type.d.ts +6 -0
  372. package/dist/cjs/type/decorator/api/controller/get-list/query/order/field/index.d.ts +3 -0
  373. package/dist/cjs/type/decorator/api/controller/get-list/query/order/field/map.type.d.ts +3 -0
  374. package/dist/cjs/type/decorator/api/controller/get-list/query/order/field/type.d.ts +3 -0
  375. package/dist/cjs/type/decorator/api/controller/get-list/query/order/index.d.ts +1 -0
  376. package/dist/cjs/type/decorator/api/controller/get-list/query/path/direct-scalar.type.d.ts +4 -0
  377. package/dist/cjs/type/decorator/api/controller/get-list/query/path/filter.type.d.ts +3 -0
  378. package/dist/cjs/type/decorator/api/controller/get-list/query/path/index.d.ts +7 -0
  379. package/dist/cjs/type/decorator/api/controller/get-list/query/path/one-hop-to-one-scalar.type.d.ts +7 -0
  380. package/dist/cjs/type/decorator/api/controller/get-list/query/path/order.type.d.ts +2 -0
  381. package/dist/cjs/type/decorator/api/controller/get-list/query/path/scalar-value.type.d.ts +1 -0
  382. package/dist/cjs/type/decorator/api/controller/get-list/query/path/to-one-relation.type.d.ts +2 -0
  383. package/dist/cjs/type/decorator/api/controller/get-list/query/path/value.type.d.ts +2 -0
  384. package/dist/cjs/type/decorator/api/controller/{get-list-query.type.d.ts → get-list/query/type.d.ts} +2 -2
  385. package/dist/cjs/type/decorator/api/controller/index.d.ts +1 -1
  386. package/dist/cjs/type/decorator/api/controller/properties-route.type.d.ts +2 -1
  387. package/dist/cjs/type/decorator/api/route/{custom/dto-properties.type.d.ts → custom-dto-properties.type.d.ts} +3 -3
  388. package/dist/{esm/type/decorator/api/route/discriminated/dto-properties.type.d.ts → cjs/type/decorator/api/route/discriminated-dto-properties.type.d.ts} +1 -1
  389. package/dist/cjs/type/decorator/api/route/index.d.ts +2 -2
  390. package/dist/{esm/type/utility/api/discriminator/validate/config-properties.type.d.ts → cjs/type/utility/api/discriminator-validate-config-properties.type.d.ts} +1 -1
  391. package/dist/cjs/type/utility/api/get-default-string-format-properties/bigint-string/index.d.ts +1 -1
  392. package/dist/cjs/type/utility/api/get-default-string-format-properties/bigint-string/options.type.d.ts +2 -2
  393. package/dist/cjs/type/utility/api/get-default-string-format-properties/bigint-string/{sign/properties.type.d.ts → sign-properties.type.d.ts} +1 -1
  394. package/dist/cjs/type/utility/api/index.d.ts +1 -1
  395. package/dist/cjs/type/utility/dto/index.d.ts +1 -1
  396. package/dist/cjs/type/utility/dto/{manual/property-metadata.type.d.ts → manual-property-metadata.type.d.ts} +2 -2
  397. package/dist/cjs/type/utility/index.d.ts +1 -0
  398. package/dist/cjs/type/utility/non-empty-readonly-array.type.d.ts +1 -0
  399. package/dist/cjs/type/validator/has-paired-custom-suffixes-fields/index.d.ts +0 -1
  400. package/dist/cjs/utility/api/controller/apply/decorators.utility.d.ts +3 -1
  401. package/dist/cjs/utility/api/controller/apply/decorators.utility.js +17 -3
  402. package/dist/cjs/utility/api/controller/apply/decorators.utility.js.map +1 -1
  403. package/dist/cjs/utility/api/controller/apply/metadata.utility.d.ts +3 -1
  404. package/dist/cjs/utility/api/controller/apply/metadata.utility.js +14 -5
  405. package/dist/cjs/utility/api/controller/apply/metadata.utility.js.map +1 -1
  406. package/dist/cjs/utility/api/controller/build-route-documentation.utility.js +9 -1
  407. package/dist/cjs/utility/api/controller/build-route-documentation.utility.js.map +1 -1
  408. package/dist/cjs/utility/api/controller/get/dto.utility.d.ts +3 -1
  409. package/dist/cjs/utility/api/controller/get/dto.utility.js +15 -4
  410. package/dist/cjs/utility/api/controller/get/dto.utility.js.map +1 -1
  411. package/dist/cjs/utility/api/controller/get-list/query/enum-values.utility.d.ts +6 -0
  412. package/dist/cjs/utility/api/controller/get-list/query/enum-values.utility.js +19 -0
  413. package/dist/cjs/utility/api/controller/get-list/query/enum-values.utility.js.map +1 -0
  414. package/dist/cjs/utility/api/controller/get-list/query/index.d.ts +3 -0
  415. package/dist/cjs/utility/api/controller/get-list/query/open-api/decorators.utility.d.ts +7 -0
  416. package/dist/cjs/utility/api/controller/get-list/query/open-api/decorators.utility.js +101 -0
  417. package/dist/cjs/utility/api/controller/get-list/query/open-api/decorators.utility.js.map +1 -0
  418. package/dist/cjs/utility/api/controller/get-list/query/open-api/index.d.ts +2 -0
  419. package/dist/cjs/utility/api/controller/get-list/query/open-api/value-schema.utility.d.ts +8 -0
  420. package/dist/cjs/utility/api/controller/get-list/query/open-api/value-schema.utility.js +83 -0
  421. package/dist/cjs/utility/api/controller/get-list/query/open-api/value-schema.utility.js.map +1 -0
  422. package/dist/cjs/utility/api/controller/get-list/query/plan/get.utility.d.ts +8 -0
  423. package/dist/cjs/utility/api/controller/get-list/query/plan/get.utility.js +17 -0
  424. package/dist/cjs/utility/api/controller/get-list/query/plan/get.utility.js.map +1 -0
  425. package/dist/cjs/utility/api/controller/get-list/query/plan/index.d.ts +2 -0
  426. package/dist/cjs/utility/api/controller/get-list/query/plan/set.utility.d.ts +9 -0
  427. package/dist/cjs/utility/api/controller/get-list/query/plan/set.utility.js +18 -0
  428. package/dist/cjs/utility/api/controller/get-list/query/plan/set.utility.js.map +1 -0
  429. package/dist/cjs/utility/api/controller/get-list/transform/filter.utility.js +10 -2
  430. package/dist/cjs/utility/api/controller/get-list/transform/filter.utility.js.map +1 -1
  431. package/dist/cjs/utility/api/controller/get-list/transform/operation.utility.js +1 -0
  432. package/dist/cjs/utility/api/controller/get-list/transform/operation.utility.js.map +1 -1
  433. package/dist/cjs/utility/api/controller/handle-request-relations.utility.js +49 -3
  434. package/dist/cjs/utility/api/controller/handle-request-relations.utility.js.map +1 -1
  435. package/dist/cjs/utility/api/controller/transform-data.utility.js +11 -2
  436. package/dist/cjs/utility/api/controller/transform-data.utility.js.map +1 -1
  437. package/dist/cjs/utility/api/controller/write/dto-swagger.utility.d.ts +3 -1
  438. package/dist/cjs/utility/api/controller/write/dto-swagger.utility.js +15 -6
  439. package/dist/cjs/utility/api/controller/write/dto-swagger.utility.js.map +1 -1
  440. package/dist/cjs/utility/api/{discriminator/validate/config.utility.d.ts → discriminator-validate-config.utility.d.ts} +1 -1
  441. package/dist/cjs/utility/api/{discriminator/validate/config.utility.js → discriminator-validate-config.utility.js} +2 -2
  442. package/dist/cjs/utility/api/discriminator-validate-config.utility.js.map +1 -0
  443. package/dist/cjs/utility/api/function-transaction.utility.d.ts +9 -2
  444. package/dist/cjs/utility/api/function-transaction.utility.js +75 -15
  445. package/dist/cjs/utility/api/function-transaction.utility.js.map +1 -1
  446. package/dist/{esm/utility/api/get-default-string-format-properties/bigint-string/apply-options.utility.d.ts → cjs/utility/api/get-default-string-format-properties/bigint-string-apply-options.utility.d.ts} +2 -2
  447. package/dist/cjs/utility/api/get-default-string-format-properties/{bigint-string/apply-options.utility.js → bigint-string-apply-options.utility.js} +4 -2
  448. package/dist/cjs/utility/api/get-default-string-format-properties/bigint-string-apply-options.utility.js.map +1 -0
  449. package/dist/{esm/utility/api/get-default-string-format-properties/customizer/apply.utility.d.ts → cjs/utility/api/get-default-string-format-properties/customizer-apply.utility.d.ts} +2 -2
  450. package/dist/cjs/utility/api/get-default-string-format-properties/{customizer/apply.utility.js → customizer-apply.utility.js} +3 -2
  451. package/dist/cjs/utility/api/get-default-string-format-properties/customizer-apply.utility.js.map +1 -0
  452. package/dist/cjs/utility/api/get-default-string-format-properties/index.d.ts +2 -0
  453. package/dist/cjs/utility/api/get-default-string-format-properties/utility.js +2 -2
  454. package/dist/cjs/utility/api/get-default-string-format-properties/utility.js.map +1 -1
  455. package/dist/cjs/utility/api/index.d.ts +2 -2
  456. package/dist/cjs/utility/api/route/apply-dto-metadata.utility.js +12 -4
  457. package/dist/cjs/utility/api/route/apply-dto-metadata.utility.js.map +1 -1
  458. package/dist/cjs/utility/api/route/discriminator/build-open-api-schema.utility.js.map +1 -1
  459. package/dist/cjs/utility/api/route/discriminator/resolve-dto.utility.js +1 -1
  460. package/dist/cjs/utility/api/route/discriminator/resolve-dto.utility.js.map +1 -1
  461. package/dist/cjs/utility/api/route/discriminator/validate-dto-properties.utility.js +2 -2
  462. package/dist/cjs/utility/api/route/discriminator/validate-dto-properties.utility.js.map +1 -1
  463. package/dist/cjs/utility/api/route/{dto/collect-with-registered-children.utility.js → dto-collect-with-registered-children.utility.js} +2 -2
  464. package/dist/cjs/utility/api/route/dto-collect-with-registered-children.utility.js.map +1 -0
  465. package/dist/cjs/utility/api/route/index.d.ts +2 -2
  466. package/dist/cjs/utility/api/route/response/project-relation.utility.js +9 -1
  467. package/dist/cjs/utility/api/route/response/project-relation.utility.js.map +1 -1
  468. package/dist/cjs/utility/api/route/{validation/flatten-errors.utility.js → validation-flatten-errors.utility.js} +1 -1
  469. package/dist/cjs/utility/api/route/validation-flatten-errors.utility.js.map +1 -0
  470. package/dist/cjs/utility/authorization/permission/set-matches.utility.js +1 -0
  471. package/dist/cjs/utility/authorization/permission/set-matches.utility.js.map +1 -1
  472. package/dist/cjs/utility/authorization/resolve-default-principal.utility.js +1 -0
  473. package/dist/cjs/utility/authorization/resolve-default-principal.utility.js.map +1 -1
  474. package/dist/cjs/utility/dto/build-decorator.utility.js +14 -4
  475. package/dist/cjs/utility/dto/build-decorator.utility.js.map +1 -1
  476. package/dist/cjs/utility/dto/generate/cache-key.utility.d.ts +1 -1
  477. package/dist/cjs/utility/dto/generate/cache-key.utility.js +2 -2
  478. package/dist/cjs/utility/dto/generate/cache-key.utility.js.map +1 -1
  479. package/dist/cjs/utility/dto/generate/core.utility.d.ts +3 -1
  480. package/dist/cjs/utility/dto/generate/core.utility.js +46 -44
  481. package/dist/cjs/utility/dto/generate/core.utility.js.map +1 -1
  482. package/dist/cjs/utility/dto/generate/dynamic.utility.js +11 -3
  483. package/dist/cjs/utility/dto/generate/dynamic.utility.js.map +1 -1
  484. package/dist/cjs/utility/dto/generate/exception.utility.js +9 -1
  485. package/dist/cjs/utility/dto/generate/exception.utility.js.map +1 -1
  486. package/dist/cjs/utility/dto/generate/filter-decorator.utility.d.ts +4 -1
  487. package/dist/cjs/utility/dto/generate/filter-decorator.utility.js +17 -2
  488. package/dist/cjs/utility/dto/generate/filter-decorator.utility.js.map +1 -1
  489. package/dist/cjs/utility/dto/generate/get-list-query-properties.utility.d.ts +25 -0
  490. package/dist/cjs/utility/dto/generate/get-list-query-properties.utility.js +107 -0
  491. package/dist/cjs/utility/dto/generate/get-list-query-properties.utility.js.map +1 -0
  492. package/dist/cjs/utility/dto/generate/get-list-response.utility.js +9 -1
  493. package/dist/cjs/utility/dto/generate/get-list-response.utility.js.map +1 -1
  494. package/dist/cjs/utility/dto/generate/manual-child.utility.js +2 -2
  495. package/dist/cjs/utility/dto/generate/manual-child.utility.js.map +1 -1
  496. package/dist/cjs/utility/dto/get/get-list-query-base-class.utility.d.ts +3 -1
  497. package/dist/cjs/utility/dto/get/get-list-query-base-class.utility.js +19 -4
  498. package/dist/cjs/utility/dto/get/get-list-query-base-class.utility.js.map +1 -1
  499. package/dist/cjs/utility/dto/handle-date-property.utility.js +9 -1
  500. package/dist/cjs/utility/dto/handle-date-property.utility.js.map +1 -1
  501. package/dist/cjs/utility/dto/is/property/index.d.ts +1 -0
  502. package/dist/cjs/utility/dto/is/property/infrastructure-timestamp.utility.d.ts +7 -0
  503. package/dist/cjs/utility/dto/is/property/infrastructure-timestamp.utility.js +45 -0
  504. package/dist/cjs/utility/dto/is/property/infrastructure-timestamp.utility.js.map +1 -0
  505. package/dist/cjs/utility/dto/is/property/should-be-marked.utility.d.ts +2 -2
  506. package/dist/cjs/utility/dto/is/property/should-be-marked.utility.js +14 -5
  507. package/dist/cjs/utility/dto/is/property/should-be-marked.utility.js.map +1 -1
  508. package/dist/cjs/utility/dto/is/should-be-generated.utility.js +9 -1
  509. package/dist/cjs/utility/dto/is/should-be-generated.utility.js.map +1 -1
  510. package/dist/cjs/utility/dto/manual/index.d.ts +1 -0
  511. package/dist/cjs/utility/dto/manual/property-metadata/get.utility.d.ts +8 -0
  512. package/dist/cjs/utility/dto/manual/property-metadata/get.utility.js +32 -0
  513. package/dist/cjs/utility/dto/manual/property-metadata/get.utility.js.map +1 -0
  514. package/dist/cjs/utility/dto/manual/property-metadata/index.d.ts +2 -0
  515. package/dist/cjs/utility/dto/manual/property-metadata/register.utility.d.ts +9 -0
  516. package/dist/cjs/utility/dto/manual/property-metadata/register.utility.js +22 -0
  517. package/dist/cjs/utility/dto/manual/property-metadata/register.utility.js.map +1 -0
  518. package/dist/cjs/utility/queue-auto-context-retry.utility.js +1 -1
  519. package/dist/cjs/utility/queue-auto-context-retry.utility.js.map +1 -1
  520. package/dist/cjs/validator/has/paired-custom-suffixes-fields.validator.js +21 -25
  521. package/dist/cjs/validator/has/paired-custom-suffixes-fields.validator.js.map +1 -1
  522. package/dist/cjs/validator/must-match-one-of-schemas.validator.js +0 -1
  523. package/dist/cjs/validator/must-match-one-of-schemas.validator.js.map +1 -1
  524. package/dist/esm/class/api/authorization/bootstrap-validation.service.class.d.ts +9 -2
  525. package/dist/esm/class/api/authorization/bootstrap-validation.service.class.js +32 -5
  526. package/dist/esm/class/api/authorization/bootstrap-validation.service.class.js.map +1 -1
  527. package/dist/esm/class/api/authorization/engine.class.js +1 -0
  528. package/dist/esm/class/api/authorization/engine.class.js.map +1 -1
  529. package/dist/esm/class/api/authorization/guard.class.js +1 -0
  530. package/dist/esm/class/api/authorization/guard.class.js.map +1 -1
  531. package/dist/esm/class/api/authorization/hook/permission/cache.class.d.ts +2 -0
  532. package/dist/esm/class/api/authorization/hook/permission/cache.class.js +5 -1
  533. package/dist/esm/class/api/authorization/hook/permission/cache.class.js.map +1 -1
  534. package/dist/esm/class/api/authorization/hook/permission/resolver.class.js +1 -1
  535. package/dist/esm/class/api/authorization/hook/permission/resolver.class.js.map +1 -1
  536. package/dist/esm/class/api/authorization/iam/attachment/cache.class.d.ts +2 -0
  537. package/dist/esm/class/api/authorization/iam/attachment/cache.class.js +5 -1
  538. package/dist/esm/class/api/authorization/iam/attachment/cache.class.js.map +1 -1
  539. package/dist/esm/class/api/authorization/iam/attachment/resolver.class.js +1 -1
  540. package/dist/esm/class/api/authorization/iam/attachment/resolver.class.js.map +1 -1
  541. package/dist/esm/class/api/authorization/iam/document/cache.class.d.ts +2 -0
  542. package/dist/esm/class/api/authorization/iam/document/cache.class.js +5 -1
  543. package/dist/esm/class/api/authorization/iam/document/cache.class.js.map +1 -1
  544. package/dist/esm/class/api/authorization/iam/document/resolver.class.js +2 -2
  545. package/dist/esm/class/api/authorization/iam/document/resolver.class.js.map +1 -1
  546. package/dist/esm/class/api/authorization/iam/document/validator.class.js +1 -0
  547. package/dist/esm/class/api/authorization/iam/document/validator.class.js.map +1 -1
  548. package/dist/esm/class/api/authorization/iam/engine.class.js +2 -1
  549. package/dist/esm/class/api/authorization/iam/engine.class.js.map +1 -1
  550. package/dist/esm/class/api/authorization/policy/base.class.js +1 -0
  551. package/dist/esm/class/api/authorization/policy/base.class.js.map +1 -1
  552. package/dist/esm/class/api/authorization/policy/discovery-service.class.d.ts +1 -1
  553. package/dist/esm/class/api/authorization/policy/discovery-service.class.js +2 -2
  554. package/dist/esm/class/api/authorization/policy/discovery-service.class.js.map +1 -1
  555. package/dist/esm/class/api/authorization/policy/executor.class.js +1 -1
  556. package/dist/esm/class/api/authorization/policy/executor.class.js.map +1 -1
  557. package/dist/esm/class/api/authorization/policy/registry.class.js +2 -2
  558. package/dist/esm/class/api/authorization/policy/registry.class.js.map +1 -1
  559. package/dist/esm/class/api/authorization/resolver/cache.class.d.ts +11 -0
  560. package/dist/esm/class/api/authorization/resolver/cache.class.js +87 -0
  561. package/dist/esm/class/api/authorization/resolver/cache.class.js.map +1 -0
  562. package/dist/esm/class/api/authorization/resolver/index.d.ts +1 -0
  563. package/dist/esm/class/api/authorization/runtime.class.d.ts +1 -1
  564. package/dist/esm/class/api/authorization/runtime.class.js +11 -10
  565. package/dist/esm/class/api/authorization/runtime.class.js.map +1 -1
  566. package/dist/esm/class/api/authorization/simulator.class.d.ts +1 -1
  567. package/dist/esm/class/api/authorization/simulator.class.js +1 -1
  568. package/dist/esm/class/api/authorization/simulator.class.js.map +1 -1
  569. package/dist/esm/class/api/controller/get-list/index.d.ts +1 -0
  570. package/dist/esm/class/api/controller/get-list/query/index.d.ts +2 -0
  571. package/dist/esm/class/api/controller/get-list/query/plan-compiler.class.d.ts +27 -0
  572. package/dist/esm/class/api/controller/get-list/query/plan-compiler.class.js +353 -0
  573. package/dist/esm/class/api/controller/get-list/query/plan-compiler.class.js.map +1 -0
  574. package/dist/esm/class/api/controller/get-list/query/runtime.class.d.ts +11 -0
  575. package/dist/esm/class/api/controller/get-list/query/runtime.class.js +264 -0
  576. package/dist/esm/class/api/controller/get-list/query/runtime.class.js.map +1 -0
  577. package/dist/esm/class/api/controller/index.d.ts +1 -0
  578. package/dist/esm/class/api/function/context-storage.class.d.ts +7 -1
  579. package/dist/esm/class/api/function/context-storage.class.js +72 -7
  580. package/dist/esm/class/api/function/context-storage.class.js.map +1 -1
  581. package/dist/esm/class/api/function/custom-runtime.class.d.ts +1 -0
  582. package/dist/esm/class/api/function/custom-runtime.class.js +13 -2
  583. package/dist/esm/class/api/function/custom-runtime.class.js.map +1 -1
  584. package/dist/esm/class/api/function/index.d.ts +2 -1
  585. package/dist/esm/class/api/function/step-runtime.class.d.ts +2 -0
  586. package/dist/esm/class/api/function/step-runtime.class.js +30 -0
  587. package/dist/esm/class/api/function/step-runtime.class.js.map +1 -1
  588. package/dist/esm/class/api/function/transaction/exception/commit-unknown-outcome.class.d.ts +23 -0
  589. package/dist/esm/class/api/function/transaction/exception/commit-unknown-outcome.class.js +67 -0
  590. package/dist/esm/class/api/function/transaction/exception/commit-unknown-outcome.class.js.map +1 -0
  591. package/dist/esm/class/api/function/transaction/exception/index.d.ts +3 -0
  592. package/dist/esm/class/api/function/transaction/exception/post-commit.class.d.ts +20 -0
  593. package/dist/esm/class/api/function/transaction/exception/post-commit.class.js +62 -0
  594. package/dist/esm/class/api/function/transaction/exception/post-commit.class.js.map +1 -0
  595. package/dist/esm/class/api/function/transaction/exception/rollback.class.d.ts +26 -0
  596. package/dist/esm/class/api/function/transaction/exception/rollback.class.js +72 -0
  597. package/dist/esm/class/api/function/transaction/exception/rollback.class.js.map +1 -0
  598. package/dist/esm/class/api/function/transaction/index.d.ts +5 -0
  599. package/dist/esm/class/api/function/transaction/lifecycle.class.d.ts +13 -0
  600. package/dist/esm/class/api/function/transaction/lifecycle.class.js +226 -0
  601. package/dist/esm/class/api/function/transaction/lifecycle.class.js.map +1 -0
  602. package/dist/esm/class/api/function/transaction/registry.class.d.ts +23 -0
  603. package/dist/esm/class/api/function/transaction/registry.class.js +117 -0
  604. package/dist/esm/class/api/function/transaction/registry.class.js.map +1 -0
  605. package/dist/esm/class/api/function/transaction/runtime.class.d.ts +11 -0
  606. package/dist/esm/class/api/function/transaction/runtime.class.js +114 -0
  607. package/dist/esm/class/api/function/transaction/runtime.class.js.map +1 -0
  608. package/dist/esm/class/api/function/{transaction-scope.class.d.ts → transaction/scope.class.d.ts} +3 -1
  609. package/dist/esm/class/api/function/transaction/scope.class.js +76 -0
  610. package/dist/esm/class/api/function/transaction/scope.class.js.map +1 -0
  611. package/dist/esm/class/api/index.d.ts +1 -1
  612. package/dist/esm/class/api/route-runtime.class.d.ts +1 -0
  613. package/dist/esm/class/api/route-runtime.class.js +113 -54
  614. package/dist/esm/class/api/route-runtime.class.js.map +1 -1
  615. package/dist/esm/class/api/subscriber/discovery-service.class.js +3 -3
  616. package/dist/esm/class/api/subscriber/discovery-service.class.js.map +1 -1
  617. package/dist/esm/class/api/subscriber/executor.class.js +14 -6
  618. package/dist/esm/class/api/subscriber/executor.class.js.map +1 -1
  619. package/dist/esm/class/api/subscriber/index.d.ts +7 -7
  620. package/dist/esm/class/api/subscriber/registry.class.d.ts +3 -0
  621. package/dist/esm/class/api/subscriber/registry.class.js +12 -1
  622. package/dist/esm/class/api/subscriber/registry.class.js.map +1 -1
  623. package/dist/esm/class/utility/dto/exception/details/foreign-key-violation.class.js +9 -1
  624. package/dist/esm/class/utility/dto/exception/details/foreign-key-violation.class.js.map +1 -1
  625. package/dist/esm/class/utility/dto/exception/details/unique-violation.class.js +9 -1
  626. package/dist/esm/class/utility/dto/exception/details/unique-violation.class.js.map +1 -1
  627. package/dist/esm/class/utility/dto/property/factory/number.class.js +9 -1
  628. package/dist/esm/class/utility/dto/property/factory/number.class.js.map +1 -1
  629. package/dist/esm/class/utility/dto/property/factory/relation.class.js +9 -1
  630. package/dist/esm/class/utility/dto/property/factory/relation.class.js.map +1 -1
  631. package/dist/esm/class/utility/dto/strategy/body.class.js +9 -1
  632. package/dist/esm/class/utility/dto/strategy/body.class.js.map +1 -1
  633. package/dist/esm/class/utility/dto/strategy/query.class.js +9 -1
  634. package/dist/esm/class/utility/dto/strategy/query.class.js.map +1 -1
  635. package/dist/esm/class/utility/dto/strategy/request.class.js +9 -1
  636. package/dist/esm/class/utility/dto/strategy/request.class.js.map +1 -1
  637. package/dist/esm/class/utility/dto/strategy/response.class.js +9 -1
  638. package/dist/esm/class/utility/dto/strategy/response.class.js.map +1 -1
  639. package/dist/esm/constant/decorator/api/controller.constant.d.ts +1 -0
  640. package/dist/esm/constant/decorator/api/controller.constant.js +2 -0
  641. package/dist/esm/constant/decorator/api/controller.constant.js.map +1 -1
  642. package/dist/esm/constant/decorator/api/function.constant.js +1 -0
  643. package/dist/esm/constant/decorator/api/function.constant.js.map +1 -1
  644. package/dist/esm/constant/factory-dto-get-list-query.constant.d.ts +1 -0
  645. package/dist/esm/constant/factory-dto-get-list-query.constant.js +2 -0
  646. package/dist/esm/constant/factory-dto-get-list-query.constant.js.map +1 -1
  647. package/dist/esm/constant/filter/index.d.ts +1 -0
  648. package/dist/esm/constant/filter/operator-registry.constant.d.ts +9 -0
  649. package/dist/esm/constant/filter/operator-registry.constant.js +167 -0
  650. package/dist/esm/constant/filter/operator-registry.constant.js.map +1 -0
  651. package/dist/esm/constant/index.d.ts +0 -1
  652. package/dist/esm/constant/swagger/index.d.ts +1 -0
  653. package/dist/esm/constant/swagger/metadata.constant.d.ts +4 -0
  654. package/dist/esm/constant/swagger/metadata.constant.js +8 -0
  655. package/dist/esm/constant/swagger/metadata.constant.js.map +1 -0
  656. package/dist/esm/constant/utility/api/get-default-string-format-properties/bigint-string/constant.d.ts +4 -3
  657. package/dist/esm/constant/utility/api/get-default-string-format-properties/bigint-string/constant.js.map +1 -1
  658. package/dist/esm/constant/utility/api/get-default-string-format-properties/bigint-string/sign/default.constant.d.ts +2 -2
  659. package/dist/esm/constant/utility/api/get-default-string-format-properties/bigint-string/sign/default.constant.js +3 -1
  660. package/dist/esm/constant/utility/api/get-default-string-format-properties/bigint-string/sign/default.constant.js.map +1 -1
  661. package/dist/esm/constant/utility/api/get-default-string-format-properties/bigint-string/sign/properties.constant.d.ts +3 -2
  662. package/dist/esm/constant/utility/api/get-default-string-format-properties/bigint-string/sign/properties.constant.js +11 -9
  663. package/dist/esm/constant/utility/api/get-default-string-format-properties/bigint-string/sign/properties.constant.js.map +1 -1
  664. package/dist/esm/constant/utility/api/get-default-string-format-properties/constant.d.ts +4 -3
  665. package/dist/esm/constant/utility/api/get-default-string-format-properties/constant.js +3 -1
  666. package/dist/esm/constant/utility/api/get-default-string-format-properties/constant.js.map +1 -1
  667. package/dist/esm/constant/utility/api/get-default-string-format-properties/{customizer/map.constant.d.ts → customizer-map.constant.d.ts} +1 -1
  668. package/dist/esm/constant/utility/api/get-default-string-format-properties/customizer-map.constant.js +35 -0
  669. package/dist/esm/constant/utility/api/get-default-string-format-properties/customizer-map.constant.js.map +1 -0
  670. package/dist/esm/constant/utility/api/get-default-string-format-properties/index.d.ts +1 -0
  671. package/dist/esm/constant/utility/api/index.d.ts +1 -1
  672. package/dist/esm/constant/utility/dto/constant.d.ts +2 -1
  673. package/dist/esm/constant/utility/dto/constant.js +12 -2
  674. package/dist/esm/constant/utility/dto/constant.js.map +1 -1
  675. package/dist/esm/constant/utility/dto/index.d.ts +1 -0
  676. package/dist/esm/constant/utility/dto/manual-property-metadata.constant.d.ts +3 -0
  677. package/dist/esm/constant/utility/dto/manual-property-metadata.constant.js +7 -0
  678. package/dist/esm/constant/utility/dto/manual-property-metadata.constant.js.map +1 -0
  679. package/dist/esm/constant/utility/index.d.ts +1 -1
  680. package/dist/esm/decorator/api/function/create.decorator.js +15 -3
  681. package/dist/esm/decorator/api/function/create.decorator.js.map +1 -1
  682. package/dist/esm/decorator/api/function/custom.decorator.js +11 -2
  683. package/dist/esm/decorator/api/function/custom.decorator.js.map +1 -1
  684. package/dist/esm/decorator/api/function/decorator.js +16 -8
  685. package/dist/esm/decorator/api/function/decorator.js.map +1 -1
  686. package/dist/esm/decorator/api/function/delete.decorator.js +16 -4
  687. package/dist/esm/decorator/api/function/delete.decorator.js.map +1 -1
  688. package/dist/esm/decorator/api/function/get/decorator.js +21 -15
  689. package/dist/esm/decorator/api/function/get/decorator.js.map +1 -1
  690. package/dist/esm/decorator/api/function/get/list.decorator.js +15 -3
  691. package/dist/esm/decorator/api/function/get/list.decorator.js.map +1 -1
  692. package/dist/esm/decorator/api/function/get/many.decorator.js +15 -3
  693. package/dist/esm/decorator/api/function/get/many.decorator.js.map +1 -1
  694. package/dist/esm/decorator/api/function/step.decorator.js +11 -2
  695. package/dist/esm/decorator/api/function/step.decorator.js.map +1 -1
  696. package/dist/esm/decorator/api/function/update.decorator.js +48 -29
  697. package/dist/esm/decorator/api/function/update.decorator.js.map +1 -1
  698. package/dist/esm/decorator/api/index.d.ts +2 -2
  699. package/dist/esm/decorator/api/method.decorator.js +11 -3
  700. package/dist/esm/decorator/api/method.decorator.js.map +1 -1
  701. package/dist/esm/decorator/api/property/boolean.decorator.js +11 -3
  702. package/dist/esm/decorator/api/property/boolean.decorator.js.map +1 -1
  703. package/dist/esm/decorator/api/property/date.decorator.js +11 -3
  704. package/dist/esm/decorator/api/property/date.decorator.js.map +1 -1
  705. package/dist/esm/decorator/api/property/enum.decorator.js +2 -2
  706. package/dist/esm/decorator/api/property/number.decorator.js +11 -3
  707. package/dist/esm/decorator/api/property/number.decorator.js.map +1 -1
  708. package/dist/esm/decorator/api/property/object.decorator.js +3 -3
  709. package/dist/esm/decorator/api/property/string.decorator.js +11 -3
  710. package/dist/esm/decorator/api/property/string.decorator.js.map +1 -1
  711. package/dist/esm/decorator/api/property/uuid.decorator.js +11 -3
  712. package/dist/esm/decorator/api/property/uuid.decorator.js.map +1 -1
  713. package/dist/esm/decorator/api/route-custom.decorator.js +10 -2
  714. package/dist/esm/decorator/api/route-custom.decorator.js.map +1 -1
  715. package/dist/esm/decorator/api/service/decorator.js +12 -2
  716. package/dist/esm/decorator/api/service/decorator.js.map +1 -1
  717. package/dist/esm/decorator/api/service/index.d.ts +2 -2
  718. package/dist/esm/decorator/api/subscriber/index.d.ts +2 -2
  719. package/dist/esm/enum/class/authorization/cache-mode.enum.d.ts +4 -0
  720. package/dist/esm/enum/class/authorization/cache-mode.enum.js +8 -0
  721. package/dist/esm/enum/class/authorization/cache-mode.enum.js.map +1 -0
  722. package/dist/esm/enum/class/authorization/index.d.ts +1 -0
  723. package/dist/esm/enum/decorator/api/controller/get-list/index.d.ts +1 -0
  724. package/dist/esm/enum/decorator/api/controller/get-list/query/filter/index.d.ts +1 -0
  725. package/dist/esm/enum/decorator/api/controller/get-list/query/filter/missing-behavior.enum.d.ts +5 -0
  726. package/dist/esm/enum/decorator/api/controller/get-list/query/filter/missing-behavior.enum.js +9 -0
  727. package/dist/esm/enum/decorator/api/controller/get-list/query/filter/missing-behavior.enum.js.map +1 -0
  728. package/dist/esm/enum/decorator/api/controller/get-list/query/index.d.ts +2 -0
  729. package/dist/esm/enum/decorator/api/controller/get-list/query/unlisted-fields.enum.d.ts +4 -0
  730. package/dist/esm/enum/decorator/api/controller/get-list/query/unlisted-fields.enum.js +8 -0
  731. package/dist/esm/enum/decorator/api/controller/get-list/query/unlisted-fields.enum.js.map +1 -0
  732. package/dist/esm/enum/decorator/api/controller/index.d.ts +1 -0
  733. package/dist/esm/enum/decorator/api/function/context-storage-kind.enum.d.ts +5 -0
  734. package/dist/esm/enum/decorator/api/function/context-storage-kind.enum.js +9 -0
  735. package/dist/esm/enum/decorator/api/function/context-storage-kind.enum.js.map +1 -0
  736. package/dist/esm/enum/decorator/api/function/index.d.ts +2 -1
  737. package/dist/esm/enum/decorator/api/function/transaction/event-status.enum.d.ts +4 -0
  738. package/dist/esm/enum/decorator/api/function/transaction/event-status.enum.js +8 -0
  739. package/dist/esm/enum/decorator/api/function/transaction/event-status.enum.js.map +1 -0
  740. package/dist/esm/enum/decorator/api/function/transaction/failure-stage.enum.d.ts +10 -0
  741. package/dist/esm/enum/decorator/api/function/transaction/failure-stage.enum.js +14 -0
  742. package/dist/esm/enum/decorator/api/function/transaction/failure-stage.enum.js.map +1 -0
  743. package/dist/esm/enum/decorator/api/function/transaction/index.d.ts +6 -0
  744. package/dist/esm/enum/decorator/api/function/{transaction-mode.enum.js → transaction/mode.enum.js} +1 -1
  745. package/dist/esm/enum/decorator/api/function/transaction/mode.enum.js.map +1 -0
  746. package/dist/esm/enum/decorator/api/function/transaction/outcome.enum.d.ts +5 -0
  747. package/dist/esm/enum/decorator/api/function/transaction/outcome.enum.js +9 -0
  748. package/dist/esm/enum/decorator/api/function/transaction/outcome.enum.js.map +1 -0
  749. package/dist/esm/enum/decorator/api/function/transaction/owner-kind.enum.d.ts +5 -0
  750. package/dist/esm/enum/decorator/api/function/transaction/owner-kind.enum.js +9 -0
  751. package/dist/esm/enum/decorator/api/function/transaction/owner-kind.enum.js.map +1 -0
  752. package/dist/esm/enum/decorator/api/function/transaction/trace-type.enum.d.ts +3 -0
  753. package/dist/esm/enum/decorator/api/function/transaction/trace-type.enum.js +7 -0
  754. package/dist/esm/enum/decorator/api/function/transaction/trace-type.enum.js.map +1 -0
  755. package/dist/esm/enum/decorator/api/index.d.ts +4 -4
  756. package/dist/esm/enum/filter/index.d.ts +1 -0
  757. package/dist/esm/enum/filter/operand.enum.d.ts +6 -0
  758. package/dist/esm/enum/filter/operand.enum.js +10 -0
  759. package/dist/esm/enum/filter/operand.enum.js.map +1 -0
  760. package/dist/esm/enum/index.d.ts +1 -1
  761. package/dist/esm/enum/utility/get-default-string-format-properties-bigint-string-sign.enum.d.ts +5 -0
  762. package/dist/esm/enum/utility/get-default-string-format-properties-bigint-string-sign.enum.js +9 -0
  763. package/dist/esm/enum/utility/get-default-string-format-properties-bigint-string-sign.enum.js.map +1 -0
  764. package/dist/esm/enum/utility/index.d.ts +2 -1
  765. package/dist/esm/enum/utility/{dto/manual/property-metadata/decorator.enum.js → manual-dto-property-metadata-decorator.enum.js} +1 -1
  766. package/dist/esm/enum/utility/manual-dto-property-metadata-decorator.enum.js.map +1 -0
  767. package/dist/esm/enum/validator/index.d.ts +0 -1
  768. package/dist/esm/factory/api-controller.factory.js +40 -13
  769. package/dist/esm/factory/api-controller.factory.js.map +1 -1
  770. package/dist/esm/index.js +24 -8
  771. package/dist/esm/index.js.map +1 -1
  772. package/dist/esm/interface/class/api/authorization/cache/index.d.ts +2 -0
  773. package/dist/esm/interface/class/api/authorization/cache/memory-options.interface.d.ts +6 -0
  774. package/dist/esm/interface/class/api/authorization/cache/source-first-options.interface.d.ts +4 -0
  775. package/dist/esm/interface/class/api/authorization/decision/interface.d.ts +2 -2
  776. package/dist/esm/interface/class/api/authorization/decision/trace.interface.d.ts +2 -2
  777. package/dist/esm/interface/class/api/authorization/index.d.ts +1 -0
  778. package/dist/esm/interface/class/api/authorization/module-options/async.interface.d.ts +2 -2
  779. package/dist/esm/interface/class/api/authorization/module-options/interface.d.ts +2 -0
  780. package/dist/esm/interface/class/api/authorization/policy/attachment/source.interface.d.ts +1 -1
  781. package/dist/esm/interface/class/api/authorization/policy/subscriber/context/interface.d.ts +1 -1
  782. package/dist/esm/interface/class/api/controller/get-list/index.d.ts +1 -0
  783. package/dist/esm/interface/class/api/controller/get-list/query/ast/index.d.ts +2 -0
  784. package/dist/esm/interface/class/api/controller/get-list/query/ast/interface.d.ts +4 -0
  785. package/dist/esm/interface/class/api/controller/get-list/query/ast/node.interface.d.ts +7 -0
  786. package/dist/esm/interface/class/api/controller/get-list/query/index.d.ts +5 -0
  787. package/dist/esm/interface/class/api/controller/get-list/query/operator.interface.d.ts +8 -0
  788. package/dist/esm/interface/class/api/controller/get-list/query/plan/condition.interface.d.ts +6 -0
  789. package/dist/esm/interface/class/api/controller/get-list/query/plan/filter/field.interface.d.ts +14 -0
  790. package/dist/esm/interface/class/api/controller/get-list/query/plan/filter/index.d.ts +2 -0
  791. package/dist/esm/interface/class/api/controller/get-list/query/plan/filter/interface.d.ts +7 -0
  792. package/dist/esm/interface/class/api/controller/get-list/query/plan/index.d.ts +4 -0
  793. package/dist/esm/interface/class/api/controller/get-list/query/plan/interface.d.ts +9 -0
  794. package/dist/esm/interface/class/api/controller/get-list/query/plan/order/field.interface.d.ts +4 -0
  795. package/dist/esm/interface/class/api/controller/get-list/query/plan/order/index.d.ts +2 -0
  796. package/dist/esm/interface/class/api/controller/get-list/query/plan/order/interface.d.ts +7 -0
  797. package/dist/esm/interface/class/api/controller/get-list/query/raw-group.interface.d.ts +5 -0
  798. package/dist/esm/interface/class/api/controller/get-list/query/runtime-result.interface.d.ts +10 -0
  799. package/dist/esm/interface/class/api/controller/index.d.ts +1 -0
  800. package/dist/esm/interface/class/api/function/context/interface.d.ts +1 -1
  801. package/dist/esm/interface/class/api/function/index.d.ts +1 -0
  802. package/dist/esm/interface/class/api/function/transaction/event/failed.interface.d.ts +11 -0
  803. package/dist/esm/interface/class/api/function/transaction/event/index.d.ts +2 -0
  804. package/dist/esm/interface/class/api/function/transaction/event/succeeded.interface.d.ts +10 -0
  805. package/dist/esm/interface/class/api/function/transaction/failure.interface.d.ts +6 -0
  806. package/dist/esm/interface/class/api/function/transaction/index.d.ts +4 -0
  807. package/dist/esm/interface/class/api/function/transaction/interface.d.ts +5 -0
  808. package/dist/esm/interface/class/api/function/transaction/owner/function.interface.d.ts +9 -0
  809. package/dist/esm/interface/class/api/function/transaction/owner/index.d.ts +3 -0
  810. package/dist/esm/interface/class/api/function/transaction/owner/route.interface.d.ts +7 -0
  811. package/dist/esm/interface/class/api/function/transaction/owner/scope.interface.d.ts +5 -0
  812. package/dist/esm/interface/class/api/route/runtime/generated/execution-options.interface.d.ts +1 -1
  813. package/dist/esm/interface/class/api/subscriber/function/execution/context/{data/interface.d.ts → data.interface.d.ts} +2 -2
  814. package/dist/esm/interface/class/api/subscriber/function/execution/context/index.d.ts +2 -1
  815. package/dist/esm/interface/class/api/subscriber/function/execution/context/update-data.interface.d.ts +12 -0
  816. package/dist/esm/interface/class/api/subscriber/function/index.d.ts +1 -0
  817. package/dist/esm/interface/class/api/subscriber/function/interface.d.ts +12 -2
  818. package/dist/esm/interface/class/api/subscriber/function/transaction/context/data.interface.d.ts +7 -0
  819. package/dist/esm/interface/class/api/subscriber/function/transaction/context/index.d.ts +2 -0
  820. package/dist/esm/interface/class/api/subscriber/function/transaction/context/interface.d.ts +4 -0
  821. package/dist/esm/interface/class/api/subscriber/index.d.ts +4 -4
  822. package/dist/esm/interface/class/api/subscriber/route/execution/context/data/extended.interface.d.ts +1 -1
  823. package/dist/esm/interface/decorator/api/controller/properties/route/base/index.d.ts +1 -0
  824. package/dist/esm/interface/decorator/api/controller/properties/route/base/interface.d.ts +2 -1
  825. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/request/load.interface.d.ts +2 -1
  826. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/response/load.interface.d.ts +1 -1
  827. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/index.d.ts +1 -0
  828. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/interface.d.ts +3 -2
  829. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/query/filter/index.d.ts +1 -0
  830. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/query/filter/interface.d.ts +6 -0
  831. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/query/index.d.ts +3 -0
  832. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/query/interface.d.ts +7 -0
  833. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/query/order/index.d.ts +1 -0
  834. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/query/order/interface.d.ts +6 -0
  835. package/dist/esm/interface/decorator/api/controller/properties/route/base/response/interface.d.ts +1 -1
  836. package/dist/esm/interface/decorator/api/controller/properties/route/base/transaction.interface.d.ts +4 -0
  837. package/dist/esm/interface/decorator/api/controller/properties.interface.d.ts +1 -1
  838. package/dist/esm/interface/decorator/api/function/update-executor-properties.interface.d.ts +2 -2
  839. package/dist/esm/interface/decorator/api/index.d.ts +3 -3
  840. package/dist/esm/interface/decorator/api/method-properties.interface.d.ts +5 -0
  841. package/dist/esm/interface/decorator/api/route/custom-properties.interface.d.ts +1 -1
  842. package/dist/esm/interface/decorator/api/route/metadata/interface.d.ts +2 -2
  843. package/dist/esm/interface/decorator/api/route/response/properties.interface.d.ts +1 -1
  844. package/dist/esm/interface/decorator/api/route/security/authentication-properties.interface.d.ts +1 -1
  845. package/dist/esm/interface/utility/dto-generate-cache-key.interface.d.ts +2 -0
  846. package/dist/esm/module/api/authorization.module.js +1 -0
  847. package/dist/esm/module/api/authorization.module.js.map +1 -1
  848. package/dist/esm/type/class/api/authorization/cache-options.type.d.ts +2 -0
  849. package/dist/esm/type/class/api/authorization/index.d.ts +1 -0
  850. package/dist/esm/type/class/api/authorization/policy/context/before/create-context.type.d.ts +1 -1
  851. package/dist/esm/type/class/api/authorization/policy/context/before/get/list-context.type.d.ts +1 -1
  852. package/dist/esm/type/class/api/authorization/policy/context/before/partial-update-context.type.d.ts +1 -1
  853. package/dist/esm/type/class/api/authorization/policy/context/before/update-context.type.d.ts +1 -1
  854. package/dist/esm/type/class/api/authorization/policy/hook/type.d.ts +1 -1
  855. package/dist/esm/type/class/api/authorization/policy/subscriber/index.d.ts +1 -1
  856. package/dist/esm/type/class/api/authorization/policy/subscriber/{permission-rule-options/without-transform.type.d.ts → permission-rule-options-without-transform.type.d.ts} +2 -2
  857. package/dist/esm/type/class/api/function/context-storage-entry.type.d.ts +13 -5
  858. package/dist/esm/type/class/api/function/index.d.ts +2 -0
  859. package/dist/esm/type/class/api/function/transaction/event.type.d.ts +2 -0
  860. package/dist/esm/type/class/api/function/transaction/index.d.ts +3 -0
  861. package/dist/esm/type/class/api/function/transaction/owner.type.d.ts +2 -0
  862. package/dist/esm/type/class/api/function/transaction/trace-type.type.d.ts +2 -0
  863. package/dist/esm/type/class/api/index.d.ts +1 -0
  864. package/dist/esm/type/class/api/subscriber/function/after/create-context.type.d.ts +1 -1
  865. package/dist/esm/type/class/api/subscriber/function/after/delete-context.type.d.ts +1 -1
  866. package/dist/esm/type/class/api/subscriber/function/after/get/context.type.d.ts +1 -1
  867. package/dist/esm/type/class/api/subscriber/function/after/get/list-context.type.d.ts +1 -1
  868. package/dist/esm/type/class/api/subscriber/function/after/get/many-context.type.d.ts +1 -1
  869. package/dist/esm/type/class/api/subscriber/function/after/update-context.type.d.ts +1 -1
  870. package/dist/esm/type/class/api/subscriber/function/before/create-context.type.d.ts +1 -1
  871. package/dist/esm/type/class/api/subscriber/function/before/delete-context.type.d.ts +1 -1
  872. package/dist/esm/type/class/api/subscriber/function/before/get/context.type.d.ts +1 -1
  873. package/dist/esm/type/class/api/subscriber/function/before/get/list-context.type.d.ts +1 -1
  874. package/dist/esm/type/class/api/subscriber/function/before/get/many-context.type.d.ts +1 -1
  875. package/dist/esm/type/class/api/subscriber/function/before/update-context.type.d.ts +3 -2
  876. package/dist/esm/type/class/api/subscriber/function/{execution/context/data.type.d.ts → execution-context-data.type.d.ts} +4 -4
  877. package/dist/esm/type/class/api/subscriber/function/index.d.ts +1 -1
  878. package/dist/esm/type/class/api/subscriber/function/transaction/data.type.d.ts +1 -1
  879. package/dist/esm/type/decorator/api/controller/get-list/index.d.ts +1 -0
  880. package/dist/esm/type/decorator/api/controller/get-list/query/dto-contract.type.d.ts +14 -0
  881. package/dist/esm/type/decorator/api/controller/get-list/query/field/disabled.type.d.ts +6 -0
  882. package/dist/esm/type/decorator/api/controller/get-list/query/field/index.d.ts +1 -0
  883. package/dist/esm/type/decorator/api/controller/get-list/query/filter/condition.type.d.ts +19 -0
  884. package/dist/esm/type/decorator/api/controller/get-list/query/filter/field/enabled.type.d.ts +15 -0
  885. package/dist/esm/type/decorator/api/controller/get-list/query/filter/field/index.d.ts +3 -0
  886. package/dist/esm/type/decorator/api/controller/get-list/query/filter/field/map.type.d.ts +5 -0
  887. package/dist/esm/type/decorator/api/controller/get-list/query/filter/field/type.d.ts +3 -0
  888. package/dist/esm/type/decorator/api/controller/get-list/query/filter/index.d.ts +3 -0
  889. package/dist/esm/type/decorator/api/controller/get-list/query/filter/operation-for-value.type.d.ts +2 -0
  890. package/dist/esm/type/decorator/api/controller/get-list/query/index.d.ts +6 -0
  891. package/dist/esm/type/decorator/api/controller/get-list/query/order/field/enabled.type.d.ts +6 -0
  892. package/dist/esm/type/decorator/api/controller/get-list/query/order/field/index.d.ts +3 -0
  893. package/dist/esm/type/decorator/api/controller/get-list/query/order/field/map.type.d.ts +3 -0
  894. package/dist/esm/type/decorator/api/controller/get-list/query/order/field/type.d.ts +3 -0
  895. package/dist/esm/type/decorator/api/controller/get-list/query/order/index.d.ts +1 -0
  896. package/dist/esm/type/decorator/api/controller/get-list/query/path/direct-scalar.type.d.ts +4 -0
  897. package/dist/esm/type/decorator/api/controller/get-list/query/path/filter.type.d.ts +3 -0
  898. package/dist/esm/type/decorator/api/controller/get-list/query/path/index.d.ts +7 -0
  899. package/dist/esm/type/decorator/api/controller/get-list/query/path/one-hop-to-one-scalar.type.d.ts +7 -0
  900. package/dist/esm/type/decorator/api/controller/get-list/query/path/order.type.d.ts +2 -0
  901. package/dist/esm/type/decorator/api/controller/get-list/query/path/scalar-value.type.d.ts +1 -0
  902. package/dist/esm/type/decorator/api/controller/get-list/query/path/to-one-relation.type.d.ts +2 -0
  903. package/dist/esm/type/decorator/api/controller/get-list/query/path/value.type.d.ts +2 -0
  904. package/dist/esm/type/decorator/api/controller/{get-list-query.type.d.ts → get-list/query/type.d.ts} +2 -2
  905. package/dist/esm/type/decorator/api/controller/index.d.ts +1 -1
  906. package/dist/esm/type/decorator/api/controller/properties-route.type.d.ts +2 -1
  907. package/dist/esm/type/decorator/api/route/{custom/dto-properties.type.d.ts → custom-dto-properties.type.d.ts} +3 -3
  908. package/dist/{cjs/type/decorator/api/route/discriminated/dto-properties.type.d.ts → esm/type/decorator/api/route/discriminated-dto-properties.type.d.ts} +1 -1
  909. package/dist/esm/type/decorator/api/route/index.d.ts +2 -2
  910. package/dist/{cjs/type/utility/api/discriminator/validate/config-properties.type.d.ts → esm/type/utility/api/discriminator-validate-config-properties.type.d.ts} +1 -1
  911. package/dist/esm/type/utility/api/get-default-string-format-properties/bigint-string/index.d.ts +1 -1
  912. package/dist/esm/type/utility/api/get-default-string-format-properties/bigint-string/options.type.d.ts +2 -2
  913. package/dist/esm/type/utility/api/get-default-string-format-properties/bigint-string/{sign/properties.type.d.ts → sign-properties.type.d.ts} +1 -1
  914. package/dist/esm/type/utility/api/index.d.ts +1 -1
  915. package/dist/esm/type/utility/dto/index.d.ts +1 -1
  916. package/dist/esm/type/utility/dto/{manual/property-metadata.type.d.ts → manual-property-metadata.type.d.ts} +2 -2
  917. package/dist/esm/type/utility/index.d.ts +1 -0
  918. package/dist/esm/type/utility/non-empty-readonly-array.type.d.ts +1 -0
  919. package/dist/esm/type/validator/has-paired-custom-suffixes-fields/index.d.ts +0 -1
  920. package/dist/esm/utility/api/controller/apply/decorators.utility.d.ts +3 -1
  921. package/dist/esm/utility/api/controller/apply/decorators.utility.js +17 -3
  922. package/dist/esm/utility/api/controller/apply/decorators.utility.js.map +1 -1
  923. package/dist/esm/utility/api/controller/apply/metadata.utility.d.ts +3 -1
  924. package/dist/esm/utility/api/controller/apply/metadata.utility.js +14 -5
  925. package/dist/esm/utility/api/controller/apply/metadata.utility.js.map +1 -1
  926. package/dist/esm/utility/api/controller/build-route-documentation.utility.js +9 -1
  927. package/dist/esm/utility/api/controller/build-route-documentation.utility.js.map +1 -1
  928. package/dist/esm/utility/api/controller/get/dto.utility.d.ts +3 -1
  929. package/dist/esm/utility/api/controller/get/dto.utility.js +15 -4
  930. package/dist/esm/utility/api/controller/get/dto.utility.js.map +1 -1
  931. package/dist/esm/utility/api/controller/get-list/query/enum-values.utility.d.ts +6 -0
  932. package/dist/esm/utility/api/controller/get-list/query/enum-values.utility.js +17 -0
  933. package/dist/esm/utility/api/controller/get-list/query/enum-values.utility.js.map +1 -0
  934. package/dist/esm/utility/api/controller/get-list/query/index.d.ts +3 -0
  935. package/dist/esm/utility/api/controller/get-list/query/open-api/decorators.utility.d.ts +7 -0
  936. package/dist/esm/utility/api/controller/get-list/query/open-api/decorators.utility.js +99 -0
  937. package/dist/esm/utility/api/controller/get-list/query/open-api/decorators.utility.js.map +1 -0
  938. package/dist/esm/utility/api/controller/get-list/query/open-api/index.d.ts +2 -0
  939. package/dist/esm/utility/api/controller/get-list/query/open-api/value-schema.utility.d.ts +8 -0
  940. package/dist/esm/utility/api/controller/get-list/query/open-api/value-schema.utility.js +81 -0
  941. package/dist/esm/utility/api/controller/get-list/query/open-api/value-schema.utility.js.map +1 -0
  942. package/dist/esm/utility/api/controller/get-list/query/plan/get.utility.d.ts +8 -0
  943. package/dist/esm/utility/api/controller/get-list/query/plan/get.utility.js +15 -0
  944. package/dist/esm/utility/api/controller/get-list/query/plan/get.utility.js.map +1 -0
  945. package/dist/esm/utility/api/controller/get-list/query/plan/index.d.ts +2 -0
  946. package/dist/esm/utility/api/controller/get-list/query/plan/set.utility.d.ts +9 -0
  947. package/dist/esm/utility/api/controller/get-list/query/plan/set.utility.js +16 -0
  948. package/dist/esm/utility/api/controller/get-list/query/plan/set.utility.js.map +1 -0
  949. package/dist/esm/utility/api/controller/get-list/transform/filter.utility.js +10 -2
  950. package/dist/esm/utility/api/controller/get-list/transform/filter.utility.js.map +1 -1
  951. package/dist/esm/utility/api/controller/get-list/transform/operation.utility.js +1 -0
  952. package/dist/esm/utility/api/controller/get-list/transform/operation.utility.js.map +1 -1
  953. package/dist/esm/utility/api/controller/handle-request-relations.utility.js +49 -3
  954. package/dist/esm/utility/api/controller/handle-request-relations.utility.js.map +1 -1
  955. package/dist/esm/utility/api/controller/transform-data.utility.js +11 -2
  956. package/dist/esm/utility/api/controller/transform-data.utility.js.map +1 -1
  957. package/dist/esm/utility/api/controller/write/dto-swagger.utility.d.ts +3 -1
  958. package/dist/esm/utility/api/controller/write/dto-swagger.utility.js +15 -6
  959. package/dist/esm/utility/api/controller/write/dto-swagger.utility.js.map +1 -1
  960. package/dist/esm/utility/api/{discriminator/validate/config.utility.d.ts → discriminator-validate-config.utility.d.ts} +1 -1
  961. package/dist/esm/utility/api/{discriminator/validate/config.utility.js → discriminator-validate-config.utility.js} +2 -2
  962. package/dist/esm/utility/api/discriminator-validate-config.utility.js.map +1 -0
  963. package/dist/esm/utility/api/function-transaction.utility.d.ts +9 -2
  964. package/dist/esm/utility/api/function-transaction.utility.js +71 -11
  965. package/dist/esm/utility/api/function-transaction.utility.js.map +1 -1
  966. package/dist/{cjs/utility/api/get-default-string-format-properties/bigint-string/apply-options.utility.d.ts → esm/utility/api/get-default-string-format-properties/bigint-string-apply-options.utility.d.ts} +2 -2
  967. package/dist/esm/utility/api/get-default-string-format-properties/{bigint-string/apply-options.utility.js → bigint-string-apply-options.utility.js} +4 -2
  968. package/dist/esm/utility/api/get-default-string-format-properties/bigint-string-apply-options.utility.js.map +1 -0
  969. package/dist/{cjs/utility/api/get-default-string-format-properties/customizer/apply.utility.d.ts → esm/utility/api/get-default-string-format-properties/customizer-apply.utility.d.ts} +2 -2
  970. package/dist/esm/utility/api/get-default-string-format-properties/{customizer/apply.utility.js → customizer-apply.utility.js} +3 -2
  971. package/dist/esm/utility/api/get-default-string-format-properties/customizer-apply.utility.js.map +1 -0
  972. package/dist/esm/utility/api/get-default-string-format-properties/index.d.ts +2 -0
  973. package/dist/esm/utility/api/get-default-string-format-properties/utility.js +1 -1
  974. package/dist/esm/utility/api/get-default-string-format-properties/utility.js.map +1 -1
  975. package/dist/esm/utility/api/index.d.ts +2 -2
  976. package/dist/esm/utility/api/route/apply-dto-metadata.utility.js +10 -2
  977. package/dist/esm/utility/api/route/apply-dto-metadata.utility.js.map +1 -1
  978. package/dist/esm/utility/api/route/discriminator/build-open-api-schema.utility.js.map +1 -1
  979. package/dist/esm/utility/api/route/discriminator/resolve-dto.utility.js +1 -1
  980. package/dist/esm/utility/api/route/discriminator/resolve-dto.utility.js.map +1 -1
  981. package/dist/esm/utility/api/route/discriminator/validate-dto-properties.utility.js +1 -1
  982. package/dist/esm/utility/api/route/{dto/collect-with-registered-children.utility.js → dto-collect-with-registered-children.utility.js} +2 -2
  983. package/dist/esm/utility/api/route/dto-collect-with-registered-children.utility.js.map +1 -0
  984. package/dist/esm/utility/api/route/index.d.ts +2 -2
  985. package/dist/esm/utility/api/route/response/project-relation.utility.js +9 -1
  986. package/dist/esm/utility/api/route/response/project-relation.utility.js.map +1 -1
  987. package/dist/esm/utility/api/route/{validation/flatten-errors.utility.js → validation-flatten-errors.utility.js} +1 -1
  988. package/dist/esm/utility/api/route/validation-flatten-errors.utility.js.map +1 -0
  989. package/dist/esm/utility/authorization/permission/set-matches.utility.js +1 -0
  990. package/dist/esm/utility/authorization/permission/set-matches.utility.js.map +1 -1
  991. package/dist/esm/utility/authorization/resolve-default-principal.utility.js +1 -0
  992. package/dist/esm/utility/authorization/resolve-default-principal.utility.js.map +1 -1
  993. package/dist/esm/utility/dto/build-decorator.utility.js +14 -4
  994. package/dist/esm/utility/dto/build-decorator.utility.js.map +1 -1
  995. package/dist/esm/utility/dto/generate/cache-key.utility.d.ts +1 -1
  996. package/dist/esm/utility/dto/generate/cache-key.utility.js +2 -2
  997. package/dist/esm/utility/dto/generate/cache-key.utility.js.map +1 -1
  998. package/dist/esm/utility/dto/generate/core.utility.d.ts +3 -1
  999. package/dist/esm/utility/dto/generate/core.utility.js +46 -44
  1000. package/dist/esm/utility/dto/generate/core.utility.js.map +1 -1
  1001. package/dist/esm/utility/dto/generate/dynamic.utility.js +11 -3
  1002. package/dist/esm/utility/dto/generate/dynamic.utility.js.map +1 -1
  1003. package/dist/esm/utility/dto/generate/exception.utility.js +9 -1
  1004. package/dist/esm/utility/dto/generate/exception.utility.js.map +1 -1
  1005. package/dist/esm/utility/dto/generate/filter-decorator.utility.d.ts +4 -1
  1006. package/dist/esm/utility/dto/generate/filter-decorator.utility.js +17 -2
  1007. package/dist/esm/utility/dto/generate/filter-decorator.utility.js.map +1 -1
  1008. package/dist/esm/utility/dto/generate/get-list-query-properties.utility.d.ts +25 -0
  1009. package/dist/esm/utility/dto/generate/get-list-query-properties.utility.js +105 -0
  1010. package/dist/esm/utility/dto/generate/get-list-query-properties.utility.js.map +1 -0
  1011. package/dist/esm/utility/dto/generate/get-list-response.utility.js +9 -1
  1012. package/dist/esm/utility/dto/generate/get-list-response.utility.js.map +1 -1
  1013. package/dist/esm/utility/dto/generate/manual-child.utility.js +1 -1
  1014. package/dist/esm/utility/dto/get/get-list-query-base-class.utility.d.ts +3 -1
  1015. package/dist/esm/utility/dto/get/get-list-query-base-class.utility.js +19 -4
  1016. package/dist/esm/utility/dto/get/get-list-query-base-class.utility.js.map +1 -1
  1017. package/dist/esm/utility/dto/handle-date-property.utility.js +9 -1
  1018. package/dist/esm/utility/dto/handle-date-property.utility.js.map +1 -1
  1019. package/dist/esm/utility/dto/is/property/index.d.ts +1 -0
  1020. package/dist/esm/utility/dto/is/property/infrastructure-timestamp.utility.d.ts +7 -0
  1021. package/dist/esm/utility/dto/is/property/infrastructure-timestamp.utility.js +43 -0
  1022. package/dist/esm/utility/dto/is/property/infrastructure-timestamp.utility.js.map +1 -0
  1023. package/dist/esm/utility/dto/is/property/should-be-marked.utility.d.ts +2 -2
  1024. package/dist/esm/utility/dto/is/property/should-be-marked.utility.js +14 -5
  1025. package/dist/esm/utility/dto/is/property/should-be-marked.utility.js.map +1 -1
  1026. package/dist/esm/utility/dto/is/should-be-generated.utility.js +9 -1
  1027. package/dist/esm/utility/dto/is/should-be-generated.utility.js.map +1 -1
  1028. package/dist/esm/utility/dto/manual/index.d.ts +1 -0
  1029. package/dist/esm/utility/dto/manual/property-metadata/get.utility.d.ts +8 -0
  1030. package/dist/esm/utility/dto/manual/property-metadata/get.utility.js +30 -0
  1031. package/dist/esm/utility/dto/manual/property-metadata/get.utility.js.map +1 -0
  1032. package/dist/esm/utility/dto/manual/property-metadata/index.d.ts +2 -0
  1033. package/dist/esm/utility/dto/manual/property-metadata/register.utility.d.ts +9 -0
  1034. package/dist/esm/utility/dto/manual/property-metadata/register.utility.js +20 -0
  1035. package/dist/esm/utility/dto/manual/property-metadata/register.utility.js.map +1 -0
  1036. package/dist/esm/utility/queue-auto-context-retry.utility.js +1 -1
  1037. package/dist/esm/utility/queue-auto-context-retry.utility.js.map +1 -1
  1038. package/dist/esm/validator/has/paired-custom-suffixes-fields.validator.js +21 -25
  1039. package/dist/esm/validator/has/paired-custom-suffixes-fields.validator.js.map +1 -1
  1040. package/dist/esm/validator/must-match-one-of-schemas.validator.js +0 -1
  1041. package/dist/esm/validator/must-match-one-of-schemas.validator.js.map +1 -1
  1042. package/package.json +5 -2
  1043. package/dist/cjs/class/api/function/transaction-scope.class.js +0 -34
  1044. package/dist/cjs/class/api/function/transaction-scope.class.js.map +0 -1
  1045. package/dist/cjs/constant/utility/api/get-default-string-format-properties/customizer/index.d.ts +0 -1
  1046. package/dist/cjs/constant/utility/api/get-default-string-format-properties/customizer/map.constant.js +0 -29
  1047. package/dist/cjs/constant/utility/api/get-default-string-format-properties/customizer/map.constant.js.map +0 -1
  1048. package/dist/cjs/constant/validator/index.d.ts +0 -1
  1049. package/dist/cjs/constant/validator-has-paired-custom-suffixes-fields.constant.d.ts +0 -5
  1050. package/dist/cjs/constant/validator-has-paired-custom-suffixes-fields.constant.js +0 -90
  1051. package/dist/cjs/constant/validator-has-paired-custom-suffixes-fields.constant.js.map +0 -1
  1052. package/dist/cjs/enum/decorator/api/function/transaction-mode.enum.js.map +0 -1
  1053. package/dist/cjs/enum/utility/dto/manual/property-metadata/decorator.enum.js.map +0 -1
  1054. package/dist/cjs/enum/validator/has-paired-custom-suffixes-fields-argument-type.enum.d.ts +0 -5
  1055. package/dist/cjs/enum/validator/has-paired-custom-suffixes-fields-argument-type.enum.js +0 -9
  1056. package/dist/cjs/enum/validator/has-paired-custom-suffixes-fields-argument-type.enum.js.map +0 -1
  1057. package/dist/cjs/interface/class/api/subscriber/function/execution/context/data/index.d.ts +0 -1
  1058. package/dist/cjs/interface/decorator/api/method/index.d.ts +0 -1
  1059. package/dist/cjs/interface/decorator/api/method/properties.interface.d.ts +0 -5
  1060. package/dist/cjs/type/class/api/subscriber/function/execution/context/index.d.ts +0 -1
  1061. package/dist/cjs/type/decorator/api/route/custom/index.d.ts +0 -1
  1062. package/dist/cjs/type/decorator/api/route/discriminated/index.d.ts +0 -1
  1063. package/dist/cjs/type/utility/api/discriminator/index.d.ts +0 -1
  1064. package/dist/cjs/type/utility/api/discriminator/validate/index.d.ts +0 -1
  1065. package/dist/cjs/type/utility/api/get-default-string-format-properties/bigint-string/sign/index.d.ts +0 -2
  1066. package/dist/cjs/type/utility/api/get-default-string-format-properties/bigint-string/sign/type.d.ts +0 -1
  1067. package/dist/cjs/type/validator/has-paired-custom-suffixes-fields/operation-config.type.d.ts +0 -7
  1068. package/dist/cjs/utility/api/discriminator/index.d.ts +0 -1
  1069. package/dist/cjs/utility/api/discriminator/validate/config.utility.js.map +0 -1
  1070. package/dist/cjs/utility/api/discriminator/validate/index.d.ts +0 -1
  1071. package/dist/cjs/utility/api/get-default-string-format-properties/bigint-string/apply-options.utility.js.map +0 -1
  1072. package/dist/cjs/utility/api/get-default-string-format-properties/bigint-string/index.d.ts +0 -1
  1073. package/dist/cjs/utility/api/get-default-string-format-properties/customizer/apply.utility.js.map +0 -1
  1074. package/dist/cjs/utility/api/get-default-string-format-properties/customizer/index.d.ts +0 -1
  1075. package/dist/cjs/utility/api/route/dto/collect-with-registered-children.utility.js.map +0 -1
  1076. package/dist/cjs/utility/api/route/dto/index.d.ts +0 -1
  1077. package/dist/cjs/utility/api/route/validation/flatten-errors.utility.js.map +0 -1
  1078. package/dist/cjs/utility/api/route/validation/index.d.ts +0 -1
  1079. package/dist/cjs/utility/dto/manual/property-metadata.utility.d.ts +0 -16
  1080. package/dist/cjs/utility/dto/manual/property-metadata.utility.js +0 -47
  1081. package/dist/cjs/utility/dto/manual/property-metadata.utility.js.map +0 -1
  1082. package/dist/esm/class/api/function/transaction-scope.class.js +0 -32
  1083. package/dist/esm/class/api/function/transaction-scope.class.js.map +0 -1
  1084. package/dist/esm/constant/utility/api/get-default-string-format-properties/customizer/index.d.ts +0 -1
  1085. package/dist/esm/constant/utility/api/get-default-string-format-properties/customizer/map.constant.js +0 -27
  1086. package/dist/esm/constant/utility/api/get-default-string-format-properties/customizer/map.constant.js.map +0 -1
  1087. package/dist/esm/constant/validator/index.d.ts +0 -1
  1088. package/dist/esm/constant/validator-has-paired-custom-suffixes-fields.constant.d.ts +0 -5
  1089. package/dist/esm/constant/validator-has-paired-custom-suffixes-fields.constant.js +0 -88
  1090. package/dist/esm/constant/validator-has-paired-custom-suffixes-fields.constant.js.map +0 -1
  1091. package/dist/esm/enum/decorator/api/function/transaction-mode.enum.js.map +0 -1
  1092. package/dist/esm/enum/utility/dto/manual/property-metadata/decorator.enum.js.map +0 -1
  1093. package/dist/esm/enum/validator/has-paired-custom-suffixes-fields-argument-type.enum.d.ts +0 -5
  1094. package/dist/esm/enum/validator/has-paired-custom-suffixes-fields-argument-type.enum.js +0 -9
  1095. package/dist/esm/enum/validator/has-paired-custom-suffixes-fields-argument-type.enum.js.map +0 -1
  1096. package/dist/esm/interface/class/api/subscriber/function/execution/context/data/index.d.ts +0 -1
  1097. package/dist/esm/interface/decorator/api/method/index.d.ts +0 -1
  1098. package/dist/esm/interface/decorator/api/method/properties.interface.d.ts +0 -5
  1099. package/dist/esm/type/class/api/subscriber/function/execution/context/index.d.ts +0 -1
  1100. package/dist/esm/type/decorator/api/route/custom/index.d.ts +0 -1
  1101. package/dist/esm/type/decorator/api/route/discriminated/index.d.ts +0 -1
  1102. package/dist/esm/type/utility/api/discriminator/index.d.ts +0 -1
  1103. package/dist/esm/type/utility/api/discriminator/validate/index.d.ts +0 -1
  1104. package/dist/esm/type/utility/api/get-default-string-format-properties/bigint-string/sign/index.d.ts +0 -2
  1105. package/dist/esm/type/utility/api/get-default-string-format-properties/bigint-string/sign/type.d.ts +0 -1
  1106. package/dist/esm/type/validator/has-paired-custom-suffixes-fields/operation-config.type.d.ts +0 -7
  1107. package/dist/esm/utility/api/discriminator/index.d.ts +0 -1
  1108. package/dist/esm/utility/api/discriminator/validate/config.utility.js.map +0 -1
  1109. package/dist/esm/utility/api/discriminator/validate/index.d.ts +0 -1
  1110. package/dist/esm/utility/api/get-default-string-format-properties/bigint-string/apply-options.utility.js.map +0 -1
  1111. package/dist/esm/utility/api/get-default-string-format-properties/bigint-string/index.d.ts +0 -1
  1112. package/dist/esm/utility/api/get-default-string-format-properties/customizer/apply.utility.js.map +0 -1
  1113. package/dist/esm/utility/api/get-default-string-format-properties/customizer/index.d.ts +0 -1
  1114. package/dist/esm/utility/api/route/dto/collect-with-registered-children.utility.js.map +0 -1
  1115. package/dist/esm/utility/api/route/dto/index.d.ts +0 -1
  1116. package/dist/esm/utility/api/route/validation/flatten-errors.utility.js.map +0 -1
  1117. package/dist/esm/utility/api/route/validation/index.d.ts +0 -1
  1118. package/dist/esm/utility/dto/manual/property-metadata.utility.d.ts +0 -16
  1119. package/dist/esm/utility/dto/manual/property-metadata.utility.js +0 -44
  1120. package/dist/esm/utility/dto/manual/property-metadata.utility.js.map +0 -1
  1121. /package/dist/cjs/enum/decorator/api/function/{transaction-mode.enum.d.ts → transaction/mode.enum.d.ts} +0 -0
  1122. /package/dist/cjs/enum/utility/{dto/manual/property-metadata/decorator.enum.d.ts → manual-dto-property-metadata-decorator.enum.d.ts} +0 -0
  1123. /package/dist/cjs/{type/class/api/subscriber/function/execution → interface/class/api/subscriber/function/transaction}/index.d.ts +0 -0
  1124. /package/dist/cjs/utility/api/route/{dto/collect-with-registered-children.utility.d.ts → dto-collect-with-registered-children.utility.d.ts} +0 -0
  1125. /package/dist/cjs/utility/api/route/{validation/flatten-errors.utility.d.ts → validation-flatten-errors.utility.d.ts} +0 -0
  1126. /package/dist/esm/enum/decorator/api/function/{transaction-mode.enum.d.ts → transaction/mode.enum.d.ts} +0 -0
  1127. /package/dist/esm/enum/utility/{dto/manual/property-metadata/decorator.enum.d.ts → manual-dto-property-metadata-decorator.enum.d.ts} +0 -0
  1128. /package/dist/esm/{type/class/api/subscriber/function/execution → interface/class/api/subscriber/function/transaction}/index.d.ts +0 -0
  1129. /package/dist/esm/utility/api/route/{dto/collect-with-registered-children.utility.d.ts → dto-collect-with-registered-children.utility.d.ts} +0 -0
  1130. /package/dist/esm/utility/api/route/{validation/flatten-errors.utility.d.ts → validation-flatten-errors.utility.d.ts} +0 -0
package/README.md CHANGED
@@ -8,7 +8,7 @@
8
8
  <p align="center">
9
9
  <a aria-label="ElsiKora logo" href="https://elsikora.com">
10
10
  <img src="https://img.shields.io/badge/MADE%20BY%20ElsiKora-333333.svg?style=for-the-badge" alt="ElsiKora">
11
- </a> <img src="https://img.shields.io/badge/npm-blue.svg?style=for-the-badge&logo=npm&logoColor=white" alt="npm"> <img src="https://img.shields.io/badge/typescript-blue.svg?style=for-the-badge&logo=typescript&logoColor=white" alt="typescript"> <img src="https://img.shields.io/badge/nestjs-red.svg?style=for-the-badge&logo=nestjs&logoColor=white" alt="nestjs"> <img src="https://img.shields.io/badge/swagger-green.svg?style=for-the-badge&logo=swagger&logoColor=white" alt="swagger"> <img src="https://img.shields.io/badge/license-blue.svg?style=for-the-badge&logo=license&logoColor=white" alt="license"> <img src="https://img.shields.io/badge/version-1.24.0-brightgreen.svg?style=for-the-badge&logo=v&logoColor=white" alt="version-1.24.0">
11
+ </a> <img src="https://img.shields.io/badge/npm-blue.svg?style=for-the-badge&logo=npm&logoColor=white" alt="npm"> <img src="https://img.shields.io/badge/typescript-blue.svg?style=for-the-badge&logo=typescript&logoColor=white" alt="typescript"> <img src="https://img.shields.io/badge/nestjs-red.svg?style=for-the-badge&logo=nestjs&logoColor=white" alt="nestjs"> <img src="https://img.shields.io/badge/swagger-green.svg?style=for-the-badge&logo=swagger&logoColor=white" alt="swagger"> <img src="https://img.shields.io/badge/license-blue.svg?style=for-the-badge&logo=license&logoColor=white" alt="license"> <img src="https://img.shields.io/npm/v/@elsikora/nestjs-crud-automator.svg?style=for-the-badge&logo=npm&logoColor=white" alt="npm version">
12
12
  </p>
13
13
 
14
14
  ## 📚 Table of Contents
@@ -21,6 +21,7 @@
21
21
  - [Advanced Usage](#advanced-usage)
22
22
  - [Subscriber System (Hooks)](#subscriber-system-hooks-intercepting-and-extending-logic)
23
23
  - [Swagger Documentation](#swagger-documentation)
24
+ - [Migrating to 3.0](#-migrating-to-30)
24
25
  - [Current Status](#-current-status)
25
26
  - [AI Agent Skill](#-ai-agent-skill)
26
27
  - [FAQ](#-faq)
@@ -66,20 +67,22 @@ yarn add @elsikora/nestjs-crud-automator
66
67
  pnpm add @elsikora/nestjs-crud-automator
67
68
  ```
68
69
 
70
+ Plain installation currently resolves the published 2.10 line. The source-tree examples describe the unreleased 3.0 contract. Do not treat registry `latest` as 3.0 until an exact candidate exists; pin that published version and follow the [3.0 migration guide](https://elsikora.com/docs/nestjs-crud-automator/guides/migrating-to-3-0).
71
+
69
72
  ### Prerequisites
70
73
 
71
74
  Make sure you have the following dependencies installed in your NestJS project:
72
75
 
73
- - NestJS `@nestjs/common` and `@nestjs/core` `>=11.0.5`
76
+ - NestJS `@nestjs/common` and `@nestjs/core` `>=11.1.24`
74
77
  - `@nestjs/passport` `>=11.0.5`
75
- - `@nestjs/platform-fastify` `>=11.0.5`
78
+ - `@nestjs/platform-fastify` `>=11.1.24`
76
79
  - `@nestjs/swagger` `>=11.0.3`
77
- - `@nestjs/throttler` `>=6.4.0`
80
+ - `@nestjs/throttler` `>=6.5.0`
78
81
  - TypeORM `>=0.3.20`
79
- - Fastify `>=5.0.0`
80
- - `class-validator` `>=0.14.1`
82
+ - Fastify `>=5.8.5`
83
+ - `class-validator` `>=0.15.1`
81
84
  - `class-transformer` `>=0.5.1`
82
- - `lodash` `>=4.17.21`
85
+ - `lodash` `>=4.18.1`
83
86
 
84
87
  You might need to install these peer dependencies if they're not already in your project:
85
88
 
@@ -147,6 +150,8 @@ export class UserEntity {
147
150
  }
148
151
  ```
149
152
 
153
+ `CREATED_AT`, `UPDATED_AT`, and `RECEIVED_AT` identify server-owned infrastructure timestamps. Generated CREATE, UPDATE, and PARTIAL_UPDATE body DTOs omit them while response DTOs retain them. Exclusion follows the semantic identifier, not the property name; use `DATE` for a writable business date.
154
+
150
155
  ### 2. Create a Service
151
156
 
152
157
  Create a service with the `ApiService` decorator to add CRUD operations:
@@ -322,18 +327,22 @@ export class UserController {
322
327
  Configure include-driven relation loading:
323
328
 
324
329
  ```typescript
325
- import { ApiController, EApiControllerRelationReferenceShape, EApiRouteType } from "@elsikora/nestjs-crud-automator";
330
+ import { ApiController, EApiControllerRelationReferenceShape, EApiFunctionTransactionMode, EApiRouteType } from "@elsikora/nestjs-crud-automator";
326
331
 
327
332
  @ApiController<PostEntity>({
328
333
  entity: PostEntity,
329
334
  name: "Posts",
330
335
  routes: {
331
336
  [EApiRouteType.CREATE]: {
337
+ transaction: { mode: EApiFunctionTransactionMode.REQUIRED },
332
338
  relations: {
333
339
  request: {
334
340
  reference: { shape: EApiControllerRelationReferenceShape.SCALAR },
335
341
  load: {
336
342
  include: { author: true },
343
+ locks: {
344
+ author: { mode: "pessimistic_read" },
345
+ },
337
346
  },
338
347
  },
339
348
  response: {
@@ -357,6 +366,8 @@ export class PostController {
357
366
 
358
367
  Request relation `relations.request.load` enables hydration, and `relations.request.load.include` selects the direct request body relations to hydrate. Omitted service mappings use `${relationName}Service`; `relations.request.load.services` only overrides those controller property names. Nested request include objects are passed to the direct relation service as TypeORM `relations`; nested request references are not recursively hydrated. `load.relationLoadStrategy` can be used on request or response load configs to choose TypeORM `"join"` or `"query"` loading.
359
368
 
369
+ `relations.request.load.locks` applies native TypeORM `pessimistic_read` or `pessimistic_write` locks to configured direct relation service `get()` calls. Locks require an active Automator transaction and are acquired in `load.include` declaration order. Locked loads disable implicit TypeORM eager-relation joins. A locked direct relation with explicit nested includes must use `relationLoadStrategy: "query"` so the nested loads share the manager without inheriting the row lock. Service inputs remain entity-based: scalar relation references are an HTTP/controller hydration contract, not a widened service method contract.
370
+
360
371
  ### Custom DTOs
361
372
 
362
373
  Use custom DTOs instead of auto-generated ones:
@@ -547,7 +558,27 @@ Declare the discriminator field, such as `channel` or `mode`, on every variant D
547
558
 
548
559
  Root-level discriminator selection runs before Nest can infer a concrete DTO class, so global `ValidationPipe` options are not applied automatically to the selected variant. Add `validatorOptions` or `transformOptions` to the discriminated body config when a route needs specific validation or transformation settings.
549
560
 
550
- Generated service functions and explicit function decorators support transaction modes without exposing `EntityManager` as a public method argument:
561
+ Generated routes can opt into a route-owned transaction by reusing `EApiFunctionTransactionMode`:
562
+
563
+ ```typescript
564
+ import { ApiController, EApiFunctionTransactionMode, EApiRouteType } from "@elsikora/nestjs-crud-automator";
565
+
566
+ @ApiController<UserEntity>({
567
+ entity: UserEntity,
568
+ routes: {
569
+ [EApiRouteType.CREATE]: {
570
+ transaction: { mode: EApiFunctionTransactionMode.REQUIRED },
571
+ },
572
+ },
573
+ })
574
+ export class UserController {
575
+ constructor(public service: UserService) {}
576
+ }
577
+ ```
578
+
579
+ Omitted route transaction config and explicit `SUPPORTS` preserve generated-route behavior without opening a route transaction. `REQUIRED` opens a root transaction through the controller service repository when no Automator transaction is active; `MANDATORY` requires an active owner; `NONE` rejects an active transaction. Request transformation and validation run before a route-owned transaction. Request relation hydration, the generated service operation, and response relation reload then share one manager. When the route opens and owns the transaction, commit and post-commit lifecycle finish before response transformation, route-after subscribers, authorization result handling, and serialization; hydration, operation, or reload failure rolls back, while a later route-after failure cannot roll back the committed work. When `REQUIRED` joins an outer owner, that owner commits later. Custom routes continue to own transactions through custom functions or steps.
580
+
581
+ Generated service functions and explicit function decorators use the same transaction modes without exposing `EntityManager` as a public method argument:
551
582
 
552
583
  ```typescript
553
584
  import { ApiService, ApiServiceBase, EApiFunctionTransactionMode, EApiFunctionType } from "@elsikora/nestjs-crud-automator";
@@ -598,13 +629,53 @@ private async recordPromotionAudit(user: UserEntity): Promise<void> {
598
629
 
599
630
  Steps do not dispatch function subscribers, create route metadata, or define Swagger/authorization action identities. Step context intentionally exposes only `eventManager`, `repository`, and `getRepository`; use `@ApiFunctionCustom` plus `getApiFunctionContext()` when you need `operations` or lifecycle hooks.
600
631
 
632
+ `REQUIRED` opens one Automator-owned `QueryRunner` transaction when none exists. Nested `REQUIRED`, `MANDATORY`, and transactional `SUPPORTS` calls join the same manager and register ordered transaction events; only the outer route, function, or named scope owner commits, rolls back, and flushes post-transaction subscribers. `NONE` and nontransactional `SUPPORTS` do not produce post-transaction lifecycle work.
633
+
634
+ Before `onBeforeUpdate` runs, `ApiFunctionUpdate` performs one ordinary decorated GET through the active transaction manager when present. Update subscribers receive the incoming patch in `context.result`, the active manager repository when a transaction exists (otherwise the service base repository) in `context.DATA.repository`, and a top-level detached and frozen snapshot in `context.DATA.currentEntity: Readonly<TEntity>`. The snapshot is shallow: nested relations, arrays, JSON, dates, buffers, and lazy values retain aliases to the internal loaded entity, so mutating them can affect persistence. Automator merges the subscriber-returned patch into its internal loaded entity and does not issue a second explicit GET. A missing row keeps the GET error lifecycle, skips `onBeforeUpdate`, and then enters the UPDATE error lifecycle.
635
+
636
+ Use a named scope when application code, rather than a decorated function, must own the transaction:
637
+
638
+ ```typescript
639
+ import { ApiFunctionTransactionScope } from "@elsikora/nestjs-crud-automator";
640
+
641
+ await ApiFunctionTransactionScope.runWithDataSource(dataSource, { name: "register-user" }, async () => {
642
+ await userService.create(body);
643
+ await auditService.create(entry);
644
+ });
645
+ ```
646
+
647
+ The scope name is trimmed and must be non-empty. `runWithEntityManager()` is join-only: it accepts only the manager already bound to an active Automator transaction and never opens a second transaction.
648
+
649
+ Function subscribers can react once after the outer commit or rollback. The observed service must use `@ApiServiceObservable()`, and the subscriber must be registered as a Nest provider:
650
+
651
+ ```typescript
652
+ import type { IApiSubscriberFunctionTransactionContext } from "@elsikora/nestjs-crud-automator";
653
+
654
+ import { ApiFunctionSubscriber, ApiFunctionSubscriberBase } from "@elsikora/nestjs-crud-automator";
655
+
656
+ @ApiFunctionSubscriber({ entity: UserEntity })
657
+ export class UserSubscriber extends ApiFunctionSubscriberBase<UserEntity> {
658
+ async onAfterCommit(context: IApiSubscriberFunctionTransactionContext): Promise<void> {
659
+ await recordCommittedEventCount(context.DATA.matchedEvents.length);
660
+ }
661
+
662
+ async onAfterRollback(context: IApiSubscriberFunctionTransactionContext): Promise<void> {
663
+ await discardPendingWork(context.DATA.transaction.id);
664
+ }
665
+ }
666
+ ```
667
+
668
+ `context.DATA` is readonly and contains the transaction UUID, immutable outer owner, all ordered events, and only the events matched by that subscriber. Events contain identity and status only; arguments, request bodies, entities, and results are never retained. Steps appear in `events` with trace type `STEP`, but they do not select or independently invoke subscribers.
669
+
670
+ Post-commit and post-rollback hooks run sequentially by subscriber priority and registration order. Hook failures do not stop later hooks. A committed transaction with failing hooks throws `ApiFunctionTransactionPostCommitException` with outcome `COMMITTED`; a failed database commit throws `ApiFunctionTransactionCommitUnknownOutcomeException` with outcome `UNKNOWN`; rollback handling failures throw `ApiFunctionTransactionRollbackException` while retaining the original operation error as the cause.
671
+
601
672
  ```typescript
602
673
  // app.module.ts
603
674
  import type { IApiAuthorizationPrincipal, IApiHookPermissionSource, IApiPolicyAttachmentSource, IApiPolicyDocumentSource, IApiResolvedPolicyAttachments } from "@elsikora/nestjs-crud-automator";
604
675
 
605
676
  import { Module } from "@nestjs/common";
606
677
 
607
- import { ApiAuthorizationModule, EApiAuthorizationPrincipalType, EApiPolicyEffect, EApiPolicySourceType, AuthorizationResolveDefaultPrincipal } from "@elsikora/nestjs-crud-automator";
678
+ import { ApiAuthorizationModule, EApiAuthorizationCacheMode, EApiAuthorizationPrincipalType, EApiPolicyEffect, EApiPolicySourceType, AuthorizationResolveDefaultPrincipal } from "@elsikora/nestjs-crud-automator";
608
679
 
609
680
  const hookPermissionSource: IApiHookPermissionSource = {
610
681
  async getPermissions(principal: IApiAuthorizationPrincipal): Promise<ReadonlyArray<string>> {
@@ -659,6 +730,9 @@ const iamDocumentSource: IApiPolicyDocumentSource = {
659
730
  @Module({
660
731
  imports: [
661
732
  ApiAuthorizationModule.forRoot({
733
+ cache: {
734
+ mode: EApiAuthorizationCacheMode.SOURCE_FIRST,
735
+ },
662
736
  hookPermissionSources: [hookPermissionSource],
663
737
  iam: {
664
738
  attachmentSources: [iamAttachmentSource],
@@ -690,6 +764,23 @@ const iamDocumentSource: IApiPolicyDocumentSource = {
690
764
  export class AppModule {}
691
765
  ```
692
766
 
767
+ Authorization resolver caches default to `EApiAuthorizationCacheMode.SOURCE_FIRST`, so every hooks permission, IAM attachment, and IAM document evaluation reads its configured authoritative sources. This mode does not read or populate cross-request resolver maps, and source errors propagate without a stale cached fallback. The explicit setting above is optional, but documents the intended multi-instance contract.
768
+
769
+ `MEMORY` is an explicit single-process optimization. It requires both a positive `ttlMs` and `maxEntries`; the limit applies independently to the hook permission, IAM attachment, and IAM document cache:
770
+
771
+ ```typescript
772
+ ApiAuthorizationModule.forRoot({
773
+ cache: {
774
+ maxEntries: 1_000,
775
+ mode: EApiAuthorizationCacheMode.MEMORY,
776
+ ttlMs: 30_000,
777
+ },
778
+ // sources...
779
+ });
780
+ ```
781
+
782
+ Memory entries expire from insertion time, the oldest entry is evicted at the configured limit, and backing-data changes still require `ApiAuthorizationCacheInvalidationService` when immediate visibility is needed. In-memory mode is local to one application process; it is not a multi-instance consistency mechanism. Hooks policy-rule caching remains a separate, default-disabled `ApiAuthorizationPolicyRegistry` option.
783
+
693
784
  Use `ApiAuthorizationModule.forRootAsync(...)` when the resolver or IAM sources must be real Nest providers with `Repository`, `DataSource`, or service dependencies. The module supports `imports`, `inject`, `useFactory`, `useClass`, and `useExisting`.
694
785
 
695
786
  ```typescript
@@ -987,24 +1078,24 @@ To get the subscriber system working, you need to follow **four mandatory steps*
987
1078
  There are two types of subscribers that operate at different levels of abstraction:
988
1079
 
989
1080
  1. **`ApiRouteSubscriberBase`** (Controller Level): Intercepts data at the highest level. Ideal for working with the HTTP context: headers, IP address, authenticated user (`request.user`). The hooks of this subscriber are called before and after the main logic of the _controller_.
990
- 2. **`ApiFunctionSubscriberBase`** (Service Level): Intercepts data immediately before and after calling a repository method (database). Ideal for manipulating data that is to be saved or data that has just been retrieved from the DB.
1081
+ 2. **`ApiFunctionSubscriberBase`** (Service Level): Intercepts decorated function execution, including the pre-UPDATE GET lifecycle and post-transaction completion when a transaction owner exists. Ideal for persistence-aware validation, enrichment, auditing, and confirmed-commit side effects.
991
1082
 
992
1083
  #### Lifecycle and Execution Order
993
1084
 
994
1085
  Understanding the order in which hooks are called is critically important:
995
1086
 
996
1087
  1. **Incoming Request**
997
- 2. `onBefore...` hooks of **Route** subscribers (executed in `priority` order from highest to lowest).
998
- 3. Internal controller logic (transformers for `request`, `query`, `body`; validators).
999
- 4. A service method is called (e.g., `service.create(body)`).
1000
- 5. `onBefore...` hooks of **Function** subscribers (executed in `priority` order).
1001
- 6. The main logic of `@ApiFunction` is executed (e.g., `repository.save(body)`).
1002
- 7. `onAfter...` hooks of **Function** subscribers (executed in `priority` order).
1003
- 8. The result is returned to the controller.
1004
- 9. `onAfter...` hooks of **Route** subscribers (executed in `priority` order).
1088
+ 2. Route `onBefore...` hooks.
1089
+ 3. Request transformation, validation, and typed GET_LIST parsing.
1090
+ 4. Optional generated-route transaction resolution and request relation hydration.
1091
+ 5. Decorated function lifecycle: UPDATE first runs one decorated GET and exposes `currentEntity`, then function `onBefore...`, repository work, and function `onAfter...` run.
1092
+ 6. If the function opened the transaction, it commits and runs matching `onAfterCommit` before returning. A function that joined a route or scope owner leaves that outer transaction open.
1093
+ 7. Generated response reload when applicable; it remains inside the transaction only when the route owns that boundary.
1094
+ 8. If the route opened the transaction, it now commits and runs matching `onAfterCommit`. A joined scope owner commits later when its outer callback completes.
1095
+ 9. Response transformation, route `onAfter...`, authorization result handling, and serialization.
1005
1096
  10. **The response is sent to the client.**
1006
1097
 
1007
- In case of an error at any stage, execution is interrupted, and the corresponding `on...Error...` hooks are called.
1098
+ Operation failures invoke the matching function or route error lifecycle, and an owning boundary performs confirmed rollback plus `onAfterRollback`. A post-commit hook failure is different: the database is already committed and Automator throws `ApiFunctionTransactionPostCommitException` with outcome `COMMITTED`, never a rollback result.
1008
1099
 
1009
1100
  #### Example 1: Auditing with `ApiRouteSubscriberBase`
1010
1101
 
@@ -1203,32 +1294,44 @@ bootstrap();
1203
1294
  The library provides advanced filtering capabilities for list endpoints:
1204
1295
 
1205
1296
  ```typescript
1206
- // GET /users?username[operator]=cont&username[value]=john&createdAt[operator]=between&createdAt[values]=["2023-01-01","2023-12-31"]
1297
+ // GET /users?username[operator]=cont&username[value]=john&createdAt[operator]=between&createdAt[values]=2023-01-01&createdAt[values]=2023-12-31
1207
1298
  ```
1208
1299
 
1209
1300
  This query would search for users with "john" in their username and created between Jan 1 and Dec 31, 2023.
1210
1301
 
1302
+ GET_LIST query DTOs remain dynamically generated from entity `ApiPropertyDescribe` and TypeORM metadata. A route can optionally narrow or overlay that baseline through `routes[GET_LIST].request[QUERY].filter` and `order`. The normalized plan drives the generated DTO, strict runtime parser, TypeORM predicates, and OpenAPI deep-object `oneOf` branches. Omitted sections retain legacy metadata-driven behavior.
1303
+
1304
+ Use `INHERIT` to overlay metadata-enabled fields or `REJECT` to create an allowlist. Enabled filters declare a non-empty operation set and optional `OMIT`, `REJECT`, or `USE_DEFAULT` missing behavior; `REJECT` returns `400 FILTER_REQUIRED`. Route plans cannot re-enable metadata-disabled fields. A manual QUERY DTO is mutually exclusive with generated filter/order config, while a manual RESPONSE DTO remains compatible.
1305
+
1306
+ ## 🧭 Migrating to 3.0
1307
+
1308
+ The repository contains the unreleased 3.0 source contract while package versions remain owned by semantic-release. Review the [3.0 release notes](https://elsikora.com/docs/nestjs-crud-automator/guides/release-notes-3-0) for all accepted, rejected, and deferred changes, then follow [Migrating to 3.0](https://elsikora.com/docs/nestjs-crud-automator/guides/migrating-to-3-0) before pinning an exact published candidate.
1309
+
1310
+ The major migration covers semantic timestamp ownership, UPDATE `currentEntity`, named transaction scopes and post-transaction hooks, source-first authorization, opt-in generated-route transactions and relation locks, entity-based service relation inputs, typed GET_LIST query plans and strict `400` responses, the BigInt string sign enum, and retired validator configuration exports.
1311
+
1312
+ 3.0 intentionally adds no immutable controller `baseWhere`, no `FULL` or `PRESERVE` relation projection, and no custom-only/default-disabled controller mode. Existing HOOKS/IAM scope remains the authorization boundary, custom-only controllers disable all six generated routes explicitly, and a consumer-side typed URL/bracket-filter builder remains deferred.
1313
+
1211
1314
  ## 🛣 Current Status
1212
1315
 
1213
- The current public package focuses on NestJS REST controllers backed by TypeORM repositories. Core CRUD generation, DTO generation, Swagger/OpenAPI metadata, request/response transformers, relation loading, pagination, filtering/sorting, subscribers, and hooks/IAM authorization are implemented.
1316
+ The latest published package remains on the 2.10 line until release automation publishes an exact 3.0 candidate. The current repository source contains the reviewed 3.0 contract for NestJS REST controllers backed by TypeORM repositories. Core CRUD generation, DTO generation, Swagger/OpenAPI metadata, request/response transformers, relation loading, pagination, filtering/sorting, subscribers, transactions, and HOOKS/IAM authorization are implemented.
1214
1317
 
1215
- MongoDB, GraphQL, soft deletes, bulk operations, general-purpose cache integration, and custom parameter decorators are not part of the current public contract. Authorization policy rule caching and explicit authorization cache invalidation are supported.
1318
+ MongoDB, GraphQL, soft deletes, bulk operations, general-purpose cache integration, and custom parameter decorators are not part of the current public contract. Authorization supports source-first resolver reads by default, bounded in-process resolver caching as an explicit opt-in, separate policy-rule caching, and explicit cache invalidation.
1216
1319
 
1217
1320
  ## 🛣 Roadmap
1218
1321
 
1219
1322
  The roadmap is aligned with the current source contract rather than older docs-only examples.
1220
1323
 
1221
- ### Available Now
1324
+ ### Available in Current Source
1222
1325
 
1223
1326
  - REST CRUD controller and service generation for TypeORM entities
1224
- - Entity-driven DTO generation for body, query, parameters, and response contracts
1327
+ - Entity-driven DTO generation for body, query, parameters, and response contracts, including controller-scoped typed GET_LIST query plans
1225
1328
  - Custom DTO support, including nested manual DTOs and GET_LIST item response DTOs
1226
1329
  - Swagger/OpenAPI metadata generation for generated and custom routes
1227
1330
  - Pagination, filtering, sorting, request validators, and request/response transformers
1228
1331
  - Request and response relation loading with configurable reference projection
1229
1332
  - Route and function subscribers, including custom route/function hooks and error hooks
1230
1333
  - Hooks-mode authorization policies and IAM-style policy document authorization
1231
- - Function transaction scopes for generated and custom service operations
1334
+ - Function, generated-route, and named transaction ownership with direct relation locks
1232
1335
  - Environment-agnostic AI guidance bundle for AI-assisted development
1233
1336
 
1234
1337
  ### Current Focus
@@ -1274,7 +1377,7 @@ Yes, the GET_LIST operation automatically includes pagination with limit and pag
1274
1377
 
1275
1378
  ### How is filtering implemented?
1276
1379
 
1277
- Filtering is implemented using a flexible operator-based approach that supports operations like equals, contains, greater than, less than, and between. Filters apply to generated query fields: scalar entity fields and explicit one-level relation property paths such as `author.id[...]` or `author.username[...]`; hidden query fields, object fields, relation-valued fields, and top-level `author[...]` relation filters are skipped.
1380
+ Filtering uses an operator-based bracket wire format with operations such as equals, contains, comparison, membership, and between. By default, fields come from entity metadata. A generated GET_LIST route may add a typed filter/order plan to narrow or allowlist direct scalar and one-hop to-one scalar paths such as `author.id[...]` or `author.username[...]`. Configured plans reject unknown, disabled, malformed, or disallowed input with `400` independently of the host `ValidationPipe`; omitted plans retain legacy metadata-driven behavior.
1278
1381
 
1279
1382
  ### Can I use this with NestJS microservices?
1280
1383
 
@@ -1,11 +1,18 @@
1
+ import { IApiAuthorizationModuleOptions } from '../../../interface/class/api/authorization';
2
+ import { ApiAuthorizationHookPermissionCache } from './hook';
3
+ import { ApiAuthorizationIamAttachmentCache, ApiAuthorizationIamDocumentCache } from './iam';
4
+ import { ApiAuthorizationPolicyRegistry } from './policy/registry.class';
1
5
  import { OnApplicationBootstrap } from '@nestjs/common';
2
6
  import { DiscoveryService } from '@nestjs/core';
3
- import { ApiAuthorizationPolicyRegistry } from './policy/registry.class';
4
7
  export declare class ApiAuthorizationBootstrapValidationService implements OnApplicationBootstrap {
5
8
  private readonly discoveryService;
6
9
  private readonly policyRegistry;
10
+ private readonly hookPermissionCache;
11
+ private readonly iamAttachmentCache;
12
+ private readonly iamDocumentCache;
7
13
  private readonly documentSources;
8
- constructor(discoveryService: DiscoveryService, policyRegistry: ApiAuthorizationPolicyRegistry, documentSources?: ReadonlyArray<unknown>);
14
+ private readonly moduleOptions;
15
+ constructor(discoveryService: DiscoveryService, policyRegistry: ApiAuthorizationPolicyRegistry, hookPermissionCache: ApiAuthorizationHookPermissionCache, iamAttachmentCache: ApiAuthorizationIamAttachmentCache, iamDocumentCache: ApiAuthorizationIamDocumentCache, documentSources?: ReadonlyArray<unknown>, moduleOptions?: IApiAuthorizationModuleOptions);
9
16
  onApplicationBootstrap(): void;
10
17
  private assertValidMode;
11
18
  private validateController;
@@ -1,10 +1,22 @@
1
1
  'use strict';
2
2
 
3
3
  var tslib_es6 = require('../../../external/tslib/tslib.es6.js');
4
+ var cache_class = require('./hook/permission/cache.class.js');
5
+ require('./hook/permission/resolver.class.js');
6
+ var cache_class$1 = require('./iam/attachment/cache.class.js');
7
+ require('./iam/attachment/resolver.class.js');
8
+ var cache_class$2 = require('./iam/document/cache.class.js');
9
+ require('./iam/document/resolver.class.js');
10
+ require('./iam/document/validator.class.js');
11
+ require('./iam/engine.class.js');
12
+ require('./iam/query-planner.class.js');
13
+ var registry_class = require('./policy/registry.class.js');
14
+ var moduleOptionsToken_constant = require('../../../constant/class/authorization/module-options-token.constant.js');
4
15
  var documentSourcesToken_constant = require('../../../constant/class/authorization/policy/document-sources-token.constant.js');
5
16
  var controller_constant = require('../../../constant/decorator/api/controller.constant.js');
6
17
  require('../../../constant/decorator/api/function.constant.js');
7
18
  var method_constant = require('../../../constant/decorator/api/method.constant.js');
19
+ require('../../../enum/class/authorization/cache-mode.enum.js');
8
20
  require('../../../enum/class/authorization/decision-type.enum.js');
9
21
  require('../../../enum/class/authorization/effect.enum.js');
10
22
  var mode_enum = require('../../../enum/class/authorization/mode.enum.js');
@@ -20,19 +32,29 @@ var common = require('@nestjs/common');
20
32
  var core = require('@nestjs/core');
21
33
  var exception_utility = require('../../../utility/error/exception.utility.js');
22
34
  var logger_utility = require('../../../utility/logger.utility.js');
23
- var registry_class = require('./policy/registry.class.js');
24
35
 
25
36
  const authorizationBootstrapValidationLogger = logger_utility.LoggerUtility.getLogger("ApiAuthorizationBootstrapValidationService");
26
37
  exports.ApiAuthorizationBootstrapValidationService = class ApiAuthorizationBootstrapValidationService {
27
38
  discoveryService;
28
39
  policyRegistry;
40
+ hookPermissionCache;
41
+ iamAttachmentCache;
42
+ iamDocumentCache;
29
43
  documentSources;
30
- constructor(discoveryService, policyRegistry, documentSources = []) {
44
+ moduleOptions;
45
+ constructor(discoveryService, policyRegistry, hookPermissionCache, iamAttachmentCache, iamDocumentCache, documentSources = [], moduleOptions = {}) {
31
46
  this.discoveryService = discoveryService;
32
47
  this.policyRegistry = policyRegistry;
48
+ this.hookPermissionCache = hookPermissionCache;
49
+ this.iamAttachmentCache = iamAttachmentCache;
50
+ this.iamDocumentCache = iamDocumentCache;
33
51
  this.documentSources = documentSources;
52
+ this.moduleOptions = moduleOptions;
34
53
  }
35
54
  onApplicationBootstrap() {
55
+ this.hookPermissionCache.configure(this.moduleOptions.cache);
56
+ this.iamAttachmentCache.configure(this.moduleOptions.cache);
57
+ this.iamDocumentCache.configure(this.moduleOptions.cache);
36
58
  const controllerWrappers = this.discoveryService.getControllers();
37
59
  authorizationBootstrapValidationLogger.verbose(`Starting authorization bootstrap validation for ${controllerWrappers.length} controllers.`);
38
60
  for (const controllerWrapper of controllerWrappers) {
@@ -182,9 +204,14 @@ exports.ApiAuthorizationBootstrapValidationService = class ApiAuthorizationBoots
182
204
  };
183
205
  exports.ApiAuthorizationBootstrapValidationService = tslib_es6.__decorate([
184
206
  common.Injectable(),
185
- tslib_es6.__param(2, common.Inject(documentSourcesToken_constant.AUTHORIZATION_POLICY_DOCUMENT_SOURCES_TOKEN)),
186
- tslib_es6.__param(2, common.Optional()),
207
+ tslib_es6.__param(5, common.Inject(documentSourcesToken_constant.AUTHORIZATION_POLICY_DOCUMENT_SOURCES_TOKEN)),
208
+ tslib_es6.__param(5, common.Optional()),
209
+ tslib_es6.__param(6, common.Inject(moduleOptionsToken_constant.AUTHORIZATION_MODULE_OPTIONS_TOKEN)),
210
+ tslib_es6.__param(6, common.Optional()),
187
211
  tslib_es6.__metadata("design:paramtypes", [core.DiscoveryService,
188
- registry_class.ApiAuthorizationPolicyRegistry, Array])
212
+ registry_class.ApiAuthorizationPolicyRegistry,
213
+ cache_class.ApiAuthorizationHookPermissionCache,
214
+ cache_class$1.ApiAuthorizationIamAttachmentCache,
215
+ cache_class$2.ApiAuthorizationIamDocumentCache, Array, Object])
189
216
  ], exports.ApiAuthorizationBootstrapValidationService);
190
217
  //# sourceMappingURL=bootstrap-validation.service.class.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-validation.service.class.js","sources":["../../../../../../src/class/api/authorization/bootstrap-validation.service.class.ts"],"sourcesContent":[null],"names":["LoggerUtility","ApiAuthorizationBootstrapValidationService","EApiAuthorizationMode","ErrorException","CONTROLLER_API_DECORATOR_CONSTANT","EApiRouteType","METHOD_API_DECORATOR_CONSTANT","__decorate","Injectable","__param","Inject","AUTHORIZATION_POLICY_DOCUMENT_SOURCES_TOKEN","Optional","DiscoveryService","ApiAuthorizationPolicyRegistry"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAgBA,MAAM,sCAAsC,GAAkBA,4BAAa,CAAC,SAAS,CAAC,4CAA4C,CAAC;AAGtHC,kDAA0C,GAAhD,MAAM,0CAA0C,CAAA;AAEpC,IAAA,gBAAA;AACA,IAAA,cAAA;AAGA,IAAA,eAAA;AALlB,IAAA,WAAA,CACkB,gBAAkC,EAClC,cAA8C,EAG9C,kBAA0C,EAAE,EAAA;QAJ5C,IAAA,CAAA,gBAAgB,GAAhB,gBAAgB;QAChB,IAAA,CAAA,cAAc,GAAd,cAAc;QAGd,IAAA,CAAA,eAAe,GAAf,eAAe;IAC9B;IAEI,sBAAsB,GAAA;QAC5B,MAAM,kBAAkB,GAA2B,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE;QAEzF,sCAAsC,CAAC,OAAO,CAAC,CAAA,gDAAA,EAAmD,kBAAkB,CAAC,MAAM,CAAA,aAAA,CAAe,CAAC;AAE3I,QAAA,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE;AACnD,YAAA,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC;QAC3C;AAEA,QAAA,sCAAsC,CAAC,OAAO,CAAC,8CAA8C,CAAC;IAC/F;AAEQ,IAAA,eAAe,CAAC,IAAa,EAAE,cAAsB,EAAE,SAAyB,EAAA;AACvF,QAAA,IAAI,IAAI,KAAKC,+BAAqB,CAAC,KAAK,IAAI,IAAI,KAAKA,+BAAqB,CAAC,GAAG,EAAE;YAC/E;QACD;QAEA,IAAI,SAAS,EAAE;AACd,YAAA,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,SAAA,EAAY,SAAS,CAAA,mCAAA,EAAsC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC;AAErJ,YAAA,MAAMC,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,SAAA,EAAY,SAAS,CAAA,mCAAA,EAAsC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC;QAC9H;AAEA,QAAA,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,mCAAA,EAAsC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC;QAEhI,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,mCAAA,EAAsC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC;IACzG;AAEQ,IAAA,kBAAkB,CAAC,iBAAkC,EAAA;AAC5D,QAAA,MAAM,QAAQ,GAA4D,iBAAiB,CAAC,QAAmE;QAE/J,IAAI,CAAC,QAAQ,EAAE;YACd;QACD;QAEA,sCAAsC,CAAC,OAAO,CAAC,CAAA,uDAAA,EAA0D,QAAQ,CAAC,IAAI,CAAA,EAAA,CAAI,CAAC;AAE3H,QAAA,MAAM,WAAW,GAAY,OAAO,CAAC,OAAO,CAAC,WAAW,CAACC,qDAAiC,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;AAC7H,QAAA,MAAM,UAAU,GAAyD,OAAO,CAAC,WAAW,CAACA,qDAAiC,CAAC,uBAAuB,EAAE,QAAQ,CAAyD;AACzN,QAAA,MAAM,aAAa,GAA0E,UAAU,EAAE,aAAa;AAEtH,QAAA,IAAI,WAAW,IAAI,CAAC,aAAa,EAAE;YAClC,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,sFAAA,CAAwF,CAAC;YAElK,MAAMD,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,sFAAA,CAAwF,CAAC;QAC3I;AAEA,QAAA,IAAI,CAAC,WAAW,IAAI,aAAa,EAAE;YAClC,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,0EAAA,CAA4E,CAAC;YAEtJ,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,0EAAA,CAA4E,CAAC;QAC/H;AAEA,QAAA,IAAI,CAAC,aAAa,IAAI,CAAC,UAAU,EAAE;YAClC;QACD;QAEA,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC;AAE9D,QAAA,MAAM,iBAAiB,GAAyB,MAAM,CAAC,MAAM,CAACE,uBAAa,CAAC,CAAC,MAAM,CAAC,CAAC,SAAwB,KAAK,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,SAAS,KAAK,KAAK,CAAC;AAChL,QAAA,MAAM,iBAAiB,GAA+B,IAAI,GAAG,CAAwB,iBAAiB,CAAC,GAAG,CAAC,CAAC,SAAwB,KAAK,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;QACnO,MAAM,gBAAgB,GAA+B,IAAI,CAAC,gCAAgC,CAAC,QAAQ,EAAE,UAAU,CAAC;AAEhH,QAAA,KAAK,MAAM,SAAS,IAAI,gBAAgB,EAAE;AACzC,YAAA,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC;QACjC;QAEA,MAAM,SAAS,GAAY,iBAAiB,CAAC,GAAG,CAACH,+BAAqB,CAAC,KAAK,CAAC;QAC7E,MAAM,OAAO,GAAY,iBAAiB,CAAC,GAAG,CAACA,+BAAqB,CAAC,GAAG,CAAC;AAEzE,QAAA,KAAK,MAAM,SAAS,IAAI,iBAAiB,EAAE;AAC1C,YAAA,MAAM,SAAS,GAA0B,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,IAAI,aAAa,CAAC,WAAW;YACjI,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;QAC1D;AAEA,QAAA,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,UAAU,CAAC,MAA6C,CAAC,EAAE;AACvH,YAAA,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,yFAAA,EAA4F,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,eAAe,CAAA,CAAA,CAAG,CAAC;AAElN,YAAA,MAAMC,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,yFAAA,EAA4F,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,eAAe,CAAA,CAAA,CAAG,CAAC;QAC3L;QAEA,IAAI,OAAO,EAAE;AACZ,YAAA,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE;gBACnC,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,6DAAA,CAA+D,CAAC;gBAEzI,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,6DAAA,CAA+D,CAAC;YAClH;AAEA,YAAA,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE;gBACtC,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,gEAAA,CAAkE,CAAC;gBAE5I,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,gEAAA,CAAkE,CAAC;YACrH;YAEA,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;gBACtC,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,8DAAA,CAAgE,CAAC;gBAE1I,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,8DAAA,CAAgE,CAAC;YACnH;YAEA,IAAI,aAAa,CAAC,kBAAkB,CAAC,SAAS,KAAK,aAAa,CAAC,eAAe,EAAE;gBACjF,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,yDAAA,CAA2D,CAAC;gBAErI,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,yDAAA,CAA2D,CAAC;YAC9G;YAEA,IAAI,aAAa,CAAC,kBAAkB,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,EAAE;gBAClE,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,wDAAA,CAA0D,CAAC;gBAEpI,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,wDAAA,CAA0D,CAAC;YAC7G;YAEA,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,kBAAkB,CAAC;QACjF;IACD;IAEQ,gCAAgC,CAAC,QAAwD,EAAE,UAAoD,EAAA;AACtJ,QAAA,MAAM,KAAK,GAA+B,IAAI,GAAG,EAAyB;AAE1E,QAAA,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;AACxE,YAAA,IAAI,UAAU,KAAK,aAAa,EAAE;gBACjC;YACD;YAEA,MAAM,OAAO,GAAa,QAAQ,CAAC,SAAqC,CAAC,UAAU,CAAC;YACpF,MAAM,eAAe,GAAY,OAAO,OAAO,KAAK,UAAU,GAAG,OAAO,CAAC,WAAW,CAACG,6CAA6B,CAAC,kBAAkB,EAAE,OAAO,CAAC,GAAG,SAAS;AAC3J,YAAA,MAAM,iBAAiB,GAAY,OAAO,CAAC,WAAW,CAACA,6CAA6B,CAAC,kBAAkB,EAAE,QAAQ,CAAC,SAAmB,EAAE,UAAU,CAAC;AAClJ,YAAA,MAAM,QAAQ,IAAmD,eAAe,IAAI,iBAAiB,CAAkD;YAEvJ,IAAI,CAAC,QAAQ,EAAE;gBACd;YACD;AAEA,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE;gBAC/E,MAAMH,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,UAAA,EAAa,UAAU,CAAA,oCAAA,CAAsC,CAAC;YAChH;YAEA,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,EAAE;gBACnD,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,UAAA,EAAa,UAAU,CAAA,oDAAA,CAAsD,CAAC;YAChI;YAEA,MAAM,IAAI,GAAY,QAAQ,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI;YAE5D,IAAI,CAAC,IAAI,EAAE;gBACV,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,QAAQ,CAAC,IAAI,CAAA,UAAA,EAAa,UAAU,CAAA,8CAAA,CAAgD,CAAC;YAC1H;YAEA,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC;AACzC,YAAA,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;QAChB;AAEA,QAAA,OAAO,KAAK;IACb;IAEQ,0BAA0B,CAAC,cAAsB,EAAE,kBAAgH,EAAA;QAC1K,IAAI,CAAC,kBAAkB,EAAE;YACxB;QACD;AAEA,QAAA,IAAI,OAAO,kBAAkB,CAAC,SAAS,KAAK,QAAQ,IAAI,kBAAkB,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;AAClG,YAAA,sCAAsC,CAAC,KAAK,CAAC,eAAe,cAAc,CAAA,yDAAA,CAA2D,CAAC;AAEtI,YAAA,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,yDAAA,CAA2D,CAAC;QAC/G;AAEA,QAAA,IAAI,OAAO,kBAAkB,CAAC,YAAY,KAAK,QAAQ,IAAI,kBAAkB,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;AACxG,YAAA,sCAAsC,CAAC,KAAK,CAAC,eAAe,cAAc,CAAA,4DAAA,CAA8D,CAAC;AAEzI,YAAA,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,4DAAA,CAA8D,CAAC;QAClH;AAEA,QAAA,IAAI,OAAO,kBAAkB,CAAC,YAAY,KAAK,QAAQ,IAAI,kBAAkB,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;AACxG,YAAA,sCAAsC,CAAC,KAAK,CAAC,eAAe,cAAc,CAAA,4DAAA,CAA8D,CAAC;AAEzI,YAAA,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,4DAAA,CAA8D,CAAC;QAClH;AAEA,QAAA,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAU;AACjD,QAAA,MAAM,UAAU,GAAgB,IAAI,GAAG,EAAU;AAEjD,QAAA,KAAK,MAAM,KAAK,IAAI,kBAAkB,CAAC,MAAM,EAAE;YAC9C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;gBACxC,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,uBAAA,EAA0B,KAAK,CAAC,IAAI,CAAA,6BAAA,CAA+B,CAAC;gBAE9I,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,uBAAA,EAA0B,KAAK,CAAC,IAAI,CAAA,6BAAA,CAA+B,CAAC;YACvH;AAEA,YAAA,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;AAC5D,gBAAA,sCAAsC,CAAC,KAAK,CAAC,eAAe,cAAc,CAAA,+DAAA,CAAiE,CAAC;AAE5I,gBAAA,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,+DAAA,CAAiE,CAAC;YACrH;YAEA,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gBAC/B,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,oDAAA,EAAuD,KAAK,CAAC,IAAI,CAAA,CAAA,CAAG,CAAC;gBAE/I,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,oDAAA,EAAuD,KAAK,CAAC,IAAI,CAAA,CAAA,CAAG,CAAC;YACxH;YAEA,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;gBACpC,sCAAsC,CAAC,KAAK,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,mDAAA,EAAsD,KAAK,CAAC,SAAS,CAAA,CAAA,CAAG,CAAC;gBAEnJ,MAAMA,gCAAc,CAAC,CAAA,YAAA,EAAe,cAAc,CAAA,mDAAA,EAAsD,KAAK,CAAC,SAAS,CAAA,CAAA,CAAG,CAAC;YAC5H;AAEA,YAAA,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;AAC1B,YAAA,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;QAChC;IACD;;AAzNYF,kDAA0C,GAAAM,oBAAA,CAAA;AADtD,IAAAC,iBAAU,EAAE;AAKV,IAAAC,iBAAA,CAAA,CAAA,EAAAC,aAAM,CAACC,yEAA2C,CAAC,CAAA;IACnDF,iBAAA,CAAA,CAAA,EAAAG,eAAQ,EAAE,CAAA;+CAHwBC,qBAAgB;QAClBC,6CAA8B,EAAA,KAAA,CAAA;AAHpD,CAAA,EAAAb,kDAA0C,CA0NtD;;"}
1
+ {"version":3,"file":"bootstrap-validation.service.class.js","sources":["../../../../../../src/class/api/authorization/bootstrap-validation.service.class.ts"],"sourcesContent":[null],"names":["LoggerUtility","ApiAuthorizationBootstrapValidationService","EApiAuthorizationMode","ErrorException","CONTROLLER_API_DECORATOR_CONSTANT","EApiRouteType","METHOD_API_DECORATOR_CONSTANT","__decorate","Injectable","__param","Inject","AUTHORIZATION_POLICY_DOCUMENT_SOURCES_TOKEN","Optional","AUTHORIZATION_MODULE_OPTIONS_TOKEN","DiscoveryService","ApiAuthorizationPolicyRegistry","ApiAuthorizationHookPermissionCache","ApiAuthorizationIamAttachmentCache","ApiAuthorizationIamDocumentCache"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var tslib_es6 = require('../../../external/tslib/tslib.es6.js');
4
+ require('../../../enum/class/authorization/cache-mode.enum.js');
4
5
  var decisionType_enum = require('../../../enum/class/authorization/decision-type.enum.js');
5
6
  var effect_enum = require('../../../enum/class/authorization/effect.enum.js');
6
7
  require('../../../enum/class/authorization/mode.enum.js');
@@ -1 +1 @@
1
- {"version":3,"file":"engine.class.js","sources":["../../../../../../src/class/api/authorization/engine.class.ts"],"sourcesContent":[null],"names":["ApiAuthorizationEngine","EApiPolicyEffect","EApiAuthorizationDecisionType","AuthorizationScopeMergeWhere","__decorate","Injectable"],"mappings":"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"}
1
+ {"version":3,"file":"engine.class.js","sources":["../../../../../../src/class/api/authorization/engine.class.ts"],"sourcesContent":[null],"names":["ApiAuthorizationEngine","EApiPolicyEffect","EApiAuthorizationDecisionType","AuthorizationScopeMergeWhere","__decorate","Injectable"],"mappings":"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"}
@@ -6,6 +6,7 @@ var metadataDecision_constant = require('../../../constant/class/authorization/m
6
6
  var controller_constant = require('../../../constant/decorator/api/controller.constant.js');
7
7
  require('../../../constant/decorator/api/function.constant.js');
8
8
  var method_constant = require('../../../constant/decorator/api/method.constant.js');
9
+ require('../../../enum/class/authorization/cache-mode.enum.js');
9
10
  require('../../../enum/class/authorization/decision-type.enum.js');
10
11
  var effect_enum = require('../../../enum/class/authorization/effect.enum.js');
11
12
  require('../../../enum/class/authorization/mode.enum.js');
@@ -1 +1 @@
1
- {"version":3,"file":"guard.class.js","sources":["../../../../../../src/class/api/authorization/guard.class.ts"],"sourcesContent":[null],"names":["LoggerUtility","ApiAuthorizationGuard","ErrorException","EApiPolicyEffect","ForbiddenException","AUTHORIZATION_DECISION_METADATA_CONSTANT","CONTROLLER_API_DECORATOR_CONSTANT","METHOD_API_DECORATOR_CONSTANT","__decorate","Injectable","ApiAuthorizationRuntime"],"mappings":"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"}
1
+ {"version":3,"file":"guard.class.js","sources":["../../../../../../src/class/api/authorization/guard.class.ts"],"sourcesContent":[null],"names":["LoggerUtility","ApiAuthorizationGuard","ErrorException","EApiPolicyEffect","ForbiddenException","AUTHORIZATION_DECISION_METADATA_CONSTANT","CONTROLLER_API_DECORATOR_CONSTANT","METHOD_API_DECORATOR_CONSTANT","__decorate","Injectable","ApiAuthorizationRuntime"],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import { IApiAuthorizationPrincipal } from '../../../../../interface/class/api/authorization';
2
+ import { TApiAuthorizationCacheOptions } from '../../../../../type/class/api/authorization';
2
3
  export declare class ApiAuthorizationHookPermissionCache {
3
4
  private readonly CACHE;
4
5
  clear(): void;
6
+ configure(options?: TApiAuthorizationCacheOptions): void;
5
7
  get(principal: IApiAuthorizationPrincipal): ReadonlyArray<string> | undefined;
6
8
  set(principal: IApiAuthorizationPrincipal, permissions: ReadonlyArray<string>): void;
7
9
  private createPrincipalCacheKey;
@@ -1,13 +1,17 @@
1
1
  'use strict';
2
2
 
3
3
  var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
4
+ var cache_class = require('../../resolver/cache.class.js');
4
5
  var common = require('@nestjs/common');
5
6
 
6
7
  exports.ApiAuthorizationHookPermissionCache = class ApiAuthorizationHookPermissionCache {
7
- CACHE = new Map();
8
+ CACHE = new cache_class.ApiAuthorizationResolverCache();
8
9
  clear() {
9
10
  this.CACHE.clear();
10
11
  }
12
+ configure(options) {
13
+ this.CACHE.configure(options);
14
+ }
11
15
  get(principal) {
12
16
  return this.CACHE.get(this.createPrincipalCacheKey(principal));
13
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cache.class.js","sources":["../../../../../../../../src/class/api/authorization/hook/permission/cache.class.ts"],"sourcesContent":[null],"names":["ApiAuthorizationHookPermissionCache","__decorate","Injectable"],"mappings":";;;;;AAKaA,2CAAmC,GAAzC,MAAM,mCAAmC,CAAA;AAC9B,IAAA,KAAK,GAAuC,IAAI,GAAG,EAAiC;IAE9F,KAAK,GAAA;AACX,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IACnB;AAEO,IAAA,GAAG,CAAC,SAAqC,EAAA;AAC/C,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC/D;IAEO,GAAG,CAAC,SAAqC,EAAE,WAAkC,EAAA;AACnF,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC;IACrE;AAEQ,IAAA,uBAAuB,CAAC,SAAqC,EAAA;QACpE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACtD;AAEQ,IAAA,cAAc,CAAC,KAAc,EAAA;AACpC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACzB,YAAA,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC/D;QAEA,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACxC,YAAA,OAAO,KAAK;QACb;QAEA,MAAM,eAAe,GAA4B,EAAE;QACnD,MAAM,WAAW,GAA4B,KAAgC;QAC7E,MAAM,UAAU,GAAkB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAY,EAAE,KAAa,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAE/H,QAAA,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;AAC7B,YAAA,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC7D;AAEA,QAAA,OAAO,eAAe;IACvB;;AArCYA,2CAAmC,GAAAC,oBAAA,CAAA;AAD/C,IAAAC,iBAAU;AACE,CAAA,EAAAF,2CAAmC,CAsC/C;;"}
1
+ {"version":3,"file":"cache.class.js","sources":["../../../../../../../../src/class/api/authorization/hook/permission/cache.class.ts"],"sourcesContent":[null],"names":["ApiAuthorizationHookPermissionCache","ApiAuthorizationResolverCache","__decorate","Injectable"],"mappings":";;;;;;AAOaA,2CAAmC,GAAzC,MAAM,mCAAmC,CAAA;AAC9B,IAAA,KAAK,GAAyD,IAAIC,yCAA6B,EAAyB;IAElI,KAAK,GAAA;AACX,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IACnB;AAEO,IAAA,SAAS,CAAC,OAAuC,EAAA;AACvD,QAAA,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC;IAC9B;AAEO,IAAA,GAAG,CAAC,SAAqC,EAAA;AAC/C,QAAA,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC/D;IAEO,GAAG,CAAC,SAAqC,EAAE,WAAkC,EAAA;AACnF,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC;IACrE;AAEQ,IAAA,uBAAuB,CAAC,SAAqC,EAAA;QACpE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;IACtD;AAEQ,IAAA,cAAc,CAAC,KAAc,EAAA;AACpC,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACzB,YAAA,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAa,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC/D;QAEA,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AACxC,YAAA,OAAO,KAAK;QACb;QAEA,MAAM,eAAe,GAA4B,EAAE;QACnD,MAAM,WAAW,GAA4B,KAAgC;QAC7E,MAAM,UAAU,GAAkB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAY,EAAE,KAAa,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAE/H,QAAA,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;AAC7B,YAAA,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC7D;AAEA,QAAA,OAAO,eAAe;IACvB;;AAzCYD,2CAAmC,GAAAE,oBAAA,CAAA;AAD/C,IAAAC,iBAAU;AACE,CAAA,EAAAH,2CAAmC,CA0C/C;;"}
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
4
+ var cache_class = require('./cache.class.js');
4
5
  var hookPermissionSourcesToken_constant = require('../../../../../constant/class/authorization/hook-permission-sources-token.constant.js');
5
6
  var common = require('@nestjs/common');
6
7
  var logger_utility = require('../../../../../utility/logger.utility.js');
7
- var cache_class = require('./cache.class.js');
8
8
 
9
9
  const hookPermissionResolverLogger = logger_utility.LoggerUtility.getLogger("ApiAuthorizationHookPermissionResolver");
10
10
  exports.ApiAuthorizationHookPermissionResolver = class ApiAuthorizationHookPermissionResolver {
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.class.js","sources":["../../../../../../../../src/class/api/authorization/hook/permission/resolver.class.ts"],"sourcesContent":[null],"names":["LoggerUtility","ApiAuthorizationHookPermissionResolver","__decorate","Injectable","__param","Inject","AUTHORIZATION_HOOK_PERMISSION_SOURCES_TOKEN","Optional","ApiAuthorizationHookPermissionCache"],"mappings":";;;;;;;;AAQA,MAAM,4BAA4B,GAAkBA,4BAAa,CAAC,SAAS,CAAC,wCAAwC,CAAC;AAGxGC,8CAAsC,GAA5C,MAAM,sCAAsC,CAAA;AAEhC,IAAA,KAAA;AAGA,IAAA,OAAA;IAJlB,WAAA,CACkB,KAA0C,EAG1C,OAAA,GAAmD,EAAE,EAAA;QAHrD,IAAA,CAAA,KAAK,GAAL,KAAK;QAGL,IAAA,CAAA,OAAO,GAAP,OAAO;IACtB;IAEI,KAAK,GAAA;AACX,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IACnB;IAEO,MAAM,OAAO,CAAC,SAAqC,EAAA;QACzD,MAAM,iBAAiB,GAAsC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;QAEtF,IAAI,iBAAiB,EAAE;AACtB,YAAA,4BAA4B,CAAC,OAAO,CAAC,CAAA,6CAAA,EAAgD,SAAS,CAAC,EAAE,CAAA,GAAA,EAAM,iBAAiB,CAAC,MAAM,CAAA,cAAA,CAAgB,CAAC;AAEhJ,YAAA,OAAO,iBAAiB;QACzB;AAEA,QAAA,MAAM,WAAW,GAAgB,IAAI,GAAG,EAAU;AAElD,QAAA,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAClC,MAAM,mBAAmB,GAA0B,MAAM,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC;AAEzF,YAAA,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE;gBAC7C,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AAC5D,oBAAA,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;gBAC5B;YACD;QACD;AAEA,QAAA,MAAM,MAAM,GAA0B,CAAC,GAAG,WAAW,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC;AACjC,QAAA,4BAA4B,CAAC,OAAO,CAAC,YAAY,MAAM,CAAC,MAAM,CAAA,iCAAA,EAAoC,SAAS,CAAC,EAAE,CAAA,OAAA,EAAU,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA,SAAA,CAAW,CAAC;AAEvJ,QAAA,OAAO,MAAM;IACd;;AAtCYA,8CAAsC,GAAAC,oBAAA,CAAA;AADlD,IAAAC,iBAAU,EAAE;AAIV,IAAAC,iBAAA,CAAA,CAAA,EAAAC,aAAM,CAACC,+EAA2C,CAAC,CAAA;IACnDF,iBAAA,CAAA,CAAA,EAAAG,eAAQ,EAAE,CAAA;+CAFaC,+CAAmC,EAAA,KAAA,CAAA;AAFhD,CAAA,EAAAP,8CAAsC,CAuClD;;"}
1
+ {"version":3,"file":"resolver.class.js","sources":["../../../../../../../../src/class/api/authorization/hook/permission/resolver.class.ts"],"sourcesContent":[null],"names":["LoggerUtility","ApiAuthorizationHookPermissionResolver","__decorate","Injectable","__param","Inject","AUTHORIZATION_HOOK_PERMISSION_SOURCES_TOKEN","Optional","ApiAuthorizationHookPermissionCache"],"mappings":";;;;;;;;AAOA,MAAM,4BAA4B,GAAkBA,4BAAa,CAAC,SAAS,CAAC,wCAAwC,CAAC;AAGxGC,8CAAsC,GAA5C,MAAM,sCAAsC,CAAA;AAEhC,IAAA,KAAA;AAGA,IAAA,OAAA;IAJlB,WAAA,CACkB,KAA0C,EAG1C,OAAA,GAAmD,EAAE,EAAA;QAHrD,IAAA,CAAA,KAAK,GAAL,KAAK;QAGL,IAAA,CAAA,OAAO,GAAP,OAAO;IACtB;IAEI,KAAK,GAAA;AACX,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IACnB;IAEO,MAAM,OAAO,CAAC,SAAqC,EAAA;QACzD,MAAM,iBAAiB,GAAsC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;QAEtF,IAAI,iBAAiB,EAAE;AACtB,YAAA,4BAA4B,CAAC,OAAO,CAAC,CAAA,6CAAA,EAAgD,SAAS,CAAC,EAAE,CAAA,GAAA,EAAM,iBAAiB,CAAC,MAAM,CAAA,cAAA,CAAgB,CAAC;AAEhJ,YAAA,OAAO,iBAAiB;QACzB;AAEA,QAAA,MAAM,WAAW,GAAgB,IAAI,GAAG,EAAU;AAElD,QAAA,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE;YAClC,MAAM,mBAAmB,GAA0B,MAAM,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC;AAEzF,YAAA,KAAK,MAAM,UAAU,IAAI,mBAAmB,EAAE;gBAC7C,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;AAC5D,oBAAA,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;gBAC5B;YACD;QACD;AAEA,QAAA,MAAM,MAAM,GAA0B,CAAC,GAAG,WAAW,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC;AACjC,QAAA,4BAA4B,CAAC,OAAO,CAAC,YAAY,MAAM,CAAC,MAAM,CAAA,iCAAA,EAAoC,SAAS,CAAC,EAAE,CAAA,OAAA,EAAU,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA,SAAA,CAAW,CAAC;AAEvJ,QAAA,OAAO,MAAM;IACd;;AAtCYA,8CAAsC,GAAAC,oBAAA,CAAA;AADlD,IAAAC,iBAAU,EAAE;AAIV,IAAAC,iBAAA,CAAA,CAAA,EAAAC,aAAM,CAACC,+EAA2C,CAAC,CAAA;IACnDF,iBAAA,CAAA,CAAA,EAAAG,eAAQ,EAAE,CAAA;+CAFaC,+CAAmC,EAAA,KAAA,CAAA;AAFhD,CAAA,EAAAP,8CAAsC,CAuClD;;"}
@@ -1,7 +1,9 @@
1
1
  import { IApiAuthorizationPrincipal, IApiResolvedPolicyAttachments } from '../../../../../interface/class/api/authorization';
2
+ import { TApiAuthorizationCacheOptions } from '../../../../../type/class/api/authorization';
2
3
  export declare class ApiAuthorizationIamAttachmentCache {
3
4
  private readonly CACHE;
4
5
  clear(): void;
6
+ configure(options?: TApiAuthorizationCacheOptions): void;
5
7
  get(principal: IApiAuthorizationPrincipal): IApiResolvedPolicyAttachments | undefined;
6
8
  set(principal: IApiAuthorizationPrincipal, attachments: IApiResolvedPolicyAttachments): void;
7
9
  private createPrincipalCacheKey;
@@ -1,13 +1,17 @@
1
1
  'use strict';
2
2
 
3
3
  var tslib_es6 = require('../../../../../external/tslib/tslib.es6.js');
4
+ var cache_class = require('../../resolver/cache.class.js');
4
5
  var common = require('@nestjs/common');
5
6
 
6
7
  exports.ApiAuthorizationIamAttachmentCache = class ApiAuthorizationIamAttachmentCache {
7
- CACHE = new Map();
8
+ CACHE = new cache_class.ApiAuthorizationResolverCache();
8
9
  clear() {
9
10
  this.CACHE.clear();
10
11
  }
12
+ configure(options) {
13
+ this.CACHE.configure(options);
14
+ }
11
15
  get(principal) {
12
16
  return this.CACHE.get(this.createPrincipalCacheKey(principal));
13
17
  }