@klerick/json-api-nestjs 10.0.0-beta.1 → 10.0.0-beta.11

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 (153) hide show
  1. package/CHANGELOG.md +217 -0
  2. package/README.md +614 -0
  3. package/package.json +38 -34
  4. package/src/index.d.ts +6 -6
  5. package/src/index.js +6 -1
  6. package/src/index.js.map +1 -1
  7. package/src/lib/constants/constants.d.ts +4 -0
  8. package/src/lib/constants/constants.js +12 -1
  9. package/src/lib/constants/constants.js.map +1 -1
  10. package/src/lib/constants/reflection.d.ts +2 -0
  11. package/src/lib/constants/reflection.js +3 -1
  12. package/src/lib/constants/reflection.js.map +1 -1
  13. package/src/lib/json-api.module.js +3 -2
  14. package/src/lib/json-api.module.js.map +1 -1
  15. package/src/lib/modules/atomic-operation/atomic-operation.module.d.ts +1 -2
  16. package/src/lib/modules/atomic-operation/atomic-operation.module.js +12 -5
  17. package/src/lib/modules/atomic-operation/atomic-operation.module.js.map +1 -1
  18. package/src/lib/modules/atomic-operation/factory/map-controller-entity.d.ts +1 -2
  19. package/src/lib/modules/atomic-operation/factory/map-controller-entity.js +8 -7
  20. package/src/lib/modules/atomic-operation/factory/map-controller-entity.js.map +1 -1
  21. package/src/lib/modules/atomic-operation/pipes/input-operation.pipe.js +1 -4
  22. package/src/lib/modules/atomic-operation/pipes/input-operation.pipe.js.map +1 -1
  23. package/src/lib/modules/atomic-operation/service/execute.service.d.ts +6 -0
  24. package/src/lib/modules/atomic-operation/service/execute.service.js +46 -2
  25. package/src/lib/modules/atomic-operation/service/execute.service.js.map +1 -1
  26. package/src/lib/modules/atomic-operation/service/explorer.service.js +1 -1
  27. package/src/lib/modules/atomic-operation/service/explorer.service.js.map +1 -1
  28. package/src/lib/modules/atomic-operation/service/swagger.service.js +2 -2
  29. package/src/lib/modules/atomic-operation/service/swagger.service.js.map +1 -1
  30. package/src/lib/modules/atomic-operation/utils/zod/zod-helper.d.ts +35 -680
  31. package/src/lib/modules/atomic-operation/utils/zod/zod-helper.js +6 -7
  32. package/src/lib/modules/atomic-operation/utils/zod/zod-helper.js.map +1 -1
  33. package/src/lib/modules/mixin/config/bindings.js +9 -9
  34. package/src/lib/modules/mixin/config/bindings.js.map +1 -1
  35. package/src/lib/modules/mixin/decorators/index.d.ts +1 -0
  36. package/src/lib/modules/mixin/decorators/index.js +1 -0
  37. package/src/lib/modules/mixin/decorators/index.js.map +1 -1
  38. package/src/lib/modules/mixin/decorators/json-api-read-only/json-api-read-only.decorator.d.ts +48 -0
  39. package/src/lib/modules/mixin/decorators/json-api-read-only/json-api-read-only.decorator.js +83 -0
  40. package/src/lib/modules/mixin/decorators/json-api-read-only/json-api-read-only.decorator.js.map +1 -0
  41. package/src/lib/modules/mixin/factory/zod-validate.factory.js +11 -6
  42. package/src/lib/modules/mixin/factory/zod-validate.factory.js.map +1 -1
  43. package/src/lib/modules/mixin/helpers/bind-controller.js +10 -3
  44. package/src/lib/modules/mixin/helpers/bind-controller.js.map +1 -1
  45. package/src/lib/modules/mixin/helpers/create-controller.js +3 -0
  46. package/src/lib/modules/mixin/helpers/create-controller.js.map +1 -1
  47. package/src/lib/modules/mixin/helpers/utils.d.ts +2 -0
  48. package/src/lib/modules/mixin/helpers/utils.js +10 -0
  49. package/src/lib/modules/mixin/helpers/utils.js.map +1 -1
  50. package/src/lib/modules/mixin/mixin.module.js +1 -0
  51. package/src/lib/modules/mixin/mixin.module.js.map +1 -1
  52. package/src/lib/modules/mixin/pipe/patch-input/patch-input.pipe.js +1 -4
  53. package/src/lib/modules/mixin/pipe/patch-input/patch-input.pipe.js.map +1 -1
  54. package/src/lib/modules/mixin/pipe/patch-relationship/patch-relationship.pipe.js +1 -4
  55. package/src/lib/modules/mixin/pipe/patch-relationship/patch-relationship.pipe.js.map +1 -1
  56. package/src/lib/modules/mixin/pipe/post-input/post-input.pipe.d.ts +1 -0
  57. package/src/lib/modules/mixin/pipe/post-input/post-input.pipe.js +10 -4
  58. package/src/lib/modules/mixin/pipe/post-input/post-input.pipe.js.map +1 -1
  59. package/src/lib/modules/mixin/pipe/post-relationship/post-relationship.pipe.js +1 -4
  60. package/src/lib/modules/mixin/pipe/post-relationship/post-relationship.pipe.js.map +1 -1
  61. package/src/lib/modules/mixin/pipe/query-filed-on-include/query-filed-in-include.pipe.js +2 -4
  62. package/src/lib/modules/mixin/pipe/query-filed-on-include/query-filed-in-include.pipe.js.map +1 -1
  63. package/src/lib/modules/mixin/pipe/query-input/query-input.pipe.js +1 -4
  64. package/src/lib/modules/mixin/pipe/query-input/query-input.pipe.js.map +1 -1
  65. package/src/lib/modules/mixin/service/json-api-transformer.service.js +27 -4
  66. package/src/lib/modules/mixin/service/json-api-transformer.service.js.map +1 -1
  67. package/src/lib/modules/mixin/swagger/method/delete-relationship.js +3 -3
  68. package/src/lib/modules/mixin/swagger/method/delete-relationship.js.map +1 -1
  69. package/src/lib/modules/mixin/swagger/method/index.d.ts +0 -4
  70. package/src/lib/modules/mixin/swagger/method/index.js.map +1 -1
  71. package/src/lib/modules/mixin/swagger/method/patch-one.js +6 -3
  72. package/src/lib/modules/mixin/swagger/method/patch-one.js.map +1 -1
  73. package/src/lib/modules/mixin/swagger/method/patch-relationship.js +3 -3
  74. package/src/lib/modules/mixin/swagger/method/patch-relationship.js.map +1 -1
  75. package/src/lib/modules/mixin/swagger/method/post-one.js +6 -3
  76. package/src/lib/modules/mixin/swagger/method/post-one.js.map +1 -1
  77. package/src/lib/modules/mixin/swagger/method/post-relationship.js +3 -3
  78. package/src/lib/modules/mixin/swagger/method/post-relationship.js.map +1 -1
  79. package/src/lib/modules/mixin/swagger/utils.d.ts +2 -0
  80. package/src/lib/modules/mixin/swagger/utils.js +16 -1
  81. package/src/lib/modules/mixin/swagger/utils.js.map +1 -1
  82. package/src/lib/modules/mixin/types/decorator-options.type.d.ts +1 -0
  83. package/src/lib/modules/mixin/types/orm-service.type.d.ts +8 -0
  84. package/src/lib/modules/mixin/zod/index.d.ts +1 -0
  85. package/src/lib/modules/mixin/zod/index.js +6 -0
  86. package/src/lib/modules/mixin/zod/index.js.map +1 -1
  87. package/src/lib/modules/mixin/zod/map-transform-to-json-shema.d.ts +6 -0
  88. package/src/lib/modules/mixin/zod/map-transform-to-json-shema.js +27 -0
  89. package/src/lib/modules/mixin/zod/map-transform-to-json-shema.js.map +1 -0
  90. package/src/lib/modules/mixin/zod/zod-input-patch-relationship-schema/index.d.ts +4 -44
  91. package/src/lib/modules/mixin/zod/zod-input-patch-relationship-schema/index.js +2 -3
  92. package/src/lib/modules/mixin/zod/zod-input-patch-relationship-schema/index.js.map +1 -1
  93. package/src/lib/modules/mixin/zod/zod-input-patch-schema/index.d.ts +16 -5
  94. package/src/lib/modules/mixin/zod/zod-input-patch-schema/index.js +7 -9
  95. package/src/lib/modules/mixin/zod/zod-input-patch-schema/index.js.map +1 -1
  96. package/src/lib/modules/mixin/zod/zod-input-post-relationship-schema/index.d.ts +4 -50
  97. package/src/lib/modules/mixin/zod/zod-input-post-relationship-schema/index.js +2 -3
  98. package/src/lib/modules/mixin/zod/zod-input-post-relationship-schema/index.js.map +1 -1
  99. package/src/lib/modules/mixin/zod/zod-input-post-schema/index.d.ts +16 -6
  100. package/src/lib/modules/mixin/zod/zod-input-post-schema/index.js +7 -13
  101. package/src/lib/modules/mixin/zod/zod-input-post-schema/index.js.map +1 -1
  102. package/src/lib/modules/mixin/zod/zod-input-query-schema/fields.d.ts +13 -27
  103. package/src/lib/modules/mixin/zod/zod-input-query-schema/fields.js +20 -13
  104. package/src/lib/modules/mixin/zod/zod-input-query-schema/fields.js.map +1 -1
  105. package/src/lib/modules/mixin/zod/zod-input-query-schema/filter.d.ts +72 -987
  106. package/src/lib/modules/mixin/zod/zod-input-query-schema/filter.js +11 -7
  107. package/src/lib/modules/mixin/zod/zod-input-query-schema/filter.js.map +1 -1
  108. package/src/lib/modules/mixin/zod/zod-input-query-schema/include.d.ts +1 -1
  109. package/src/lib/modules/mixin/zod/zod-input-query-schema/index.d.ts +73 -4933
  110. package/src/lib/modules/mixin/zod/zod-input-query-schema/index.js +6 -3
  111. package/src/lib/modules/mixin/zod/zod-input-query-schema/index.js.map +1 -1
  112. package/src/lib/modules/mixin/zod/zod-input-query-schema/sort.d.ts +1 -1
  113. package/src/lib/modules/mixin/zod/zod-query-schema/fields.d.ts +3 -3
  114. package/src/lib/modules/mixin/zod/zod-query-schema/fields.js +6 -2
  115. package/src/lib/modules/mixin/zod/zod-query-schema/fields.js.map +1 -1
  116. package/src/lib/modules/mixin/zod/zod-query-schema/filter.d.ts +24 -104
  117. package/src/lib/modules/mixin/zod/zod-query-schema/filter.js +32 -10
  118. package/src/lib/modules/mixin/zod/zod-query-schema/filter.js.map +1 -1
  119. package/src/lib/modules/mixin/zod/zod-query-schema/include.d.ts +1 -1
  120. package/src/lib/modules/mixin/zod/zod-query-schema/include.js +1 -1
  121. package/src/lib/modules/mixin/zod/zod-query-schema/include.js.map +1 -1
  122. package/src/lib/modules/mixin/zod/zod-query-schema/index.d.ts +4 -4
  123. package/src/lib/modules/mixin/zod/zod-query-schema/index.js +3 -4
  124. package/src/lib/modules/mixin/zod/zod-query-schema/index.js.map +1 -1
  125. package/src/lib/modules/mixin/zod/zod-query-schema/sort.d.ts +11 -3
  126. package/src/lib/modules/mixin/zod/zod-query-schema/sort.js +1 -1
  127. package/src/lib/modules/mixin/zod/zod-query-schema/sort.js.map +1 -1
  128. package/src/lib/modules/mixin/zod/zod-share/attributes.d.ts +15 -14
  129. package/src/lib/modules/mixin/zod/zod-share/attributes.js +26 -20
  130. package/src/lib/modules/mixin/zod/zod-share/attributes.js.map +1 -1
  131. package/src/lib/modules/mixin/zod/zod-share/page.d.ts +3 -9
  132. package/src/lib/modules/mixin/zod/zod-share/rel-data.d.ts +4 -40
  133. package/src/lib/modules/mixin/zod/zod-share/rel-data.js +2 -2
  134. package/src/lib/modules/mixin/zod/zod-share/rel-data.js.map +1 -1
  135. package/src/lib/modules/mixin/zod/zod-share/relationships.d.ts +8 -304
  136. package/src/lib/modules/mixin/zod/zod-share/relationships.js +1 -1
  137. package/src/lib/modules/mixin/zod/zod-share/relationships.js.map +1 -1
  138. package/src/lib/modules/mixin/zod/zod-utils.d.ts +2 -1
  139. package/src/lib/modules/mixin/zod/zod-utils.js +12 -0
  140. package/src/lib/modules/mixin/zod/zod-utils.js.map +1 -1
  141. package/src/lib/types/entity-param.type.d.ts +6 -4
  142. package/src/lib/types/entity-param.type.js +13 -0
  143. package/src/lib/types/entity-param.type.js.map +1 -1
  144. package/src/lib/types/error.types.d.ts +3 -3
  145. package/src/lib/types/index.d.ts +1 -0
  146. package/src/lib/types/index.js +1 -0
  147. package/src/lib/types/index.js.map +1 -1
  148. package/src/lib/types/json-api-read-only.d.ts +51 -0
  149. package/src/lib/types/json-api-read-only.js +3 -0
  150. package/src/lib/types/json-api-read-only.js.map +1 -0
  151. package/src/lib/types/module-options.types.d.ts +6 -1
  152. package/src/lib/utils/module-helper.js +5 -0
  153. package/src/lib/utils/module-helper.js.map +1 -1
