@elsikora/nestjs-crud-automator 1.24.0-dev.1 → 2.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 (794) hide show
  1. package/README.md +213 -163
  2. package/dist/cjs/class/api/authorization/bootstrap-validation.service.class.d.ts +1 -0
  3. package/dist/cjs/class/api/authorization/bootstrap-validation.service.class.js +37 -3
  4. package/dist/cjs/class/api/authorization/bootstrap-validation.service.class.js.map +1 -1
  5. package/dist/cjs/class/api/authorization/cache-invalidation.service.class.d.ts +7 -0
  6. package/dist/cjs/class/api/authorization/cache-invalidation.service.class.js +21 -0
  7. package/dist/cjs/class/api/authorization/cache-invalidation.service.class.js.map +1 -0
  8. package/dist/cjs/class/api/authorization/guard.class.d.ts +1 -2
  9. package/dist/cjs/class/api/authorization/guard.class.js +13 -18
  10. package/dist/cjs/class/api/authorization/guard.class.js.map +1 -1
  11. package/dist/cjs/class/api/authorization/index.d.ts +1 -0
  12. package/dist/cjs/class/api/authorization/policy/executor.class.js +1 -2
  13. package/dist/cjs/class/api/authorization/policy/executor.class.js.map +1 -1
  14. package/dist/cjs/class/api/authorization/policy/index.d.ts +1 -0
  15. package/dist/cjs/class/api/authorization/policy/registry.class.d.ts +3 -5
  16. package/dist/cjs/class/api/authorization/policy/registry.class.js +11 -34
  17. package/dist/cjs/class/api/authorization/policy/registry.class.js.map +1 -1
  18. package/dist/cjs/class/api/authorization/policy/subscriber-wrapper.class.d.ts +10 -0
  19. package/dist/cjs/class/api/authorization/policy/subscriber-wrapper.class.js +23 -0
  20. package/dist/cjs/class/api/authorization/policy/subscriber-wrapper.class.js.map +1 -0
  21. package/dist/cjs/class/api/authorization/runtime.class.d.ts +3 -2
  22. package/dist/cjs/class/api/authorization/runtime.class.js +6 -5
  23. package/dist/cjs/class/api/authorization/runtime.class.js.map +1 -1
  24. package/dist/cjs/class/api/authorization/simulator.class.d.ts +2 -0
  25. package/dist/cjs/class/api/authorization/simulator.class.js +1 -0
  26. package/dist/cjs/class/api/authorization/simulator.class.js.map +1 -1
  27. package/dist/cjs/class/api/function/context-storage.class.d.ts +7 -0
  28. package/dist/cjs/class/api/function/context-storage.class.js +16 -0
  29. package/dist/cjs/class/api/function/context-storage.class.js.map +1 -0
  30. package/dist/cjs/class/api/function/custom-runtime.class.d.ts +19 -0
  31. package/dist/cjs/class/api/function/custom-runtime.class.js +118 -0
  32. package/dist/cjs/class/api/function/custom-runtime.class.js.map +1 -0
  33. package/dist/cjs/class/api/function/index.d.ts +1 -0
  34. package/dist/cjs/class/api/function/transaction-scope.class.d.ts +6 -0
  35. package/dist/cjs/class/api/function/transaction-scope.class.js +34 -0
  36. package/dist/cjs/class/api/function/transaction-scope.class.js.map +1 -0
  37. package/dist/cjs/class/api/index.d.ts +2 -0
  38. package/dist/cjs/class/api/route-runtime.class.d.ts +21 -0
  39. package/dist/cjs/class/api/route-runtime.class.js +335 -0
  40. package/dist/cjs/class/api/route-runtime.class.js.map +1 -0
  41. package/dist/cjs/class/api/service-base.class.d.ts +9 -7
  42. package/dist/cjs/class/api/service-base.class.js +16 -6
  43. package/dist/cjs/class/api/service-base.class.js.map +1 -1
  44. package/dist/cjs/class/api/subscriber/executor.class.d.ts +7 -6
  45. package/dist/cjs/class/api/subscriber/executor.class.js +16 -12
  46. package/dist/cjs/class/api/subscriber/executor.class.js.map +1 -1
  47. package/dist/cjs/class/api/subscriber/index.d.ts +1 -0
  48. package/dist/cjs/class/api/subscriber/registry.class.d.ts +5 -2
  49. package/dist/cjs/class/api/subscriber/registry.class.js +26 -24
  50. package/dist/cjs/class/api/subscriber/registry.class.js.map +1 -1
  51. package/dist/cjs/class/api/subscriber/wrapper.class.d.ts +18 -0
  52. package/dist/cjs/class/api/subscriber/wrapper.class.js +23 -0
  53. package/dist/cjs/class/api/subscriber/wrapper.class.js.map +1 -0
  54. package/dist/cjs/class/utility/dto/exception/details/foreign-key-violation.class.js +5 -1
  55. package/dist/cjs/class/utility/dto/exception/details/foreign-key-violation.class.js.map +1 -1
  56. package/dist/cjs/class/utility/dto/exception/details/unique-violation.class.js +5 -1
  57. package/dist/cjs/class/utility/dto/exception/details/unique-violation.class.js.map +1 -1
  58. package/dist/cjs/class/utility/dto/property/factory/number.class.js +6 -2
  59. package/dist/cjs/class/utility/dto/property/factory/number.class.js.map +1 -1
  60. package/dist/cjs/class/utility/dto/property/factory/relation.class.js +5 -1
  61. package/dist/cjs/class/utility/dto/property/factory/relation.class.js.map +1 -1
  62. package/dist/cjs/class/utility/dto/strategy/body.class.js +5 -1
  63. package/dist/cjs/class/utility/dto/strategy/body.class.js.map +1 -1
  64. package/dist/cjs/class/utility/dto/strategy/query.class.js +5 -1
  65. package/dist/cjs/class/utility/dto/strategy/query.class.js.map +1 -1
  66. package/dist/cjs/class/utility/dto/strategy/request.class.js +5 -1
  67. package/dist/cjs/class/utility/dto/strategy/request.class.js.map +1 -1
  68. package/dist/cjs/class/utility/dto/strategy/response.class.js +5 -1
  69. package/dist/cjs/class/utility/dto/strategy/response.class.js.map +1 -1
  70. package/dist/cjs/constant/decorator/api/method.constant.d.ts +2 -3
  71. package/dist/cjs/constant/decorator/api/method.constant.js +4 -6
  72. package/dist/cjs/constant/decorator/api/method.constant.js.map +1 -1
  73. package/dist/cjs/constant/utility/dto/constant.js +6 -2
  74. package/dist/cjs/constant/utility/dto/constant.js.map +1 -1
  75. package/dist/cjs/decorator/api/function/create.decorator.js +51 -24
  76. package/dist/cjs/decorator/api/function/create.decorator.js.map +1 -1
  77. package/dist/cjs/decorator/api/function/custom.decorator.d.ts +9 -0
  78. package/dist/cjs/decorator/api/function/custom.decorator.js +47 -0
  79. package/dist/cjs/decorator/api/function/custom.decorator.js.map +1 -0
  80. package/dist/cjs/decorator/api/function/decorator.js +16 -7
  81. package/dist/cjs/decorator/api/function/decorator.js.map +1 -1
  82. package/dist/cjs/decorator/api/function/delete.decorator.js +62 -41
  83. package/dist/cjs/decorator/api/function/delete.decorator.js.map +1 -1
  84. package/dist/cjs/decorator/api/function/get/decorator.js +40 -25
  85. package/dist/cjs/decorator/api/function/get/decorator.js.map +1 -1
  86. package/dist/cjs/decorator/api/function/get/list.decorator.js +40 -25
  87. package/dist/cjs/decorator/api/function/get/list.decorator.js.map +1 -1
  88. package/dist/cjs/decorator/api/function/get/many.decorator.js +40 -25
  89. package/dist/cjs/decorator/api/function/get/many.decorator.js.map +1 -1
  90. package/dist/cjs/decorator/api/function/index.d.ts +1 -0
  91. package/dist/cjs/decorator/api/function/update.decorator.js +62 -41
  92. package/dist/cjs/decorator/api/function/update.decorator.js.map +1 -1
  93. package/dist/cjs/decorator/api/index.d.ts +1 -0
  94. package/dist/cjs/decorator/api/method.decorator.d.ts +5 -6
  95. package/dist/cjs/decorator/api/method.decorator.js +65 -325
  96. package/dist/cjs/decorator/api/method.decorator.js.map +1 -1
  97. package/dist/cjs/decorator/api/property/boolean.decorator.js +23 -4
  98. package/dist/cjs/decorator/api/property/boolean.decorator.js.map +1 -1
  99. package/dist/cjs/decorator/api/property/date.decorator.js +23 -4
  100. package/dist/cjs/decorator/api/property/date.decorator.js.map +1 -1
  101. package/dist/cjs/decorator/api/property/enum.decorator.js +21 -3
  102. package/dist/cjs/decorator/api/property/enum.decorator.js.map +1 -1
  103. package/dist/cjs/decorator/api/property/number.decorator.js +28 -5
  104. package/dist/cjs/decorator/api/property/number.decorator.js.map +1 -1
  105. package/dist/cjs/decorator/api/property/object.decorator.js +21 -3
  106. package/dist/cjs/decorator/api/property/object.decorator.js.map +1 -1
  107. package/dist/cjs/decorator/api/property/string.decorator.js +25 -8
  108. package/dist/cjs/decorator/api/property/string.decorator.js.map +1 -1
  109. package/dist/cjs/decorator/api/property/uuid.decorator.js +26 -4
  110. package/dist/cjs/decorator/api/property/uuid.decorator.js.map +1 -1
  111. package/dist/cjs/decorator/api/route-custom.decorator.d.ts +9 -0
  112. package/dist/cjs/decorator/api/route-custom.decorator.js +101 -0
  113. package/dist/cjs/decorator/api/route-custom.decorator.js.map +1 -0
  114. package/dist/cjs/decorator/api/service/decorator.js +28 -23
  115. package/dist/cjs/decorator/api/service/decorator.js.map +1 -1
  116. package/dist/cjs/enum/decorator/api/controller/index.d.ts +3 -1
  117. package/dist/cjs/enum/decorator/api/controller/relation-reference-shape.enum.d.ts +4 -0
  118. package/dist/cjs/enum/decorator/api/controller/relation-reference-shape.enum.js +8 -0
  119. package/dist/cjs/enum/decorator/api/controller/relation-reference-shape.enum.js.map +1 -0
  120. package/dist/cjs/enum/decorator/api/controller/request/index.d.ts +2 -0
  121. package/dist/cjs/enum/decorator/api/controller/request/target.enum.d.ts +5 -0
  122. package/dist/cjs/enum/decorator/api/controller/request/target.enum.js +9 -0
  123. package/dist/cjs/enum/decorator/api/controller/request/target.enum.js.map +1 -0
  124. package/dist/cjs/enum/decorator/api/controller/{request-transformer-type.enum.js → request/transformer-type.enum.js} +1 -1
  125. package/dist/cjs/enum/decorator/api/controller/request/transformer-type.enum.js.map +1 -0
  126. package/dist/cjs/enum/decorator/api/controller/response-target.enum.d.ts +3 -0
  127. package/dist/cjs/enum/decorator/api/controller/response-target.enum.js +7 -0
  128. package/dist/cjs/enum/decorator/api/controller/response-target.enum.js.map +1 -0
  129. package/dist/cjs/enum/decorator/api/dto-type.enum.d.ts +1 -1
  130. package/dist/cjs/enum/decorator/api/dto-type.enum.js +1 -1
  131. package/dist/cjs/enum/decorator/api/dto-type.enum.js.map +1 -1
  132. package/dist/cjs/enum/decorator/api/function-transaction-mode.enum.d.ts +6 -0
  133. package/dist/cjs/enum/decorator/api/function-transaction-mode.enum.js +10 -0
  134. package/dist/cjs/enum/decorator/api/function-transaction-mode.enum.js.map +1 -0
  135. package/dist/cjs/enum/decorator/api/function-type.enum.d.ts +1 -0
  136. package/dist/cjs/enum/decorator/api/function-type.enum.js +1 -0
  137. package/dist/cjs/enum/decorator/api/function-type.enum.js.map +1 -1
  138. package/dist/cjs/enum/decorator/api/index.d.ts +1 -0
  139. package/dist/cjs/external/rxjs/dist/esm5/internal/Observable.js +106 -0
  140. package/dist/cjs/external/rxjs/dist/esm5/internal/Observable.js.map +1 -0
  141. package/dist/cjs/external/rxjs/dist/esm5/internal/Subscriber.js +158 -0
  142. package/dist/cjs/external/rxjs/dist/esm5/internal/Subscriber.js.map +1 -0
  143. package/dist/cjs/external/rxjs/dist/esm5/internal/Subscription.js +148 -0
  144. package/dist/cjs/external/rxjs/dist/esm5/internal/Subscription.js.map +1 -0
  145. package/dist/cjs/external/rxjs/dist/esm5/internal/config.js +7 -0
  146. package/dist/cjs/external/rxjs/dist/esm5/internal/config.js.map +1 -0
  147. package/dist/cjs/external/rxjs/dist/esm5/internal/lastValueFrom.js +28 -0
  148. package/dist/cjs/external/rxjs/dist/esm5/internal/lastValueFrom.js.map +1 -0
  149. package/dist/cjs/external/rxjs/dist/esm5/internal/observable/from.js +11 -0
  150. package/dist/cjs/external/rxjs/dist/esm5/internal/observable/from.js.map +1 -0
  151. package/dist/cjs/external/rxjs/dist/esm5/internal/observable/innerFrom.js +154 -0
  152. package/dist/cjs/external/rxjs/dist/esm5/internal/observable/innerFrom.js.map +1 -0
  153. package/dist/cjs/external/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js +66 -0
  154. package/dist/cjs/external/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js.map +1 -0
  155. package/dist/cjs/external/rxjs/dist/esm5/internal/operators/observeOn.js +15 -0
  156. package/dist/cjs/external/rxjs/dist/esm5/internal/operators/observeOn.js.map +1 -0
  157. package/dist/cjs/external/rxjs/dist/esm5/internal/operators/subscribeOn.js +13 -0
  158. package/dist/cjs/external/rxjs/dist/esm5/internal/operators/subscribeOn.js.map +1 -0
  159. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleArray.js +23 -0
  160. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleArray.js.map +1 -0
  161. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleAsyncIterable.js +28 -0
  162. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleAsyncIterable.js.map +1 -0
  163. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleIterable.js +37 -0
  164. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleIterable.js.map +1 -0
  165. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleObservable.js +12 -0
  166. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleObservable.js.map +1 -0
  167. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/schedulePromise.js +12 -0
  168. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/schedulePromise.js.map +1 -0
  169. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleReadableStreamLike.js +11 -0
  170. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduleReadableStreamLike.js.map +1 -0
  171. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduled.js +42 -0
  172. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduled/scheduled.js.map +1 -0
  173. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js +20 -0
  174. package/dist/cjs/external/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js.map +1 -0
  175. package/dist/cjs/external/rxjs/dist/esm5/internal/symbol/iterator.js +13 -0
  176. package/dist/cjs/external/rxjs/dist/esm5/internal/symbol/iterator.js.map +1 -0
  177. package/dist/cjs/external/rxjs/dist/esm5/internal/symbol/observable.js +6 -0
  178. package/dist/cjs/external/rxjs/dist/esm5/internal/symbol/observable.js.map +1 -0
  179. package/dist/cjs/external/rxjs/dist/esm5/internal/util/EmptyError.js +14 -0
  180. package/dist/cjs/external/rxjs/dist/esm5/internal/util/EmptyError.js.map +1 -0
  181. package/dist/cjs/external/rxjs/dist/esm5/internal/util/UnsubscriptionError.js +17 -0
  182. package/dist/cjs/external/rxjs/dist/esm5/internal/util/UnsubscriptionError.js.map +1 -0
  183. package/dist/cjs/external/rxjs/dist/esm5/internal/util/arrRemove.js +11 -0
  184. package/dist/cjs/external/rxjs/dist/esm5/internal/util/arrRemove.js.map +1 -0
  185. package/dist/cjs/external/rxjs/dist/esm5/internal/util/createErrorClass.js +15 -0
  186. package/dist/cjs/external/rxjs/dist/esm5/internal/util/createErrorClass.js.map +1 -0
  187. package/dist/cjs/external/rxjs/dist/esm5/internal/util/errorContext.js +10 -0
  188. package/dist/cjs/external/rxjs/dist/esm5/internal/util/errorContext.js.map +1 -0
  189. package/dist/cjs/external/rxjs/dist/esm5/internal/util/executeSchedule.js +22 -0
  190. package/dist/cjs/external/rxjs/dist/esm5/internal/util/executeSchedule.js.map +1 -0
  191. package/dist/cjs/external/rxjs/dist/esm5/internal/util/identity.js +8 -0
  192. package/dist/cjs/external/rxjs/dist/esm5/internal/util/identity.js.map +1 -0
  193. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isArrayLike.js +6 -0
  194. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isArrayLike.js.map +1 -0
  195. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isAsyncIterable.js +10 -0
  196. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isAsyncIterable.js.map +1 -0
  197. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isFunction.js +8 -0
  198. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isFunction.js.map +1 -0
  199. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isInteropObservable.js +11 -0
  200. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isInteropObservable.js.map +1 -0
  201. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isIterable.js +11 -0
  202. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isIterable.js.map +1 -0
  203. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isPromise.js +10 -0
  204. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isPromise.js.map +1 -0
  205. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isReadableStreamLike.js +44 -0
  206. package/dist/cjs/external/rxjs/dist/esm5/internal/util/isReadableStreamLike.js.map +1 -0
  207. package/dist/cjs/external/rxjs/dist/esm5/internal/util/lift.js +26 -0
  208. package/dist/cjs/external/rxjs/dist/esm5/internal/util/lift.js.map +1 -0
  209. package/dist/cjs/external/rxjs/dist/esm5/internal/util/noop.js +6 -0
  210. package/dist/cjs/external/rxjs/dist/esm5/internal/util/noop.js.map +1 -0
  211. package/dist/cjs/external/rxjs/dist/esm5/internal/util/pipe.js +18 -0
  212. package/dist/cjs/external/rxjs/dist/esm5/internal/util/pipe.js.map +1 -0
  213. package/dist/cjs/external/rxjs/dist/esm5/internal/util/reportUnhandledError.js +14 -0
  214. package/dist/cjs/external/rxjs/dist/esm5/internal/util/reportUnhandledError.js.map +1 -0
  215. package/dist/cjs/external/rxjs/dist/esm5/internal/util/throwUnobservableError.js +8 -0
  216. package/dist/cjs/external/rxjs/dist/esm5/internal/util/throwUnobservableError.js.map +1 -0
  217. package/dist/cjs/external/tslib/tslib.es6.js +125 -0
  218. package/dist/cjs/external/tslib/tslib.es6.js.map +1 -1
  219. package/dist/cjs/factory/api-controller.factory.d.ts +1 -0
  220. package/dist/cjs/factory/api-controller.factory.js +42 -393
  221. package/dist/cjs/factory/api-controller.factory.js.map +1 -1
  222. package/dist/cjs/index.js +45 -2
  223. package/dist/cjs/index.js.map +1 -1
  224. package/dist/cjs/interceptor/api-route-runtime.interceptor.d.ts +5 -0
  225. package/dist/cjs/interceptor/api-route-runtime.interceptor.js +29 -0
  226. package/dist/cjs/interceptor/api-route-runtime.interceptor.js.map +1 -0
  227. package/dist/cjs/interface/class/api/authorization/policy/registry.interface.d.ts +1 -0
  228. package/dist/cjs/interface/class/api/authorization/policy/subscriber/context/interface.d.ts +1 -1
  229. package/dist/cjs/interface/class/api/function/context/index.d.ts +2 -0
  230. package/dist/cjs/interface/class/api/function/context/interface.d.ts +10 -0
  231. package/dist/cjs/interface/class/api/function/context/operations.interface.d.ts +13 -0
  232. package/dist/cjs/interface/class/api/function/index.d.ts +1 -0
  233. package/dist/cjs/interface/class/api/index.d.ts +2 -0
  234. package/dist/cjs/interface/class/api/route/index.d.ts +1 -0
  235. package/dist/cjs/interface/class/api/route/runtime/context-data.interface.d.ts +10 -0
  236. package/dist/cjs/interface/class/api/route/runtime/custom-execution-options.interface.d.ts +9 -0
  237. package/dist/cjs/interface/class/api/route/runtime/generated/execution-options.interface.d.ts +14 -0
  238. package/dist/cjs/interface/class/api/route/runtime/generated/index.d.ts +2 -0
  239. package/dist/cjs/interface/class/api/route/runtime/generated/targets.interface.d.ts +12 -0
  240. package/dist/cjs/interface/class/api/route/runtime/http-request.interface.d.ts +8 -0
  241. package/dist/cjs/interface/class/api/route/runtime/index.d.ts +4 -0
  242. package/dist/cjs/interface/class/api/subscriber/function/error-execution-context.interface.d.ts +1 -0
  243. package/dist/cjs/interface/class/api/subscriber/function/execution/context.interface.d.ts +1 -0
  244. package/dist/cjs/interface/class/api/subscriber/function.interface.d.ts +4 -0
  245. package/dist/cjs/interface/class/api/subscriber/route/error-execution-context.interface.d.ts +2 -1
  246. package/dist/cjs/interface/class/api/subscriber/route/execution/context/data/extended.interface.d.ts +36 -0
  247. package/dist/cjs/interface/class/api/subscriber/route/execution/context/data/index.d.ts +2 -0
  248. package/dist/cjs/interface/class/api/subscriber/route/execution/context/data/interface.d.ts +32 -0
  249. package/dist/cjs/interface/class/api/subscriber/route/execution/context/index.d.ts +2 -0
  250. package/dist/cjs/interface/class/api/subscriber/route/execution/context/interface.d.ts +11 -0
  251. package/dist/cjs/interface/class/api/subscriber/route/execution/index.d.ts +1 -2
  252. package/dist/cjs/interface/class/api/subscriber/route.interface.d.ts +6 -2
  253. package/dist/cjs/interface/decorator/api/controller/properties/route/authentication.interface.d.ts +1 -1
  254. package/dist/cjs/interface/decorator/api/controller/properties/route/base/generation.interface.d.ts +5 -0
  255. package/dist/cjs/interface/decorator/api/controller/properties/route/base/index.d.ts +5 -2
  256. package/dist/cjs/interface/decorator/api/controller/properties/route/base/interface.d.ts +4 -7
  257. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/index.d.ts +4 -0
  258. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/interface.d.ts +6 -0
  259. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/reference.interface.d.ts +5 -0
  260. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/request/index.d.ts +2 -0
  261. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/request/interface.d.ts +6 -0
  262. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/request/load.interface.d.ts +10 -0
  263. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/response/index.d.ts +2 -0
  264. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/response/interface.d.ts +6 -0
  265. package/dist/cjs/interface/decorator/api/controller/properties/route/base/relations/response/load.interface.d.ts +4 -0
  266. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/index.d.ts +2 -0
  267. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/interface.d.ts +6 -0
  268. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request/target.interface.d.ts +6 -0
  269. package/dist/cjs/interface/decorator/api/controller/properties/route/base/response/index.d.ts +2 -0
  270. package/dist/cjs/interface/decorator/api/controller/properties/route/base/response/interface.d.ts +7 -0
  271. package/dist/cjs/interface/decorator/api/controller/properties/route/base/response/target.interface.d.ts +4 -0
  272. package/dist/cjs/interface/decorator/api/controller/properties/route/base/security.interface.d.ts +6 -0
  273. package/dist/cjs/interface/decorator/api/controller/properties/route/with/dto.interface.d.ts +1 -1
  274. package/dist/cjs/interface/decorator/api/function/create-executor-properties.interface.d.ts +1 -2
  275. package/dist/cjs/interface/decorator/api/function/custom-properties.interface.d.ts +9 -0
  276. package/dist/cjs/interface/decorator/api/function/delete-executor-properties.interface.d.ts +2 -3
  277. package/dist/cjs/interface/decorator/api/function/get/executor-properties.interface.d.ts +1 -2
  278. package/dist/cjs/interface/decorator/api/function/get/list-executor-properties.interface.d.ts +1 -2
  279. package/dist/cjs/interface/decorator/api/function/get/many-executor-properties.interface.d.ts +1 -2
  280. package/dist/cjs/interface/decorator/api/function/index.d.ts +1 -0
  281. package/dist/cjs/interface/decorator/api/function/properties.interface.d.ts +4 -0
  282. package/dist/cjs/interface/decorator/api/function/update-executor-properties.interface.d.ts +2 -3
  283. package/dist/cjs/interface/decorator/api/index.d.ts +1 -0
  284. package/dist/cjs/interface/decorator/api/method/index.d.ts +0 -2
  285. package/dist/cjs/interface/decorator/api/method/properties.interface.d.ts +4 -17
  286. package/dist/cjs/interface/decorator/api/route/custom-properties.interface.d.ts +6 -0
  287. package/dist/cjs/interface/decorator/api/route/documentation-properties.interface.d.ts +5 -0
  288. package/dist/cjs/interface/decorator/api/route/index.d.ts +7 -0
  289. package/dist/cjs/interface/decorator/api/route/metadata/index.d.ts +3 -0
  290. package/dist/cjs/interface/decorator/api/route/metadata/interface.d.ts +15 -0
  291. package/dist/cjs/interface/decorator/api/route/metadata/resource.interface.d.ts +6 -0
  292. package/dist/cjs/interface/decorator/api/route/metadata/route.interface.d.ts +7 -0
  293. package/dist/cjs/interface/decorator/api/route/response/index.d.ts +2 -0
  294. package/dist/cjs/interface/decorator/api/route/response/properties.interface.d.ts +9 -0
  295. package/dist/cjs/interface/decorator/api/route/response/serialization-properties.interface.d.ts +3 -0
  296. package/dist/cjs/interface/decorator/api/route/runtime-properties.interface.d.ts +11 -0
  297. package/dist/cjs/interface/decorator/api/route/security/authentication-properties.interface.d.ts +9 -0
  298. package/dist/cjs/interface/decorator/api/route/security/authorization-properties.interface.d.ts +4 -0
  299. package/dist/cjs/interface/decorator/api/route/security/index.d.ts +3 -0
  300. package/dist/cjs/interface/decorator/api/route/security/properties.interface.d.ts +6 -0
  301. package/dist/cjs/interface/decorator/api/route/throttling/default-properties.interface.d.ts +4 -0
  302. package/dist/cjs/interface/decorator/api/route/throttling/index.d.ts +2 -0
  303. package/dist/cjs/interface/decorator/api/route/throttling/properties.interface.d.ts +4 -0
  304. package/dist/cjs/interface/decorator/api/subscriber/function/filter.interface.d.ts +5 -0
  305. package/dist/cjs/interface/decorator/api/subscriber/function/index.d.ts +2 -0
  306. package/dist/cjs/interface/decorator/api/subscriber/function/properties.interface.d.ts +7 -0
  307. package/dist/cjs/interface/decorator/api/subscriber/index.d.ts +2 -2
  308. package/dist/cjs/interface/decorator/api/subscriber/route-properties.interface.d.ts +4 -0
  309. package/dist/cjs/module/api/authorization.module.js +18 -1
  310. package/dist/cjs/module/api/authorization.module.js.map +1 -1
  311. package/dist/cjs/package.json +0 -1
  312. package/dist/cjs/type/class/api/subscriber/route/after/create-context.type.d.ts +2 -2
  313. package/dist/cjs/type/class/api/subscriber/route/after/delete-context.type.d.ts +2 -2
  314. package/dist/cjs/type/class/api/subscriber/route/after/get/context.type.d.ts +2 -2
  315. package/dist/cjs/type/class/api/subscriber/route/after/get/list-context.type.d.ts +2 -2
  316. package/dist/cjs/type/class/api/subscriber/route/after/partial-update-context.type.d.ts +2 -2
  317. package/dist/cjs/type/class/api/subscriber/route/after/update-context.type.d.ts +2 -2
  318. package/dist/cjs/type/class/api/subscriber/route/before/create-context.type.d.ts +2 -2
  319. package/dist/cjs/type/class/api/subscriber/route/before/delete-context.type.d.ts +2 -2
  320. package/dist/cjs/type/class/api/subscriber/route/before/get/context.type.d.ts +2 -2
  321. package/dist/cjs/type/class/api/subscriber/route/before/get/list-context.type.d.ts +2 -2
  322. package/dist/cjs/type/class/api/subscriber/route/before/partial-update-context.type.d.ts +2 -2
  323. package/dist/cjs/type/class/api/subscriber/route/before/update-context.type.d.ts +2 -2
  324. package/dist/cjs/type/decorator/api/controller/properties/route/base/request/allowed-target.type.d.ts +9 -0
  325. package/dist/cjs/type/decorator/api/controller/properties/route/base/request/index.d.ts +1 -1
  326. package/dist/cjs/type/decorator/api/controller/properties/route/base/request/transformers.type.d.ts +7 -7
  327. package/dist/cjs/type/decorator/api/controller/properties/route/base/response-transformers.type.d.ts +6 -6
  328. package/dist/cjs/type/decorator/api/controller/transformer-config.type.d.ts +5 -5
  329. package/dist/cjs/type/decorator/api/function/properties.type.d.ts +5 -3
  330. package/dist/cjs/type/decorator/api/property/describe/dto/request-properties.type.d.ts +1 -1
  331. package/dist/cjs/type/decorator/api/property/describe/properties/base/properties.type.d.ts +4 -4
  332. package/dist/cjs/type/utility/dto/generate/allowed-combination.type.d.ts +4 -4
  333. package/dist/cjs/utility/api/controller/apply/decorators.utility.js +58 -26
  334. package/dist/cjs/utility/api/controller/apply/decorators.utility.js.map +1 -1
  335. package/dist/cjs/utility/api/controller/apply/metadata.utility.js +6 -2
  336. package/dist/cjs/utility/api/controller/apply/metadata.utility.js.map +1 -1
  337. package/dist/cjs/utility/api/controller/get/dto.utility.js +6 -2
  338. package/dist/cjs/utility/api/controller/get/dto.utility.js.map +1 -1
  339. package/dist/cjs/utility/api/controller/get-list/transform/filter.utility.js +5 -1
  340. package/dist/cjs/utility/api/controller/get-list/transform/filter.utility.js.map +1 -1
  341. package/dist/cjs/utility/api/controller/handle-request-relations.utility.d.ts +4 -4
  342. package/dist/cjs/utility/api/controller/handle-request-relations.utility.js +37 -11
  343. package/dist/cjs/utility/api/controller/handle-request-relations.utility.js.map +1 -1
  344. package/dist/cjs/utility/api/controller/index.d.ts +1 -0
  345. package/dist/cjs/utility/api/controller/serialize-route-response.utility.d.ts +14 -0
  346. package/dist/cjs/utility/api/controller/serialize-route-response.utility.js +29 -0
  347. package/dist/cjs/utility/api/controller/serialize-route-response.utility.js.map +1 -0
  348. package/dist/cjs/utility/api/controller/transform-data.utility.d.ts +8 -7
  349. package/dist/cjs/utility/api/controller/transform-data.utility.js +21 -18
  350. package/dist/cjs/utility/api/controller/transform-data.utility.js.map +1 -1
  351. package/dist/cjs/utility/api/controller/validate-request.utility.d.ts +3 -3
  352. package/dist/cjs/utility/api/controller/validate-request.utility.js +10 -9
  353. package/dist/cjs/utility/api/controller/validate-request.utility.js.map +1 -1
  354. package/dist/cjs/utility/api/controller/write/dto-swagger.utility.js +6 -2
  355. package/dist/cjs/utility/api/controller/write/dto-swagger.utility.js.map +1 -1
  356. package/dist/cjs/utility/api/function-transaction.utility.d.ts +20 -0
  357. package/dist/cjs/utility/api/function-transaction.utility.js +52 -0
  358. package/dist/cjs/utility/api/function-transaction.utility.js.map +1 -0
  359. package/dist/cjs/utility/api/index.d.ts +1 -0
  360. package/dist/cjs/utility/api/route/index.d.ts +1 -0
  361. package/dist/cjs/utility/api/route/response/index.d.ts +2 -0
  362. package/dist/cjs/utility/api/route/response/project-relation.utility.d.ts +11 -0
  363. package/dist/cjs/utility/api/route/response/project-relation.utility.js +75 -0
  364. package/dist/cjs/utility/api/route/response/project-relation.utility.js.map +1 -0
  365. package/dist/cjs/utility/api/route/response/serialize.utility.d.ts +11 -0
  366. package/dist/cjs/utility/api/route/response/serialize.utility.js +26 -0
  367. package/dist/cjs/utility/api/route/response/serialize.utility.js.map +1 -0
  368. package/dist/cjs/utility/dto/build-decorator.utility.js +5 -1
  369. package/dist/cjs/utility/dto/build-decorator.utility.js.map +1 -1
  370. package/dist/cjs/utility/dto/generate/core.utility.js +5 -1
  371. package/dist/cjs/utility/dto/generate/core.utility.js.map +1 -1
  372. package/dist/cjs/utility/dto/generate/dynamic.utility.js +5 -1
  373. package/dist/cjs/utility/dto/generate/dynamic.utility.js.map +1 -1
  374. package/dist/cjs/utility/dto/generate/exception.utility.js +5 -1
  375. package/dist/cjs/utility/dto/generate/exception.utility.js.map +1 -1
  376. package/dist/cjs/utility/dto/generate/filter-decorator.utility.js +5 -1
  377. package/dist/cjs/utility/dto/generate/filter-decorator.utility.js.map +1 -1
  378. package/dist/cjs/utility/dto/generate/get-list-response.utility.js +5 -1
  379. package/dist/cjs/utility/dto/generate/get-list-response.utility.js.map +1 -1
  380. package/dist/cjs/utility/dto/get/get-list-query-base-class.utility.js +5 -1
  381. package/dist/cjs/utility/dto/get/get-list-query-base-class.utility.js.map +1 -1
  382. package/dist/cjs/utility/dto/handle-date-property.utility.js +5 -1
  383. package/dist/cjs/utility/dto/handle-date-property.utility.js.map +1 -1
  384. package/dist/cjs/utility/dto/is/property/should-be-marked.utility.js +7 -3
  385. package/dist/cjs/utility/dto/is/property/should-be-marked.utility.js.map +1 -1
  386. package/dist/cjs/utility/dto/is/should-be-generated.utility.js +8 -4
  387. package/dist/cjs/utility/dto/is/should-be-generated.utility.js.map +1 -1
  388. package/dist/esm/class/api/authorization/bootstrap-validation.service.class.d.ts +1 -0
  389. package/dist/esm/class/api/authorization/bootstrap-validation.service.class.js +37 -3
  390. package/dist/esm/class/api/authorization/bootstrap-validation.service.class.js.map +1 -1
  391. package/dist/esm/class/api/authorization/cache-invalidation.service.class.d.ts +7 -0
  392. package/dist/esm/class/api/authorization/cache-invalidation.service.class.js +21 -0
  393. package/dist/esm/class/api/authorization/cache-invalidation.service.class.js.map +1 -0
  394. package/dist/esm/class/api/authorization/guard.class.d.ts +1 -2
  395. package/dist/esm/class/api/authorization/guard.class.js +13 -18
  396. package/dist/esm/class/api/authorization/guard.class.js.map +1 -1
  397. package/dist/esm/class/api/authorization/index.d.ts +1 -0
  398. package/dist/esm/class/api/authorization/policy/executor.class.js +1 -2
  399. package/dist/esm/class/api/authorization/policy/executor.class.js.map +1 -1
  400. package/dist/esm/class/api/authorization/policy/index.d.ts +1 -0
  401. package/dist/esm/class/api/authorization/policy/registry.class.d.ts +3 -5
  402. package/dist/esm/class/api/authorization/policy/registry.class.js +10 -33
  403. package/dist/esm/class/api/authorization/policy/registry.class.js.map +1 -1
  404. package/dist/esm/class/api/authorization/policy/subscriber-wrapper.class.d.ts +10 -0
  405. package/dist/esm/class/api/authorization/policy/subscriber-wrapper.class.js +21 -0
  406. package/dist/esm/class/api/authorization/policy/subscriber-wrapper.class.js.map +1 -0
  407. package/dist/esm/class/api/authorization/runtime.class.d.ts +3 -2
  408. package/dist/esm/class/api/authorization/runtime.class.js +6 -5
  409. package/dist/esm/class/api/authorization/runtime.class.js.map +1 -1
  410. package/dist/esm/class/api/authorization/simulator.class.d.ts +2 -0
  411. package/dist/esm/class/api/authorization/simulator.class.js +1 -0
  412. package/dist/esm/class/api/authorization/simulator.class.js.map +1 -1
  413. package/dist/esm/class/api/function/context-storage.class.d.ts +7 -0
  414. package/dist/esm/class/api/function/context-storage.class.js +14 -0
  415. package/dist/esm/class/api/function/context-storage.class.js.map +1 -0
  416. package/dist/esm/class/api/function/custom-runtime.class.d.ts +19 -0
  417. package/dist/esm/class/api/function/custom-runtime.class.js +116 -0
  418. package/dist/esm/class/api/function/custom-runtime.class.js.map +1 -0
  419. package/dist/esm/class/api/function/index.d.ts +1 -0
  420. package/dist/esm/class/api/function/transaction-scope.class.d.ts +6 -0
  421. package/dist/esm/class/api/function/transaction-scope.class.js +32 -0
  422. package/dist/esm/class/api/function/transaction-scope.class.js.map +1 -0
  423. package/dist/esm/class/api/index.d.ts +2 -0
  424. package/dist/esm/class/api/route-runtime.class.d.ts +21 -0
  425. package/dist/esm/class/api/route-runtime.class.js +333 -0
  426. package/dist/esm/class/api/route-runtime.class.js.map +1 -0
  427. package/dist/esm/class/api/service-base.class.d.ts +9 -7
  428. package/dist/esm/class/api/service-base.class.js +16 -6
  429. package/dist/esm/class/api/service-base.class.js.map +1 -1
  430. package/dist/esm/class/api/subscriber/executor.class.d.ts +7 -6
  431. package/dist/esm/class/api/subscriber/executor.class.js +16 -12
  432. package/dist/esm/class/api/subscriber/executor.class.js.map +1 -1
  433. package/dist/esm/class/api/subscriber/index.d.ts +1 -0
  434. package/dist/esm/class/api/subscriber/registry.class.d.ts +5 -2
  435. package/dist/esm/class/api/subscriber/registry.class.js +24 -22
  436. package/dist/esm/class/api/subscriber/registry.class.js.map +1 -1
  437. package/dist/esm/class/api/subscriber/wrapper.class.d.ts +18 -0
  438. package/dist/esm/class/api/subscriber/wrapper.class.js +21 -0
  439. package/dist/esm/class/api/subscriber/wrapper.class.js.map +1 -0
  440. package/dist/esm/class/utility/dto/exception/details/foreign-key-violation.class.js +5 -1
  441. package/dist/esm/class/utility/dto/exception/details/foreign-key-violation.class.js.map +1 -1
  442. package/dist/esm/class/utility/dto/exception/details/unique-violation.class.js +5 -1
  443. package/dist/esm/class/utility/dto/exception/details/unique-violation.class.js.map +1 -1
  444. package/dist/esm/class/utility/dto/property/factory/number.class.js +6 -2
  445. package/dist/esm/class/utility/dto/property/factory/number.class.js.map +1 -1
  446. package/dist/esm/class/utility/dto/property/factory/relation.class.js +5 -1
  447. package/dist/esm/class/utility/dto/property/factory/relation.class.js.map +1 -1
  448. package/dist/esm/class/utility/dto/strategy/body.class.js +5 -1
  449. package/dist/esm/class/utility/dto/strategy/body.class.js.map +1 -1
  450. package/dist/esm/class/utility/dto/strategy/query.class.js +5 -1
  451. package/dist/esm/class/utility/dto/strategy/query.class.js.map +1 -1
  452. package/dist/esm/class/utility/dto/strategy/request.class.js +5 -1
  453. package/dist/esm/class/utility/dto/strategy/request.class.js.map +1 -1
  454. package/dist/esm/class/utility/dto/strategy/response.class.js +5 -1
  455. package/dist/esm/class/utility/dto/strategy/response.class.js.map +1 -1
  456. package/dist/esm/constant/decorator/api/method.constant.d.ts +2 -3
  457. package/dist/esm/constant/decorator/api/method.constant.js +4 -6
  458. package/dist/esm/constant/decorator/api/method.constant.js.map +1 -1
  459. package/dist/esm/constant/utility/dto/constant.js +6 -2
  460. package/dist/esm/constant/utility/dto/constant.js.map +1 -1
  461. package/dist/esm/decorator/api/function/create.decorator.js +51 -24
  462. package/dist/esm/decorator/api/function/create.decorator.js.map +1 -1
  463. package/dist/esm/decorator/api/function/custom.decorator.d.ts +9 -0
  464. package/dist/esm/decorator/api/function/custom.decorator.js +45 -0
  465. package/dist/esm/decorator/api/function/custom.decorator.js.map +1 -0
  466. package/dist/esm/decorator/api/function/decorator.js +16 -7
  467. package/dist/esm/decorator/api/function/decorator.js.map +1 -1
  468. package/dist/esm/decorator/api/function/delete.decorator.js +62 -41
  469. package/dist/esm/decorator/api/function/delete.decorator.js.map +1 -1
  470. package/dist/esm/decorator/api/function/get/decorator.js +40 -25
  471. package/dist/esm/decorator/api/function/get/decorator.js.map +1 -1
  472. package/dist/esm/decorator/api/function/get/list.decorator.js +40 -25
  473. package/dist/esm/decorator/api/function/get/list.decorator.js.map +1 -1
  474. package/dist/esm/decorator/api/function/get/many.decorator.js +40 -25
  475. package/dist/esm/decorator/api/function/get/many.decorator.js.map +1 -1
  476. package/dist/esm/decorator/api/function/index.d.ts +1 -0
  477. package/dist/esm/decorator/api/function/update.decorator.js +62 -41
  478. package/dist/esm/decorator/api/function/update.decorator.js.map +1 -1
  479. package/dist/esm/decorator/api/index.d.ts +1 -0
  480. package/dist/esm/decorator/api/method.decorator.d.ts +5 -6
  481. package/dist/esm/decorator/api/method.decorator.js +66 -326
  482. package/dist/esm/decorator/api/method.decorator.js.map +1 -1
  483. package/dist/esm/decorator/api/property/boolean.decorator.js +24 -5
  484. package/dist/esm/decorator/api/property/boolean.decorator.js.map +1 -1
  485. package/dist/esm/decorator/api/property/date.decorator.js +24 -5
  486. package/dist/esm/decorator/api/property/date.decorator.js.map +1 -1
  487. package/dist/esm/decorator/api/property/enum.decorator.js +22 -4
  488. package/dist/esm/decorator/api/property/enum.decorator.js.map +1 -1
  489. package/dist/esm/decorator/api/property/number.decorator.js +30 -7
  490. package/dist/esm/decorator/api/property/number.decorator.js.map +1 -1
  491. package/dist/esm/decorator/api/property/object.decorator.js +22 -4
  492. package/dist/esm/decorator/api/property/object.decorator.js.map +1 -1
  493. package/dist/esm/decorator/api/property/string.decorator.js +26 -9
  494. package/dist/esm/decorator/api/property/string.decorator.js.map +1 -1
  495. package/dist/esm/decorator/api/property/uuid.decorator.js +27 -5
  496. package/dist/esm/decorator/api/property/uuid.decorator.js.map +1 -1
  497. package/dist/esm/decorator/api/route-custom.decorator.d.ts +9 -0
  498. package/dist/esm/decorator/api/route-custom.decorator.js +99 -0
  499. package/dist/esm/decorator/api/route-custom.decorator.js.map +1 -0
  500. package/dist/esm/decorator/api/service/decorator.js +28 -23
  501. package/dist/esm/decorator/api/service/decorator.js.map +1 -1
  502. package/dist/esm/enum/decorator/api/controller/index.d.ts +3 -1
  503. package/dist/esm/enum/decorator/api/controller/relation-reference-shape.enum.d.ts +4 -0
  504. package/dist/esm/enum/decorator/api/controller/relation-reference-shape.enum.js +8 -0
  505. package/dist/esm/enum/decorator/api/controller/relation-reference-shape.enum.js.map +1 -0
  506. package/dist/esm/enum/decorator/api/controller/request/index.d.ts +2 -0
  507. package/dist/esm/enum/decorator/api/controller/request/target.enum.d.ts +5 -0
  508. package/dist/esm/enum/decorator/api/controller/request/target.enum.js +9 -0
  509. package/dist/esm/enum/decorator/api/controller/request/target.enum.js.map +1 -0
  510. package/dist/esm/enum/decorator/api/controller/{request-transformer-type.enum.js → request/transformer-type.enum.js} +1 -1
  511. package/dist/esm/enum/decorator/api/controller/request/transformer-type.enum.js.map +1 -0
  512. package/dist/esm/enum/decorator/api/controller/response-target.enum.d.ts +3 -0
  513. package/dist/esm/enum/decorator/api/controller/response-target.enum.js +7 -0
  514. package/dist/esm/enum/decorator/api/controller/response-target.enum.js.map +1 -0
  515. package/dist/esm/enum/decorator/api/dto-type.enum.d.ts +1 -1
  516. package/dist/esm/enum/decorator/api/dto-type.enum.js +1 -1
  517. package/dist/esm/enum/decorator/api/dto-type.enum.js.map +1 -1
  518. package/dist/esm/enum/decorator/api/function-transaction-mode.enum.d.ts +6 -0
  519. package/dist/esm/enum/decorator/api/function-transaction-mode.enum.js +10 -0
  520. package/dist/esm/enum/decorator/api/function-transaction-mode.enum.js.map +1 -0
  521. package/dist/esm/enum/decorator/api/function-type.enum.d.ts +1 -0
  522. package/dist/esm/enum/decorator/api/function-type.enum.js +1 -0
  523. package/dist/esm/enum/decorator/api/function-type.enum.js.map +1 -1
  524. package/dist/esm/enum/decorator/api/index.d.ts +1 -0
  525. package/dist/esm/external/rxjs/dist/esm5/internal/Observable.js +104 -0
  526. package/dist/esm/external/rxjs/dist/esm5/internal/Observable.js.map +1 -0
  527. package/dist/esm/external/rxjs/dist/esm5/internal/Subscriber.js +154 -0
  528. package/dist/esm/external/rxjs/dist/esm5/internal/Subscriber.js.map +1 -0
  529. package/dist/esm/external/rxjs/dist/esm5/internal/Subscription.js +145 -0
  530. package/dist/esm/external/rxjs/dist/esm5/internal/Subscription.js.map +1 -0
  531. package/dist/esm/external/rxjs/dist/esm5/internal/config.js +5 -0
  532. package/dist/esm/external/rxjs/dist/esm5/internal/config.js.map +1 -0
  533. package/dist/esm/external/rxjs/dist/esm5/internal/lastValueFrom.js +26 -0
  534. package/dist/esm/external/rxjs/dist/esm5/internal/lastValueFrom.js.map +1 -0
  535. package/dist/esm/external/rxjs/dist/esm5/internal/observable/from.js +9 -0
  536. package/dist/esm/external/rxjs/dist/esm5/internal/observable/from.js.map +1 -0
  537. package/dist/esm/external/rxjs/dist/esm5/internal/observable/innerFrom.js +146 -0
  538. package/dist/esm/external/rxjs/dist/esm5/internal/observable/innerFrom.js.map +1 -0
  539. package/dist/esm/external/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js +63 -0
  540. package/dist/esm/external/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js.map +1 -0
  541. package/dist/esm/external/rxjs/dist/esm5/internal/operators/observeOn.js +13 -0
  542. package/dist/esm/external/rxjs/dist/esm5/internal/operators/observeOn.js.map +1 -0
  543. package/dist/esm/external/rxjs/dist/esm5/internal/operators/subscribeOn.js +11 -0
  544. package/dist/esm/external/rxjs/dist/esm5/internal/operators/subscribeOn.js.map +1 -0
  545. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleArray.js +21 -0
  546. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleArray.js.map +1 -0
  547. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleAsyncIterable.js +26 -0
  548. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleAsyncIterable.js.map +1 -0
  549. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleIterable.js +35 -0
  550. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleIterable.js.map +1 -0
  551. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleObservable.js +10 -0
  552. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleObservable.js.map +1 -0
  553. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/schedulePromise.js +10 -0
  554. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/schedulePromise.js.map +1 -0
  555. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleReadableStreamLike.js +9 -0
  556. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduleReadableStreamLike.js.map +1 -0
  557. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduled.js +40 -0
  558. package/dist/esm/external/rxjs/dist/esm5/internal/scheduled/scheduled.js.map +1 -0
  559. package/dist/esm/external/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js +18 -0
  560. package/dist/esm/external/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js.map +1 -0
  561. package/dist/esm/external/rxjs/dist/esm5/internal/symbol/iterator.js +10 -0
  562. package/dist/esm/external/rxjs/dist/esm5/internal/symbol/iterator.js.map +1 -0
  563. package/dist/esm/external/rxjs/dist/esm5/internal/symbol/observable.js +4 -0
  564. package/dist/esm/external/rxjs/dist/esm5/internal/symbol/observable.js.map +1 -0
  565. package/dist/esm/external/rxjs/dist/esm5/internal/util/EmptyError.js +12 -0
  566. package/dist/esm/external/rxjs/dist/esm5/internal/util/EmptyError.js.map +1 -0
  567. package/dist/esm/external/rxjs/dist/esm5/internal/util/UnsubscriptionError.js +15 -0
  568. package/dist/esm/external/rxjs/dist/esm5/internal/util/UnsubscriptionError.js.map +1 -0
  569. package/dist/esm/external/rxjs/dist/esm5/internal/util/arrRemove.js +9 -0
  570. package/dist/esm/external/rxjs/dist/esm5/internal/util/arrRemove.js.map +1 -0
  571. package/dist/esm/external/rxjs/dist/esm5/internal/util/createErrorClass.js +13 -0
  572. package/dist/esm/external/rxjs/dist/esm5/internal/util/createErrorClass.js.map +1 -0
  573. package/dist/esm/external/rxjs/dist/esm5/internal/util/errorContext.js +8 -0
  574. package/dist/esm/external/rxjs/dist/esm5/internal/util/errorContext.js.map +1 -0
  575. package/dist/esm/external/rxjs/dist/esm5/internal/util/executeSchedule.js +20 -0
  576. package/dist/esm/external/rxjs/dist/esm5/internal/util/executeSchedule.js.map +1 -0
  577. package/dist/esm/external/rxjs/dist/esm5/internal/util/identity.js +6 -0
  578. package/dist/esm/external/rxjs/dist/esm5/internal/util/identity.js.map +1 -0
  579. package/dist/esm/external/rxjs/dist/esm5/internal/util/isArrayLike.js +4 -0
  580. package/dist/esm/external/rxjs/dist/esm5/internal/util/isArrayLike.js.map +1 -0
  581. package/dist/esm/external/rxjs/dist/esm5/internal/util/isAsyncIterable.js +8 -0
  582. package/dist/esm/external/rxjs/dist/esm5/internal/util/isAsyncIterable.js.map +1 -0
  583. package/dist/esm/external/rxjs/dist/esm5/internal/util/isFunction.js +6 -0
  584. package/dist/esm/external/rxjs/dist/esm5/internal/util/isFunction.js.map +1 -0
  585. package/dist/esm/external/rxjs/dist/esm5/internal/util/isInteropObservable.js +9 -0
  586. package/dist/esm/external/rxjs/dist/esm5/internal/util/isInteropObservable.js.map +1 -0
  587. package/dist/esm/external/rxjs/dist/esm5/internal/util/isIterable.js +9 -0
  588. package/dist/esm/external/rxjs/dist/esm5/internal/util/isIterable.js.map +1 -0
  589. package/dist/esm/external/rxjs/dist/esm5/internal/util/isPromise.js +8 -0
  590. package/dist/esm/external/rxjs/dist/esm5/internal/util/isPromise.js.map +1 -0
  591. package/dist/esm/external/rxjs/dist/esm5/internal/util/isReadableStreamLike.js +41 -0
  592. package/dist/esm/external/rxjs/dist/esm5/internal/util/isReadableStreamLike.js.map +1 -0
  593. package/dist/esm/external/rxjs/dist/esm5/internal/util/lift.js +23 -0
  594. package/dist/esm/external/rxjs/dist/esm5/internal/util/lift.js.map +1 -0
  595. package/dist/esm/external/rxjs/dist/esm5/internal/util/noop.js +4 -0
  596. package/dist/esm/external/rxjs/dist/esm5/internal/util/noop.js.map +1 -0
  597. package/dist/esm/external/rxjs/dist/esm5/internal/util/pipe.js +16 -0
  598. package/dist/esm/external/rxjs/dist/esm5/internal/util/pipe.js.map +1 -0
  599. package/dist/esm/external/rxjs/dist/esm5/internal/util/reportUnhandledError.js +12 -0
  600. package/dist/esm/external/rxjs/dist/esm5/internal/util/reportUnhandledError.js.map +1 -0
  601. package/dist/esm/external/rxjs/dist/esm5/internal/util/throwUnobservableError.js +6 -0
  602. package/dist/esm/external/rxjs/dist/esm5/internal/util/throwUnobservableError.js.map +1 -0
  603. package/dist/esm/external/tslib/tslib.es6.js +117 -1
  604. package/dist/esm/external/tslib/tslib.es6.js.map +1 -1
  605. package/dist/esm/factory/api-controller.factory.d.ts +1 -0
  606. package/dist/esm/factory/api-controller.factory.js +42 -393
  607. package/dist/esm/factory/api-controller.factory.js.map +1 -1
  608. package/dist/esm/index.js +15 -1
  609. package/dist/esm/index.js.map +1 -1
  610. package/dist/esm/interceptor/api-route-runtime.interceptor.d.ts +5 -0
  611. package/dist/esm/interceptor/api-route-runtime.interceptor.js +29 -0
  612. package/dist/esm/interceptor/api-route-runtime.interceptor.js.map +1 -0
  613. package/dist/esm/interface/class/api/authorization/policy/registry.interface.d.ts +1 -0
  614. package/dist/esm/interface/class/api/authorization/policy/subscriber/context/interface.d.ts +1 -1
  615. package/dist/esm/interface/class/api/function/context/index.d.ts +2 -0
  616. package/dist/esm/interface/class/api/function/context/interface.d.ts +10 -0
  617. package/dist/esm/interface/class/api/function/context/operations.interface.d.ts +13 -0
  618. package/dist/esm/interface/class/api/function/index.d.ts +1 -0
  619. package/dist/esm/interface/class/api/index.d.ts +2 -0
  620. package/dist/esm/interface/class/api/route/index.d.ts +1 -0
  621. package/dist/esm/interface/class/api/route/runtime/context-data.interface.d.ts +10 -0
  622. package/dist/esm/interface/class/api/route/runtime/custom-execution-options.interface.d.ts +9 -0
  623. package/dist/esm/interface/class/api/route/runtime/generated/execution-options.interface.d.ts +14 -0
  624. package/dist/esm/interface/class/api/route/runtime/generated/index.d.ts +2 -0
  625. package/dist/esm/interface/class/api/route/runtime/generated/targets.interface.d.ts +12 -0
  626. package/dist/esm/interface/class/api/route/runtime/http-request.interface.d.ts +8 -0
  627. package/dist/esm/interface/class/api/route/runtime/index.d.ts +4 -0
  628. package/dist/esm/interface/class/api/subscriber/function/error-execution-context.interface.d.ts +1 -0
  629. package/dist/esm/interface/class/api/subscriber/function/execution/context.interface.d.ts +1 -0
  630. package/dist/esm/interface/class/api/subscriber/function.interface.d.ts +4 -0
  631. package/dist/esm/interface/class/api/subscriber/route/error-execution-context.interface.d.ts +2 -1
  632. package/dist/esm/interface/class/api/subscriber/route/execution/context/data/extended.interface.d.ts +36 -0
  633. package/dist/esm/interface/class/api/subscriber/route/execution/context/data/index.d.ts +2 -0
  634. package/dist/esm/interface/class/api/subscriber/route/execution/context/data/interface.d.ts +32 -0
  635. package/dist/esm/interface/class/api/subscriber/route/execution/context/index.d.ts +2 -0
  636. package/dist/esm/interface/class/api/subscriber/route/execution/context/interface.d.ts +11 -0
  637. package/dist/esm/interface/class/api/subscriber/route/execution/index.d.ts +1 -2
  638. package/dist/esm/interface/class/api/subscriber/route.interface.d.ts +6 -2
  639. package/dist/esm/interface/decorator/api/controller/properties/route/authentication.interface.d.ts +1 -1
  640. package/dist/esm/interface/decorator/api/controller/properties/route/base/generation.interface.d.ts +5 -0
  641. package/dist/esm/interface/decorator/api/controller/properties/route/base/index.d.ts +5 -2
  642. package/dist/esm/interface/decorator/api/controller/properties/route/base/interface.d.ts +4 -7
  643. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/index.d.ts +4 -0
  644. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/interface.d.ts +6 -0
  645. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/reference.interface.d.ts +5 -0
  646. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/request/index.d.ts +2 -0
  647. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/request/interface.d.ts +6 -0
  648. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/request/load.interface.d.ts +10 -0
  649. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/response/index.d.ts +2 -0
  650. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/response/interface.d.ts +6 -0
  651. package/dist/esm/interface/decorator/api/controller/properties/route/base/relations/response/load.interface.d.ts +4 -0
  652. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/index.d.ts +2 -0
  653. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/interface.d.ts +6 -0
  654. package/dist/esm/interface/decorator/api/controller/properties/route/base/request/target.interface.d.ts +6 -0
  655. package/dist/esm/interface/decorator/api/controller/properties/route/base/response/index.d.ts +2 -0
  656. package/dist/esm/interface/decorator/api/controller/properties/route/base/response/interface.d.ts +7 -0
  657. package/dist/esm/interface/decorator/api/controller/properties/route/base/response/target.interface.d.ts +4 -0
  658. package/dist/esm/interface/decorator/api/controller/properties/route/base/security.interface.d.ts +6 -0
  659. package/dist/esm/interface/decorator/api/controller/properties/route/with/dto.interface.d.ts +1 -1
  660. package/dist/esm/interface/decorator/api/function/create-executor-properties.interface.d.ts +1 -2
  661. package/dist/esm/interface/decorator/api/function/custom-properties.interface.d.ts +9 -0
  662. package/dist/esm/interface/decorator/api/function/delete-executor-properties.interface.d.ts +2 -3
  663. package/dist/esm/interface/decorator/api/function/get/executor-properties.interface.d.ts +1 -2
  664. package/dist/esm/interface/decorator/api/function/get/list-executor-properties.interface.d.ts +1 -2
  665. package/dist/esm/interface/decorator/api/function/get/many-executor-properties.interface.d.ts +1 -2
  666. package/dist/esm/interface/decorator/api/function/index.d.ts +1 -0
  667. package/dist/esm/interface/decorator/api/function/properties.interface.d.ts +4 -0
  668. package/dist/esm/interface/decorator/api/function/update-executor-properties.interface.d.ts +2 -3
  669. package/dist/esm/interface/decorator/api/index.d.ts +1 -0
  670. package/dist/esm/interface/decorator/api/method/index.d.ts +0 -2
  671. package/dist/esm/interface/decorator/api/method/properties.interface.d.ts +4 -17
  672. package/dist/esm/interface/decorator/api/route/custom-properties.interface.d.ts +6 -0
  673. package/dist/esm/interface/decorator/api/route/documentation-properties.interface.d.ts +5 -0
  674. package/dist/esm/interface/decorator/api/route/index.d.ts +7 -0
  675. package/dist/esm/interface/decorator/api/route/metadata/index.d.ts +3 -0
  676. package/dist/esm/interface/decorator/api/route/metadata/interface.d.ts +15 -0
  677. package/dist/esm/interface/decorator/api/route/metadata/resource.interface.d.ts +6 -0
  678. package/dist/esm/interface/decorator/api/route/metadata/route.interface.d.ts +7 -0
  679. package/dist/esm/interface/decorator/api/route/response/index.d.ts +2 -0
  680. package/dist/esm/interface/decorator/api/route/response/properties.interface.d.ts +9 -0
  681. package/dist/esm/interface/decorator/api/route/response/serialization-properties.interface.d.ts +3 -0
  682. package/dist/esm/interface/decorator/api/route/runtime-properties.interface.d.ts +11 -0
  683. package/dist/esm/interface/decorator/api/route/security/authentication-properties.interface.d.ts +9 -0
  684. package/dist/esm/interface/decorator/api/route/security/authorization-properties.interface.d.ts +4 -0
  685. package/dist/esm/interface/decorator/api/route/security/index.d.ts +3 -0
  686. package/dist/esm/interface/decorator/api/route/security/properties.interface.d.ts +6 -0
  687. package/dist/esm/interface/decorator/api/route/throttling/default-properties.interface.d.ts +4 -0
  688. package/dist/esm/interface/decorator/api/route/throttling/index.d.ts +2 -0
  689. package/dist/esm/interface/decorator/api/route/throttling/properties.interface.d.ts +4 -0
  690. package/dist/esm/interface/decorator/api/subscriber/function/filter.interface.d.ts +5 -0
  691. package/dist/esm/interface/decorator/api/subscriber/function/index.d.ts +2 -0
  692. package/dist/esm/interface/decorator/api/subscriber/function/properties.interface.d.ts +7 -0
  693. package/dist/esm/interface/decorator/api/subscriber/index.d.ts +2 -2
  694. package/dist/esm/interface/decorator/api/subscriber/route-properties.interface.d.ts +4 -0
  695. package/dist/esm/module/api/authorization.module.js +18 -1
  696. package/dist/esm/module/api/authorization.module.js.map +1 -1
  697. package/dist/esm/package.json +0 -1
  698. package/dist/esm/type/class/api/subscriber/route/after/create-context.type.d.ts +2 -2
  699. package/dist/esm/type/class/api/subscriber/route/after/delete-context.type.d.ts +2 -2
  700. package/dist/esm/type/class/api/subscriber/route/after/get/context.type.d.ts +2 -2
  701. package/dist/esm/type/class/api/subscriber/route/after/get/list-context.type.d.ts +2 -2
  702. package/dist/esm/type/class/api/subscriber/route/after/partial-update-context.type.d.ts +2 -2
  703. package/dist/esm/type/class/api/subscriber/route/after/update-context.type.d.ts +2 -2
  704. package/dist/esm/type/class/api/subscriber/route/before/create-context.type.d.ts +2 -2
  705. package/dist/esm/type/class/api/subscriber/route/before/delete-context.type.d.ts +2 -2
  706. package/dist/esm/type/class/api/subscriber/route/before/get/context.type.d.ts +2 -2
  707. package/dist/esm/type/class/api/subscriber/route/before/get/list-context.type.d.ts +2 -2
  708. package/dist/esm/type/class/api/subscriber/route/before/partial-update-context.type.d.ts +2 -2
  709. package/dist/esm/type/class/api/subscriber/route/before/update-context.type.d.ts +2 -2
  710. package/dist/esm/type/decorator/api/controller/properties/route/base/request/allowed-target.type.d.ts +9 -0
  711. package/dist/esm/type/decorator/api/controller/properties/route/base/request/index.d.ts +1 -1
  712. package/dist/esm/type/decorator/api/controller/properties/route/base/request/transformers.type.d.ts +7 -7
  713. package/dist/esm/type/decorator/api/controller/properties/route/base/response-transformers.type.d.ts +6 -6
  714. package/dist/esm/type/decorator/api/controller/transformer-config.type.d.ts +5 -5
  715. package/dist/esm/type/decorator/api/function/properties.type.d.ts +5 -3
  716. package/dist/esm/type/decorator/api/property/describe/dto/request-properties.type.d.ts +1 -1
  717. package/dist/esm/type/decorator/api/property/describe/properties/base/properties.type.d.ts +4 -4
  718. package/dist/esm/type/utility/dto/generate/allowed-combination.type.d.ts +4 -4
  719. package/dist/esm/utility/api/controller/apply/decorators.utility.js +59 -27
  720. package/dist/esm/utility/api/controller/apply/decorators.utility.js.map +1 -1
  721. package/dist/esm/utility/api/controller/apply/metadata.utility.js +6 -2
  722. package/dist/esm/utility/api/controller/apply/metadata.utility.js.map +1 -1
  723. package/dist/esm/utility/api/controller/get/dto.utility.js +6 -2
  724. package/dist/esm/utility/api/controller/get/dto.utility.js.map +1 -1
  725. package/dist/esm/utility/api/controller/get-list/transform/filter.utility.js +5 -1
  726. package/dist/esm/utility/api/controller/get-list/transform/filter.utility.js.map +1 -1
  727. package/dist/esm/utility/api/controller/handle-request-relations.utility.d.ts +4 -4
  728. package/dist/esm/utility/api/controller/handle-request-relations.utility.js +37 -11
  729. package/dist/esm/utility/api/controller/handle-request-relations.utility.js.map +1 -1
  730. package/dist/esm/utility/api/controller/index.d.ts +1 -0
  731. package/dist/esm/utility/api/controller/serialize-route-response.utility.d.ts +14 -0
  732. package/dist/esm/utility/api/controller/serialize-route-response.utility.js +27 -0
  733. package/dist/esm/utility/api/controller/serialize-route-response.utility.js.map +1 -0
  734. package/dist/esm/utility/api/controller/transform-data.utility.d.ts +8 -7
  735. package/dist/esm/utility/api/controller/transform-data.utility.js +19 -16
  736. package/dist/esm/utility/api/controller/transform-data.utility.js.map +1 -1
  737. package/dist/esm/utility/api/controller/validate-request.utility.d.ts +3 -3
  738. package/dist/esm/utility/api/controller/validate-request.utility.js +10 -9
  739. package/dist/esm/utility/api/controller/validate-request.utility.js.map +1 -1
  740. package/dist/esm/utility/api/controller/write/dto-swagger.utility.js +6 -2
  741. package/dist/esm/utility/api/controller/write/dto-swagger.utility.js.map +1 -1
  742. package/dist/esm/utility/api/function-transaction.utility.d.ts +20 -0
  743. package/dist/esm/utility/api/function-transaction.utility.js +50 -0
  744. package/dist/esm/utility/api/function-transaction.utility.js.map +1 -0
  745. package/dist/esm/utility/api/index.d.ts +1 -0
  746. package/dist/esm/utility/api/route/index.d.ts +1 -0
  747. package/dist/esm/utility/api/route/response/index.d.ts +2 -0
  748. package/dist/esm/utility/api/route/response/project-relation.utility.d.ts +11 -0
  749. package/dist/esm/utility/api/route/response/project-relation.utility.js +73 -0
  750. package/dist/esm/utility/api/route/response/project-relation.utility.js.map +1 -0
  751. package/dist/esm/utility/api/route/response/serialize.utility.d.ts +11 -0
  752. package/dist/esm/utility/api/route/response/serialize.utility.js +24 -0
  753. package/dist/esm/utility/api/route/response/serialize.utility.js.map +1 -0
  754. package/dist/esm/utility/dto/build-decorator.utility.js +5 -1
  755. package/dist/esm/utility/dto/build-decorator.utility.js.map +1 -1
  756. package/dist/esm/utility/dto/generate/core.utility.js +5 -1
  757. package/dist/esm/utility/dto/generate/core.utility.js.map +1 -1
  758. package/dist/esm/utility/dto/generate/dynamic.utility.js +5 -1
  759. package/dist/esm/utility/dto/generate/dynamic.utility.js.map +1 -1
  760. package/dist/esm/utility/dto/generate/exception.utility.js +5 -1
  761. package/dist/esm/utility/dto/generate/exception.utility.js.map +1 -1
  762. package/dist/esm/utility/dto/generate/filter-decorator.utility.js +5 -1
  763. package/dist/esm/utility/dto/generate/filter-decorator.utility.js.map +1 -1
  764. package/dist/esm/utility/dto/generate/get-list-response.utility.js +5 -1
  765. package/dist/esm/utility/dto/generate/get-list-response.utility.js.map +1 -1
  766. package/dist/esm/utility/dto/get/get-list-query-base-class.utility.js +5 -1
  767. package/dist/esm/utility/dto/get/get-list-query-base-class.utility.js.map +1 -1
  768. package/dist/esm/utility/dto/handle-date-property.utility.js +5 -1
  769. package/dist/esm/utility/dto/handle-date-property.utility.js.map +1 -1
  770. package/dist/esm/utility/dto/is/property/should-be-marked.utility.js +7 -3
  771. package/dist/esm/utility/dto/is/property/should-be-marked.utility.js.map +1 -1
  772. package/dist/esm/utility/dto/is/should-be-generated.utility.js +8 -4
  773. package/dist/esm/utility/dto/is/should-be-generated.utility.js.map +1 -1
  774. package/package.json +1 -1
  775. package/dist/cjs/enum/decorator/api/controller/request-transformer-type.enum.js.map +0 -1
  776. package/dist/cjs/interface/class/api/subscriber/route/execution/context-data.interface.d.ts +0 -82
  777. package/dist/cjs/interface/class/api/subscriber/route/execution/context.interface.d.ts +0 -29
  778. package/dist/cjs/interface/decorator/api/controller/properties/route/base/request.interface.d.ts +0 -8
  779. package/dist/cjs/interface/decorator/api/controller/properties/route/base/response.interface.d.ts +0 -7
  780. package/dist/cjs/interface/decorator/api/method/authorization.interface.d.ts +0 -3
  781. package/dist/cjs/interface/decorator/api/method/throttler-properties.interface.d.ts +0 -4
  782. package/dist/cjs/interface/decorator/api/subscriber/function-properties.interface.d.ts +0 -5
  783. package/dist/cjs/type/decorator/api/controller/properties/route/base/request/relations.type.d.ts +0 -18
  784. package/dist/esm/enum/decorator/api/controller/request-transformer-type.enum.js.map +0 -1
  785. package/dist/esm/interface/class/api/subscriber/route/execution/context-data.interface.d.ts +0 -82
  786. package/dist/esm/interface/class/api/subscriber/route/execution/context.interface.d.ts +0 -29
  787. package/dist/esm/interface/decorator/api/controller/properties/route/base/request.interface.d.ts +0 -8
  788. package/dist/esm/interface/decorator/api/controller/properties/route/base/response.interface.d.ts +0 -7
  789. package/dist/esm/interface/decorator/api/method/authorization.interface.d.ts +0 -3
  790. package/dist/esm/interface/decorator/api/method/throttler-properties.interface.d.ts +0 -4
  791. package/dist/esm/interface/decorator/api/subscriber/function-properties.interface.d.ts +0 -5
  792. package/dist/esm/type/decorator/api/controller/properties/route/base/request/relations.type.d.ts +0 -18
  793. /package/dist/cjs/enum/decorator/api/controller/{request-transformer-type.enum.d.ts → request/transformer-type.enum.d.ts} +0 -0
  794. /package/dist/esm/enum/decorator/api/controller/{request-transformer-type.enum.d.ts → request/transformer-type.enum.d.ts} +0 -0
