@lenne.tech/nest-server 8.6.11 → 8.6.14

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 (69) hide show
  1. package/dist/core/common/helpers/db.helper.d.ts +1 -1
  2. package/dist/core/common/helpers/db.helper.js +6 -2
  3. package/dist/core/common/helpers/db.helper.js.map +1 -1
  4. package/dist/core/common/interfaces/server-options.interface.d.ts +1 -1
  5. package/dist/core/common/interfaces/service-options.interface.d.ts +1 -1
  6. package/dist/core/common/types/field-selection.type.d.ts +1 -1
  7. package/dist/core/common/types/maybe-promise.type.d.ts +1 -0
  8. package/dist/core/common/types/maybe-promise.type.js +3 -0
  9. package/dist/core/common/types/maybe-promise.type.js.map +1 -0
  10. package/dist/core/modules/auth/core-auth.model.js.map +1 -1
  11. package/dist/core/modules/file/{file-info.output.d.ts → core-file-info.model.d.ts} +4 -3
  12. package/dist/core/modules/file/{file-info.output.js → core-file-info.model.js} +35 -20
  13. package/dist/core/modules/file/core-file-info.model.js.map +1 -0
  14. package/dist/core/modules/file/core-file.controller.d.ts +7 -0
  15. package/dist/core/modules/file/core-file.controller.js +52 -0
  16. package/dist/core/modules/file/core-file.controller.js.map +1 -0
  17. package/dist/core/modules/file/core-file.resolver.d.ts +10 -0
  18. package/dist/core/modules/file/core-file.resolver.js +70 -0
  19. package/dist/core/modules/file/core-file.resolver.js.map +1 -0
  20. package/dist/core/modules/file/core-file.service.d.ts +20 -15
  21. package/dist/core/modules/file/core-file.service.js +58 -22
  22. package/dist/core/modules/file/core-file.service.js.map +1 -1
  23. package/dist/core/modules/user/core-user.model.js.map +1 -1
  24. package/dist/index.d.ts +4 -1
  25. package/dist/index.js +4 -1
  26. package/dist/index.js.map +1 -1
  27. package/dist/server/common/models/persistence.model.js.map +1 -1
  28. package/dist/server/modules/auth/auth.model.js +2 -1
  29. package/dist/server/modules/auth/auth.model.js.map +1 -1
  30. package/dist/server/modules/file/file-info.model.d.ts +26 -0
  31. package/dist/server/modules/file/file-info.model.js +21 -0
  32. package/dist/server/modules/file/file-info.model.js.map +1 -0
  33. package/dist/server/modules/file/file.controller.d.ts +2 -3
  34. package/dist/server/modules/file/file.controller.js +4 -26
  35. package/dist/server/modules/file/file.controller.js.map +1 -1
  36. package/dist/server/modules/file/file.module.d.ts +2 -0
  37. package/dist/server/modules/file/file.module.js +27 -0
  38. package/dist/server/modules/file/file.module.js.map +1 -0
  39. package/dist/server/modules/file/file.resolver.d.ts +3 -4
  40. package/dist/server/modules/file/file.resolver.js +4 -5
  41. package/dist/server/modules/file/file.resolver.js.map +1 -1
  42. package/dist/server/modules/file/file.service.js +1 -1
  43. package/dist/server/modules/file/file.service.js.map +1 -1
  44. package/dist/server/server.module.js +4 -6
  45. package/dist/server/server.module.js.map +1 -1
  46. package/dist/tsconfig.build.tsbuildinfo +1 -1
  47. package/package.json +1 -1
  48. package/src/core/common/helpers/db.helper.ts +7 -3
  49. package/src/core/common/interfaces/server-options.interface.ts +1 -1
  50. package/src/core/common/interfaces/service-options.interface.ts +1 -1
  51. package/src/core/common/types/field-selection.type.ts +6 -1
  52. package/src/core/common/types/maybe-promise.type.ts +4 -0
  53. package/src/core/modules/auth/core-auth.model.ts +2 -1
  54. package/src/core/modules/file/core-file-info.model.ts +40 -0
  55. package/src/core/modules/file/core-file.controller.ts +34 -0
  56. package/src/core/modules/file/core-file.resolver.ts +56 -0
  57. package/src/core/modules/file/core-file.service.ts +80 -27
  58. package/src/core/modules/user/core-user.model.ts +2 -1
  59. package/src/index.ts +4 -1
  60. package/src/server/common/models/persistence.model.ts +2 -1
  61. package/src/server/modules/auth/auth.model.ts +2 -2
  62. package/src/server/modules/file/file-info.model.ts +15 -0
  63. package/src/server/modules/file/file.controller.ts +7 -36
  64. package/src/server/modules/file/file.module.ts +17 -0
  65. package/src/server/modules/file/file.resolver.ts +1 -4
  66. package/src/server/modules/file/file.service.ts +4 -1
  67. package/src/server/server.module.ts +6 -8
  68. package/dist/core/modules/file/file-info.output.js.map +0 -1
  69. package/src/core/modules/file/file-info.output.ts +0 -26