@@ -1,19 +1,20 @@
1
1
  import { z, ZodArray } from 'zod';
2
- import { EntityParam, TypeField } from '../../../../types';
2
+ import { EntityParam, TypeField, ExtractJsonApiReadOnlyKeys, ExtractJsonApiImmutableKeys } from '../../../../types';
3
3
  import { ResultSchema } from './type';
4
4
  import { EntityParamMapService } from '../../service';
5
- declare const literalSchema: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>;
6
- type Literal = z.infer<typeof literalSchema>;
7
- type Json = Literal | {
8
- [key: string]: Json;
9
- } | Json[];
10
- export declare function getZodRulesForNumber<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodEffects<z.ZodNumber, number, unknown>, Null, isPatch>;
11
- declare function getZodRulesForString<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodString, Null, isPatch>;
12
- declare function getZodRulesForDate<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodDate, Null, isPatch>;
13
- declare function getZodRulesForBoolean<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodBoolean, Null, isPatch>;
14
- declare function getZodSchemaForJson<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodType<Json, z.ZodTypeDef, Json>, Null, isPatch>;
15
- type ZodRulesResultArray<T extends TypeField, Null extends true | false, isPatch extends true | false> = ResultSchema<ZodArray<ZodRulesForType<T, false, false>, 'many'>, Null, isPatch>;
16
- declare function getZodRulesForArray<T extends TypeField, Null extends true | false, isPatch extends true | false>(propsField: T, isNullable: Null, isPatch: isPatch): ZodRulesResultArray<T, Null, isPatch>;
5
+ declare function getZodRulesForNumberFunc<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>, Null, isPatch>;
6
+ declare const getZodRulesForNumber: typeof getZodRulesForNumberFunc;
7
+ declare function getZodRulesForStringFunc<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodString, Null, isPatch>;
8
+ declare const getZodRulesForString: typeof getZodRulesForStringFunc;
9
+ declare function getZodRulesForDateFunc<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): z.ZodPipe<z.ZodISODateTime, z.ZodTransform<Awaited<isPatch extends true ? Null extends true ? Date | null | undefined : Date | undefined : Null extends true ? Date | null | undefined : Date>, string>> | z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>, z.ZodTransform<Awaited<isPatch extends true ? Null extends true ? Date | null | undefined : Date | undefined : Null extends true ? Date | null | undefined : Date>, string | null | undefined>> | z.ZodPipe<z.ZodOptional<z.ZodISODateTime>, z.ZodTransform<Awaited<isPatch extends true ? Null extends true ? Date | null | undefined : Date | undefined : Null extends true ? Date | null | undefined : Date>, string | undefined>>;
10
+ declare const getZodRulesForDate: typeof getZodRulesForDateFunc;
11
+ declare function getZodRulesForBooleanFunc<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodBoolean, Null, isPatch>;
12
+ declare const getZodRulesForBoolean: typeof getZodRulesForBooleanFunc;
13
+ declare function getZodSchemaForJsonFunc<Null extends true | false, isPatch extends true | false>(isNullable: Null, isPatch: isPatch): ResultSchema<z.ZodJSONSchema, Null, isPatch>;
14
+ declare const getZodSchemaForJson: typeof getZodSchemaForJsonFunc;
15
+ type ZodRulesResultArray<T extends TypeField, Null extends true | false, isPatch extends true | false> = ResultSchema<ZodArray<ZodRulesForType<T, false, false>>, Null, isPatch>;
16
+ declare function getZodRulesForArrayFunc<T extends TypeField, Null extends true | false, isPatch extends true | false>(propsField: T, isNullable: Null, isPatch: isPatch): ZodRulesResultArray<T, Null, isPatch>;
17
+ declare const getZodRulesForArray: typeof getZodRulesForArrayFunc;
17
18
  type ZodRulesForArray<T extends TypeField, Null extends true | false, isPatch extends true | false> = ReturnType<typeof getZodRulesForArray<T, Null, isPatch>>;