@@ -3,8 +3,12 @@
3
3
  require('../../../../enum/decorator/api/action.enum.js');
4
4
  require('../../../../enum/decorator/api/authentication-type.enum.js');
5
5
  require('../../../../enum/decorator/api/controller/load-relations-strategy.enum.js');
6
- require('../../../../enum/decorator/api/controller/request-transformer-type.enum.js');
6
+ require('../../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
7
+ require('../../../../enum/decorator/api/controller/request/target.enum.js');
8
+ require('../../../../enum/decorator/api/controller/request/transformer-type.enum.js');
9
+ require('../../../../enum/decorator/api/controller/response-target.enum.js');
7
10
  require('../../../../enum/decorator/api/dto-type.enum.js');
11
+ require('../../../../enum/decorator/api/function-transaction-mode.enum.js');
8
12
  require('../../../../enum/decorator/api/function-type.enum.js');
9
13
  require('../../../../enum/decorator/api/on-type.enum.js');
10
14
  require('../../../../enum/decorator/api/property/data-type.enum.js');
@@ -1 +1 @@
1
- {"version":3,"file":"query.class.js","sources":["../../../../../../../src/class/utility/dto/strategy/query.class.ts"],"sourcesContent":[null],"names":["EApiRouteType"],"mappings":";;;;;;;;;;;;;;;;;MAMa,gBAAgB,CAAA;IAC5B,kBAAkB,CAAC,MAAqB,EAAE,SAAyC,EAAA;QAClF,QAAQ,MAAM;AACb,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,GAAG,EAAE;AACvB,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,QAAQ,EAAE;AAC5B,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,cAAc,EAAE;AAClC,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;;IAEF;AACA;;;;"}
1
+ {"version":3,"file":"query.class.js","sources":["../../../../../../../src/class/utility/dto/strategy/query.class.ts"],"sourcesContent":[null],"names":["EApiRouteType"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAMa,gBAAgB,CAAA;IAC5B,kBAAkB,CAAC,MAAqB,EAAE,SAAyC,EAAA;QAClF,QAAQ,MAAM;AACb,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,GAAG,EAAE;AACvB,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,QAAQ,EAAE;AAC5B,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,cAAc,EAAE;AAClC,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE;YAC7B;;IAEF;AACA;;;;"}
@@ -3,8 +3,12 @@
3
3
  require('../../../../enum/decorator/api/action.enum.js');
4
4
  require('../../../../enum/decorator/api/authentication-type.enum.js');
5
5
  require('../../../../enum/decorator/api/controller/load-relations-strategy.enum.js');
6
- require('../../../../enum/decorator/api/controller/request-transformer-type.enum.js');
6
+ require('../../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
7
+ require('../../../../enum/decorator/api/controller/request/target.enum.js');
8
+ require('../../../../enum/decorator/api/controller/request/transformer-type.enum.js');
9
+ require('../../../../enum/decorator/api/controller/response-target.enum.js');
7
10
  require('../../../../enum/decorator/api/dto-type.enum.js');
11
+ require('../../../../enum/decorator/api/function-transaction-mode.enum.js');
8
12
  require('../../../../enum/decorator/api/function-type.enum.js');
9
13
  require('../../../../enum/decorator/api/on-type.enum.js');
10
14
  require('../../../../enum/decorator/api/property/data-type.enum.js');
@@ -1 +1 @@
1
- {"version":3,"file":"request.class.js","sources":["../../../../../../../src/class/utility/dto/strategy/request.class.ts"],"sourcesContent":[null],"names":["EApiRouteType"],"mappings":";;;;;;;;;;;;;;;;;MAKa,kBAAkB,CAAA;IAC9B,kBAAkB,CAAC,MAAqB,EAAE,SAAyC,EAAA;;QAElF,QAAQ,MAAM;AACb,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,GAAG,EAAE;AACvB,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,QAAQ,EAAE;AAC5B,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,cAAc,EAAE;AAClC,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;YAEA,SAAS;AACR,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;;IAEF;AACA;;;;"}
1
+ {"version":3,"file":"request.class.js","sources":["../../../../../../../src/class/utility/dto/strategy/request.class.ts"],"sourcesContent":[null],"names":["EApiRouteType"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAKa,kBAAkB,CAAA;IAC9B,kBAAkB,CAAC,MAAqB,EAAE,SAAyC,EAAA;;QAElF,QAAQ,MAAM;AACb,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,GAAG,EAAE;AACvB,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,QAAQ,EAAE;AAC5B,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,cAAc,EAAE;AAClC,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;AAC1B,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;YAEA,SAAS;AACR,gBAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5B;;IAEF;AACA;;;;"}
@@ -3,8 +3,12 @@
3
3
  require('../../../../enum/decorator/api/action.enum.js');
4
4
  require('../../../../enum/decorator/api/authentication-type.enum.js');
5
5
  require('../../../../enum/decorator/api/controller/load-relations-strategy.enum.js');
6
- require('../../../../enum/decorator/api/controller/request-transformer-type.enum.js');
6
+ require('../../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
7
+ require('../../../../enum/decorator/api/controller/request/target.enum.js');
8
+ require('../../../../enum/decorator/api/controller/request/transformer-type.enum.js');
9
+ require('../../../../enum/decorator/api/controller/response-target.enum.js');
7
10
  require('../../../../enum/decorator/api/dto-type.enum.js');
11
+ require('../../../../enum/decorator/api/function-transaction-mode.enum.js');
8
12
  require('../../../../enum/decorator/api/function-type.enum.js');
9
13
  require('../../../../enum/decorator/api/on-type.enum.js');
10
14
  require('../../../../enum/decorator/api/property/data-type.enum.js');
@@ -1 +1 @@
1
- {"version":3,"file":"response.class.js","sources":["../../../../../../../src/class/utility/dto/strategy/response.class.ts"],"sourcesContent":[null],"names":["EApiRouteType"],"mappings":";;;;;;;;;;;;;;;;;MAKa,mBAAmB,CAAA;IAC/B,kBAAkB,CAAC,MAAqB,EAAE,SAAyC,EAAA;QAClF,QAAQ,MAAM;AACb,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;gBAC1B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;gBAC1B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;AAEA,YAAA,KAAKA,4BAAa,CAAC,GAAG,EAAE;gBACvB,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;AAEA,YAAA,KAAKA,4BAAa,CAAC,QAAQ,EAAE;AAC5B,gBAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9D;AAEA,YAAA,KAAKA,4BAAa,CAAC,cAAc,EAAE;gBAClC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;gBAC1B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;YAEA,SAAS;gBACR,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;;IAEF;AACA;;;;"}
1
+ {"version":3,"file":"response.class.js","sources":["../../../../../../../src/class/utility/dto/strategy/response.class.ts"],"sourcesContent":[null],"names":["EApiRouteType"],"mappings":";;;;;;;;;;;;;;;;;;;;;MAKa,mBAAmB,CAAA;IAC/B,kBAAkB,CAAC,MAAqB,EAAE,SAAyC,EAAA;QAClF,QAAQ,MAAM;AACb,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;gBAC1B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;gBAC1B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;AAEA,YAAA,KAAKA,4BAAa,CAAC,GAAG,EAAE;gBACvB,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;AAEA,YAAA,KAAKA,4BAAa,CAAC,QAAQ,EAAE;AAC5B,gBAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9D;AAEA,YAAA,KAAKA,4BAAa,CAAC,cAAc,EAAE;gBAClC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;AAEA,YAAA,KAAKA,4BAAa,CAAC,MAAM,EAAE;gBAC1B,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;YAEA,SAAS;gBACR,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;YAC9C;;IAEF;AACA;;;;"}
@@ -1,5 +1,4 @@
1
1
  export declare const METHOD_API_DECORATOR_CONSTANT: {
2
- readonly ACTION_METADATA_KEY: string;
3
- readonly AUTHORIZATION_METADATA_KEY: string;
4
- readonly ROUTE_TYPE_METADATA_KEY: string;
2
+ readonly ROUTE_METADATA_KEY: string;
3
+ readonly ROUTE_RUNTIME_PROPERTIES_METADATA_KEY: string;
5
4
  };
@@ -1,12 +1,10 @@
1
1
  'use strict';
2
2
 
3
- const ACTION_METADATA_KEY = "API_METHOD_ACTION_METADATA_KEY";
4
- const AUTHORIZATION_METADATA_KEY = "API_METHOD_AUTHORIZATION_METADATA_KEY";
5
- const ROUTE_TYPE_METADATA_KEY = "API_METHOD_ROUTE_TYPE_METADATA_KEY";
3
+ const ROUTE_METADATA_KEY = "API_METHOD_ROUTE_METADATA_KEY";
4
+ const ROUTE_RUNTIME_PROPERTIES_METADATA_KEY = "API_METHOD_ROUTE_RUNTIME_PROPERTIES_METADATA_KEY";
6
5
  const METHOD_API_DECORATOR_CONSTANT = {
7
- ACTION_METADATA_KEY,
8
- AUTHORIZATION_METADATA_KEY,
9
- ROUTE_TYPE_METADATA_KEY,
6
+ ROUTE_METADATA_KEY,
7
+ ROUTE_RUNTIME_PROPERTIES_METADATA_KEY,
10
8
  };
11
9
 
12
10
  exports.METHOD_API_DECORATOR_CONSTANT = METHOD_API_DECORATOR_CONSTANT;
@@ -1 +1 @@
1
- {"version":3,"file":"method.constant.js","sources":["../../../../../../src/constant/decorator/api/method.constant.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA,MAAM,mBAAmB,GAAW,gCAAgC;AACpE,MAAM,0BAA0B,GAAW,uCAAuC;AAClF,MAAM,uBAAuB,GAAW,oCAAoC;AAErE,MAAM,6BAA6B,GAItC;IACH,mBAAmB;IACnB,0BAA0B;IAC1B,uBAAuB;;;;;"}
1
+ {"version":3,"file":"method.constant.js","sources":["../../../../../../src/constant/decorator/api/method.constant.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA,MAAM,kBAAkB,GAAW,+BAA+B;AAClE,MAAM,qCAAqC,GAAW,kDAAkD;AAEjG,MAAM,6BAA6B,GAGtC;IACH,kBAAkB;IAClB,qCAAqC;;;;;"}
@@ -15,8 +15,12 @@ var response_class = require('../../../class/utility/dto/strategy/response.class
15
15
  require('../../../enum/decorator/api/action.enum.js');
16
16
  require('../../../enum/decorator/api/authentication-type.enum.js');
17
17
  require('../../../enum/decorator/api/controller/load-relations-strategy.enum.js');
18
- require('../../../enum/decorator/api/controller/request-transformer-type.enum.js');
18
+ require('../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
19
+ require('../../../enum/decorator/api/controller/request/target.enum.js');
20
+ require('../../../enum/decorator/api/controller/request/transformer-type.enum.js');
21
+ require('../../../enum/decorator/api/controller/response-target.enum.js');
19
22
  var dtoType_enum = require('../../../enum/decorator/api/dto-type.enum.js');
23
+ require('../../../enum/decorator/api/function-transaction-mode.enum.js');
20
24
  require('../../../enum/decorator/api/function-type.enum.js');
21
25
  require('../../../enum/decorator/api/on-type.enum.js');
22
26
  require('../../../enum/decorator/api/property/data-type.enum.js');
@@ -29,8 +33,8 @@ require('../../../enum/decorator/api/route-type.enum.js');
29
33
 
30
34
  const DTO_STRATEGIES = {
31
35
  [dtoType_enum.EApiDtoType.BODY]: new body_class.DtoStrategyBody(),
36
+ [dtoType_enum.EApiDtoType.PARAMETERS]: new request_class.DtoStrategyRequest(),
32
37
  [dtoType_enum.EApiDtoType.QUERY]: new query_class.DtoStrategyQuery(),
33
- [dtoType_enum.EApiDtoType.REQUEST]: new request_class.DtoStrategyRequest(),
34
38
  [dtoType_enum.EApiDtoType.RESPONSE]: new response_class.DtoStrategyResponse(),
35
39
  };
36
40
  const PROPERTY_DECORATOR_FACTORIES = {
@@ -1 +1 @@
1
- {"version":3,"file":"constant.js","sources":["../../../../../../src/constant/utility/dto/constant.ts"],"sourcesContent":[null],"names":["EApiDtoType","DtoStrategyBody","DtoStrategyQuery","DtoStrategyRequest","DtoStrategyResponse","EApiPropertyDescribeType","DtoPropertyFactoryBoolean","DtoPropertyFactoryDate","DtoPropertyFactoryEnum","DtoPropertyFactoryNumber","DtoPropertyFactoryObject","DtoPropertyFactoryRelation","DtoPropertyFactoryString","DtoPropertyFactoryUuid"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,MAAM,cAAc,GAAsC;AACzD,IAAA,CAACA,wBAAW,CAAC,IAAI,GAAG,IAAIC,0BAAe,EAAE;AACzC,IAAA,CAACD,wBAAW,CAAC,KAAK,GAAG,IAAIE,4BAAgB,EAAE;AAC3C,IAAA,CAACF,wBAAW,CAAC,OAAO,GAAG,IAAIG,gCAAkB,EAAE;AAC/C,IAAA,CAACH,wBAAW,CAAC,QAAQ,GAAG,IAAII,kCAAmB,EAAE;CACjD;AAED,MAAM,4BAA4B,GAAmE;AACpG,IAAA,CAACC,yCAAwB,CAAC,OAAO,GAAG,IAAIC,uCAAyB,EAAE;AACnE,IAAA,CAACD,yCAAwB,CAAC,IAAI,GAAG,IAAIE,iCAAsB,EAAE;AAC7D,IAAA,CAACF,yCAAwB,CAAC,IAAI,GAAG,IAAIG,iCAAsB,EAAE;AAC7D,IAAA,CAACH,yCAAwB,CAAC,MAAM,GAAG,IAAII,qCAAwB,EAAE;AACjE,IAAA,CAACJ,yCAAwB,CAAC,MAAM,GAAG,IAAIK,qCAAwB,EAAE;AACjE,IAAA,CAACL,yCAAwB,CAAC,QAAQ,GAAG,IAAIM,yCAA0B,EAAE;AACrE,IAAA,CAACN,yCAAwB,CAAC,MAAM,GAAG,IAAIO,qCAAwB,EAAE;AACjE,IAAA,CAACP,yCAAwB,CAAC,IAAI,GAAG,IAAIQ,iCAAsB,EAAE;CAC7D;AAEM,MAAM,oBAAoB,GAG7B;IACH,cAAc;IACd,4BAA4B;;;;;"}
1
+ {"version":3,"file":"constant.js","sources":["../../../../../../src/constant/utility/dto/constant.ts"],"sourcesContent":[null],"names":["EApiDtoType","DtoStrategyBody","DtoStrategyRequest","DtoStrategyQuery","DtoStrategyResponse","EApiPropertyDescribeType","DtoPropertyFactoryBoolean","DtoPropertyFactoryDate","DtoPropertyFactoryEnum","DtoPropertyFactoryNumber","DtoPropertyFactoryObject","DtoPropertyFactoryRelation","DtoPropertyFactoryString","DtoPropertyFactoryUuid"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,MAAM,cAAc,GAAsC;AACzD,IAAA,CAACA,wBAAW,CAAC,IAAI,GAAG,IAAIC,0BAAe,EAAE;AACzC,IAAA,CAACD,wBAAW,CAAC,UAAU,GAAG,IAAIE,gCAAkB,EAAE;AAClD,IAAA,CAACF,wBAAW,CAAC,KAAK,GAAG,IAAIG,4BAAgB,EAAE;AAC3C,IAAA,CAACH,wBAAW,CAAC,QAAQ,GAAG,IAAII,kCAAmB,EAAE;CACjD;AAED,MAAM,4BAA4B,GAAmE;AACpG,IAAA,CAACC,yCAAwB,CAAC,OAAO,GAAG,IAAIC,uCAAyB,EAAE;AACnE,IAAA,CAACD,yCAAwB,CAAC,IAAI,GAAG,IAAIE,iCAAsB,EAAE;AAC7D,IAAA,CAACF,yCAAwB,CAAC,IAAI,GAAG,IAAIG,iCAAsB,EAAE;AAC7D,IAAA,CAACH,yCAAwB,CAAC,MAAM,GAAG,IAAII,qCAAwB,EAAE;AACjE,IAAA,CAACJ,yCAAwB,CAAC,MAAM,GAAG,IAAIK,qCAAwB,EAAE;AACjE,IAAA,CAACL,yCAAwB,CAAC,QAAQ,GAAG,IAAIM,yCAA0B,EAAE;AACrE,IAAA,CAACN,yCAAwB,CAAC,MAAM,GAAG,IAAIO,qCAAwB,EAAE;AACjE,IAAA,CAACP,yCAAwB,CAAC,IAAI,GAAG,IAAIQ,iCAAsB,EAAE;CAC7D;AAEM,MAAM,oBAAoB,GAG7B;IACH,cAAc;IACd,4BAA4B;;;;;"}
@@ -1,13 +1,31 @@
1
1
  'use strict';
2
2
 
3
+ var contextStorage_class = require('../../../class/api/function/context-storage.class.js');
3
4
  var executor_class = require('../../../class/api/subscriber/executor.class.js');
5
+ require('../../../enum/decorator/api/action.enum.js');
6
+ require('../../../enum/decorator/api/authentication-type.enum.js');
7
+ require('../../../enum/decorator/api/controller/load-relations-strategy.enum.js');
8
+ require('../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
9
+ require('../../../enum/decorator/api/controller/request/target.enum.js');
10
+ require('../../../enum/decorator/api/controller/request/transformer-type.enum.js');
11
+ require('../../../enum/decorator/api/controller/response-target.enum.js');
12
+ require('../../../enum/decorator/api/dto-type.enum.js');
13
+ var functionTransactionMode_enum = require('../../../enum/decorator/api/function-transaction-mode.enum.js');
4
14
  var functionType_enum = require('../../../enum/decorator/api/function-type.enum.js');
5
15
  var onType_enum = require('../../../enum/decorator/api/on-type.enum.js');
16
+ require('../../../enum/decorator/api/property/data-type.enum.js');
17
+ require('../../../enum/decorator/api/property/date/identifier.enum.js');
18
+ require('../../../enum/decorator/api/property/date/type.enum.js');
19
+ require('../../../enum/decorator/api/property/desribe-type.enum.js');
20
+ require('../../../enum/decorator/api/property/number-type.enum.js');
21
+ require('../../../enum/decorator/api/property/string-type.enum.js');
22
+ require('../../../enum/decorator/api/route-type.enum.js');
6
23
  require('../../../enum/utility/dto/manual/property-metadata/decorator.enum.js');
7
24
  var action_enum = require('../../../enum/utility/error-string/action.enum.js');
8
25
  require('../../../enum/utility/error-string/composite-action.enum.js');
9
26
  var exceptionDetailsType_enum = require('../../../enum/utility/exception-details-type.enum.js');
10
27
  var common = require('@nestjs/common');
28
+ var functionTransaction_utility = require('../../../utility/api/function-transaction.utility.js');
11
29
  var foreignKeyViolationDetails_utility = require('../../../utility/database/typeorm/get/foreign-key-violation-details.utility.js');
12
30
  var uniqueViolationDetails_utility = require('../../../utility/database/typeorm/get/unique-violation-details.utility.js');
13
31
  var metadataNotFound_utility = require('../../../utility/database/typeorm/is/entity/metadata-not-found.utility.js');
@@ -27,30 +45,38 @@ var logger_utility = require('../../../utility/logger.utility.js');
27
45
  */
28
46
  function ApiFunctionCreate(properties) {
29
47
  const { entity } = properties;
48
+ const transactionMode = properties.transaction?.mode ?? functionTransactionMode_enum.EApiFunctionTransactionMode.SUPPORTS;
30
49
  return function (_target, _propertyKey, descriptor) {
31
- descriptor.value = async function (createProperties, eventManager) {
32
- const entityInstance = new entity();
33
- const executionContext = {
34
- DATA: { eventManager, repository: this.repository },
35
- ENTITY: entityInstance,
36
- FUNCTION_TYPE: functionType_enum.EApiFunctionType.CREATE,
37
- result: createProperties,
38
- };
39
- const result = await executor_class.ApiSubscriberExecutor.executeFunctionSubscribers(this.constructor, entityInstance, functionType_enum.EApiFunctionType.CREATE, onType_enum.EApiSubscriberOnType.BEFORE, executionContext);
40
- if (result) {
41
- executionContext.result = result;
42
- }
43
- const repository = this.repository;
44
- if (!repository) {
45
- const errorExecutionContext = {
46
- DATA: { eventManager, repository: this.repository },
47
- ENTITY: entityInstance,
48
- FUNCTION_TYPE: functionType_enum.EApiFunctionType.CREATE,
49
- };
50
- await executor_class.ApiSubscriberExecutor.executeFunctionErrorSubscribers(this.constructor, entityInstance, functionType_enum.EApiFunctionType.CREATE, onType_enum.EApiSubscriberOnType.BEFORE_ERROR, errorExecutionContext, exception_utility.ErrorException("Repository is not available in this context"));
51
- throw exception_utility.ErrorException("Repository is not available in this context");
52
- }
53
- return executor({ constructor: this.constructor, entity, eventManager, properties: executionContext.result ?? {}, repository });
50
+ descriptor.value = async function (createProperties) {
51
+ return await functionTransaction_utility.ApiFunctionExecuteWithTransaction({
52
+ callback: async (eventManager) => {
53
+ const entityInstance = new entity();
54
+ const executionContext = {
55
+ DATA: { eventManager, repository: this.repository },
56
+ ENTITY: entityInstance,
57
+ FUNCTION_TYPE: functionType_enum.EApiFunctionType.CREATE,
58
+ result: createProperties,
59
+ };
60
+ const result = await executor_class.ApiSubscriberExecutor.executeFunctionSubscribers(this.constructor, entityInstance, functionType_enum.EApiFunctionType.CREATE, onType_enum.EApiSubscriberOnType.BEFORE, executionContext);
61
+ if (result) {
62
+ executionContext.result = result;
63
+ }
64
+ const repository = this.repository;
65
+ if (!repository) {
66
+ const errorExecutionContext = {
67
+ DATA: { eventManager, repository: this.repository },
68
+ ENTITY: entityInstance,
69
+ FUNCTION_TYPE: functionType_enum.EApiFunctionType.CREATE,
70
+ };
71
+ await executor_class.ApiSubscriberExecutor.executeFunctionErrorSubscribers(this.constructor, entityInstance, functionType_enum.EApiFunctionType.CREATE, onType_enum.EApiSubscriberOnType.BEFORE_ERROR, errorExecutionContext, exception_utility.ErrorException("Repository is not available in this context"));
72
+ throw exception_utility.ErrorException("Repository is not available in this context");
73
+ }
74
+ return executor({ constructor: this.constructor, entity, properties: executionContext.result ?? {}, repository });
75
+ },
76
+ entity,
77
+ mode: transactionMode,
78
+ repository: this.repository,
79
+ });
54
80
  };
55
81
  return descriptor;
56
82
  };
@@ -63,7 +89,8 @@ function ApiFunctionCreate(properties) {
63
89
  * @throws {InternalServerErrorException} If the creation operation fails
64
90
  */
65
91
  async function executor(options) {
66
- const { constructor, entity, eventManager, properties, repository } = options;
92
+ const { constructor, entity, properties, repository } = options;
93
+ const eventManager = contextStorage_class.ApiFunctionContextStorage.get()?.eventManager;
67
94
  try {
68
95
  let result;
69
96
  if (eventManager) {
@@ -1 +1 @@
1
- {"version":3,"file":"create.decorator.js","sources":["../../../../../../src/decorator/api/function/create.decorator.ts"],"sourcesContent":[null],"names":["EApiFunctionType","ApiSubscriberExecutor","EApiSubscriberOnType","ErrorException","DatabaseTypeOrmIsEntityNotFound","NotFoundException","ErrorString","EErrorStringAction","DatabaseTypeOrmIsEntityMetadataNotFound","InternalServerErrorException","DatabaseTypeOrmIsForeignKeyViolation","DatabaseTypeOrmGetForeignKeyViolationDetails","EApiExceptionDetailsType","BadRequestException","HttpStatus","DatabaseTypeOrmIsUniqueViolation","DatabaseTypeOrmGetUniqueViolationDetails","ConflictException","HttpException","LoggerUtility"],"mappings":"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"}
1
+ {"version":3,"file":"create.decorator.js","sources":["../../../../../../src/decorator/api/function/create.decorator.ts"],"sourcesContent":[null],"names":["EApiFunctionTransactionMode","ApiFunctionExecuteWithTransaction","EApiFunctionType","ApiSubscriberExecutor","EApiSubscriberOnType","ErrorException","ApiFunctionContextStorage","DatabaseTypeOrmIsEntityNotFound","NotFoundException","ErrorString","EErrorStringAction","DatabaseTypeOrmIsEntityMetadataNotFound","InternalServerErrorException","DatabaseTypeOrmIsForeignKeyViolation","DatabaseTypeOrmGetForeignKeyViolationDetails","EApiExceptionDetailsType","BadRequestException","HttpStatus","DatabaseTypeOrmIsUniqueViolation","DatabaseTypeOrmGetUniqueViolationDetails","ConflictException","HttpException","LoggerUtility"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { IApiBaseEntity } from '../../../interface/api-base-entity.interface';
2
+ import type { IApiFunctionCustomProperties } from '../../../interface/decorator/api/function/index';
3
+ /**
4
+ * Creates a decorator that executes custom service functions through the ApiFunction runtime.
5
+ * @template E - Entity type handled by the decorated service.
6
+ * @param {IApiFunctionCustomProperties<E>} properties - Custom function configuration and lifecycle metadata.
7
+ * @returns {(target: unknown, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor} A method decorator that wraps the original function.
8
+ */
9
+ export declare function ApiFunctionCustom<E extends IApiBaseEntity>(properties: IApiFunctionCustomProperties<E>): (target: unknown, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ var customRuntime_class = require('../../../class/api/function/custom-runtime.class.js');
4
+ require('../../../enum/decorator/api/action.enum.js');
5
+ require('../../../enum/decorator/api/authentication-type.enum.js');
6
+ require('../../../enum/decorator/api/controller/load-relations-strategy.enum.js');
7
+ require('../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
8
+ require('../../../enum/decorator/api/controller/request/target.enum.js');
9
+ require('../../../enum/decorator/api/controller/request/transformer-type.enum.js');
10
+ require('../../../enum/decorator/api/controller/response-target.enum.js');
11
+ require('../../../enum/decorator/api/dto-type.enum.js');
12
+ var functionTransactionMode_enum = require('../../../enum/decorator/api/function-transaction-mode.enum.js');
13
+ require('../../../enum/decorator/api/function-type.enum.js');
14
+ require('../../../enum/decorator/api/on-type.enum.js');
15
+ require('../../../enum/decorator/api/property/data-type.enum.js');
16
+ require('../../../enum/decorator/api/property/date/identifier.enum.js');
17
+ require('../../../enum/decorator/api/property/date/type.enum.js');
18
+ require('../../../enum/decorator/api/property/desribe-type.enum.js');
19
+ require('../../../enum/decorator/api/property/number-type.enum.js');
20
+ require('../../../enum/decorator/api/property/string-type.enum.js');
21
+ require('../../../enum/decorator/api/route-type.enum.js');
22
+
23
+ /**
24
+ * Creates a decorator that executes custom service functions through the ApiFunction runtime.
25
+ * @template E - Entity type handled by the decorated service.
26
+ * @param {IApiFunctionCustomProperties<E>} properties - Custom function configuration and lifecycle metadata.
27
+ * @returns {(target: unknown, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor} A method decorator that wraps the original function.
28
+ */
29
+ function ApiFunctionCustom(properties) {
30
+ const transactionMode = properties.transaction?.mode ?? functionTransactionMode_enum.EApiFunctionTransactionMode.SUPPORTS;
31
+ return function (_target, _propertyKey, descriptor) {
32
+ const originalMethod = descriptor.value;
33
+ descriptor.value = async function (...functionArguments) {
34
+ return await customRuntime_class.ApiFunctionCustomRuntime.execute({
35
+ functionArguments,
36
+ originalMethod,
37
+ properties,
38
+ target: this,
39
+ transactionMode,
40
+ });
41
+ };
42
+ return descriptor;
43
+ };
44
+ }
45
+
46
+ exports.ApiFunctionCustom = ApiFunctionCustom;
47
+ //# sourceMappingURL=custom.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom.decorator.js","sources":["../../../../../../src/decorator/api/function/custom.decorator.ts"],"sourcesContent":[null],"names":["EApiFunctionTransactionMode","ApiFunctionCustomRuntime"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAOA;;;;;AAKG;AACG,SAAU,iBAAiB,CAA2B,UAA2C,EAAA;IACtG,MAAM,eAAe,GAAgC,UAAU,CAAC,WAAW,EAAE,IAAI,IAAIA,wDAA2B,CAAC,QAAQ;AAEzH,IAAA,OAAO,UAAU,OAAgB,EAAE,YAAoB,EAAE,UAA8B,EAAA;AACtF,QAAA,MAAM,cAAc,GAAwD,UAAU,CAAC,KAA4D;AAEnJ,QAAA,UAAU,CAAC,KAAK,GAAG,gBAAqD,GAAG,iBAAiC,EAAA;AAC3G,YAAA,OAAO,MAAMC,4CAAwB,CAAC,OAAO,CAAC;gBAC7C,iBAAiB;gBACjB,cAAc;gBACd,UAAU;AACV,gBAAA,MAAM,EAAE,IAAI;gBACZ,eAAe;AACf,aAAA,CAAC;AACH,QAAA,CAAC;AAED,QAAA,OAAO,UAAU;AAClB,IAAA,CAAC;AACF;;;;"}
@@ -3,8 +3,12 @@
3
3
  require('../../../enum/decorator/api/action.enum.js');
4
4
  require('../../../enum/decorator/api/authentication-type.enum.js');
5
5
  require('../../../enum/decorator/api/controller/load-relations-strategy.enum.js');
6
- require('../../../enum/decorator/api/controller/request-transformer-type.enum.js');
6
+ require('../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
7
+ require('../../../enum/decorator/api/controller/request/target.enum.js');
8
+ require('../../../enum/decorator/api/controller/request/transformer-type.enum.js');
9
+ require('../../../enum/decorator/api/controller/response-target.enum.js');
7
10
  require('../../../enum/decorator/api/dto-type.enum.js');
11
+ require('../../../enum/decorator/api/function-transaction-mode.enum.js');
8
12
  var functionType_enum = require('../../../enum/decorator/api/function-type.enum.js');
9
13
  require('../../../enum/decorator/api/on-type.enum.js');
10
14
  require('../../../enum/decorator/api/property/data-type.enum.js');
@@ -16,6 +20,7 @@ require('../../../enum/decorator/api/property/string-type.enum.js');
16
20
  require('../../../enum/decorator/api/route-type.enum.js');
17
21
  var exception_utility = require('../../../utility/error/exception.utility.js');
18
22
  var create_decorator = require('./create.decorator.js');
23
+ var custom_decorator = require('./custom.decorator.js');
19
24
  var delete_decorator = require('./delete.decorator.js');
20
25
  var decorator = require('./get/decorator.js');
21
26
  var list_decorator = require('./get/list.decorator.js');
@@ -40,27 +45,31 @@ function ApiFunction(properties) {
40
45
  let decoratorFunction;
41
46
  switch (type) {
42
47
  case functionType_enum.EApiFunctionType.CREATE: {
43
- decoratorFunction = create_decorator.ApiFunctionCreate({ entity });
48
+ decoratorFunction = create_decorator.ApiFunctionCreate({ entity, transaction: properties.transaction });
49
+ break;
50
+ }
51
+ case functionType_enum.EApiFunctionType.CUSTOM: {
52
+ decoratorFunction = custom_decorator.ApiFunctionCustom({ action: properties.action ?? propertyKey, entity, transaction: properties.transaction });
44
53
  break;
45
54
  }
46
55
  case functionType_enum.EApiFunctionType.DELETE: {
47
- decoratorFunction = delete_decorator.ApiFunctionDelete({ entity });
56
+ decoratorFunction = delete_decorator.ApiFunctionDelete({ entity, transaction: properties.transaction });
48
57
  break;
49
58
  }
50
59
  case functionType_enum.EApiFunctionType.GET: {
51
- decoratorFunction = decorator.ApiFunctionGet({ entity });
60
+ decoratorFunction = decorator.ApiFunctionGet({ entity, transaction: properties.transaction });
52
61
  break;
53
62
  }
54
63
  case functionType_enum.EApiFunctionType.GET_LIST: {
55
- decoratorFunction = list_decorator.ApiFunctionGetList({ entity });
64
+ decoratorFunction = list_decorator.ApiFunctionGetList({ entity, transaction: properties.transaction });
56
65
  break;
57
66
  }
58
67
  case functionType_enum.EApiFunctionType.GET_MANY: {
59
- decoratorFunction = many_decorator.ApiFunctionGetMany({ entity });
68
+ decoratorFunction = many_decorator.ApiFunctionGetMany({ entity, transaction: properties.transaction });
60
69
  break;
61
70
  }
62
71
  case functionType_enum.EApiFunctionType.UPDATE: {
63
- decoratorFunction = update_decorator.ApiFunctionUpdate({ entity });
72
+ decoratorFunction = update_decorator.ApiFunctionUpdate({ entity, transaction: properties.transaction });
64
73
  break;
65
74
  }
66
75
  default: {
@@ -1 +1 @@
1
- {"version":3,"file":"decorator.js","sources":["../../../../../../src/decorator/api/function/decorator.ts"],"sourcesContent":[null],"names":["EApiFunctionType","ApiFunctionCreate","ApiFunctionDelete","ApiFunctionGet","ApiFunctionGetList","ApiFunctionGetMany","ApiFunctionUpdate","ErrorException"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAcA;;;;;;;AAOG;AACH;AACM,SAAU,WAAW,CAA8B,UAAqC,EAAA;AAC7F,IAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAA8B,UAAU;AAE9D,IAAA,OAAO,UAAU,OAAgB,EAAE,WAAmB,EAAE,UAA8B,EAAA;AACrF,QAAA,MAAM,cAAc,GAAY,UAAU,CAAC,KAAK;;AAGhD,QAAA,UAAU,CAAC,KAAK,GAAG,UAA+C,GAAG,UAA0B,EAAA;AAC9F,YAAA,IAAI,iBAA+G;YAEnH,QAAQ,IAAI;AACX,gBAAA,KAAKA,kCAAgB,CAAC,MAAM,EAAE;AAC7B,oBAAA,iBAAiB,GAAGC,kCAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;oBAEjD;gBACD;AAEA,gBAAA,KAAKD,kCAAgB,CAAC,MAAM,EAAE;AAC7B,oBAAA,iBAAiB,GAAGE,kCAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;oBAEjD;gBACD;AAEA,gBAAA,KAAKF,kCAAgB,CAAC,GAAG,EAAE;AAC1B,oBAAA,iBAAiB,GAAGG,wBAAc,CAAC,EAAE,MAAM,EAAE,CAAC;oBAE9C;gBACD;AAEA,gBAAA,KAAKH,kCAAgB,CAAC,QAAQ,EAAE;AAC/B,oBAAA,iBAAiB,GAAGI,iCAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;oBAElD;gBACD;AAEA,gBAAA,KAAKJ,kCAAgB,CAAC,QAAQ,EAAE;AAC/B,oBAAA,iBAAiB,GAAGK,iCAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;oBAElD;gBACD;AAEA,gBAAA,KAAKL,kCAAgB,CAAC,MAAM,EAAE;AAC7B,oBAAA,iBAAiB,GAAGM,kCAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;oBAEjD;gBACD;gBAEA,SAAS;AACR,oBAAA,MAAMC,gCAAc,CAAC,sBAAsB,CAAC;gBAC7C;;AAGD,YAAA,MAAM,kBAAkB,GAAuB,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;AAC9G,YAAA,MAAM,cAAc,GAA0C,kBAAkB,CAAC,KAA8C;YAE/H,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC;AAC9C,QAAA,CAAC;AAED,QAAA,OAAO,UAAU;AAClB,IAAA,CAAC;AACF;;;;"}
1
+ {"version":3,"file":"decorator.js","sources":["../../../../../../src/decorator/api/function/decorator.ts"],"sourcesContent":[null],"names":["EApiFunctionType","ApiFunctionCreate","ApiFunctionCustom","ApiFunctionDelete","ApiFunctionGet","ApiFunctionGetList","ApiFunctionGetMany","ApiFunctionUpdate","ErrorException"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA;;;;;;;AAOG;AACH;AACM,SAAU,WAAW,CAA8B,UAAqC,EAAA;AAC7F,IAAA,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAA8B,UAAU;AAE9D,IAAA,OAAO,UAAU,OAAgB,EAAE,WAAmB,EAAE,UAA8B,EAAA;AACrF,QAAA,MAAM,cAAc,GAAY,UAAU,CAAC,KAAK;;AAGhD,QAAA,UAAU,CAAC,KAAK,GAAG,UAA+C,GAAG,UAA0B,EAAA;AAC9F,YAAA,IAAI,iBAA+G;YAEnH,QAAQ,IAAI;AACX,gBAAA,KAAKA,kCAAgB,CAAC,MAAM,EAAE;AAC7B,oBAAA,iBAAiB,GAAGC,kCAAiB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;oBAEtF;gBACD;AAEA,gBAAA,KAAKD,kCAAgB,CAAC,MAAM,EAAE;oBAC7B,iBAAiB,GAAGE,kCAAiB,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;oBAEhI;gBACD;AAEA,gBAAA,KAAKF,kCAAgB,CAAC,MAAM,EAAE;AAC7B,oBAAA,iBAAiB,GAAGG,kCAAiB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;oBAEtF;gBACD;AAEA,gBAAA,KAAKH,kCAAgB,CAAC,GAAG,EAAE;AAC1B,oBAAA,iBAAiB,GAAGI,wBAAc,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;oBAEnF;gBACD;AAEA,gBAAA,KAAKJ,kCAAgB,CAAC,QAAQ,EAAE;AAC/B,oBAAA,iBAAiB,GAAGK,iCAAkB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;oBAEvF;gBACD;AAEA,gBAAA,KAAKL,kCAAgB,CAAC,QAAQ,EAAE;AAC/B,oBAAA,iBAAiB,GAAGM,iCAAkB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;oBAEvF;gBACD;AAEA,gBAAA,KAAKN,kCAAgB,CAAC,MAAM,EAAE;AAC7B,oBAAA,iBAAiB,GAAGO,kCAAiB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC;oBAEtF;gBACD;gBAEA,SAAS;AACR,oBAAA,MAAMC,gCAAc,CAAC,sBAAsB,CAAC;gBAC7C;;AAGD,YAAA,MAAM,kBAAkB,GAAuB,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;AAC9G,YAAA,MAAM,cAAc,GAA0C,kBAAkB,CAAC,KAA8C;YAE/H,OAAO,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC;AAC9C,QAAA,CAAC;AAED,QAAA,OAAO,UAAU;AAClB,IAAA,CAAC;AACF;;;;"}
@@ -1,11 +1,16 @@
1
1
  'use strict';
2
2
 
3
+ var contextStorage_class = require('../../../class/api/function/context-storage.class.js');
3
4
  var executor_class = require('../../../class/api/subscriber/executor.class.js');
4
5
  require('../../../enum/decorator/api/action.enum.js');
5
6
  require('../../../enum/decorator/api/authentication-type.enum.js');
6
7
  require('../../../enum/decorator/api/controller/load-relations-strategy.enum.js');
7
- require('../../../enum/decorator/api/controller/request-transformer-type.enum.js');
8
+ require('../../../enum/decorator/api/controller/relation-reference-shape.enum.js');
9
+ require('../../../enum/decorator/api/controller/request/target.enum.js');
10
+ require('../../../enum/decorator/api/controller/request/transformer-type.enum.js');
11
+ require('../../../enum/decorator/api/controller/response-target.enum.js');
8
12
  require('../../../enum/decorator/api/dto-type.enum.js');
13
+ var functionTransactionMode_enum = require('../../../enum/decorator/api/function-transaction-mode.enum.js');
9
14
  var functionType_enum = require('../../../enum/decorator/api/function-type.enum.js');
10
15
  var onType_enum = require('../../../enum/decorator/api/on-type.enum.js');
11
16
  require('../../../enum/decorator/api/property/data-type.enum.js');
@@ -20,6 +25,7 @@ var action_enum = require('../../../enum/utility/error-string/action.enum.js');
20
25
  require('../../../enum/utility/error-string/composite-action.enum.js');
21
26
  var exceptionDetailsType_enum = require('../../../enum/utility/exception-details-type.enum.js');
22
27
  var common = require('@nestjs/common');
28
+ var functionTransaction_utility = require('../../../utility/api/function-transaction.utility.js');
23
29
  var foreignKeyViolationDetails_utility = require('../../../utility/database/typeorm/get/foreign-key-violation-details.utility.js');
24
30
  var metadataNotFound_utility = require('../../../utility/database/typeorm/is/entity/metadata-not-found.utility.js');
25
31
  var notFound_utility = require('../../../utility/database/typeorm/is/entity/not-found.utility.js');
@@ -38,46 +44,52 @@ var decorator = require('./get/decorator.js');
38
44
  */
39
45
  function ApiFunctionDelete(properties) {
40
46
  const { entity } = properties;
41
- const getDecorator = decorator.ApiFunctionGet({ entity });
47
+ const transactionMode = properties.transaction?.mode ?? functionTransactionMode_enum.EApiFunctionTransactionMode.SUPPORTS;
48
+ const getDecorator = decorator.ApiFunctionGet({ entity, transaction: properties.transaction });
42
49
  let getFunction;
43
50
  return function (_target, _propertyKey, descriptor) {
44
- descriptor.value = async function (criteria, eventManager) {
45
- const entityInstance = new entity();
46
- const executionContext = {
47
- DATA: { criteria, eventManager, repository: this.repository },
48
- ENTITY: entityInstance,
49
- FUNCTION_TYPE: functionType_enum.EApiFunctionType.DELETE,
50
- result: criteria,
51
- };
52
- const result = await executor_class.ApiSubscriberExecutor.executeFunctionSubscribers(this.constructor, entityInstance, functionType_enum.EApiFunctionType.DELETE, onType_enum.EApiSubscriberOnType.BEFORE, executionContext);
53
- if (result) {
54
- executionContext.result = result;
55
- }
56
- const repository = this.repository;
57
- if (!repository) {
58
- const errorExecutionContext = {
59
- DATA: { criteria, eventManager, repository: this.repository },
60
- ENTITY: entityInstance,
61
- FUNCTION_TYPE: functionType_enum.EApiFunctionType.DELETE,
62
- };
63
- await executor_class.ApiSubscriberExecutor.executeFunctionErrorSubscribers(this.constructor, entityInstance, functionType_enum.EApiFunctionType.DELETE, onType_enum.EApiSubscriberOnType.BEFORE_ERROR, errorExecutionContext, exception_utility.ErrorException("Repository is not available in this context"));
64
- throw exception_utility.ErrorException("Repository is not available in this context");
65
- }
66
- if (!getFunction) {
67
- const getDescriptor = {
68
- value: function () {
69
- return Promise.reject(exception_utility.ErrorException("Not implemented"));
70
- },
71
- };
72
- getDecorator(this, "get", getDescriptor);
73
- if (getDescriptor.value) {
74
- getFunction = getDescriptor.value.bind(this);
75
- }
76
- else {
77
- throw exception_utility.ErrorException("Get function is not properly decorated");
78
- }
79
- }
80
- return executor({ constructor: this.constructor, criteria: executionContext.result ?? {}, entity, eventManager, getFunction, repository });
51
+ descriptor.value = async function (criteria) {
52
+ return await functionTransaction_utility.ApiFunctionExecuteWithTransaction({
53
+ callback: async (eventManager) => {
54
+ const entityInstance = new entity();
55
+ const executionContext = {
56
+ DATA: { criteria, eventManager, repository: this.repository },
57
+ ENTITY: entityInstance,
58
+ FUNCTION_TYPE: functionType_enum.EApiFunctionType.DELETE,
59
+ result: criteria,
60
+ };
61
+ const result = await executor_class.ApiSubscriberExecutor.executeFunctionSubscribers(this.constructor, entityInstance, functionType_enum.EApiFunctionType.DELETE, onType_enum.EApiSubscriberOnType.BEFORE, executionContext);
62
+ if (result) {
63
+ executionContext.result = result;
64
+ }
65
+ const repository = this.repository;
66
+ if (!repository) {
67
+ const errorExecutionContext = {
68
+ DATA: { criteria, eventManager, repository: this.repository },
69
+ ENTITY: entityInstance,
70
+ FUNCTION_TYPE: functionType_enum.EApiFunctionType.DELETE,
71
+ };
72
+ await executor_class.ApiSubscriberExecutor.executeFunctionErrorSubscribers(this.constructor, entityInstance, functionType_enum.EApiFunctionType.DELETE, onType_enum.EApiSubscriberOnType.BEFORE_ERROR, errorExecutionContext, exception_utility.ErrorException("Repository is not available in this context"));
73
+ throw exception_utility.ErrorException("Repository is not available in this context");
74
+ }
75
+ if (!getFunction) {
76
+ const getDescriptor = {
77
+ value: rejectMissingGetFunction,
78
+ };
79
+ getDecorator(this, "get", getDescriptor);
80
+ if (getDescriptor.value) {
81
+ getFunction = getDescriptor.value.bind(this);
82
+ }
83
+ else {
84
+ throw exception_utility.ErrorException("Get function is not properly decorated");
85
+ }
86
+ }
87
+ return executor({ constructor: this.constructor, criteria: executionContext.result ?? {}, entity, getFunction, repository });
88
+ },
89
+ entity,
90
+ mode: transactionMode,
91
+ repository: this.repository,
92
+ });
81
93
  };
82
94
  return descriptor;
83
95
  };
@@ -90,9 +102,10 @@ function ApiFunctionDelete(properties) {
90
102
  * @throws {InternalServerErrorException} If the deletion operation fails
91
103
  */
92
104
  async function executor(options) {
93
- const { constructor, criteria, entity, eventManager, getFunction, repository } = options;
105
+ const { constructor, criteria, entity, getFunction, repository } = options;
106
+ const eventManager = contextStorage_class.ApiFunctionContextStorage.get()?.eventManager;
94
107
  try {
95
- const existingEntity = await getFunction({ where: criteria }, eventManager);
108
+ const existingEntity = await getFunction({ where: criteria });
96
109
  let result;
97
110
  if (eventManager) {
98
111
  const eventRepository = eventManager.getRepository(entity);
@@ -145,6 +158,14 @@ async function executor(options) {
145
158
  }), { cause: caughtError });
146
159
  }
147
160
  }
161
+ /**
162
+ * Rejects calls to a generated fallback get function before it is decorated.
163
+ * @template E - Entity type expected from the get function.
164
+ * @returns {Promise<E>} A rejected promise explaining that the function is not implemented.
165
+ */
166
+ function rejectMissingGetFunction() {
167
+ return Promise.reject(exception_utility.ErrorException("Not implemented"));
168
+ }
148
169
 
149
170
  exports.ApiFunctionDelete = ApiFunctionDelete;
150
171
  //# sourceMappingURL=delete.decorator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"delete.decorator.js","sources":["../../../../../../src/decorator/api/function/delete.decorator.ts"],"sourcesContent":[null],"names":["ApiFunctionGet","EApiFunctionType","ApiSubscriberExecutor","EApiSubscriberOnType","ErrorException","DatabaseTypeOrmIsEntityNotFound","NotFoundException","ErrorString","EErrorStringAction","DatabaseTypeOrmIsEntityMetadataNotFound","InternalServerErrorException","DatabaseTypeOrmIsForeignKeyViolation","DatabaseTypeOrmGetForeignKeyViolationDetails","EApiExceptionDetailsType","BadRequestException","HttpStatus","HttpException","LoggerUtility"],"mappings":"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"}
1
+ {"version":3,"file":"delete.decorator.js","sources":["../../../../../../src/decorator/api/function/delete.decorator.ts"],"sourcesContent":[null],"names":["EApiFunctionTransactionMode","ApiFunctionGet","ApiFunctionExecuteWithTransaction","EApiFunctionType","ApiSubscriberExecutor","EApiSubscriberOnType","ErrorException","ApiFunctionContextStorage","DatabaseTypeOrmIsEntityNotFound","NotFoundException","ErrorString","EErrorStringAction","DatabaseTypeOrmIsEntityMetadataNotFound","InternalServerErrorException","DatabaseTypeOrmIsForeignKeyViolation","DatabaseTypeOrmGetForeignKeyViolationDetails","EApiExceptionDetailsType","BadRequestException","HttpStatus","HttpException","LoggerUtility"],"mappings":"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"}