@@ -32,6 +32,6 @@ export declare function objectIdsToStrings(element: any, prepared?: WeakMap<any,
32
32
  export declare function removeUnresolvedReferences<T = any>(populated: T, populatedOptions: string | PopulateOptions | PopulateOptions[] | (string | PopulateOptions)[], ignoreFirst?: boolean): T;
33
33
  export declare function popAndMap<T extends CoreModel>(queryOrDocument: Query<any, any> | Document | Document[], populate: FieldSelection, modelClass: new (...args: any[]) => T, mongooseModel?: Model<any>): Promise<T | T[]>;
34
34
  export declare function removeIds(source: any[], ids: StringOrObjectId | StringOrObjectId[]): any[];
35
- export declare function setPopulates<T = Query<any, any> | Document>(queryOrDocument: T, populateOptions: PopulateOptions[], modelSchemaPaths?: {
35
+ export declare function setPopulates<T = Query<any, any> | Document>(queryOrDocument: T, populateOptions: string[] | PopulateOptions[] | (string | PopulateOptions)[], modelSchemaPaths?: {
36
36
  [key: string]: SchemaType;
37
37
  }): Promise<T>;
@@ -349,8 +349,12 @@ async function setPopulates(queryOrDocument, populateOptions, modelSchemaPaths)
349
349
  return queryOrDocument;
350
350
  }
351
351
  if (modelSchemaPaths) {
352
- populateOptions = populateOptions.filter((options) => {
353
- return Object.keys(modelSchemaPaths).includes(options.path);
352
+ populateOptions = populateOptions.filter((option) => {
353
+ let key = option;
354
+ if (option?.path) {
355
+ key = option?.path;
356
+ }
357
+ return Object.keys(modelSchemaPaths).includes(key);
354
358
  });
355
359
  }
356
360
  if (queryOrDocument instanceof mongoose_1.Query) {
@@ -1 +1 @@
1
- {"version":3,"file":"db.helper.js","sourceRoot":"","sources":["../../../../src/core/common/helpers/db.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.helper.js","sourceRoot":"","sources":["../../../../src/core/common/helpers/db.helper.ts"],"names":[],"mappings":";;;AACA,4BAA4B;AAC5B,uCAAsF;AAuBtF,SAAgB,MAAM,CACpB,MAAW,EACX,GAA0C,EAC1C,UAAgD,MAAM,EACtD,OAA8B;IAG9B,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,IAAI;QACZ,GAAG,OAAO;KACX,CAAC;IAGF,IAAI,MAAM,GAAG,MAAa,CAAC;IAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC1B,MAAM,GAAG,EAAE,CAAC;KACb;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACvB,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;KACb;IAGD,IAAI,MAAM,CAAC,MAAM,EAAE;QACjB,SAAS,CAAC,GAAG,EAAE,MAAa,CAAC,CAAC;KAC/B;IAGD,IAAI,GAAG,CAAC,MAAM,EAAE;QAEd,IACE,MAAM,CAAC,MAAM;YACb,OAAO,KAAK,MAAM;YAClB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,gBAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,YAAY,gBAAK,CAAC,QAAQ,CAAC,CAAC;gBACxE,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,EAC7D;YACA,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,gBAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAC9F,MAAM,CAAC,IAAI,CAAC,GAAI,SAAiB,CAAC,CAAC;SACpC;aAGI;YACH,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;SACrB;KACF;IAGD,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAiB,CAAC,EAAE;QACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SACrF;KACF;IAGD,OAAO,MAAM,CAAC;AAChB,CAAC;AAtDD,wBAsDC;AAKD,SAAgB,QAAQ,CAAC,GAAG,GAAc;IACxC,IAAI,CAAC,GAAG,EAAE;QACR,OAAO,KAAK,CAAC;KACd;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,KAAK,CAAC;KACd;IACD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC;AACzD,CAAC;AATD,4BASC;AAWD,SAAgB,cAAc,CAC5B,QAAiB,EACjB,GAAgB,EAChB,OAA6B;IAE7B,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE;QACrB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC5B,QAAQ,GAAG,CAAC,QAAQ,CAAC,CAAC;KACvB;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACvB,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;KACb;IAED,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,eAAe,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC/C,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE;QACpB,IAAI,eAAe,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE;YAC9C,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACjB;KACF;IAED,IAAI,OAAO,EAAE;QACX,MAAM,GAAG,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;KAC7E;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC;AA9BD,wCA8BC;AAKD,SAAgB,gBAAgB,CAAC,GAAY,EAAE,KAAc;IAE3D,IAAI,CAAC,GAAG,EAAE;QACR,OAAO,EAAE,CAAC;KACX;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACvB,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;KACb;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACzB,OAAO,EAAE,CAAC;KACX;IAGD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QACjB,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YAC/B,IAAI,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE;gBACzB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACrB;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAGH,OAAO,OAAO,CAAC;AACjB,CAAC;AAxBD,4CAwBC;AAOD,SAAgB,YAAY,CAC1B,QAAW,EACX,OAA8C;IAG9C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG;QACvB,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,KAAK;QACb,GAAG,OAAO;KACX,CAAC;IAGF,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,QAAe,CAAC;KACxB;IAGD,IAAI,GAAG,GAAG,EAAE,CAAC;IAGb,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC5B,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAC;KAC9B;IAGD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B,IAAI,IAAI,EAAE;gBACR,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;aACnD;SACF;aAAM;YACL,MAAM,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YAChC,IAAI,EAAE,EAAE;gBACN,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACd;SACF;KACF;IAGD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACpC,CAAC;AAxCD,oCAwCC;AAOD,SAAgB,YAAY,CAAwB,GAAM;IACxD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACtB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,gBAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KAC7D;IACD,OAAO,IAAI,gBAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9C,CAAC;AALD,oCAKC;AAKD,SAAgB,iBAAiB,CAC/B,GAAgB,EAChB,KAAU,EACV,UAGI,EAAE;IAGN,MAAM,MAAM,GAAG;QAEb,MAAM,EAAE,KAAK;QAGb,MAAM,EAAE,KAAK;QAGb,GAAG,OAAO;KACX,CAAC;IAGF,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE;QACpB,OAAO,EAAE,CAAC;KACX;IAGD,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACxB,IAAI,MAAM,CAAC,MAAM,EAAE;YACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1C;aAAM;YACL,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;SAC7B;IACH,CAAC,CAAC,CAAC;IAGH,IAAI,MAAM,CAAC,MAAM,EAAE;QACjB,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;QAC1D,CAAC,CAAC,CAAC;KACJ;IAGD,OAAO,QAAQ,CAAC;AAClB,CAAC;AA7CD,8CA6CC;AAKD,SAAgB,kBAAkB,CAAC,IAAwB,EAAE,kBAA2B;IACtF,MAAM,MAAM,GAAG,EAAE,CAAC;IAElB,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE;QAC7B,OAAO,MAAM,CAAC;KACf;IAED,IAAI,kBAAkB,EAAE,MAAM,EAAE;QAC9B,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;YACvC,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9C,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;YACtC,IAAI,SAAS,EAAE,IAAI,EAAE,KAAK,KAAK,aAAa,IAAI,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE;gBAC3F,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;oBACnB,OAAO,+BAA+B,CAAC,SAAS,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;iBAC3E;qBAAM;oBACL,IAAI,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,UAAU,CAAC;oBACnD,GAAG;wBACD,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE;4BACvB,MAAM;yBACP;wBACD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;wBAC/B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE;4BAClC,IAAK,SAAuB,EAAE,IAAI,EAAE,KAAK,KAAK,MAAM,EAAE;gCACpD,UAAU,GAAI,SAAuB,EAAE,YAAY,EAAE,UAAU,CAAC;gCAChE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;oCACnB,OAAO,+BAA+B,CAAC,UAAU,CAAC,CAAC;iCACpD;gCACD,MAAM;6BACP;yBACF;qBACF,QAAQ,OAAO,CAAC,MAAM,EAAE;iBAC1B;aACF;SACF;KACF;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AApCD,gDAoCC;AAKD,SAAgB,+BAA+B,CAAC,cAAwC;IACtF,MAAM,eAAe,GAAG,EAAE,CAAC;IAE3B,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;QAC7C,OAAO,eAAe,CAAC;KACxB;IAED,KAAK,MAAM,IAAI,IAAI,cAA6B,EAAE;QAEhD,MAAM,MAAM,GAAoB;YAC9B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;SACtB,CAAC;QAGF,IAAI,IAAI,CAAC,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE;YACzC,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,UAAyB,EAAE;gBAEnE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE;oBAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;iBACrG;qBAGI;oBACH,MAAM,aAAa,GAAG,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;oBACnE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ;wBAC/B,CAAC,CAAE,MAAM,CAAC,QAA8B,CAAC,MAAM,CAAC,aAAa,CAAC;wBAC9D,CAAC,CAAC,aAAa,CAAC;iBACnB;aACF;SACF;QAGD,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE;YACpC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAC9B;KACF;IAED,OAAO,eAAe,CAAC;AACzB,CAAC;AAtCD,0EAsCC;AAMD,SAAgB,YAAY,CAAU,GAAM;IAC1C,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AACzC,CAAC;AAFD,oCAEC;AAKD,SAAgB,kBAAkB,CAAC,OAAY,EAAE,WAA8B,IAAI,OAAO,EAAE;IAE1F,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,OAAO,CAAC;KAChB;IAGD,IAAI,OAAO,YAAY,gBAAK,CAAC,QAAQ,EAAE;QACrC,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC;KAC9B;IAGD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;KAC5D;IAGD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAE/B,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACzB,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;SAC9B;QACD,MAAM,cAAc,GAAG,OAAO,CAAC;QAC/B,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACtC,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAChD,cAAc,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;SACzD;KACF;IAGD,OAAO,OAAO,CAAC;AACjB,CAAC;AA/BD,gDA+BC;AAKD,SAAgB,0BAA0B,CACxC,SAAY,EACZ,gBAA6F,EAC7F,WAAW,GAAG,IAAI;IAGlB,IAAI,CAAC,SAAS,IAAI,CAAC,gBAAgB,EAAE;QACnC,OAAO,SAAS,CAAC;KAClB;IAGD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC5B,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC;QACjF,OAAO,SAAS,CAAC;KAClB;IAGD,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;QAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;YACnC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAC9B,0BAA0B,CAAC,SAAS,EAAE,WAAW,IAAI,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CACvG,CAAC;YACF,OAAO,SAAS,CAAC;SAClB;QAGD,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE;YACxC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC,gBAAgB,CAAC,YAAY,gBAAK,CAAC,QAAQ,EAAE;gBACtG,SAAS,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;aACpC;YACD,OAAO,SAAS,CAAC;SAClB;QAGD,IAAI,gBAAgB,CAAC,IAAI,EAAE;YACzB,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC;YAClC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,YAAY,gBAAK,CAAC,QAAQ,EAAE;gBAC5E,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;aACvB;iBAAM,IAAI,gBAAgB,CAAC,QAAQ,EAAE;gBACpC,0BAA0B,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;aAC9E;SACF;KACF;IAGD,OAAO,SAAS,CAAC;AACnB,CAAC;AA/CD,gEA+CC;AAKM,KAAK,UAAU,SAAS,CAC7B,eAAwD,EACxD,QAAwB,EACxB,UAAqC,EACrC,aAA0B;IAE1B,IAAI,MAAM,CAAC;IACX,IAAI,eAAe,GAAsB,EAAE,CAAC;IAC5C,IAAI,QAAQ,EAAE;QACZ,IACE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YACvB,CAAC,OAAQ,QAAqB,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAQ,QAA8B,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,QAAQ,CAAC,EAC/G;YACA,eAAe,GAAG,QAA6B,CAAC;SACjD;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAQ,QAA4B,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,QAAQ,EAAE;YAChG,eAAe,GAAG,+BAA+B,CAAC,QAA2B,CAAC,CAAC;SAChF;aAAM,IAAK,QAA4B,CAAC,IAAI,EAAE;YAC7C,eAAe,GAAG,kBAAkB,CAAE,QAA4B,CAAC,IAAI,EAAG,QAA4B,CAAC,MAAM,CAAC,CAAC;SAChH;aAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAK,QAA4B,CAAC,IAAI,EAAE;YAC7E,eAAe,GAAG,CAAC,QAA2B,CAAC,CAAC;SACjD;KACF;IACD,IAAI,eAAe,YAAY,gBAAK,EAAE;QAEpC,MAAM,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5F,IAAI,MAAM,YAAY,gBAAK,EAAE;YAC3B,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;SAC9B;QAGD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAE,UAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;SAC9D;aAAM;YACL,MAAM,GAAI,UAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SAC1C;KACF;SAAM;QAEL,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;YAClC,MAAM,YAAY,CAAC,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACnF,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAE,UAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;SACvE;aAGI;YACH,MAAM,YAAY,CAAC,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACnF,MAAM,GAAI,UAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;SACnD;KACF;IAGD,OAAO,0BAA0B,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;AAC7D,CAAC;AAnDD,8BAmDC;AAOD,SAAgB,SAAS,CAAC,MAAa,EAAE,GAA0C;IAEjF,IAAI,CAAC,GAAG,EAAE;QACR,OAAO,MAAM,CAAC;KACf;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QACvB,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;KACb;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC1B,OAAO,EAAE,CAAC;KACX;IAGD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;QACjB,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE;YACnB,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;SAC5B;IACH,CAAC,CAAC,CAAC;IAGH,OAAO,MAAM,CAAC;AAChB,CAAC;AAvBD,8BAuBC;AAKM,KAAK,UAAU,YAAY,CAChC,eAAkB,EAClB,eAA4E,EAC5E,gBAAgD;IAGhD,IAAI,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC,eAAe,EAAE;QAChD,OAAO,eAAe,CAAC;KACxB;IAGD,IAAI,gBAAgB,EAAE;QACpB,eAAe,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,MAAgC,EAAE,EAAE;YAC5E,IAAI,GAAG,GAAW,MAAgB,CAAC;YACnC,IAAK,MAA0B,EAAE,IAAI,EAAE;gBACrC,GAAG,GAAI,MAA0B,EAAE,IAAI,CAAC;aACzC;YACD,OAAO,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;KACJ;IAGD,IAAI,eAAe,YAAY,gBAAK,EAAE;QACpC,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE;YACrC,eAAe,GAAI,eAAuB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SAC9D;KACF;SAII,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE;QACvC,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACjF,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;KAC7B;SAEI;QACH,MAAO,eAAuB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;KAC1D;IAGD,OAAO,eAAe,CAAC;AACzB,CAAC;AA1CD,oCA0CC;AAQD,SAAS,WAAW,CAAC,OAAY;IAE/B,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,OAAO,CAAC;KAChB;IAGD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO,OAAO,CAAC;KAChB;IAGD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,IAAI,OAAO,YAAY,gBAAK,CAAC,QAAQ,EAAE;YACrC,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC;SAC9B;QAED,IAAI,OAAO,CAAC,EAAE,EAAE;YACd,OAAO,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAChC;aAAM,IAAI,OAAO,CAAC,GAAG,EAAE;YACtB,OAAO,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SACjC;KACF;IAGD,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;AAC5B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { ApolloDriverConfig } from '@nestjs/apollo';
2
2
  import { GqlModuleAsyncOptions } from '@nestjs/graphql';
3
3
  import { JwtModuleOptions } from '@nestjs/jwt';
4
- import { MongooseModuleOptions } from '@nestjs/mongoose/dist/interfaces/mongoose-options.interface';
4
+ import { MongooseModuleOptions } from '@nestjs/mongoose';
5
5
  import { ServeStaticOptions } from '@nestjs/platform-express/interfaces/serve-static-options.interface';
6
6
  import * as SMTPTransport from 'nodemailer/lib/smtp-transport';
7
7
  import { MailjetOptions } from './mailjet-options.interface';
@@ -14,7 +14,7 @@ export interface ServiceOptions {
14
14
  force?: boolean;
15
15
  inputType?: new (...params: any[]) => any;
16
16
  outputType?: new (...params: any[]) => any;
17
- populate?: PopulateOptions | (PopulateOptions | string)[];
17
+ populate?: string | PopulateOptions | (PopulateOptions | string)[];
18
18
  processFieldSelection?: {
19
19
  model?: new (...args: any[]) => any;
20
20
  dbModel?: Model<any>;
@@ -1,4 +1,4 @@
1
1
  import { SelectionNode } from 'graphql';
2
2
  import { PopulateOptions } from 'mongoose';
3
3
  import { ResolveSelector } from '../interfaces/resolve-selector.interface';
4
- export declare type FieldSelection = PopulateOptions | (PopulateOptions | string)[] | SelectionNode[] | ResolveSelector;
4
+ export declare type FieldSelection = string | PopulateOptions | (PopulateOptions | string)[] | SelectionNode[] | ResolveSelector;
@@ -0,0 +1 @@
1
+ export declare type MaybePromise<T = any> = T | Promise<T>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=maybe-promise.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maybe-promise.type.js","sourceRoot":"","sources":["../../../../src/core/common/types/maybe-promise.type.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"core-auth.model.js","sourceRoot":"","sources":["../../../../src/core/modules/auth/core-auth.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAoD;AACpD,2EAAiE;AAMjE,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,4BAAS;IAA5C;;QASE,UAAK,GAAW,SAAS,CAAC;IAuB5B,CAAC;IAdC,IAAI;QACF,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;IAKD,GAAG,CAAC,KAAK;QACP,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEjB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAvBC;IADC,IAAA,eAAK,EAAC,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;;4CAC3B;AATf,aAAa;IADzB,IAAA,oBAAU,EAAC,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;GAC7C,aAAa,CAgCzB;AAhCY,sCAAa"}
1
+ {"version":3,"file":"core-auth.model.js","sourceRoot":"","sources":["../../../../src/core/modules/auth/core-auth.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAoD;AACpD,2EAAiE;AAMjE,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,4BAAS;IAA5C;;QASE,UAAK,GAAW,SAAS,CAAC;IAwB5B,CAAC;IAfC,IAAI;QACF,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;IAKD,GAAG,CAAC,KAAK;QACP,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAGjB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAxBC;IADC,IAAA,eAAK,EAAC,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;;4CAC3B;AATf,aAAa;IADzB,IAAA,oBAAU,EAAC,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;GAC7C,aAAa,CAiCzB;AAjCY,sCAAa"}
@@ -1,10 +1,11 @@
1
1
  import { Types } from 'mongoose';
2
2
  import { CoreModel } from '../../common/models/core-model.model';
3
- export declare class FileInfo extends CoreModel {
3
+ export declare class CoreFileInfo extends CoreModel {
4
4
  _id: Types.ObjectId;
5
5
  id: string;
6
- length: number;
7
6
  chunkSize: number;
8
- filename?: string;
9
7
  contentType?: string;
8
+ filename?: string;
9
+ length: number;
10
+ uploadDate: Date;
10
11
  }
@@ -9,41 +9,56 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.FileInfo = void 0;
12
+ exports.CoreFileInfo = void 0;
13
13
  const graphql_1 = require("@nestjs/graphql");
14
+ const mongoose_1 = require("@nestjs/mongoose");
14
15
  const core_model_model_1 = require("../../common/models/core-model.model");
15
- let FileInfo = class FileInfo extends core_model_model_1.CoreModel {
16
+ let CoreFileInfo = class CoreFileInfo extends core_model_model_1.CoreModel {
16
17
  constructor() {
17
18
  super(...arguments);
18
19
  this.id = undefined;
19
- this.length = undefined;
20
20
  this.chunkSize = undefined;
21
- this.filename = undefined;
22
21
  this.contentType = undefined;
22
+ this.filename = undefined;
23
+ this.length = undefined;
24
+ this.uploadDate = undefined;
23
25
  }
24
26
  };
25
27
  __decorate([
26
- (0, graphql_1.Field)(() => String, { description: 'ID of the file in bytes' }),
28
+ (0, graphql_1.Field)(() => String, { description: 'ID of the file' }),
27
29
  __metadata("design:type", String)
28
- ], FileInfo.prototype, "id", void 0);
30
+ ], CoreFileInfo.prototype, "id", void 0);
29
31
  __decorate([
30
- (0, graphql_1.Field)(() => Number, { description: 'Length of the file in bytes', nullable: true }),
32
+ (0, graphql_1.Field)(() => Number, {
33
+ description: 'The size of each chunk in bytes. GridFS divides the document into chunks of size chunkSize, ' +
34
+ 'except for the last, which is only as large as needed. The default size is 255 kilobytes (kB)',
35
+ nullable: true,
36
+ }),
37
+ (0, mongoose_1.Prop)({ type: Number, required: false }),
31
38
  __metadata("design:type", Number)
32
- ], FileInfo.prototype, "length", void 0);
39
+ ], CoreFileInfo.prototype, "chunkSize", void 0);
33
40
  __decorate([
34
- (0, graphql_1.Field)(() => Number, { description: 'Size of the chunk', nullable: true }),
35
- __metadata("design:type", Number)
36
- ], FileInfo.prototype, "chunkSize", void 0);
41
+ (0, graphql_1.Field)(() => String, { description: 'Content type', nullable: true }),
42
+ (0, mongoose_1.Prop)({ type: String, required: false }),
43
+ __metadata("design:type", String)
44
+ ], CoreFileInfo.prototype, "contentType", void 0);
37
45
  __decorate([
38
46
  (0, graphql_1.Field)(() => String, { description: 'Name of the file', nullable: true }),
47
+ (0, mongoose_1.Prop)({ type: String, required: false }),
39
48
  __metadata("design:type", String)
40
- ], FileInfo.prototype, "filename", void 0);
49
+ ], CoreFileInfo.prototype, "filename", void 0);
41
50
  __decorate([
42
- (0, graphql_1.Field)(() => String, { description: 'Content type', nullable: true }),
43
- __metadata("design:type", String)
44
- ], FileInfo.prototype, "contentType", void 0);
45
- FileInfo = __decorate([
46
- (0, graphql_1.ObjectType)({ description: 'Information about attachment file' })
47
- ], FileInfo);
48
- exports.FileInfo = FileInfo;
49
- //# sourceMappingURL=file-info.output.js.map
51
+ (0, graphql_1.Field)(() => Number, { description: 'The size of the document in bytes', nullable: true }),
52
+ (0, mongoose_1.Prop)({ type: Number, required: false }),
53
+ __metadata("design:type", Number)
54
+ ], CoreFileInfo.prototype, "length", void 0);
55
+ __decorate([
56
+ (0, graphql_1.Field)(() => Date, { description: 'The date the file was first stored', nullable: true }),
57
+ (0, mongoose_1.Prop)({ type: Date, required: false }),
58
+ __metadata("design:type", Date)
59
+ ], CoreFileInfo.prototype, "uploadDate", void 0);
60
+ CoreFileInfo = __decorate([
61
+ (0, graphql_1.ObjectType)({ description: 'Information about file' })
62
+ ], CoreFileInfo);
63
+ exports.CoreFileInfo = CoreFileInfo;
64
+ //# sourceMappingURL=core-file-info.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-file-info.model.js","sourceRoot":"","sources":["../../../../src/core/modules/file/core-file-info.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAoD;AACpD,+CAAwC;AAExC,2EAAiE;AAMjE,IAAa,YAAY,GAAzB,MAAa,YAAa,SAAQ,4BAAS;IAA3C;;QAIE,OAAE,GAAW,SAAS,CAAC;QASvB,cAAS,GAAW,SAAS,CAAC;QAI9B,gBAAW,GAAY,SAAS,CAAC;QAIjC,aAAQ,GAAY,SAAS,CAAC;QAI9B,WAAM,GAAW,SAAS,CAAC;QAI3B,eAAU,GAAS,SAAS,CAAC;IAC/B,CAAC;CAAA,CAAA;AA1BC;IADC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC;;wCAChC;AASvB;IAPC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE;QACnB,WAAW,EACT,8FAA8F;YAC9F,+FAA+F;QACjG,QAAQ,EAAE,IAAI;KACf,CAAC;IACD,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;;+CACV;AAI9B;IAFC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACpE,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;;iDACP;AAIjC;IAFC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACxE,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;;8CACV;AAI9B;IAFC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,mCAAmC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACzF,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;;4CACb;AAI3B;IAFC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,oCAAoC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACxF,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;8BAC1B,IAAI;gDAAa;AA7BlB,YAAY;IADxB,IAAA,oBAAU,EAAC,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;GACzC,YAAY,CA8BxB;AA9BY,oCAAY"}
@@ -0,0 +1,7 @@
1
+ import { User } from '../../../server/modules/user/user.model';
2
+ import { CoreFileService } from './core-file.service';
3
+ export declare abstract class CoreFileController {
4
+ protected fileService: CoreFileService;
5
+ protected constructor(fileService: CoreFileService);
6
+ getFile(filename: string, res: any, user: User): Promise<any>;
7
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CoreFileController = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const user_model_1 = require("../../../server/modules/user/user.model");
18
+ const rest_user_decorator_1 = require("../../common/decorators/rest-user.decorator");
19
+ const core_file_service_1 = require("./core-file.service");
20
+ let CoreFileController = class CoreFileController {
21
+ constructor(fileService) {
22
+ this.fileService = fileService;
23
+ }
24
+ async getFile(filename, res, user) {
25
+ if (!filename) {
26
+ throw new common_1.BadRequestException('Missing filename for download');
27
+ }
28
+ const file = await this.fileService.getFileInfoByName(filename);
29
+ if (!file) {
30
+ throw new common_1.NotFoundException('File not found');
31
+ }
32
+ const filestream = await this.fileService.getFileStream(file.id);
33
+ res.header('Content-Type', file.contentType);
34
+ res.header('Content-Disposition', 'attachment; filename=' + file.filename);
35
+ return filestream.pipe(res);
36
+ }
37
+ };
38
+ __decorate([
39
+ (0, common_1.Get)(':filename'),
40
+ __param(0, (0, common_1.Param)('filename')),
41
+ __param(1, (0, common_1.Res)()),
42
+ __param(2, (0, rest_user_decorator_1.RESTUser)()),
43
+ __metadata("design:type", Function),
44
+ __metadata("design:paramtypes", [String, Object, user_model_1.User]),
45
+ __metadata("design:returntype", Promise)
46
+ ], CoreFileController.prototype, "getFile", null);
47
+ CoreFileController = __decorate([
48
+ (0, common_1.Controller)('files'),
49
+ __metadata("design:paramtypes", [core_file_service_1.CoreFileService])
50
+ ], CoreFileController);
51
+ exports.CoreFileController = CoreFileController;
52
+ //# sourceMappingURL=core-file.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-file.controller.js","sourceRoot":"","sources":["../../../../src/core/modules/file/core-file.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAqG;AACrG,wEAA+D;AAC/D,qFAAuE;AACvE,2DAAsD;AAMtD,IAAsB,kBAAkB,GAAxC,MAAsB,kBAAkB;IAItC,YAAgC,WAA4B;QAA5B,gBAAW,GAAX,WAAW,CAAiB;IAAG,CAAC;IAMhE,KAAK,CAAC,OAAO,CAAoB,QAAgB,EAAS,GAAG,EAAc,IAAU;QACnF,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,4BAAmB,CAAC,+BAA+B,CAAC,CAAC;SAChE;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,CAAC,CAAC;SAC/C;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,GAAG,CAAC,MAAM,CAAC,qBAAqB,EAAE,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3E,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;CACF,CAAA;AAdC;IADC,IAAA,YAAG,EAAC,WAAW,CAAC;IACF,WAAA,IAAA,cAAK,EAAC,UAAU,CAAC,CAAA;IAAoB,WAAA,IAAA,YAAG,GAAE,CAAA;IAAO,WAAA,IAAA,8BAAQ,GAAE,CAAA;;qDAAO,iBAAI;;iDAapF;AAvBmB,kBAAkB;IADvC,IAAA,mBAAU,EAAC,OAAO,CAAC;qCAK2B,mCAAe;GAJxC,kBAAkB,CAwBvC;AAxBqB,gDAAkB"}
@@ -0,0 +1,10 @@
1
+ import { CoreFileService } from './core-file.service';
2
+ import { FileUpload } from './interfaces/file-upload.interface';
3
+ export declare class CoreFileResolver {
4
+ protected readonly fileService: CoreFileService;
5
+ constructor(fileService: CoreFileService);
6
+ getFileInfo(filename: string): Promise<any>;
7
+ deleteFile(filename: string): Promise<any>;
8
+ uploadFile(file: FileUpload): Promise<any>;
9
+ uploadFiles(files: FileUpload[]): Promise<any>;
10
+ }
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CoreFileResolver = void 0;
16
+ const graphql_1 = require("@nestjs/graphql");
17
+ const GraphQLUpload = require("graphql-upload/GraphQLUpload.js");
18
+ const core_file_info_model_1 = require("./core-file-info.model");
19
+ const core_file_service_1 = require("./core-file.service");
20
+ let CoreFileResolver = class CoreFileResolver {
21
+ constructor(fileService) {
22
+ this.fileService = fileService;
23
+ }
24
+ async getFileInfo(filename) {
25
+ return await this.fileService.getFileInfoByName(filename);
26
+ }
27
+ async deleteFile(filename) {
28
+ return await this.fileService.deleteFileByName(filename);
29
+ }
30
+ async uploadFile(file) {
31
+ return await this.fileService.createFile(file);
32
+ }
33
+ async uploadFiles(files) {
34
+ return await this.fileService.createFiles(files);
35
+ }
36
+ };
37
+ __decorate([
38
+ (0, graphql_1.Query)(() => core_file_info_model_1.CoreFileInfo, { nullable: true }),
39
+ __param(0, (0, graphql_1.Args)({ name: 'filename', type: () => String })),
40
+ __metadata("design:type", Function),
41
+ __metadata("design:paramtypes", [String]),
42
+ __metadata("design:returntype", Promise)
43
+ ], CoreFileResolver.prototype, "getFileInfo", null);
44
+ __decorate([
45
+ (0, graphql_1.Mutation)(() => core_file_info_model_1.CoreFileInfo),
46
+ __param(0, (0, graphql_1.Args)({ name: 'filename', type: () => String })),
47
+ __metadata("design:type", Function),
48
+ __metadata("design:paramtypes", [String]),
49
+ __metadata("design:returntype", Promise)
50
+ ], CoreFileResolver.prototype, "deleteFile", null);
51
+ __decorate([
52
+ (0, graphql_1.Mutation)(() => core_file_info_model_1.CoreFileInfo),
53
+ __param(0, (0, graphql_1.Args)({ name: 'file', type: () => GraphQLUpload })),
54
+ __metadata("design:type", Function),
55
+ __metadata("design:paramtypes", [Object]),
56
+ __metadata("design:returntype", Promise)
57
+ ], CoreFileResolver.prototype, "uploadFile", null);
58
+ __decorate([
59
+ (0, graphql_1.Mutation)(() => [core_file_info_model_1.CoreFileInfo]),
60
+ __param(0, (0, graphql_1.Args)({ name: 'files', type: () => [GraphQLUpload] })),
61
+ __metadata("design:type", Function),
62
+ __metadata("design:paramtypes", [Array]),
63
+ __metadata("design:returntype", Promise)
64
+ ], CoreFileResolver.prototype, "uploadFiles", null);
65
+ CoreFileResolver = __decorate([
66
+ (0, graphql_1.Resolver)(),
67
+ __metadata("design:paramtypes", [core_file_service_1.CoreFileService])
68
+ ], CoreFileResolver);
69
+ exports.CoreFileResolver = CoreFileResolver;
70
+ //# sourceMappingURL=core-file.resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-file.resolver.js","sourceRoot":"","sources":["../../../../src/core/modules/file/core-file.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6CAAkE;AAClE,iEAAiE;AACjE,iEAAsD;AACtD,2DAAsD;AAOtD,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAI3B,YAA+B,WAA4B;QAA5B,gBAAW,GAAX,WAAW,CAAiB;IAAG,CAAC;IAU/D,KAAK,CAAC,WAAW,CAAiD,QAAgB;QAChF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAUD,KAAK,CAAC,UAAU,CAAiD,QAAgB;QAC/E,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAMD,KAAK,CAAC,UAAU,CAAoD,IAAgB;QAClF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IAMD,KAAK,CAAC,WAAW,CAAuD,KAAmB;QACzF,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;CACF,CAAA;AA/BC;IADC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,mCAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3B,WAAA,IAAA,cAAI,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;mDAEhE;AAUD;IADC,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,mCAAY,CAAC;IACX,WAAA,IAAA,cAAI,EAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;;;;kDAE/D;AAMD;IADC,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,mCAAY,CAAC;IACX,WAAA,IAAA,cAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,aAAa,EAAE,CAAC,CAAA;;;;kDAElE;AAMD;IADC,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,CAAC,mCAAY,CAAC,CAAC;IACZ,WAAA,IAAA,cAAI,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;;;;mDAEtE;AA5CU,gBAAgB;IAD5B,IAAA,kBAAQ,GAAE;qCAKmC,mCAAe;GAJhD,gBAAgB,CA6C5B;AA7CY,4CAAgB"}
@@ -3,24 +3,29 @@ import { GridFSBucket, GridFSBucketReadStreamOptions } from 'mongodb';
3
3
  import { Connection, Types } from 'mongoose';
4
4
  import { MongooseGridFS } from 'mongoose-gridfs';
5
5
  import { FilterArgs } from '../../common/args/filter.args';
6
- import { FileInfo } from './file-info.output';
6
+ import { MaybePromise } from '../../common/types/maybe-promise.type';
7
+ import { CoreFileInfo } from './core-file-info.model';
7
8
  import { FileServiceOptions } from './interfaces/file-service-options.interface';
8
9
  import { FileUpload } from './interfaces/file-upload.interface';
10
+ export declare type FileInputCheckType = 'file' | 'files' | 'filterArgs' | 'id' | 'filename';
9
11
  export declare abstract class CoreFileService {
10
12
  protected readonly connection: Connection;
11
13
  files: GridFSBucket & MongooseGridFS;
12
- protected constructor(connection: Connection, modelName?: string);
13
- createFile(file: FileUpload, serviceOptions?: FileServiceOptions): Promise<FileInfo>;
14
- createFiles(files: FileUpload[], serviceOptions?: FileServiceOptions): Promise<FileInfo[]>;
15
- findFileInfo(filterArgs?: FilterArgs, serviceOptions?: FileServiceOptions): Promise<FileInfo[]>;
16
- getFileInfo(id: string | Types.ObjectId, serviceOptions?: FileServiceOptions): Promise<FileInfo>;
17
- getFileInfoByName(filename: string, serviceOptions?: FileServiceOptions): Promise<FileInfo>;
18
- getFileStream(id: string | Types.ObjectId, options?: GridFSBucketReadStreamOptions): any;
19
- getFileStreamByName(filename: string): GridFSBucketReadStreamOptions;
20
- getBuffer(id: string | Types.ObjectId): Promise<Buffer>;
21
- getBufferByName(filename: string): Promise<Buffer>;
22
- deleteFile(id: string | Types.ObjectId, serviceOptions?: FileServiceOptions): Promise<FileInfo>;
23
- deleteFileByName(filename: string, serviceOptions?: FileServiceOptions): Promise<FileInfo>;
24
- protected prepareOutput(fileInfo: FileInfo | FileInfo[], options?: FileServiceOptions): Promise<any>;
25
- protected setId(fileInfo: FileInfo | FileInfo[]): FileInfo | FileInfo[];
14
+ protected constructor(connection: Connection, bucketName?: string);
15
+ createFile(file: MaybePromise<FileUpload>, serviceOptions?: FileServiceOptions): Promise<CoreFileInfo>;
16
+ createFiles(files: MaybePromise<FileUpload>[], serviceOptions?: FileServiceOptions): Promise<CoreFileInfo[]>;
17
+ findFileInfo(filterArgs?: FilterArgs, serviceOptions?: FileServiceOptions): Promise<CoreFileInfo[]>;
18
+ getFileInfo(id: string | Types.ObjectId, serviceOptions?: FileServiceOptions): Promise<CoreFileInfo>;
19
+ getFileInfoByName(filename: string, serviceOptions?: FileServiceOptions): Promise<CoreFileInfo>;
20
+ getFileStream(id: string | Types.ObjectId, serviceOptions?: FileServiceOptions): Promise<any>;
21
+ getFileStreamByName(filename: string, serviceOptions?: FileServiceOptions): Promise<GridFSBucketReadStreamOptions>;
22
+ getBuffer(id: string | Types.ObjectId, serviceOptions?: FileServiceOptions): Promise<Buffer>;
23
+ getBufferByName(filename: string, serviceOptions?: FileServiceOptions): Promise<Buffer>;
24
+ deleteFile(id: string | Types.ObjectId, serviceOptions?: FileServiceOptions): Promise<CoreFileInfo>;
25
+ deleteFileByName(filename: string, serviceOptions?: FileServiceOptions): Promise<CoreFileInfo>;
26
+ protected checkRights(input: any, options?: FileServiceOptions & {
27
+ checkInputType: FileInputCheckType;
28
+ }): MaybePromise<boolean>;
29
+ protected prepareOutput(fileInfo: CoreFileInfo | CoreFileInfo[], options?: FileServiceOptions): Promise<any>;
30
+ protected setId(fileInfo: CoreFileInfo | CoreFileInfo[]): CoreFileInfo | CoreFileInfo[];
26
31
  }
@@ -7,15 +7,18 @@ const db_helper_1 = require("../../common/helpers/db.helper");
7
7
  const filter_helper_1 = require("../../common/helpers/filter.helper");
8
8
  const input_helper_1 = require("../../common/helpers/input.helper");
9
9
  const service_helper_1 = require("../../common/helpers/service.helper");
10
- const file_info_output_1 = require("./file-info.output");
10
+ const core_file_info_model_1 = require("./core-file-info.model");
11
11
  class CoreFileService {
12
- constructor(connection, modelName = 'File') {
12
+ constructor(connection, bucketName = 'fs') {
13
13
  this.connection = connection;
14
- this.files = (0, mongoose_gridfs_1.createBucket)({ modelName, connection });
14
+ this.files = (0, mongoose_gridfs_1.createBucket)({ bucketName, connection });
15
15
  }
16
- createFile(file, serviceOptions) {
17
- return new Promise(async (resolve, reject) => {
18
- const { filename, mimetype, encoding, createReadStream } = file;
16
+ async createFile(file, serviceOptions) {
17
+ if (!(await this.checkRights(file, { ...serviceOptions, checkInputType: 'file' }))) {
18
+ return null;
19
+ }
20
+ return await new Promise(async (resolve, reject) => {
21
+ const { filename, mimetype, encoding, createReadStream } = await file;
19
22
  const readStream = createReadStream();
20
23
  const options = { filename, contentType: mimetype };
21
24
  this.files.writeFile(options, readStream, (error, fileInfo) => {
@@ -24,14 +27,20 @@ class CoreFileService {
24
27
  });
25
28
  }
26
29
  async createFiles(files, serviceOptions) {
30
+ if (!(await this.checkRights(files, { ...serviceOptions, checkInputType: 'files' }))) {
31
+ return null;
32
+ }
27
33
  const promises = [];
28
34
  for (const file of files) {
29
35
  promises.push(this.createFile(file, serviceOptions));
30
36
  }
31
37
  return await Promise.all(promises);
32
38
  }
33
- findFileInfo(filterArgs, serviceOptions) {
34
- return new Promise((resolve, reject) => {
39
+ async findFileInfo(filterArgs, serviceOptions) {
40
+ if (!(await this.checkRights(filterArgs, { ...serviceOptions, checkInputType: 'filterArgs' }))) {
41
+ return null;
42
+ }
43
+ return await new Promise((resolve, reject) => {
35
44
  const filterQuery = (0, filter_helper_1.convertFilterArgsToQuery)(filterArgs);
36
45
  const cursor = this.files.find(filterQuery[0], filterQuery[1]);
37
46
  if (!cursor) {
@@ -42,60 +51,87 @@ class CoreFileService {
42
51
  });
43
52
  });
44
53
  }
45
- getFileInfo(id, serviceOptions) {
46
- return new Promise((resolve, reject) => {
54
+ async getFileInfo(id, serviceOptions) {
55
+ if (!(await this.checkRights(id, { ...serviceOptions, checkInputType: 'id' }))) {
56
+ return null;
57
+ }
58
+ return await new Promise((resolve, reject) => {
47
59
  this.files.findById((0, db_helper_1.getObjectIds)(id), (error, fileInfo) => {
48
60
  error ? reject(error) : resolve(this.prepareOutput(fileInfo, serviceOptions));
49
61
  });
50
62
  });
51
63
  }
52
- getFileInfoByName(filename, serviceOptions) {
53
- return new Promise((resolve, reject) => {
64
+ async getFileInfoByName(filename, serviceOptions) {
65
+ if (!(await this.checkRights(filename, { ...serviceOptions, checkInputType: 'filename' }))) {
66
+ return null;
67
+ }
68
+ return await new Promise((resolve, reject) => {
54
69
  this.files.findOne({ filename }, (error, fileInfo) => {
55
70
  error ? reject(error) : resolve(this.prepareOutput(fileInfo, serviceOptions));
56
71
  });
57
72
  });
58
73
  }
59
- getFileStream(id, options) {
60
- return this.files.openDownloadStream((0, db_helper_1.getObjectIds)(id), options);
74
+ async getFileStream(id, serviceOptions) {
75
+ if (!(await this.checkRights(id, { ...serviceOptions, checkInputType: 'id' }))) {
76
+ return null;
77
+ }
78
+ return this.files.openDownloadStream((0, db_helper_1.getObjectIds)(id));
61
79
  }
62
- getFileStreamByName(filename) {
80
+ async getFileStreamByName(filename, serviceOptions) {
81
+ if (!(await this.checkRights(filename, { ...serviceOptions, checkInputType: 'filename' }))) {
82
+ return null;
83
+ }
63
84
  return this.files.readFile({ filename });
64
85
  }
65
- getBuffer(id) {
66
- return new Promise((resolve, reject) => {
86
+ async getBuffer(id, serviceOptions) {
87
+ if (!(await this.checkRights(id, { ...serviceOptions, checkInputType: 'id' }))) {
88
+ return null;
89
+ }
90
+ return await new Promise((resolve, reject) => {
67
91
  this.files.readFile({ _id: (0, db_helper_1.getObjectIds)(id) }, (error, buffer) => {
68
92
  error ? reject(error) : resolve(buffer);
69
93
  });
70
94
  });
71
95
  }
72
- getBufferByName(filename) {
73
- return new Promise((resolve, reject) => {
96
+ async getBufferByName(filename, serviceOptions) {
97
+ if (!(await this.checkRights(filename, { ...serviceOptions, checkInputType: 'filename' }))) {
98
+ return null;
99
+ }
100
+ return await new Promise((resolve, reject) => {
74
101
  this.files.readFile({ filename }, (error, buffer) => {
75
102
  error ? reject(error) : resolve(buffer);
76
103
  });
77
104
  });
78
105
  }
79
- deleteFile(id, serviceOptions) {
80
- return new Promise((resolve, reject) => {
106
+ async deleteFile(id, serviceOptions) {
107
+ if (!(await this.checkRights(id, { ...serviceOptions, checkInputType: 'id' }))) {
108
+ return null;
109
+ }
110
+ return await new Promise((resolve, reject) => {
81
111
  return this.files.unlink((0, db_helper_1.getObjectIds)(id), (error, fileInfo) => {
82
112
  error ? reject(error) : resolve(this.prepareOutput(fileInfo, serviceOptions));
83
113
  });
84
114
  });
85
115
  }
86
116
  async deleteFileByName(filename, serviceOptions) {
117
+ if (!(await this.checkRights(filename, { ...serviceOptions, checkInputType: 'filename' }))) {
118
+ return null;
119
+ }
87
120
  const fileInfo = await this.getFileInfoByName(filename);
88
121
  if (!fileInfo) {
89
122
  throw new common_1.NotFoundException('File not found with filename ' + filename);
90
123
  }
91
124
  return await this.deleteFile(fileInfo.id, serviceOptions);
92
125
  }
126
+ checkRights(input, options) {
127
+ return true;
128
+ }
93
129
  async prepareOutput(fileInfo, options) {
94
130
  if (!fileInfo) {
95
131
  return fileInfo;
96
132
  }
97
133
  this.setId(fileInfo);
98
- fileInfo = await (0, service_helper_1.prepareOutput)(fileInfo, { targetModel: file_info_output_1.FileInfo });
134
+ fileInfo = await (0, service_helper_1.prepareOutput)(fileInfo, { targetModel: core_file_info_model_1.CoreFileInfo });
99
135
  return (0, input_helper_1.check)(fileInfo, options?.currentUser, { roles: options?.roles });
100
136
  }
101
137
  setId(fileInfo) {
@@ -1 +1 @@
1
- {"version":3,"file":"core-file.service.js","sourceRoot":"","sources":["../../../../src/core/modules/file/core-file.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core-file.service.js","sourceRoot":"","sources":["../../../../src/core/modules/file/core-file.service.ts"],"names":[],"mappings":"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"}