18
19
  export type ZodRulesForType<T extends TypeField, Null extends true | false, isPatch extends true | false> = ReturnType<T extends TypeField.date ? typeof getZodRulesForDate<Null, isPatch> : T extends TypeField.boolean ? typeof getZodRulesForBoolean<Null, isPatch> : T extends TypeField.number ? typeof getZodRulesForNumber<Null, isPatch> : T extends TypeField.object ? typeof getZodSchemaForJson<Null, isPatch> : typeof getZodRulesForString<Null, isPatch>>;
19
20
  export type IsNullableProps<E extends object, IdKey extends string, K extends keyof E> = K extends EntityParam<E, IdKey>['propsNullable'][number] ? true : false;
@@ -25,7 +26,7 @@ type ZodRules<E extends object, IdKey extends string, P extends keyof E, IsArray
25
26
  export type ShapeAttributesType<E extends object, IdKey extends string, isPatch extends boolean> = {
26
27
  [K in keyof OmitPrimary<E, IdKey>]: ZodRules<E, IdKey, K, IsTypeArray<OmitPrimary<E, IdKey>[K]>, isPatch>;
27
28
  };
28
- export declare function zodAttributes<E extends object, IdKey extends string, S extends true | false = false>(entityParamMapService: EntityParamMapService<E, IdKey>, isPatch: S): z.ZodEffects<z.ZodObject<ShapeAttributesType<E, IdKey, S>, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<ShapeAttributesType<E, IdKey, S>>, any> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<ShapeAttributesType<E, IdKey, S>>, any>[k]; } : never, z.baseObjectInputType<ShapeAttributesType<E, IdKey, S>> extends infer T_1 ? { [k_1 in keyof T_1]: z.baseObjectInputType<ShapeAttributesType<E, IdKey, S>>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<ShapeAttributesType<E, IdKey, S>>, any> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<ShapeAttributesType<E, IdKey, S>>, any>[k]; } : never, z.baseObjectInputType<ShapeAttributesType<E, IdKey, S>> extends infer T_3 ? { [k_1 in keyof T_3]: z.baseObjectInputType<ShapeAttributesType<E, IdKey, S>>[k_1]; } : never>;
29
+ export declare function zodAttributes<E extends object, IdKey extends string, S extends true | false = false>(entityParamMapService: EntityParamMapService<E, IdKey>, isPatch: S, readOnlyProps?: ExtractJsonApiReadOnlyKeys<E>[], immutableProps?: ExtractJsonApiImmutableKeys<E>[]): z.ZodObject<ShapeAttributesType<E, IdKey, S> extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, z.core.$strict>;
29
30
  export type ZodAttributes<E extends object, IdKey extends string, K extends true | false = false> = ReturnType<typeof zodAttributes<E, IdKey, K>>;
30
31
  export type Attributes<E extends object, IdKey extends string, K extends true | false = false> = z.infer<ZodAttributes<E, IdKey, K>>;
31
32
  export {};
@@ -1,34 +1,33 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getZodRulesForNumber = getZodRulesForNumber;
4
3
  exports.zodAttributes = zodAttributes;
5
4
  const json_api_nestjs_shared_1 = require("@klerick/json-api-nestjs-shared");
6
5
  const zod_1 = require("zod");
7
6
  const types_1 = require("../../../../types");
8
7
  const zod_utils_1 = require("../zod-utils");
