@bts-soft/core 2.1.1 → 2.1.2

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 (151) hide show
  1. package/package.json +2 -2
  2. package/dist/cache/src/index.d.ts +0 -8
  3. package/dist/cache/src/index.js +0 -25
  4. package/dist/cache/src/index.js.map +0 -1
  5. package/dist/cache/src/redis/config/redisConfig.service.d.ts +0 -4
  6. package/dist/cache/src/redis/config/redisConfig.service.js +0 -33
  7. package/dist/cache/src/redis/config/redisConfig.service.js.map +0 -1
  8. package/dist/cache/src/redis/constant/redis.constant.d.ts +0 -2
  9. package/dist/cache/src/redis/constant/redis.constant.js +0 -5
  10. package/dist/cache/src/redis/constant/redis.constant.js.map +0 -1
  11. package/dist/cache/src/redis/factory/redisClient.factory.d.ts +0 -2
  12. package/dist/cache/src/redis/factory/redisClient.factory.js +0 -47
  13. package/dist/cache/src/redis/factory/redisClient.factory.js.map +0 -1
  14. package/dist/cache/src/redis/interface/redis.interface.d.ts +0 -111
  15. package/dist/cache/src/redis/interface/redis.interface.js +0 -3
  16. package/dist/cache/src/redis/interface/redis.interface.js.map +0 -1
  17. package/dist/cache/src/redis/provider/redisService.provider.d.ts +0 -2
  18. package/dist/cache/src/redis/provider/redisService.provider.js +0 -12
  19. package/dist/cache/src/redis/provider/redisService.provider.js.map +0 -1
  20. package/dist/cache/src/redis/redis.health.d.ts +0 -7
  21. package/dist/cache/src/redis/redis.health.js +0 -38
  22. package/dist/cache/src/redis/redis.health.js.map +0 -1
  23. package/dist/cache/src/redis/redis.module.d.ts +0 -2
  24. package/dist/cache/src/redis/redis.module.js +0 -39
  25. package/dist/cache/src/redis/redis.module.js.map +0 -1
  26. package/dist/cache/src/redis/redis.service.d.ts +0 -119
  27. package/dist/cache/src/redis/redis.service.js +0 -571
  28. package/dist/cache/src/redis/redis.service.js.map +0 -1
  29. package/dist/core/src/index.d.ts +0 -5
  30. package/dist/core/src/index.js +0 -22
  31. package/dist/core/src/index.js.map +0 -1
  32. package/dist/mail-queue/src/email.module.d.ts +0 -2
  33. package/dist/mail-queue/src/email.module.js +0 -40
  34. package/dist/mail-queue/src/email.module.js.map +0 -1
  35. package/dist/mail-queue/src/index.d.ts +0 -8
  36. package/dist/mail-queue/src/index.js +0 -25
  37. package/dist/mail-queue/src/index.js.map +0 -1
  38. package/dist/mail-queue/src/interfaces/IemailStrategy.interface.d.ts +0 -3
  39. package/dist/mail-queue/src/interfaces/IemailStrategy.interface.js +0 -3
  40. package/dist/mail-queue/src/interfaces/IemailStrategy.interface.js.map +0 -1
  41. package/dist/mail-queue/src/interfaces/iEmailObserver.interface.d.ts +0 -4
  42. package/dist/mail-queue/src/interfaces/iEmailObserver.interface.js +0 -3
  43. package/dist/mail-queue/src/interfaces/iEmailObserver.interface.js.map +0 -1
  44. package/dist/mail-queue/src/observer/email.observer.d.ts +0 -5
  45. package/dist/mail-queue/src/observer/email.observer.js +0 -13
  46. package/dist/mail-queue/src/observer/email.observer.js.map +0 -1
  47. package/dist/mail-queue/src/processor/email.processing.d.ts +0 -8
  48. package/dist/mail-queue/src/processor/email.processing.js +0 -44
  49. package/dist/mail-queue/src/processor/email.processing.js.map +0 -1
  50. package/dist/mail-queue/src/provider/mailer.provider.d.ts +0 -5
  51. package/dist/mail-queue/src/provider/mailer.provider.js +0 -32
  52. package/dist/mail-queue/src/provider/mailer.provider.js.map +0 -1
  53. package/dist/mail-queue/src/sendemail.service.d.ts +0 -11
  54. package/dist/mail-queue/src/sendemail.service.js +0 -52
  55. package/dist/mail-queue/src/sendemail.service.js.map +0 -1
  56. package/dist/mail-queue/src/strategy/email.strategy.d.ts +0 -6
  57. package/dist/mail-queue/src/strategy/email.strategy.js +0 -18
  58. package/dist/mail-queue/src/strategy/email.strategy.js.map +0 -1
  59. package/dist/upload/src/index.d.ts +0 -19
  60. package/dist/upload/src/index.js +0 -36
  61. package/dist/upload/src/index.js.map +0 -1
  62. package/dist/upload/src/upload/commands/deleteImage.command.d.ts +0 -8
  63. package/dist/upload/src/upload/commands/deleteImage.command.js +0 -14
  64. package/dist/upload/src/upload/commands/deleteImage.command.js.map +0 -1
  65. package/dist/upload/src/upload/commands/deleteVideo.command.d.ts +0 -9
  66. package/dist/upload/src/upload/commands/deleteVideo.command.js +0 -15
  67. package/dist/upload/src/upload/commands/deleteVideo.command.js.map +0 -1
  68. package/dist/upload/src/upload/commands/uploadImage.command.d.ts +0 -9
  69. package/dist/upload/src/upload/commands/uploadImage.command.js +0 -15
  70. package/dist/upload/src/upload/commands/uploadImage.command.js.map +0 -1
  71. package/dist/upload/src/upload/commands/uploadVideo.command.d.ts +0 -9
  72. package/dist/upload/src/upload/commands/uploadVideo.command.js +0 -15
  73. package/dist/upload/src/upload/commands/uploadVideo.command.js.map +0 -1
  74. package/dist/upload/src/upload/config/cloudinary.d.ts +0 -6
  75. package/dist/upload/src/upload/config/cloudinary.js +0 -19
  76. package/dist/upload/src/upload/config/cloudinary.js.map +0 -1
  77. package/dist/upload/src/upload/dtos/createImage.dto.d.ts +0 -6
  78. package/dist/upload/src/upload/dtos/createImage.dto.js +0 -41
  79. package/dist/upload/src/upload/dtos/createImage.dto.js.map +0 -1
  80. package/dist/upload/src/upload/dtos/createVideo.dto.d.ts +0 -6
  81. package/dist/upload/src/upload/dtos/createVideo.dto.js +0 -40
  82. package/dist/upload/src/upload/dtos/createVideo.dto.js.map +0 -1
  83. package/dist/upload/src/upload/dtos/fileUpload.d.ts +0 -7
  84. package/dist/upload/src/upload/dtos/fileUpload.js +0 -3
  85. package/dist/upload/src/upload/dtos/fileUpload.js.map +0 -1
  86. package/dist/upload/src/upload/factories/upload.factory.d.ts +0 -4
  87. package/dist/upload/src/upload/factories/upload.factory.js +0 -11
  88. package/dist/upload/src/upload/factories/upload.factory.js.map +0 -1
  89. package/dist/upload/src/upload/graphql/main.graphql.d.ts +0 -2
  90. package/dist/upload/src/upload/graphql/main.graphql.js +0 -8
  91. package/dist/upload/src/upload/graphql/main.graphql.js.map +0 -1
  92. package/dist/upload/src/upload/interfaces/IDaeleteStrategy.interface.d.ts +0 -3
  93. package/dist/upload/src/upload/interfaces/IDaeleteStrategy.interface.js +0 -3
  94. package/dist/upload/src/upload/interfaces/IDaeleteStrategy.interface.js.map +0 -1
  95. package/dist/upload/src/upload/interfaces/IUpload.interface.d.ts +0 -3
  96. package/dist/upload/src/upload/interfaces/IUpload.interface.js +0 -3
  97. package/dist/upload/src/upload/interfaces/IUpload.interface.js.map +0 -1
  98. package/dist/upload/src/upload/interfaces/IUploadCommand.interface.d.ts +0 -3
  99. package/dist/upload/src/upload/interfaces/IUploadCommand.interface.js +0 -3
  100. package/dist/upload/src/upload/interfaces/IUploadCommand.interface.js.map +0 -1
  101. package/dist/upload/src/upload/interfaces/IUploadObserver.interface.d.ts +0 -6
  102. package/dist/upload/src/upload/interfaces/IUploadObserver.interface.js +0 -3
  103. package/dist/upload/src/upload/interfaces/IUploadObserver.interface.js.map +0 -1
  104. package/dist/upload/src/upload/observer/upload.observer.d.ts +0 -7
  105. package/dist/upload/src/upload/observer/upload.observer.js +0 -19
  106. package/dist/upload/src/upload/observer/upload.observer.js.map +0 -1
  107. package/dist/upload/src/upload/rest.controller.d.ts +0 -13
  108. package/dist/upload/src/upload/rest.controller.js +0 -94
  109. package/dist/upload/src/upload/rest.controller.js.map +0 -1
  110. package/dist/upload/src/upload/strategies/delete.strategy.d.ts +0 -6
  111. package/dist/upload/src/upload/strategies/delete.strategy.js +0 -15
  112. package/dist/upload/src/upload/strategies/delete.strategy.js.map +0 -1
  113. package/dist/upload/src/upload/strategies/upload.strategy.d.ts +0 -6
  114. package/dist/upload/src/upload/strategies/upload.strategy.js +0 -21
  115. package/dist/upload/src/upload/strategies/upload.strategy.js.map +0 -1
  116. package/dist/upload/src/upload/upload.module.d.ts +0 -2
  117. package/dist/upload/src/upload/upload.module.js +0 -21
  118. package/dist/upload/src/upload/upload.module.js.map +0 -1
  119. package/dist/upload/src/upload/upload.service.d.ts +0 -27
  120. package/dist/upload/src/upload/upload.service.js +0 -161
  121. package/dist/upload/src/upload/upload.service.js.map +0 -1
  122. package/dist/validation/src/decorators/CapitalField.decorator.d.ts +0 -1
  123. package/dist/validation/src/decorators/CapitalField.decorator.js +0 -23
  124. package/dist/validation/src/decorators/CapitalField.decorator.js.map +0 -1
  125. package/dist/validation/src/decorators/EmailField.decorator.d.ts +0 -1
  126. package/dist/validation/src/decorators/EmailField.decorator.js +0 -17
  127. package/dist/validation/src/decorators/EmailField.decorator.js.map +0 -1
  128. package/dist/validation/src/decorators/IdValidate.decorator.d.ts +0 -1
  129. package/dist/validation/src/decorators/IdValidate.decorator.js +0 -19
  130. package/dist/validation/src/decorators/IdValidate.decorator.js.map +0 -1
  131. package/dist/validation/src/decorators/PasswordField.decorator.d.ts +0 -2
  132. package/dist/validation/src/decorators/PasswordField.decorator.js +0 -20
  133. package/dist/validation/src/decorators/PasswordField.decorator.js.map +0 -1
  134. package/dist/validation/src/decorators/PhoneField.decorator.d.ts +0 -3
  135. package/dist/validation/src/decorators/PhoneField.decorator.js +0 -21
  136. package/dist/validation/src/decorators/PhoneField.decorator.js.map +0 -1
  137. package/dist/validation/src/decorators/TextField.decorator.d.ts +0 -1
  138. package/dist/validation/src/decorators/TextField.decorator.js +0 -23
  139. package/dist/validation/src/decorators/TextField.decorator.js.map +0 -1
  140. package/dist/validation/src/decorators/nationalId.decorator.d.ts +0 -2
  141. package/dist/validation/src/decorators/nationalId.decorator.js +0 -24
  142. package/dist/validation/src/decorators/nationalId.decorator.js.map +0 -1
  143. package/dist/validation/src/index.d.ts +0 -10
  144. package/dist/validation/src/index.js +0 -27
  145. package/dist/validation/src/index.js.map +0 -1
  146. package/dist/validation/src/regex/SQL_INJECTION_REGEX.d.ts +0 -1
  147. package/dist/validation/src/regex/SQL_INJECTION_REGEX.js +0 -5
  148. package/dist/validation/src/regex/SQL_INJECTION_REGEX.js.map +0 -1
  149. package/dist/validation/src/utility/WordsTransform.decorator.d.ts +0 -2
  150. package/dist/validation/src/utility/WordsTransform.decorator.js +0 -19
  151. package/dist/validation/src/utility/WordsTransform.decorator.js.map +0 -1
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CapitalTextField = CapitalTextField;
4
- const common_1 = require("@nestjs/common");
5
- const graphql_1 = require("@nestjs/graphql");
6
- const class_validator_1 = require("class-validator");
7
- const class_transformer_1 = require("class-transformer");
8
- const WordsTransform_decorator_1 = require("../utility/WordsTransform.decorator");
9
- const SQL_INJECTION_REGEX_1 = require("../regex/SQL_INJECTION_REGEX");
10
- function CapitalTextField(text, min = 1, max = 255, nullable = false, isGraphql = true) {
11
- const message = `${text} must be between ${min} and ${max} characters`;
12
- const graphQLDecorators = isGraphql
13
- ? [(0, graphql_1.Field)(() => String, { nullable })]
14
- : [];
15
- return (0, common_1.applyDecorators)(...graphQLDecorators, (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)({ message }), (0, class_validator_1.Matches)(/^[A-Za-z\s]+$/, {
16
- message: `${text} must contain only letters (no numbers or symbols)`,
17
- }), (0, class_validator_1.Length)(min, max, {
18
- message,
19
- }), (0, class_validator_1.Matches)(SQL_INJECTION_REGEX_1.SQL_INJECTION_REGEX, {
20
- message: `${text} contains forbidden SQL keywords or patterns`,
21
- }), (0, class_transformer_1.Transform)(({ value }) => (0, WordsTransform_decorator_1.CapitalizeWords)(value)));
22
- }
23
- //# sourceMappingURL=CapitalField.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CapitalField.decorator.js","sourceRoot":"","sources":["../../../../../validation/src/decorators/CapitalField.decorator.ts"],"names":[],"mappings":";;AAoBA,4CAoCC;AAxDD,2CAAiD;AACjD,6CAAwC;AACxC,qDAAwE;AACxE,yDAA8C;AAE9C,kFAAsE;AACtE,sEAAmE;AAcnE,SAAgB,gBAAgB,CAC9B,IAAY,EACZ,GAAG,GAAG,CAAC,EACP,GAAG,GAAG,GAAG,EACT,WAAoB,KAAK,EACzB,YAAqB,IAAI;IAEzB,MAAM,OAAO,GAAG,GAAG,IAAI,oBAAoB,GAAG,QAAQ,GAAG,aAAa,CAAC;IAGvE,MAAM,iBAAiB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,IAAA,wBAAe,EAEpB,GAAG,iBAAiB,EAGpB,IAAA,4BAAU,GAAE,EACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,CAAC,EACrB,IAAA,yBAAO,EAAC,eAAe,EAAE;QACvB,OAAO,EAAE,GAAG,IAAI,oDAAoD;KACrE,CAAC,EACF,IAAA,wBAAM,EAAC,GAAG,EAAE,GAAG,EAAE;QACf,OAAO;KACR,CAAC,EACF,IAAA,yBAAO,EACL,yCAAmB,EACnB;QACE,OAAO,EAAE,GAAG,IAAI,8CAA8C;KAC/D,CACF,EAED,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAA,0CAAe,EAAC,KAAK,CAAC,CAAC,CACjD,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- export declare function EmailField(nullable?: boolean, isGraphql?: boolean): PropertyDecorator;
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EmailField = EmailField;
4
- const common_1 = require("@nestjs/common");
5
- const graphql_1 = require("@nestjs/graphql");
6
- const class_transformer_1 = require("class-transformer");
7
- const class_validator_1 = require("class-validator");
8
- const SQL_INJECTION_REGEX_1 = require("../regex/SQL_INJECTION_REGEX");
9
- function EmailField(nullable = false, isGraphql = true) {
10
- const graphQLDecorators = isGraphql
11
- ? [(0, graphql_1.Field)(() => String, { nullable })]
12
- : [];
13
- return (0, common_1.applyDecorators)(...graphQLDecorators, (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsEmail)({}, { message: 'Must be a valid email address' }), (0, class_validator_1.Matches)(SQL_INJECTION_REGEX_1.SQL_INJECTION_REGEX, {
14
- message: 'Email contains forbidden SQL keywords or patterns',
15
- }), (0, class_transformer_1.Transform)(({ value }) => value?.toLowerCase()));
16
- }
17
- //# sourceMappingURL=EmailField.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EmailField.decorator.js","sourceRoot":"","sources":["../../../../../validation/src/decorators/EmailField.decorator.ts"],"names":[],"mappings":";;AAmBA,gCA8BC;AAjDD,2CAAiD;AACjD,6CAAwC;AACxC,yDAA8C;AAC9C,qDAIyB;AACzB,sEAAmE;AAWnE,SAAgB,UAAU,CACxB,WAAoB,KAAK,EACzB,YAAqB,IAAI;IAIzB,MAAM,iBAAiB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,IAAA,wBAAe,EAEpB,GAAG,iBAAiB,EAGpB,IAAA,4BAAU,GAAE,EAEZ,IAAA,yBAAO,EAAC,EAAE,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC,EAGzD,IAAA,yBAAO,EACL,yCAAmB,EACnB;QACE,OAAO,EAAE,mDAAmD;KAC7D,CACF,EAGD,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,CAC/C,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- export declare function IdField(id: string, length?: number, nullable?: boolean, isGraphql?: boolean): PropertyDecorator;
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IdField = IdField;
4
- const common_1 = require("@nestjs/common");
5
- const graphql_1 = require("@nestjs/graphql");
6
- const class_validator_1 = require("class-validator");
7
- const SQL_INJECTION_REGEX_1 = require("../regex/SQL_INJECTION_REGEX");
8
- function IdField(id, length = 26, nullable = false, isGraphql = true) {
9
- const message = `${id} ID must be exactly ${length} characters`;
10
- const graphQLDecorators = isGraphql
11
- ? [(0, graphql_1.Field)(() => String, { nullable })]
12
- : [];
13
- return (0, common_1.applyDecorators)(...graphQLDecorators, (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)({ message }), (0, class_validator_1.Length)(length, length, {
14
- message,
15
- }), (0, class_validator_1.Matches)(SQL_INJECTION_REGEX_1.SQL_INJECTION_REGEX, {
16
- message: `${id} Id contains forbidden SQL keywords or patterns`,
17
- }));
18
- }
19
- //# sourceMappingURL=IdValidate.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IdValidate.decorator.js","sourceRoot":"","sources":["../../../../../validation/src/decorators/IdValidate.decorator.ts"],"names":[],"mappings":";;AAcA,0BAmCC;AAjDD,2CAAiD;AACjD,6CAAwC;AACxC,qDAAwE;AACxE,sEAAmE;AAWnE,SAAgB,OAAO,CACrB,EAAU,EACV,SAAiB,EAAE,EACnB,WAAoB,KAAK,EACzB,YAAqB,IAAI;IAEzB,MAAM,OAAO,GAAG,GAAG,EAAE,uBAAuB,MAAM,aAAa,CAAC;IAGhE,MAAM,iBAAiB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC,EAAE,CAAC;IAGP,OAAO,IAAA,wBAAe,EAEpB,GAAG,iBAAiB,EAGpB,IAAA,4BAAU,GAAE,EACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,CAAC,EAGrB,IAAA,wBAAM,EAAC,MAAM,EAAE,MAAM,EAAE;QACrB,OAAO;KACR,CAAC,EAGF,IAAA,yBAAO,EACL,yCAAmB,EACnB;QACE,OAAO,EAAE,GAAG,EAAE,iDAAiD;KAChE,CACF,CACF,CAAC;AACJ,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function password(message?: string): PropertyDecorator;
2
- export declare function PasswordField(min?: number, max?: number, nullable?: boolean, isGraphql?: boolean): PropertyDecorator;
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.password = password;
4
- exports.PasswordField = PasswordField;
5
- const class_validator_1 = require("class-validator");
6
- const common_1 = require("@nestjs/common");
7
- const graphql_1 = require("@nestjs/graphql");
8
- const SQL_INJECTION_REGEX_1 = require("../regex/SQL_INJECTION_REGEX");
9
- function password(message = 'Password must contain uppercase, lowercase, number and special character') {
10
- return (0, class_validator_1.Matches)(/(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[\W_])/, { message });
11
- }
12
- function PasswordField(min = 8, max = 16, nullable = false, isGraphql = true) {
13
- const graphQLDecorators = isGraphql
14
- ? [(0, graphql_1.Field)(() => String, { nullable })]
15
- : [];
16
- return (0, common_1.applyDecorators)(...graphQLDecorators, (0, class_validator_1.IsString)(), (0, class_validator_1.Length)(min, max, { message: `Password must be between ${min} and ${max} characters` }), password(), (0, class_validator_1.Matches)(SQL_INJECTION_REGEX_1.SQL_INJECTION_REGEX, {
17
- message: 'Password contains forbidden SQL keywords or patterns',
18
- }));
19
- }
20
- //# sourceMappingURL=PasswordField.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PasswordField.decorator.js","sourceRoot":"","sources":["../../../../../validation/src/decorators/PasswordField.decorator.ts"],"names":[],"mappings":";;AAWA,4BAKC;AAWD,sCA4BC;AAvDD,qDAA4D;AAC5D,2CAAiD;AACjD,6CAAwC;AACxC,sEAAmE;AAQnE,SAAgB,QAAQ,CACtB,OAAO,GAAG,0EAA0E;IAGpF,OAAO,IAAA,yBAAO,EAAC,2CAA2C,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;AAC3E,CAAC;AAWD,SAAgB,aAAa,CACzB,GAAG,GAAG,CAAC,EACP,GAAG,GAAG,EAAE,EACR,WAAoB,KAAK,EACzB,YAAqB,IAAI;IAI3B,MAAM,iBAAiB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,IAAA,wBAAe,EAEpB,GAAG,iBAAiB,EAGpB,IAAA,0BAAQ,GAAE,EACV,IAAA,wBAAM,EAAC,GAAG,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,4BAA4B,GAAG,QAAQ,GAAG,aAAa,EAAE,CAAC,EACtF,QAAQ,EAAE,EAEV,IAAA,yBAAO,EACH,yCAAmB,EACnB;QACK,OAAO,EAAE,sDAAsD;KACnE,CACJ,CACF,CAAC;AACJ,CAAC"}
@@ -1,3 +0,0 @@
1
- import { CountryCode } from 'libphonenumber-js';
2
- export declare function ValidatePhoneNumber(): PropertyDecorator;
3
- export declare function PhoneField(format?: CountryCode, nullable?: boolean, isGraphql?: boolean): PropertyDecorator;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ValidatePhoneNumber = ValidatePhoneNumber;
4
- exports.PhoneField = PhoneField;
5
- const common_1 = require("@nestjs/common");
6
- const graphql_1 = require("@nestjs/graphql");
7
- const class_validator_1 = require("class-validator");
8
- const class_transformer_1 = require("class-transformer");
9
- const SQL_INJECTION_REGEX_1 = require("../regex/SQL_INJECTION_REGEX");
10
- function ValidatePhoneNumber() {
11
- return (0, class_transformer_1.Transform)(({ value }) => typeof value === 'string' ? value.replace(/[^\d+]/g, '') : value);
12
- }
13
- function PhoneField(format = 'EG', nullable = false, isGraphql = true) {
14
- const graphQLDecorators = isGraphql ? [(0, graphql_1.Field)(() => String, { nullable })] : [];
15
- return (0, common_1.applyDecorators)(...graphQLDecorators, (0, class_validator_1.IsOptional)(), (0, class_transformer_1.Transform)(({ value }) => typeof value === 'string' ? value.replace(/[^\d+]/g, '') : value), (0, class_validator_1.Matches)(SQL_INJECTION_REGEX_1.SQL_INJECTION_REGEX, {
16
- message: 'Phone contains forbidden SQL keywords or patterns',
17
- }), (0, class_validator_1.IsPhoneNumber)(format, {
18
- message: `Phone number must be a valid ${format} number`,
19
- }));
20
- }
21
- //# sourceMappingURL=PhoneField.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PhoneField.decorator.js","sourceRoot":"","sources":["../../../../../validation/src/decorators/PhoneField.decorator.ts"],"names":[],"mappings":";;AAUA,kDAIC;AAWD,gCAwBC;AAjDD,2CAAiD;AACjD,6CAAwC;AACxC,qDAAqE;AACrE,yDAA8C;AAC9C,sEAAmE;AAMnE,SAAgB,mBAAmB;IACjC,OAAO,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAC7B,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CACjE,CAAC;AACJ,CAAC;AAWD,SAAgB,UAAU,CACxB,SAAsB,IAAI,EAC1B,WAAoB,KAAK,EACzB,YAAqB,IAAI;IAEzB,MAAM,iBAAiB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE/E,OAAO,IAAA,wBAAe,EACpB,GAAG,iBAAiB,EAEpB,IAAA,4BAAU,GAAE,EAEZ,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CACtB,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CACjE,EAED,IAAA,yBAAO,EAAC,yCAAmB,EAAE;QAC3B,OAAO,EAAE,mDAAmD;KAC7D,CAAC,EAEF,IAAA,+BAAa,EAAC,MAAM,EAAE;QACpB,OAAO,EAAE,gCAAgC,MAAM,SAAS;KACzD,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- export declare function TextField(text: string, min?: number, max?: number, nullable?: boolean, isGraphql?: boolean): PropertyDecorator;
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TextField = TextField;
4
- const common_1 = require("@nestjs/common");
5
- const graphql_1 = require("@nestjs/graphql");
6
- const class_validator_1 = require("class-validator");
7
- const class_transformer_1 = require("class-transformer");
8
- const WordsTransform_decorator_1 = require("../utility/WordsTransform.decorator");
9
- const SQL_INJECTION_REGEX_1 = require("../regex/SQL_INJECTION_REGEX");
10
- function TextField(text, min = 1, max = 255, nullable = false, isGraphql = true) {
11
- const message = `${text} must be between ${min} and ${max} characters`;
12
- const graphQLDecorators = isGraphql
13
- ? [(0, graphql_1.Field)(() => String, { nullable })]
14
- : [];
15
- return (0, common_1.applyDecorators)(...graphQLDecorators, (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsString)({ message }), (0, class_validator_1.Matches)(/^[A-Za-z0-9\s.,-]+$/, {
16
- message: `${text} must contain only letters, numbers, spaces, or basic symbols (.,-)`,
17
- }), (0, class_validator_1.Length)(min, max, {
18
- message,
19
- }), (0, class_validator_1.Matches)(SQL_INJECTION_REGEX_1.SQL_INJECTION_REGEX, {
20
- message: `${text} contains forbidden SQL keywords or patterns`,
21
- }), (0, class_transformer_1.Transform)(({ value }) => (0, WordsTransform_decorator_1.LowwerWords)(value)));
22
- }
23
- //# sourceMappingURL=TextField.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextField.decorator.js","sourceRoot":"","sources":["../../../../../validation/src/decorators/TextField.decorator.ts"],"names":[],"mappings":";;AAkBA,8BAoCC;AAtDD,2CAAiD;AACjD,6CAAwC;AACxC,qDAAwE;AACxE,yDAA8C;AAE9C,kFAAkE;AAClE,sEAAmE;AAYnE,SAAgB,SAAS,CACvB,IAAY,EACZ,GAAG,GAAG,CAAC,EACP,GAAG,GAAG,GAAG,EACT,WAAoB,KAAK,EACzB,YAAqB,IAAI;IAEzB,MAAM,OAAO,GAAG,GAAG,IAAI,oBAAoB,GAAG,QAAQ,GAAG,aAAa,CAAC;IAGvE,MAAM,iBAAiB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,IAAA,wBAAe,EAEpB,GAAG,iBAAiB,EAGpB,IAAA,4BAAU,GAAE,EACZ,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,CAAC,EACrB,IAAA,yBAAO,EAAC,qBAAqB,EAAE;QAC7B,OAAO,EAAE,GAAG,IAAI,qEAAqE;KACtF,CAAC,EACF,IAAA,wBAAM,EAAC,GAAG,EAAE,GAAG,EAAE;QACf,OAAO;KACR,CAAC,EACF,IAAA,yBAAO,EACL,yCAAmB,EACnB;QACE,OAAO,EAAE,GAAG,IAAI,8CAA8C;KAC/D,CACF,EAED,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,IAAA,sCAAW,EAAC,KAAK,CAAC,CAAC,CAC7C,CAAC;AACJ,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function ValidateNationalId(): PropertyDecorator;
2
- export declare function NationalIdField(nullable?: boolean, isGraphql?: boolean): PropertyDecorator;
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ValidateNationalId = ValidateNationalId;
4
- exports.NationalIdField = NationalIdField;
5
- const common_1 = require("@nestjs/common");
6
- const graphql_1 = require("@nestjs/graphql");
7
- const class_validator_1 = require("class-validator");
8
- const class_transformer_1 = require("class-transformer");
9
- function ValidateNationalId() {
10
- return (0, class_transformer_1.Transform)(({ value }) => typeof value === 'string' ? value.replace(/\D/g, '') : value);
11
- }
12
- function NationalIdField(nullable = false, isGraphql = true) {
13
- const graphQLDecorators = isGraphql
14
- ? [(0, graphql_1.Field)(() => String, { nullable })]
15
- : [];
16
- return (0, common_1.applyDecorators)(...graphQLDecorators, (0, class_validator_1.IsOptional)(), (0, class_transformer_1.Transform)(({ value }) => typeof value === 'string' ? value.replace(/\D/g, '') : value), (0, class_validator_1.Matches)(/^\d{14}$/, {
17
- message: 'National ID must contain exactly 14 digits',
18
- }), (0, class_validator_1.Matches)(/^[23]\d{13}$/, {
19
- message: 'National ID must start with 2 or 3',
20
- }), (0, class_validator_1.Length)(14, 14, {
21
- message: 'National ID must be exactly 14 digits',
22
- }));
23
- }
24
- //# sourceMappingURL=nationalId.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nationalId.decorator.js","sourceRoot":"","sources":["../../../../../validation/src/decorators/nationalId.decorator.ts"],"names":[],"mappings":";;AAQA,gDAIC;AASD,0CAgCC;AArDD,2CAAiD;AACjD,6CAAwC;AACxC,qDAA8D;AAC9D,yDAA8C;AAK9C,SAAgB,kBAAkB;IAChC,OAAO,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAC7B,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAC7D,CAAC;AACJ,CAAC;AASD,SAAgB,eAAe,CAC3B,WAAoB,KAAK,EACzB,YAAqB,IAAI;IAI3B,MAAM,iBAAiB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,IAAA,wBAAe,EAEpB,GAAG,iBAAiB,EAGpB,IAAA,4BAAU,GAAE,EAEZ,IAAA,6BAAS,EAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAGtF,IAAA,yBAAO,EAAC,UAAU,EAAE;QAClB,OAAO,EAAE,4CAA4C;KACtD,CAAC,EAEF,IAAA,yBAAO,EAAC,cAAc,EAAE;QACtB,OAAO,EAAE,oCAAoC;KAC9C,CAAC,EAEF,IAAA,wBAAM,EAAC,EAAE,EAAE,EAAE,EAAE;QACb,OAAO,EAAE,uCAAuC;KACjD,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -1,10 +0,0 @@
1
- export * from './decorators/IdValidate.decorator';
2
- export * from './decorators/TextField.decorator';
3
- export * from './decorators/CapitalField.decorator';
4
- export * from './decorators/EmailField.decorator';
5
- export * from './decorators/PasswordField.decorator';
6
- export * from './decorators/PhoneField.decorator';
7
- export * from './decorators/nationalId.decorator';
8
- export * from './utility/WordsTransform.decorator';
9
- export * from './decorators/nationalId.decorator';
10
- export * from './decorators/PhoneField.decorator';
@@ -1,27 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./decorators/IdValidate.decorator"), exports);
18
- __exportStar(require("./decorators/TextField.decorator"), exports);
19
- __exportStar(require("./decorators/CapitalField.decorator"), exports);
20
- __exportStar(require("./decorators/EmailField.decorator"), exports);
21
- __exportStar(require("./decorators/PasswordField.decorator"), exports);
22
- __exportStar(require("./decorators/PhoneField.decorator"), exports);
23
- __exportStar(require("./decorators/nationalId.decorator"), exports);
24
- __exportStar(require("./utility/WordsTransform.decorator"), exports);
25
- __exportStar(require("./decorators/nationalId.decorator"), exports);
26
- __exportStar(require("./decorators/PhoneField.decorator"), exports);
27
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../validation/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,oEAAkD;AAClD,mEAAiD;AACjD,sEAAoD;AACpD,oEAAkD;AAClD,uEAAqD;AACrD,oEAAkD;AAClD,oEAAkD;AAIlD,qEAAmD;AAGnD,oEAAkD;AAClD,oEAAkD"}
@@ -1 +0,0 @@
1
- export declare const SQL_INJECTION_REGEX: RegExp;
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SQL_INJECTION_REGEX = void 0;
4
- exports.SQL_INJECTION_REGEX = /^(?!.*(\b(SELECT|INSERT|DELETE|UPDATE|DROP|UNION|EXEC|TRUNCATE|ALTER|CREATE)\b|--|;)).*$/i;
5
- //# sourceMappingURL=SQL_INJECTION_REGEX.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SQL_INJECTION_REGEX.js","sourceRoot":"","sources":["../../../../../validation/src/regex/SQL_INJECTION_REGEX.ts"],"names":[],"mappings":";;;AAAa,QAAA,mBAAmB,GAAG,2FAA2F,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function LowwerWords(value: string): string;
2
- export declare function CapitalizeWords(value: string): string;
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LowwerWords = LowwerWords;
4
- exports.CapitalizeWords = CapitalizeWords;
5
- function LowwerWords(value) {
6
- if (!value || typeof value !== 'string')
7
- return value;
8
- return value.toLowerCase();
9
- }
10
- function CapitalizeWords(value) {
11
- if (!value || typeof value !== 'string')
12
- return value;
13
- return value
14
- .toLowerCase()
15
- .split(' ')
16
- .map((word) => word.length > 0 ? word.charAt(0).toUpperCase() + word.slice(1) : '')
17
- .join(' ');
18
- }
19
- //# sourceMappingURL=WordsTransform.decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WordsTransform.decorator.js","sourceRoot":"","sources":["../../../../../validation/src/utility/WordsTransform.decorator.ts"],"names":[],"mappings":";;AAKA,kCAIC;AAOD,0CAUC;AArBD,SAAgB,WAAW,CAAC,KAAa;IACvC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAEtD,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;AAC7B,CAAC;AAOD,SAAgB,eAAe,CAAC,KAAa;IAC3C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAEtD,OAAO,KAAK;SACT,WAAW,EAAE;SACb,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACZ,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CACpE;SACA,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}