9
- const literalSchema = zod_1.z.union([zod_1.z.string(), zod_1.z.number(), zod_1.z.boolean(), zod_1.z.null()]);
10
- function getZodRulesForNumber(isNullable, isPatch) {
8
+ const map_transform_to_json_shema_1 = require("../map-transform-to-json-shema");
9
+ function getZodRulesForNumberFunc(isNullable, isPatch) {
11
10
  const schema = zod_1.z.preprocess((x) => Number(x), zod_1.z.number());
12
11
  return (0, zod_utils_1.setOptionalOrNot)(schema, isNullable, isPatch);
13
12
  }
14
- function getZodRulesForString(isNullable, isPatch) {
15
- const schema = zod_1.z.string();
16
- return (0, zod_utils_1.setOptionalOrNot)(schema, isNullable, isPatch);
13
+ const getZodRulesForNumber = (0, zod_utils_1.memoize)(getZodRulesForNumberFunc);
14
+ function getZodRulesForStringFunc(isNullable, isPatch) {
15
+ return (0, zod_utils_1.setOptionalOrNot)(zod_1.z.string(), isNullable, isPatch);
17
16
  }
18
- function getZodRulesForDate(isNullable, isPatch) {
19
- const schema = zod_1.z.coerce.date();
20
- return (0, zod_utils_1.setOptionalOrNot)(schema, isNullable, isPatch);
17
+ const getZodRulesForString = (0, zod_utils_1.memoize)(getZodRulesForStringFunc);
18
+ function getZodRulesForDateFunc(isNullable, isPatch) {
19
+ return (0, zod_utils_1.setOptionalOrNot)(zod_1.z.iso.datetime(), isNullable, isPatch).transform((map_transform_to_json_shema_1.transformDateString));
21
20
  }
22
- function getZodRulesForBoolean(isNullable, isPatch) {
23
- const schema = zod_1.z.boolean();
24
- return (0, zod_utils_1.setOptionalOrNot)(schema, isNullable, isPatch);
21
+ const getZodRulesForDate = (0, zod_utils_1.memoize)(getZodRulesForDateFunc);
22
+ function getZodRulesForBooleanFunc(isNullable, isPatch) {
23
+ return (0, zod_utils_1.setOptionalOrNot)(zod_1.z.boolean(), isNullable, isPatch);
25
24
  }
26
- function getZodSchemaForJson(isNullable, isPatch) {
27
- const tmpSchema = isNullable ? literalSchema.nullable() : literalSchema;
28
- const schema = zod_1.z.lazy(() => zod_1.z.union([tmpSchema, zod_1.z.array(tmpSchema), zod_1.z.record(tmpSchema)]));
29
- return (0, zod_utils_1.setOptionalOrNot)(schema, isNullable, isPatch);
25
+ const getZodRulesForBoolean = (0, zod_utils_1.memoize)(getZodRulesForBooleanFunc);
26
+ function getZodSchemaForJsonFunc(isNullable, isPatch) {
27
+ return (0, zod_utils_1.setOptionalOrNot)(zod_1.z.json(), isNullable, isPatch);
30
28
  }
31
- function getZodRulesForArray(propsField, isNullable, isPatch) {
29
+ const getZodSchemaForJson = (0, zod_utils_1.memoize)(getZodSchemaForJsonFunc);
30
+ function getZodRulesForArrayFunc(propsField, isNullable, isPatch) {
32
31
  let schema;
33
32
  switch (propsField) {
34
33
  case types_1.TypeField.number:
@@ -45,6 +44,7 @@ function getZodRulesForArray(propsField, isNullable, isPatch) {
45
44
  }
46
45
  return (0, zod_utils_1.setOptionalOrNot)(schema.array(), isNullable, isPatch);
47
46
  }
47
+ const getZodRulesForArray = (0, zod_utils_1.memoize)(getZodRulesForArrayFunc);
48
48
  function assertPropsIsarrayProps(paramMap, propsName) {
49
49
  return Reflect.get(paramMap.propsType, `${propsName}`) === types_1.TypeField.array;
50
50
  }
@@ -72,11 +72,17 @@ function buildSchema(paramMap, propsName, isPatch) {
72
72
  function assertOmitKeysProps(primaryColumnName, key) {
73
73
  return !(key.toString() === primaryColumnName);
74
74
  }
75
- function zodAttributes(entityParamMapService, isPatch) {
75
+ function zodAttributes(entityParamMapService, isPatch, readOnlyProps = [], immutableProps = []) {
76
76
  const paramsMap = entityParamMapService.entityParaMap;
77
+ const excludeProps = isPatch
78
+ ? [...readOnlyProps, ...immutableProps]
79
+ : readOnlyProps;
77
80
  const objectShape = json_api_nestjs_shared_1.ObjectTyped.keys(paramsMap.propsType).reduce((acum, key) => {
78
- if (assertOmitKeysProps(paramsMap.primaryColumnName, key)) {
79
- acum[key] = buildSchema(paramsMap, key, isPatch);
81
+ if (assertOmitKeysProps(paramsMap.primaryColumnName, key) &&
82
+ !excludeProps.includes(key)) {
83
+ const isImmutable = immutableProps.includes(key);
84
+ const schema = buildSchema(paramsMap, key, isPatch || isImmutable);
85
+ acum[key] = schema;
80
86
  }
81
87
  return acum;
82
88
  }, {});
@@ -1 +1 @@
1
- {"version":3,"file":"attributes.js","sourceRoot":"","sources":["../../../../../../../../../../libs/json-api/json-api-nestjs/src/lib/modules/mixin/zod/zod-share/attributes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attributes.js","sourceRoot":"","sources":["../../../../../../../../../../libs/json-api/json-api-nestjs/src/lib/modules/mixin/zod/zod-share/attributes.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  export declare function zodPageInputQuery(): z.ZodDefault<z.ZodObject<{
3
- size: z.ZodDefault<z.ZodEffects<z.ZodNumber, number, unknown>>;
4
- number: z.ZodDefault<z.ZodEffects<z.ZodNumber, number, unknown>>;
5
- }, "strict", z.ZodTypeAny, {
6
- number: number;
7
- size: number;
8
- }, {
9
- number?: unknown;
10
- size?: unknown;
11
- }>>;
3
+ size: z.ZodDefault<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
4
+ number: z.ZodDefault<z.ZodPipe<z.ZodTransform<number, unknown>, z.ZodNumber>>;
5
+ }, z.core.$strict>>;
12
6
  export type ZodPageInputQuery = ReturnType<typeof zodPageInputQuery>;
@@ -1,50 +1,14 @@
1
1
  import { z } from 'zod';
2
2
  import { TypeForId } from '../../../../types';
3
- export declare function zodRelData<T extends string>(typeName: T, typeId: TypeForId): z.ZodEffects<z.ZodObject<{
3
+ export declare function zodRelData<T extends string>(typeName: T, typeId: TypeForId): z.ZodObject<{
4
4
  id: z.ZodString;
5
5
  type: z.ZodLiteral<T>;
6
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
7
- id: z.ZodString;
8
- type: z.ZodLiteral<T>;
9
- }>, any> extends infer T_1 ? { [k in keyof T_1]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
10
- id: z.ZodString;
11
- type: z.ZodLiteral<T>;
12
- }>, any>[k]; } : never, z.baseObjectInputType<{
13
- id: z.ZodString;
14
- type: z.ZodLiteral<T>;
15
- }> extends infer T_2 ? { [k_1 in keyof T_2]: z.baseObjectInputType<{
16
- id: z.ZodString;
17
- type: z.ZodLiteral<T>;
18
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
19
- id: z.ZodString;
20
- type: z.ZodLiteral<T>;
21
- }>, any> extends infer T_3 ? { [k in keyof T_3]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
22
- id: z.ZodString;
23
- type: z.ZodLiteral<T>;
24
- }>, any>[k]; } : never, z.baseObjectInputType<{
25
- id: z.ZodString;
26
- type: z.ZodLiteral<T>;
27
- }> extends infer T_4 ? { [k_1 in keyof T_4]: z.baseObjectInputType<{
28
- id: z.ZodString;
29
- type: z.ZodLiteral<T>;
30
- }>[k_1]; } : never>;
6
+ }, z.core.$strict>;
31
7
  export type ZodRelData<T extends string> = ReturnType<typeof zodRelData<T>>;
32
8
  export type RelData<T extends string> = z.infer<ZodRelData<T>>;
33
- export declare function zodData(): z.ZodEffects<z.ZodObject<{
9
+ export declare function zodData(): z.ZodObject<{
34
10
  type: z.ZodString;
35
11
  id: z.ZodString;
36
- }, "strict", z.ZodTypeAny, {
37
- id: string;
38
- type: string;
39
- }, {
40
- id: string;
41
- type: string;
42
- }>, {
43
- id: string;
44
- type: string;
45
- }, {
46
- id: string;
47
- type: string;
48
- }>;
12
+ }, z.core.$strict>;
49
13
  export type ZodData = ReturnType<typeof zodData>;
50
14
  export type Data = z.infer<ZodData>;
@@ -17,8 +17,8 @@ function zodRelData(typeName, typeId) {
17
17
  function zodData() {
18
18
  return zod_1.z
19
19
  .object({
20
- type: zod_1.z.coerce.string(),
21
- id: zod_1.z.coerce.string(),
20
+ type: zod_1.z.string(),
21
+ id: zod_1.z.string(),
22
22
  })
23
23
  .strict()
24
24
  .refine(zod_utils_1.nonEmptyObject);
@@ -1 +1 @@
1
- {"version":3,"file":"rel-data.js","sourceRoot":"","sources":["../../../../../../../../../../libs/json-api/json-api-nestjs/src/lib/modules/mixin/zod/zod-share/rel-data.ts"],"names":[],"mappings":";;AAOA,gCAQC;AAKD,0BAQC;AA5BD,6BAAwB;AAGxB,4CAA8C;AAE9C,yBAAoC;AAEpC,SAAgB,UAAU,CAAmB,QAAW,EAAE,MAAiB;IACzE,OAAO,OAAC;SACL,MAAM,CAAC;QACN,EAAE,EAAE,IAAA,QAAK,EAAC,MAAM,CAAC;QACjB,IAAI,EAAE,IAAA,UAAO,EAAC,QAAQ,CAAC;KACxB,CAAC;SACD,MAAM,EAAE;SACR,MAAM,CAAC,0BAAc,CAAC,CAAC;AAC5B,CAAC;AAKD,SAAgB,OAAO;IACrB,OAAO,OAAC;SACL,MAAM,CAAC;QACN,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE;QACvB,EAAE,EAAE,OAAC,CAAC,MAAM,CAAC,MAAM,EAAE;KACtB,CAAC;SACD,MAAM,EAAE;SACR,MAAM,CAAC,0BAAc,CAAC,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"rel-data.js","sourceRoot":"","sources":["../../../../../../../../../../libs/json-api/json-api-nestjs/src/lib/modules/mixin/zod/zod-share/rel-data.ts"],"names":[],"mappings":";;AAOA,gCAQC;AAKD,0BAQC;AA5BD,6BAAwB;AAGxB,4CAA8C;AAE9C,yBAAoC;AAEpC,SAAgB,UAAU,CAAmB,QAAW,EAAE,MAAiB;IACzE,OAAO,OAAC;SACL,MAAM,CAAC;QACN,EAAE,EAAE,IAAA,QAAK,EAAC,MAAM,CAAC;QACjB,IAAI,EAAE,IAAA,UAAO,EAAC,QAAQ,CAAC;KACxB,CAAC;SACD,MAAM,EAAE;SACR,MAAM,CAAC,0BAAc,CAAC,CAAC;AAC5B,CAAC;AAKD,SAAgB,OAAO;IACrB,OAAO,OAAC;SACL,MAAM,CAAC;QACN,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;QAChB,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;KACf,CAAC;SACD,MAAM,EAAE;SACR,MAAM,CAAC,0BAAc,CAAC,CAAC;AAC5B,CAAC"}
@@ -1,314 +1,18 @@
1
1
  import { z } from 'zod';
2
2
  import { EntityParam, TypeForId, RelationProperty, TypeField } from '../../../../types';
3
3
  import { EntityParamMapService } from '../../service';
4
- declare function getZodResultData<TypeName extends string, Type extends TypeForId, IsNull extends true | false = false, IsPatch extends true | false = false>(typeName: TypeName, primaryType: Type, isNull: IsNull, isPatch: IsPatch): import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
5
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
4
+ declare function getZodResultData<TypeName extends string, Type extends TypeForId, IsNull extends true | false = false, IsPatch extends true | false = false>(typeName: TypeName, primaryType: Type, isNull: IsNull, isPatch: IsPatch): import("./type").ResultSchema<z.ZodObject<{
5
+ data: import("./type").ResultSchema<z.ZodObject<{
6
6
  id: z.ZodString;
7
7
  type: z.ZodLiteral<TypeName>;
8
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
9
- id: z.ZodString;
10
- type: z.ZodLiteral<TypeName>;
11
- }>, any> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
12
- id: z.ZodString;
13
- type: z.ZodLiteral<TypeName>;
14
- }>, any>[k]; } : never, z.baseObjectInputType<{
15
- id: z.ZodString;
16
- type: z.ZodLiteral<TypeName>;
17
- }> extends infer T_1 ? { [k_1 in keyof T_1]: z.baseObjectInputType<{
18
- id: z.ZodString;
19
- type: z.ZodLiteral<TypeName>;
20
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
21
- id: z.ZodString;
22
- type: z.ZodLiteral<TypeName>;
23
- }>, any> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
24
- id: z.ZodString;
25
- type: z.ZodLiteral<TypeName>;
26
- }>, any>[k]; } : never, z.baseObjectInputType<{
27
- id: z.ZodString;
28
- type: z.ZodLiteral<TypeName>;
29
- }> extends infer T_3 ? { [k_1 in keyof T_3]: z.baseObjectInputType<{
30
- id: z.ZodString;
31
- type: z.ZodLiteral<TypeName>;
32
- }>[k_1]; } : never>, IsNull, IsPatch>;
33
- }, "strip", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
34
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
35
- id: z.ZodString;
36
- type: z.ZodLiteral<TypeName>;
37
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
38
- id: z.ZodString;
39
- type: z.ZodLiteral<TypeName>;
40
- }>, any> extends infer T_9 ? { [k in keyof T_9]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
41
- id: z.ZodString;
42
- type: z.ZodLiteral<TypeName>;
43
- }>, any>[k]; } : never, z.baseObjectInputType<{
44
- id: z.ZodString;
45
- type: z.ZodLiteral<TypeName>;
46
- }> extends infer T_10 ? { [k_1 in keyof T_10]: z.baseObjectInputType<{
47
- id: z.ZodString;
48
- type: z.ZodLiteral<TypeName>;
49
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
50
- id: z.ZodString;
51
- type: z.ZodLiteral<TypeName>;
52
- }>, any> extends infer T_11 ? { [k in keyof T_11]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
53
- id: z.ZodString;
54
- type: z.ZodLiteral<TypeName>;
55
- }>, any>[k]; } : never, z.baseObjectInputType<{
56
- id: z.ZodString;
57
- type: z.ZodLiteral<TypeName>;
58
- }> extends infer T_12 ? { [k_1 in keyof T_12]: z.baseObjectInputType<{
59
- id: z.ZodString;
60
- type: z.ZodLiteral<TypeName>;
61
- }>[k_1]; } : never>, IsNull, IsPatch>;
62
- }>, any> extends infer T_4 ? { [k_2 in keyof T_4]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
63
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
64
- id: z.ZodString;
65
- type: z.ZodLiteral<TypeName>;
66
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
67
- id: z.ZodString;
68
- type: z.ZodLiteral<TypeName>;
69
- }>, any> extends infer T_5 ? { [k in keyof T_5]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
70
- id: z.ZodString;
71
- type: z.ZodLiteral<TypeName>;
72
- }>, any>[k]; } : never, z.baseObjectInputType<{
73
- id: z.ZodString;
74
- type: z.ZodLiteral<TypeName>;
75
- }> extends infer T_6 ? { [k_1 in keyof T_6]: z.baseObjectInputType<{
76
- id: z.ZodString;
77
- type: z.ZodLiteral<TypeName>;
78
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
79
- id: z.ZodString;
80
- type: z.ZodLiteral<TypeName>;
81
- }>, any> extends infer T_7 ? { [k in keyof T_7]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
82
- id: z.ZodString;
83
- type: z.ZodLiteral<TypeName>;
84
- }>, any>[k]; } : never, z.baseObjectInputType<{
85
- id: z.ZodString;
86
- type: z.ZodLiteral<TypeName>;
87
- }> extends infer T_8 ? { [k_1 in keyof T_8]: z.baseObjectInputType<{
88
- id: z.ZodString;
89
- type: z.ZodLiteral<TypeName>;
90
- }>[k_1]; } : never>, IsNull, IsPatch>;
91
- }>, any>[k_2]; } : never, z.baseObjectInputType<{
92
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
93
- id: z.ZodString;
94
- type: z.ZodLiteral<TypeName>;
95
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
96
- id: z.ZodString;
97
- type: z.ZodLiteral<TypeName>;
98
- }>, any> extends infer T_18 ? { [k in keyof T_18]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
99
- id: z.ZodString;
100
- type: z.ZodLiteral<TypeName>;
101
- }>, any>[k]; } : never, z.baseObjectInputType<{
102
- id: z.ZodString;
103
- type: z.ZodLiteral<TypeName>;
104
- }> extends infer T_19 ? { [k_1 in keyof T_19]: z.baseObjectInputType<{
105
- id: z.ZodString;
106
- type: z.ZodLiteral<TypeName>;
107
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
108
- id: z.ZodString;
109
- type: z.ZodLiteral<TypeName>;
110
- }>, any> extends infer T_20 ? { [k in keyof T_20]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
111
- id: z.ZodString;
112
- type: z.ZodLiteral<TypeName>;
113
- }>, any>[k]; } : never, z.baseObjectInputType<{
114
- id: z.ZodString;
115
- type: z.ZodLiteral<TypeName>;
116
- }> extends infer T_21 ? { [k_1 in keyof T_21]: z.baseObjectInputType<{
117
- id: z.ZodString;
118
- type: z.ZodLiteral<TypeName>;
119
- }>[k_1]; } : never>, IsNull, IsPatch>;
120
- }> extends infer T_13 ? { [k_3 in keyof T_13]: z.baseObjectInputType<{
121
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
122
- id: z.ZodString;
123
- type: z.ZodLiteral<TypeName>;
124
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
125
- id: z.ZodString;
126
- type: z.ZodLiteral<TypeName>;
127
- }>, any> extends infer T_14 ? { [k in keyof T_14]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
128
- id: z.ZodString;
129
- type: z.ZodLiteral<TypeName>;
130
- }>, any>[k]; } : never, z.baseObjectInputType<{
131
- id: z.ZodString;
132
- type: z.ZodLiteral<TypeName>;
133
- }> extends infer T_15 ? { [k_1 in keyof T_15]: z.baseObjectInputType<{
134
- id: z.ZodString;
135
- type: z.ZodLiteral<TypeName>;
136
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
137
- id: z.ZodString;
138
- type: z.ZodLiteral<TypeName>;
139
- }>, any> extends infer T_16 ? { [k in keyof T_16]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
140
- id: z.ZodString;
141
- type: z.ZodLiteral<TypeName>;
142
- }>, any>[k]; } : never, z.baseObjectInputType<{
143
- id: z.ZodString;
144
- type: z.ZodLiteral<TypeName>;
145
- }> extends infer T_17 ? { [k_1 in keyof T_17]: z.baseObjectInputType<{
146
- id: z.ZodString;
147
- type: z.ZodLiteral<TypeName>;
148
- }>[k_1]; } : never>, IsNull, IsPatch>;
149
- }>[k_3]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
150
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
151
- id: z.ZodString;
152
- type: z.ZodLiteral<TypeName>;
153
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
154
- id: z.ZodString;
155
- type: z.ZodLiteral<TypeName>;
156
- }>, any> extends infer T_27 ? { [k in keyof T_27]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
157
- id: z.ZodString;
158
- type: z.ZodLiteral<TypeName>;
159
- }>, any>[k]; } : never, z.baseObjectInputType<{
160
- id: z.ZodString;
161
- type: z.ZodLiteral<TypeName>;
162
- }> extends infer T_28 ? { [k_1 in keyof T_28]: z.baseObjectInputType<{
163
- id: z.ZodString;
164
- type: z.ZodLiteral<TypeName>;
165
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
166
- id: z.ZodString;
167
- type: z.ZodLiteral<TypeName>;
168
- }>, any> extends infer T_29 ? { [k in keyof T_29]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
169
- id: z.ZodString;
170
- type: z.ZodLiteral<TypeName>;
171
- }>, any>[k]; } : never, z.baseObjectInputType<{
172
- id: z.ZodString;
173
- type: z.ZodLiteral<TypeName>;
174
- }> extends infer T_30 ? { [k_1 in keyof T_30]: z.baseObjectInputType<{
175
- id: z.ZodString;
176
- type: z.ZodLiteral<TypeName>;
177
- }>[k_1]; } : never>, IsNull, IsPatch>;
178
- }>, any> extends infer T_22 ? { [k_2 in keyof T_22]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
179
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
180
- id: z.ZodString;
181
- type: z.ZodLiteral<TypeName>;
182
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
183
- id: z.ZodString;
184
- type: z.ZodLiteral<TypeName>;
185
- }>, any> extends infer T_23 ? { [k in keyof T_23]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
186
- id: z.ZodString;
187
- type: z.ZodLiteral<TypeName>;
188
- }>, any>[k]; } : never, z.baseObjectInputType<{
189
- id: z.ZodString;
190
- type: z.ZodLiteral<TypeName>;
191
- }> extends infer T_24 ? { [k_1 in keyof T_24]: z.baseObjectInputType<{
192
- id: z.ZodString;
193
- type: z.ZodLiteral<TypeName>;
194
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
195
- id: z.ZodString;
196
- type: z.ZodLiteral<TypeName>;
197
- }>, any> extends infer T_25 ? { [k in keyof T_25]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
198
- id: z.ZodString;
199
- type: z.ZodLiteral<TypeName>;
200
- }>, any>[k]; } : never, z.baseObjectInputType<{
201
- id: z.ZodString;
202
- type: z.ZodLiteral<TypeName>;
203
- }> extends infer T_26 ? { [k_1 in keyof T_26]: z.baseObjectInputType<{
204
- id: z.ZodString;
205
- type: z.ZodLiteral<TypeName>;
206
- }>[k_1]; } : never>, IsNull, IsPatch>;
207
- }>, any>[k_2]; } : never, z.baseObjectInputType<{
208
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
209
- id: z.ZodString;
210
- type: z.ZodLiteral<TypeName>;
211
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
212
- id: z.ZodString;
213
- type: z.ZodLiteral<TypeName>;
214
- }>, any> extends infer T_36 ? { [k in keyof T_36]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
215
- id: z.ZodString;
216
- type: z.ZodLiteral<TypeName>;
217
- }>, any>[k]; } : never, z.baseObjectInputType<{
218
- id: z.ZodString;
219
- type: z.ZodLiteral<TypeName>;
220
- }> extends infer T_37 ? { [k_1 in keyof T_37]: z.baseObjectInputType<{
221
- id: z.ZodString;
222
- type: z.ZodLiteral<TypeName>;
223
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
224
- id: z.ZodString;
225
- type: z.ZodLiteral<TypeName>;
226
- }>, any> extends infer T_38 ? { [k in keyof T_38]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
227
- id: z.ZodString;
228
- type: z.ZodLiteral<TypeName>;
229
- }>, any>[k]; } : never, z.baseObjectInputType<{
230
- id: z.ZodString;
231
- type: z.ZodLiteral<TypeName>;
232
- }> extends infer T_39 ? { [k_1 in keyof T_39]: z.baseObjectInputType<{
233
- id: z.ZodString;
234
- type: z.ZodLiteral<TypeName>;
235
- }>[k_1]; } : never>, IsNull, IsPatch>;
236
- }> extends infer T_31 ? { [k_3 in keyof T_31]: z.baseObjectInputType<{
237
- data: import("./type").ResultSchema<z.ZodEffects<z.ZodObject<{
238
- id: z.ZodString;
239
- type: z.ZodLiteral<TypeName>;
240
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
241
- id: z.ZodString;
242
- type: z.ZodLiteral<TypeName>;
243
- }>, any> extends infer T_32 ? { [k in keyof T_32]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
244
- id: z.ZodString;
245
- type: z.ZodLiteral<TypeName>;
246
- }>, any>[k]; } : never, z.baseObjectInputType<{
247
- id: z.ZodString;
248
- type: z.ZodLiteral<TypeName>;
249
- }> extends infer T_33 ? { [k_1 in keyof T_33]: z.baseObjectInputType<{
250
- id: z.ZodString;
251
- type: z.ZodLiteral<TypeName>;
252
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
253
- id: z.ZodString;
254
- type: z.ZodLiteral<TypeName>;
255
- }>, any> extends infer T_34 ? { [k in keyof T_34]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
256
- id: z.ZodString;
257
- type: z.ZodLiteral<TypeName>;
258
- }>, any>[k]; } : never, z.baseObjectInputType<{
259
- id: z.ZodString;
260
- type: z.ZodLiteral<TypeName>;
261
- }> extends infer T_35 ? { [k_1 in keyof T_35]: z.baseObjectInputType<{
262
- id: z.ZodString;
263
- type: z.ZodLiteral<TypeName>;
264
- }>[k_1]; } : never>, IsNull, IsPatch>;
265
- }>[k_3]; } : never>, IsNull, IsPatch>;
8
+ }, z.core.$strict>, IsNull, IsPatch>;
9
+ }, z.core.$strip>, IsNull, IsPatch>;
266
10
  declare function getZodResultDataArray<TypeName extends string, Type extends TypeForId>(typeName: TypeName, primaryType: Type): z.ZodOptional<z.ZodObject<{
267
- data: z.ZodArray<z.ZodEffects<z.ZodObject<{
268
- id: z.ZodString;
269
- type: z.ZodLiteral<TypeName>;
270
- }, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
271
- id: z.ZodString;
272
- type: z.ZodLiteral<TypeName>;
273
- }>, any> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
274
- id: z.ZodString;
275
- type: z.ZodLiteral<TypeName>;
276
- }>, any>[k]; } : never, z.baseObjectInputType<{
277
- id: z.ZodString;
278
- type: z.ZodLiteral<TypeName>;
279
- }> extends infer T_1 ? { [k_1 in keyof T_1]: z.baseObjectInputType<{
280
- id: z.ZodString;
281
- type: z.ZodLiteral<TypeName>;
282
- }>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
283
- id: z.ZodString;
284
- type: z.ZodLiteral<TypeName>;
285
- }>, any> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
286
- id: z.ZodString;
287
- type: z.ZodLiteral<TypeName>;
288
- }>, any>[k]; } : never, z.baseObjectInputType<{
289
- id: z.ZodString;
290
- type: z.ZodLiteral<TypeName>;
291
- }> extends infer T_3 ? { [k_1 in keyof T_3]: z.baseObjectInputType<{
292
- id: z.ZodString;
293
- type: z.ZodLiteral<TypeName>;
294
- }>[k_1]; } : never>, "many">;
295
- }, "strip", z.ZodTypeAny, {
296
- data: (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
297
- id: z.ZodString;
298
- type: z.ZodLiteral<TypeName>;
299
- }>, any> extends infer T_4 ? { [k in keyof T_4]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
300
- id: z.ZodString;
301
- type: z.ZodLiteral<TypeName>;
302
- }>, any>[k]; } : never)[];
303
- }, {
304
- data: (z.baseObjectInputType<{
305
- id: z.ZodString;
306
- type: z.ZodLiteral<TypeName>;
307
- }> extends infer T_5 ? { [k_1 in keyof T_5]: z.baseObjectInputType<{
11
+ data: z.ZodArray<z.ZodObject<{
308
12
  id: z.ZodString;
309
13
  type: z.ZodLiteral<TypeName>;
310
- }>[k_1]; } : never)[];
311
- }>>;
14
+ }, z.core.$strict>>;
15
+ }, z.core.$strip>>;
312
16
  type IsArrayRelation<E extends object, R extends keyof RelationProperty<E>> = RelationProperty<E>[R]['isArray'];
313
17
  type IsNullableRelation<E extends object, R extends keyof RelationProperty<E>> = RelationProperty<E>[R]['nullable'];
314
18
  type EntityParamForRel<E extends object, R extends keyof RelationProperty<E>, IdKey extends string> = EntityParam<RelationProperty<E>[R]['entityClass'], IdKey>;
@@ -319,7 +23,7 @@ type ZodData<E extends object, R extends keyof RelationProperty<E>, IdKey extend
319
23
  export type ZodRelationShape<E extends object, IdKey extends string, IsPatch extends true | false = false> = {
320
24
  [K in keyof RelationProperty<E>]: ZodData<E, K, IdKey, IsPatch, IsArrayRelation<E, K>>;
321
25
  };
322
- export declare function zodRelationships<E extends object, IdKey extends string, IsPatch extends true | false = false>(entityParamMapService: EntityParamMapService<E, IdKey>, isPatch: IsPatch): z.ZodEffects<z.ZodObject<ZodRelationShape<E, IdKey, IsPatch>, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<ZodRelationShape<E, IdKey, IsPatch>>, any> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<ZodRelationShape<E, IdKey, IsPatch>>, any>[k]; } : never, z.baseObjectInputType<ZodRelationShape<E, IdKey, IsPatch>> extends infer T_1 ? { [k_1 in keyof T_1]: z.baseObjectInputType<ZodRelationShape<E, IdKey, IsPatch>>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<ZodRelationShape<E, IdKey, IsPatch>>, any> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<ZodRelationShape<E, IdKey, IsPatch>>, any>[k]; } : never, z.baseObjectInputType<ZodRelationShape<E, IdKey, IsPatch>> extends infer T_3 ? { [k_1 in keyof T_3]: z.baseObjectInputType<ZodRelationShape<E, IdKey, IsPatch>>[k_1]; } : never>;
26
+ export declare function zodRelationships<E extends object, IdKey extends string, IsPatch extends true | false = false>(entityParamMapService: EntityParamMapService<E, IdKey>, isPatch: IsPatch): z.ZodObject<ZodRelationShape<E, IdKey, IsPatch> extends infer T ? { -readonly [P in keyof T]: T[P]; } : never, z.core.$strict>;
323
27
  export type ZodRelationships<E extends object, IdKey extends string, S extends true | false = false> = ReturnType<typeof zodRelationships<E, IdKey, S>>;
324
28
  export type Relationships<E extends object, IdKey extends string, S extends true | false = false> = z.infer<ZodRelationships<E, IdKey, S>>;
325
29
  export {};
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.zodRelationships = zodRelationships;
4
- const zod_1 = require("zod");
5
4
  const json_api_nestjs_shared_1 = require("@klerick/json-api-nestjs-shared");
5
+ const zod_1 = require("zod");
6
6
  const rel_data_1 = require("./rel-data");
7
7
  const zod_utils_1 = require("../zod-utils");
8
8
  function getZodResultData(typeName, primaryType, isNull, isPatch) {
@@ -1 +1 @@
1
- {"version":3,"file":"relationships.js","sourceRoot":"","sources":["../../../../../../../../../../libs/json-api/json-api-nestjs/src/lib/modules/mixin/zod/zod-share/relationships.ts"],"names":[],"mappings":";;AA0GA,4CA6BC;AAvID,6BAAwB;AACxB,4EAA8D;AAS9D,yCAAwC;AACxC,4CAAgE;AAGhE,SAAS,gBAAgB,CAKvB,QAAkB,EAAE,WAAiB,EAAE,MAAc,EAAE,OAAgB;IACvE,MAAM,UAAU,GAAG,OAAC,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,IAAA,4BAAgB,EAAC,IAAA,qBAAU,EAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC;KAC3E,CAAC,CAAC;IACH,OAAO,IAAA,4BAAgB,EAAC,UAAU,CAAC,MAAM,CAAC,IAAA,0BAAc,GAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAkB,EAClB,WAAiB;IAEjB,OAAO,OAAC;SACL,MAAM,CAAC;QACN,IAAI,EAAE,IAAA,qBAAU,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,KAAK,EAAE;KAChD,CAAC;SACD,QAAQ,EAAE,CAAC;AAChB,CAAC;AAuED,SAAgB,gBAAgB,CAI9B,qBAAsD,EAAE,OAAgB;IACxE,MAAM,KAAK,GAAG,oCAAW,CAAC,OAAO,CAC/B,qBAAqB,CAAC,aAAa,CAAC,gBAAgB,CACrD,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;QAC5B,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,WAAW,CACxD,GAAG,CAAC,WAAkB,CACoB,CAAC;QAE7C,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAC/B,gBAAgB,CAAC,QAAQ,EACzB,gBAAgB,CAAC,iBAA8B,CACc,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAC1B,gBAAgB,CAAC,QAAQ,EACzB,gBAAgB,CAAC,iBAA8B,EAC/C,GAAG,CAAC,QAAQ,EACZ,OAAO,CACsD,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,EAAyC,CAAC,CAAC;IAE9C,OAAO,OAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAA,0BAAc,GAAE,CAAC,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"relationships.js","sourceRoot":"","sources":["../../../../../../../../../../libs/json-api/json-api-nestjs/src/lib/modules/mixin/zod/zod-share/relationships.ts"],"names":[],"mappings":";;AA0GA,4CA6BC;AAvID,4EAA8D;AAC9D,6BAAwB;AASxB,yCAAwC;AACxC,4CAAgE;AAGhE,SAAS,gBAAgB,CAKvB,QAAkB,EAAE,WAAiB,EAAE,MAAc,EAAE,OAAgB;IACvE,MAAM,UAAU,GAAG,OAAC,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,IAAA,4BAAgB,EAAC,IAAA,qBAAU,EAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC;KAC3E,CAAC,CAAC;IACH,OAAO,IAAA,4BAAgB,EAAC,UAAU,CAAC,MAAM,CAAC,IAAA,0BAAc,GAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAkB,EAClB,WAAiB;IAEjB,OAAO,OAAC;SACL,MAAM,CAAC;QACN,IAAI,EAAE,IAAA,qBAAU,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,KAAK,EAAE;KAChD,CAAC;SACD,QAAQ,EAAE,CAAC;AAChB,CAAC;AAuED,SAAgB,gBAAgB,CAI9B,qBAAsD,EAAE,OAAgB;IACxE,MAAM,KAAK,GAAG,oCAAW,CAAC,OAAO,CAC/B,qBAAqB,CAAC,aAAa,CAAC,gBAAgB,CACrD,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;QAC5B,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,WAAW,CACxD,GAAG,CAAC,WAAkB,CACoB,CAAC;QAE7C,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAC/B,gBAAgB,CAAC,QAAQ,EACzB,gBAAgB,CAAC,iBAA8B,CACc,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAC1B,gBAAgB,CAAC,QAAQ,EACzB,gBAAgB,CAAC,iBAA8B,EAC/C,GAAG,CAAC,QAAQ,EACZ,OAAO,CACsD,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,EAAyC,CAAC,CAAC;IAE9C,OAAO,OAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAA,0BAAc,GAAE,CAAC,CAAC;AAC3D,CAAC"}
@@ -7,9 +7,10 @@ export declare const uniqueArray: () => (e: string[]) => boolean;
7
7
  export declare const getValidationErrorForStrict: (props: string[], name: "Fields" | "Filter") => string;
8
8
  export declare const oneOf: (keys: string[]) => (val: any) => boolean;
9
9
  export declare const stringLongerThan: (length?: number) => (str: string) => boolean;
10
- export declare const arrayItemStringLongerThan: (length?: number) => (array: [string | null, ...(string | null)[]]) => boolean;
10
+ export declare const arrayItemStringLongerThan: (length?: number) => (array: Array<string | null>) => boolean;
11
11
  export declare const stringMustBe: (type?: TypeField) => (inputString: string | null) => boolean;
12
12
  export declare const elementOfArrayMustBe: (type?: TypeField) => (inputArray: unknown[]) => boolean;
13
13
  export declare function guardIsKeyOfObject<R>(object: R, key: string | number | symbol): asserts key is keyof R;
14
14
  export declare function getRelationProps<E extends object, IdKey extends string>(entityParamMapService: EntityParamMapService<E, IdKey>): EntityRelationProps<E, IdKey>;
15
15
  export declare function setOptionalOrNot<Schema extends ZodType, Null extends true | false, isPatch extends true | false>(schema: Schema, isNullable: Null, isPatch: isPatch): ResultSchema<Schema, Null, isPatch>;
16
+ export declare function memoize<T extends (...args: any[]) => any>(fn: T): T;