@steedos/server 3.0.13-beta.3 → 3.0.13-beta.30

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.
@@ -1 +1 @@
1
- {"version":3,"file":"functions.controller.js","sourceRoot":"","sources":["../../src/objects/functions.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAUwB;AACxB,uDAAmD;AACnD,yCAA2C;AAC3C,6CAQyB;AAIlB,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YAA6B,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAOzD,WAAW,CACR,GAAY,EACK,aAAqB,EACnB,eAAuB,EACxC,KAA0B;;YAEnC,MAAM,IAAI,GAAI,GAAW,CAAC,IAAI,CAAC;YAE/B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAC1C,aAAa,EACb,eAAe,kBAEb,UAAU,EAAE,aAAa,EACzB,eAAe,IACZ,KAAK,GAEV,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAC3C,CAAC;QACJ,CAAC;KAAA;IAaK,eAAe,CACZ,GAAY,EACK,aAAqB,EACnB,eAAuB,EACzC,IAAyB;;YAEjC,MAAM,IAAI,GAAI,GAAW,CAAC,IAAI,CAAC;YAE/B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAC1C,aAAa,EACb,eAAe,kBAEb,UAAU,EAAE,aAAa,EACzB,eAAe,IACZ,IAAI,GAET,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAC3C,CAAC;QACJ,CAAC;KAAA;CACF,CAAA;AA1DY,kDAAmB;AAQxB;IALL,IAAA,iBAAQ,EAAC,GAAG,CAAC;IACb,IAAA,sBAAY,EAAC;QACZ,OAAO,EAAE,2CAA2C;KACrD,CAAC;IACD,IAAA,YAAG,EAAC,iCAAiC,CAAC;IAEpC,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,cAAK,EAAC,eAAe,CAAC,CAAA;IACtB,WAAA,IAAA,cAAK,EAAC,iBAAiB,CAAC,CAAA;IACxB,WAAA,IAAA,cAAK,GAAE,CAAA;;qCAHI,OAAO;;sDAiBpB;AAaK;IAXL,IAAA,iBAAQ,EAAC,GAAG,CAAC;IACb,IAAA,sBAAY,EAAC;QACZ,OAAO,EAAE,2CAA2C;KACrD,CAAC;IACD,IAAA,aAAI,EAAC,iCAAiC,CAAC;IACvC,IAAA,iBAAO,EAAC;QACP,WAAW,EAAE,sDAAsD;QACnE,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;SACf;KACF,CAAC;IAEC,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,cAAK,EAAC,eAAe,CAAC,CAAA;IACtB,WAAA,IAAA,cAAK,EAAC,iBAAiB,CAAC,CAAA;IACxB,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAHK,OAAO;;0DAiBpB;8BAzDU,mBAAmB;IAF/B,IAAA,kBAAS,EAAC,gBAAS,CAAC;IACpB,IAAA,mBAAU,EAAC,mBAAmB,CAAC;qCAEe,gCAAc;GADhD,mBAAmB,CA0D/B"}
1
+ {"version":3,"file":"functions.controller.js","sourceRoot":"","sources":["../../src/objects/functions.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAUwB;AACxB,uDAAmD;AACnD,yCAA2C;AAC3C,6CAQyB;AAIlB,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IACD;IAA7B,YAA6B,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAOzD,AAAN,KAAK,CAAC,WAAW,CACR,GAAY,EACK,aAAqB,EACnB,eAAuB,EACxC,KAA0B;QAEnC,MAAM,IAAI,GAAI,GAAW,CAAC,IAAI,CAAC;QAE/B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAC1C,aAAa,EACb,eAAe,EACf;YACE,UAAU,EAAE,aAAa;YACzB,eAAe;YACf,GAAG,KAAK;SACT,EACD,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAC3C,CAAC;IACJ,CAAC;IAaK,AAAN,KAAK,CAAC,eAAe,CACZ,GAAY,EACK,aAAqB,EACnB,eAAuB,EACzC,IAAyB;QAEjC,MAAM,IAAI,GAAI,GAAW,CAAC,IAAI,CAAC;QAE/B,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAC1C,aAAa,EACb,eAAe,EACf;YACE,UAAU,EAAE,aAAa;YACzB,eAAe;YACf,GAAG,IAAI;SACR,EACD,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,CAC3C,CAAC;IACJ,CAAC;CACF,CAAA;AA1DY,kDAAmB;AAQxB;IALL,IAAA,iBAAQ,EAAC,GAAG,CAAC;IACb,IAAA,sBAAY,EAAC;QACZ,OAAO,EAAE,2CAA2C;KACrD,CAAC;IACD,IAAA,YAAG,EAAC,iCAAiC,CAAC;IAEpC,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,cAAK,EAAC,eAAe,CAAC,CAAA;IACtB,WAAA,IAAA,cAAK,EAAC,iBAAiB,CAAC,CAAA;IACxB,WAAA,IAAA,cAAK,GAAE,CAAA;;qCAHI,OAAO;;sDAiBpB;AAaK;IAXL,IAAA,iBAAQ,EAAC,GAAG,CAAC;IACb,IAAA,sBAAY,EAAC;QACZ,OAAO,EAAE,2CAA2C;KACrD,CAAC;IACD,IAAA,aAAI,EAAC,iCAAiC,CAAC;IACvC,IAAA,iBAAO,EAAC;QACP,WAAW,EAAE,sDAAsD;QACnE,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;SACf;KACF,CAAC;IAEC,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,cAAK,EAAC,eAAe,CAAC,CAAA;IACtB,WAAA,IAAA,cAAK,EAAC,iBAAiB,CAAC,CAAA;IACxB,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAHK,OAAO;;0DAiBpB;8BAzDU,mBAAmB;IAF/B,IAAA,kBAAS,EAAC,gBAAS,CAAC;IACpB,IAAA,mBAAU,EAAC,mBAAmB,CAAC;qCAEe,gCAAc;GADhD,mBAAmB,CA0D/B"}
@@ -11,33 +11,21 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
- return new (P || (P = Promise))(function (resolve, reject) {
17
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
- step((generator = generator.apply(thisArg, _arguments || [])).next());
21
- });
22
- };
23
14
  Object.defineProperty(exports, "__esModule", { value: true });
24
15
  exports.ObjectsController = void 0;
25
16
  const common_1 = require("@nestjs/common");
26
17
  const objects_service_1 = require("./objects.service");
27
18
  const core_1 = require("@builder6/core");
28
19
  let ObjectsController = class ObjectsController {
20
+ objectsService;
29
21
  constructor(objectsService) {
30
22
  this.objectsService = objectsService;
31
23
  }
32
- getObject(objectApiName) {
33
- return __awaiter(this, void 0, void 0, function* () {
34
- return yield this.objectsService.getObjectConfig(objectApiName);
35
- });
24
+ async getObject(objectApiName) {
25
+ return await this.objectsService.getObjectConfig(objectApiName);
36
26
  }
37
- getObjectSimplified(objectApiName) {
38
- return __awaiter(this, void 0, void 0, function* () {
39
- return yield this.objectsService.getObjectSimplified(objectApiName);
40
- });
27
+ async getObjectSimplified(objectApiName) {
28
+ return await this.objectsService.getObjectSimplified(objectApiName);
41
29
  }
42
30
  };
43
31
  exports.ObjectsController = ObjectsController;
@@ -1 +1 @@
1
- {"version":3,"file":"objects.controller.js","sourceRoot":"","sources":["../../src/objects/objects.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CASwB;AACxB,uDAAmD;AACnD,yCAA2C;AAIpC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,YAA6B,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAGzD,SAAS,CAAyB,aAAqB;;YAC3D,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;QAClE,CAAC;KAAA;IAGK,mBAAmB,CAAyB,aAAqB;;YACrE,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;QACtE,CAAC;KAAA;CACF,CAAA;AAZY,8CAAiB;AAItB;IADL,IAAA,YAAG,EAAC,gBAAgB,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,eAAe,CAAC,CAAA;;;;kDAEtC;AAGK;IADL,IAAA,YAAG,EAAC,2BAA2B,CAAC;IACN,WAAA,IAAA,cAAK,EAAC,eAAe,CAAC,CAAA;;;;4DAEhD;4BAXU,iBAAiB;IAF7B,IAAA,kBAAS,EAAC,gBAAS,CAAC;IACpB,IAAA,mBAAU,EAAC,iBAAiB,CAAC;qCAEiB,gCAAc;GADhD,iBAAiB,CAY7B"}
1
+ {"version":3,"file":"objects.controller.js","sourceRoot":"","sources":["../../src/objects/objects.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CASwB;AACxB,uDAAmD;AACnD,yCAA2C;AAIpC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IACC;IAA7B,YAA6B,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;IAAG,CAAC;IAGzD,AAAN,KAAK,CAAC,SAAS,CAAyB,aAAqB;QAC3D,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;IAClE,CAAC;IAGK,AAAN,KAAK,CAAC,mBAAmB,CAAyB,aAAqB;QACrE,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACtE,CAAC;CACF,CAAA;AAZY,8CAAiB;AAItB;IADL,IAAA,YAAG,EAAC,gBAAgB,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,eAAe,CAAC,CAAA;;;;kDAEtC;AAGK;IADL,IAAA,YAAG,EAAC,2BAA2B,CAAC;IACN,WAAA,IAAA,cAAK,EAAC,eAAe,CAAC,CAAA;;;;4DAEhD;4BAXU,iBAAiB;IAF7B,IAAA,kBAAS,EAAC,gBAAS,CAAC;IACpB,IAAA,mBAAU,EAAC,iBAAiB,CAAC;qCAEiB,gCAAc;GADhD,iBAAiB,CAY7B"}
@@ -8,60 +8,45 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  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
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
12
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
13
- return new (P || (P = Promise))(function (resolve, reject) {
14
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
15
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
16
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
17
- step((generator = generator.apply(thisArg, _arguments || [])).next());
18
- });
19
- };
20
11
  Object.defineProperty(exports, "__esModule", { value: true });
21
12
  exports.ObjectsService = void 0;
22
13
  const common_1 = require("@nestjs/common");
23
14
  const objectql_1 = require("@steedos/objectql");
24
15
  let ObjectsService = class ObjectsService {
25
16
  constructor() { }
26
- getObjectConfig(objectApiName) {
27
- return __awaiter(this, void 0, void 0, function* () {
28
- const obj = (0, objectql_1.getObject)(objectApiName);
29
- if (!obj) {
30
- throw new Error(`Object ${objectApiName} not found`);
31
- }
32
- return obj.getConfig();
33
- });
17
+ async getObjectConfig(objectApiName) {
18
+ const obj = (0, objectql_1.getObject)(objectApiName);
19
+ if (!obj) {
20
+ throw new Error(`Object ${objectApiName} not found`);
21
+ }
22
+ return obj.getConfig();
34
23
  }
35
- getObjectSimplified(objectApiName) {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- const obj = (0, objectql_1.getObject)(objectApiName);
38
- if (!obj) {
39
- throw new Error(`Object ${objectApiName} not found`);
40
- }
41
- const config = obj.getConfig();
42
- const simplifiedFields = {};
43
- for (const [key, value] of Object.entries(config.fields)) {
44
- const field = value;
45
- if (!field.hidden) {
46
- simplifiedFields[key] = {
47
- label: field.label,
48
- type: field.type,
49
- name: field.name,
50
- };
51
- }
24
+ async getObjectSimplified(objectApiName) {
25
+ const obj = (0, objectql_1.getObject)(objectApiName);
26
+ if (!obj) {
27
+ throw new Error(`Object ${objectApiName} not found`);
28
+ }
29
+ const config = obj.getConfig();
30
+ const simplifiedFields = {};
31
+ for (const [key, value] of Object.entries(config.fields)) {
32
+ const field = value;
33
+ if (!field.hidden) {
34
+ simplifiedFields[key] = {
35
+ label: field.label,
36
+ type: field.type,
37
+ name: field.name,
38
+ };
52
39
  }
53
- return {
54
- name: config.name,
55
- label: config.label,
56
- fields: simplifiedFields,
57
- };
58
- });
40
+ }
41
+ return {
42
+ name: config.name,
43
+ label: config.label,
44
+ fields: simplifiedFields,
45
+ };
59
46
  }
60
- runFunction(objectApiName, functionApiName, params, userSession) {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- const obj = (0, objectql_1.getObject)(objectApiName);
63
- return yield obj.runFunction(functionApiName, params, userSession);
64
- });
47
+ async runFunction(objectApiName, functionApiName, params, userSession) {
48
+ const obj = (0, objectql_1.getObject)(objectApiName);
49
+ return await obj.runFunction(functionApiName, params, userSession);
65
50
  }
66
51
  };
67
52
  exports.ObjectsService = ObjectsService;
@@ -1 +1 @@
1
- {"version":3,"file":"objects.service.js","sourceRoot":"","sources":["../../src/objects/objects.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,gDAA8C;AAGvC,IAAM,cAAc,GAApB,MAAM,cAAc;IACzB,gBAAe,CAAC;IAEV,eAAe,CAAC,aAAqB;;YACzC,MAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,aAAa,CAAC,CAAC;YACrC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CAAC,UAAU,aAAa,YAAY,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,GAAG,CAAC,SAAS,EAAE,CAAC;QACzB,CAAC;KAAA;IAEK,mBAAmB,CAAC,aAAqB;;YAC7C,MAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,aAAa,CAAC,CAAC;YACrC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,IAAI,KAAK,CAAC,UAAU,aAAa,YAAY,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;YAE/B,MAAM,gBAAgB,GAAG,EAAE,CAAC;YAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzD,MAAM,KAAK,GAAG,KAAY,CAAC;gBAC3B,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBAClB,gBAAgB,CAAC,GAAG,CAAC,GAAG;wBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;qBACjB,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,gBAAgB;aACzB,CAAC;QACJ,CAAC;KAAA;IAEK,WAAW,CACf,aAAqB,EACrB,eAAuB,EACvB,MAAW,EACX,WAAiB;;YAEjB,MAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,aAAa,CAAC,CAAC;YACrC,OAAO,MAAM,GAAG,CAAC,WAAW,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACrE,CAAC;KAAA;CACF,CAAA;AA9CY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;;GACA,cAAc,CA8C1B"}
1
+ {"version":3,"file":"objects.service.js","sourceRoot":"","sources":["../../src/objects/objects.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,gDAA8C;AAGvC,IAAM,cAAc,GAApB,MAAM,cAAc;IACzB,gBAAe,CAAC;IAEhB,KAAK,CAAC,eAAe,CAAC,aAAqB;QACzC,MAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,aAAa,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,UAAU,aAAa,YAAY,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,GAAG,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,aAAqB;QAC7C,MAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,aAAa,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,UAAU,aAAa,YAAY,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;QAE/B,MAAM,gBAAgB,GAAG,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,KAAY,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAClB,gBAAgB,CAAC,GAAG,CAAC,GAAG;oBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,gBAAgB;SACzB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CACf,aAAqB,EACrB,eAAuB,EACvB,MAAW,EACX,WAAiB;QAEjB,MAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,aAAa,CAAC,CAAC;QACrC,OAAO,MAAM,GAAG,CAAC,WAAW,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACrE,CAAC;CACF,CAAA;AA9CY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;;GACA,cAAc,CA8C1B"}
@@ -11,15 +11,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
- return new (P || (P = Promise))(function (resolve, reject) {
17
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
- step((generator = generator.apply(thisArg, _arguments || [])).next());
21
- });
22
- };
23
14
  Object.defineProperty(exports, "__esModule", { value: true });
24
15
  exports.InstanceFileController = void 0;
25
16
  const common_1 = require("@nestjs/common");
@@ -28,25 +19,23 @@ const platform_express_1 = require("@nestjs/platform-express");
28
19
  const swagger_1 = require("@nestjs/swagger");
29
20
  const file_service_1 = require("./file.service");
30
21
  let InstanceFileController = class InstanceFileController {
22
+ fileService;
23
+ mongodbService;
31
24
  constructor(fileService, mongodbService) {
32
25
  this.fileService = fileService;
33
26
  this.mongodbService = mongodbService;
34
27
  }
35
- uploadFile(instanceId, req, file) {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- try {
38
- const userSession = req.user;
39
- const fields = req.body;
40
- return yield this.fileService.uploadFile(instanceId, file, fields, userSession);
41
- }
42
- catch (error) {
43
- throw error;
44
- }
45
- });
46
- }
47
- copyFiles() {
48
- return __awaiter(this, void 0, void 0, function* () { });
28
+ async uploadFile(instanceId, req, file) {
29
+ try {
30
+ const userSession = req.user;
31
+ const fields = req.body;
32
+ return await this.fileService.uploadFile(instanceId, file, fields, userSession);
33
+ }
34
+ catch (error) {
35
+ throw error;
36
+ }
49
37
  }
38
+ async copyFiles() { }
50
39
  formatFileName(originalName, uploadFrom) {
51
40
  if (uploadFrom === "mobile") {
52
41
  return originalName.replace(/ /g, "_");
@@ -1 +1 @@
1
- {"version":3,"file":"file.controller.js","sourceRoot":"","sources":["../../src/workflow/file.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CASwB;AACxB,yCAA2D;AAC3D,+DAA2D;AAC3D,6CAA0C;AAE1C,iDAA6C;AAKtC,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IACjC,YACU,WAAwB,EACxB,cAA8B;QAD9B,gBAAW,GAAX,WAAW,CAAa;QACxB,mBAAc,GAAd,cAAc,CAAgB;IACrC,CAAC;IAME,UAAU,CACO,UAAkB,EAChC,GAAY,EACH,IAAS;;YAEzB,IAAI,CAAC;gBACH,MAAM,WAAW,GAAI,GAAW,CAAC,IAAI,CAAC;gBAGtC,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;gBAExB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CACtC,UAAU,EACV,IAAI,EACJ,MAAM,EACN,WAAW,CACZ,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;KAAA;IAEK,SAAS;8DAAI,CAAC;KAAA;IAEZ,cAAc,CAAC,YAAoB,EAAE,UAAmB;QAG9D,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;CACF,CAAA;AA1CY,wDAAsB;AAU3B;IAHL,IAAA,kBAAS,EAAC,gBAAS,CAAC;IACpB,IAAA,wBAAe,EAAC,IAAA,kCAAe,EAAC,MAAM,CAAC,CAAC;IACxC,IAAA,aAAI,EAAC,2BAA2B,CAAC;IAE/B,WAAA,IAAA,cAAK,EAAC,YAAY,CAAC,CAAA;IACnB,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,qBAAY,GAAE,CAAA;;;;wDAiBhB;iCA9BU,sBAAsB;IAFlC,IAAA,iBAAO,EAAC,OAAO,CAAC;IAChB,IAAA,mBAAU,EAAC,MAAM,CAAC;qCAGM,0BAAW;QACR,qBAAc;GAH7B,sBAAsB,CA0ClC"}
1
+ {"version":3,"file":"file.controller.js","sourceRoot":"","sources":["../../src/workflow/file.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CASwB;AACxB,yCAA2D;AAC3D,+DAA2D;AAC3D,6CAA0C;AAE1C,iDAA6C;AAKtC,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAEvB;IACA;IAFV,YACU,WAAwB,EACxB,cAA8B;QAD9B,gBAAW,GAAX,WAAW,CAAa;QACxB,mBAAc,GAAd,cAAc,CAAgB;IACrC,CAAC;IAME,AAAN,KAAK,CAAC,UAAU,CACO,UAAkB,EAChC,GAAY,EACH,IAAS;QAEzB,IAAI,CAAC;YACH,MAAM,WAAW,GAAI,GAAW,CAAC,IAAI,CAAC;YAGtC,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;YAExB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CACtC,UAAU,EACV,IAAI,EACJ,MAAM,EACN,WAAW,CACZ,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,KAAI,CAAC;IAEZ,cAAc,CAAC,YAAoB,EAAE,UAAmB;QAG9D,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;CACF,CAAA;AA1CY,wDAAsB;AAU3B;IAHL,IAAA,kBAAS,EAAC,gBAAS,CAAC;IACpB,IAAA,wBAAe,EAAC,IAAA,kCAAe,EAAC,MAAM,CAAC,CAAC;IACxC,IAAA,aAAI,EAAC,2BAA2B,CAAC;IAE/B,WAAA,IAAA,cAAK,EAAC,YAAY,CAAC,CAAA;IACnB,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,qBAAY,GAAE,CAAA;;;;wDAiBhB;iCA9BU,sBAAsB;IAFlC,IAAA,iBAAO,EAAC,OAAO,CAAC;IAChB,IAAA,mBAAU,EAAC,MAAM,CAAC;qCAGM,0BAAW;QACR,qBAAc;GAH7B,sBAAsB,CA0ClC"}
@@ -11,15 +11,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
- return new (P || (P = Promise))(function (resolve, reject) {
17
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
- step((generator = generator.apply(thisArg, _arguments || [])).next());
21
- });
22
- };
23
14
  Object.defineProperty(exports, "__esModule", { value: true });
24
15
  exports.FileMoleculer = void 0;
25
16
  const moleculer_1 = require("moleculer");
@@ -27,19 +18,20 @@ const common_1 = require("@nestjs/common");
27
18
  const moleculer_2 = require("@builder6/moleculer");
28
19
  const file_service_1 = require("./file.service");
29
20
  let FileMoleculer = class FileMoleculer extends moleculer_1.Service {
21
+ fileService;
22
+ started = false;
30
23
  constructor(broker, fileService) {
31
24
  super(broker);
32
25
  this.fileService = fileService;
33
- this.started = false;
34
26
  this.parseServiceSchema({
35
27
  namespace: "steedos",
36
28
  name: "instanceFiles",
37
29
  settings: {},
38
30
  actions: {
39
- copyInstanceFiles: (ctx) => __awaiter(this, void 0, void 0, function* () {
31
+ copyInstanceFiles: async (ctx) => {
40
32
  const { sourceInstanceId, targetInstanceId, targetInstanceApproveId, userSession, options, } = ctx.params;
41
- return yield fileService.copyInstanceFiles(sourceInstanceId, targetInstanceId, targetInstanceApproveId, userSession, options);
42
- }),
33
+ return await fileService.copyInstanceFiles(sourceInstanceId, targetInstanceId, targetInstanceApproveId, userSession, options);
34
+ },
43
35
  },
44
36
  events: {},
45
37
  });
@@ -1 +1 @@
1
- {"version":3,"file":"file.moleculer.js","sourceRoot":"","sources":["../../src/workflow/file.moleculer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA4D;AAC5D,2CAAoD;AACpD,mDAAmD;AACnD,iDAA6C;AAGtC,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,mBAAO;IAExC,YACkB,MAAqB,EAC7B,WAAwB;QAEhC,KAAK,CAAC,MAAM,CAAC,CAAC;QAFN,gBAAW,GAAX,WAAW,CAAa;QAHlC,YAAO,GAAY,KAAK,CAAC;QAOvB,IAAI,CAAC,kBAAkB,CAAC;YACtB,SAAS,EAAE,SAAS;YACpB,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE;gBACP,iBAAiB,EAAE,CAAO,GAAG,EAAE,EAAE;oBAC/B,MAAM,EACJ,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,WAAW,EACX,OAAO,GACR,GAAG,GAAG,CAAC,MAAM,CAAC;oBACf,OAAO,MAAM,WAAW,CAAC,iBAAiB,CACxC,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,WAAW,EACX,OAAO,CACR,CAAC;gBACJ,CAAC,CAAA;aACF;YACD,MAAM,EAAE,EAAE;SACX,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAjCY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;IAIR,WAAA,IAAA,wBAAY,GAAE,CAAA;qCAAS,yBAAa;QAChB,0BAAW;GAJvB,aAAa,CAiCzB"}
1
+ {"version":3,"file":"file.moleculer.js","sourceRoot":"","sources":["../../src/workflow/file.moleculer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAA4D;AAC5D,2CAAoD;AACpD,mDAAmD;AACnD,iDAA6C;AAGtC,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,mBAAO;IAI9B;IAHV,OAAO,GAAY,KAAK,CAAC;IACzB,YACkB,MAAqB,EAC7B,WAAwB;QAEhC,KAAK,CAAC,MAAM,CAAC,CAAC;QAFN,gBAAW,GAAX,WAAW,CAAa;QAIhC,IAAI,CAAC,kBAAkB,CAAC;YACtB,SAAS,EAAE,SAAS;YACpB,IAAI,EAAE,eAAe;YACrB,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE;gBACP,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBAC/B,MAAM,EACJ,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,WAAW,EACX,OAAO,GACR,GAAG,GAAG,CAAC,MAAM,CAAC;oBACf,OAAO,MAAM,WAAW,CAAC,iBAAiB,CACxC,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,WAAW,EACX,OAAO,CACR,CAAC;gBACJ,CAAC;aACF;YACD,MAAM,EAAE,EAAE;SACX,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAjCY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;IAIR,WAAA,IAAA,wBAAY,GAAE,CAAA;qCAAS,yBAAa;QAChB,0BAAW;GAJvB,aAAa,CAiCzB"}
@@ -41,22 +41,6 @@ var __importStar = (this && this.__importStar) || (function () {
41
41
  var __metadata = (this && this.__metadata) || function (k, v) {
42
42
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
43
43
  };
44
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
45
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
46
- return new (P || (P = Promise))(function (resolve, reject) {
47
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
48
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
49
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
50
- step((generator = generator.apply(thisArg, _arguments || [])).next());
51
- });
52
- };
53
- var __asyncValues = (this && this.__asyncValues) || function (o) {
54
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
55
- var m = o[Symbol.asyncIterator], i;
56
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
57
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
58
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
59
- };
60
44
  var FileService_1;
61
45
  Object.defineProperty(exports, "__esModule", { value: true });
62
46
  exports.FileService = void 0;
@@ -66,163 +50,144 @@ const core_1 = require("@builder6/core");
66
50
  const files_1 = require("@builder6/files");
67
51
  const COLLECTION_NAME = "cfs.instances.filerecord";
68
52
  const stream_1 = require("stream");
69
- function streamToMulterFile(stream, originalname, mimetype) {
70
- return __awaiter(this, void 0, void 0, function* () {
71
- var _a, stream_2, stream_2_1;
72
- var _b, e_1, _c, _d;
73
- const chunks = [];
74
- try {
75
- for (_a = true, stream_2 = __asyncValues(stream); stream_2_1 = yield stream_2.next(), _b = stream_2_1.done, !_b; _a = true) {
76
- _d = stream_2_1.value;
77
- _a = false;
78
- const chunk = _d;
79
- chunks.push(chunk);
80
- }
81
- }
82
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
83
- finally {
84
- try {
85
- if (!_a && !_b && (_c = stream_2.return)) yield _c.call(stream_2);
86
- }
87
- finally { if (e_1) throw e_1.error; }
88
- }
89
- const buffer = Buffer.concat(chunks);
90
- const multerFile = {
91
- fieldname: "file",
92
- originalname,
93
- encoding: "7bit",
94
- mimetype,
95
- buffer,
96
- size: buffer.length,
97
- stream: stream_1.Readable.from(buffer),
98
- destination: "",
99
- filename: originalname,
100
- path: "",
101
- isUTF8: true,
102
- };
103
- return multerFile;
104
- });
53
+ async function streamToMulterFile(stream, originalname, mimetype) {
54
+ const chunks = [];
55
+ for await (const chunk of stream) {
56
+ chunks.push(chunk);
57
+ }
58
+ const buffer = Buffer.concat(chunks);
59
+ const multerFile = {
60
+ fieldname: "file",
61
+ originalname,
62
+ encoding: "7bit",
63
+ mimetype,
64
+ buffer,
65
+ size: buffer.length,
66
+ stream: stream_1.Readable.from(buffer),
67
+ destination: "",
68
+ filename: originalname,
69
+ path: "",
70
+ isUTF8: true,
71
+ };
72
+ return multerFile;
105
73
  }
106
74
  let FileService = FileService_1 = class FileService {
75
+ filesService;
76
+ mongodbService;
107
77
  constructor(filesService, mongodbService) {
108
78
  this.filesService = filesService;
109
79
  this.mongodbService = mongodbService;
110
- this.logger = new common_1.Logger(FileService_1.name);
111
80
  }
112
- uploadFile(instanceId, file, fields, userSession) {
113
- return __awaiter(this, void 0, void 0, function* () {
114
- var _a;
115
- const userId = userSession["userId"];
116
- const spaceId = userSession["spaceId"];
117
- const { approve, is_private, owner = userId, owner_name = userSession["name"], space = spaceId, upload_from, isAddVersion, parent, main, locked_by, locked_by_name, overwrite, } = fields;
118
- const deny_ext = ((_a = process.env.STEEDOS_CFS_UPLOAD_DENY_EXT) === null || _a === void 0 ? void 0 : _a.split(",")) || [];
119
- const fileName = this.formatFileName(file.originalname, upload_from);
120
- const name_split = fileName.split(".");
121
- const extension = name_split.pop();
122
- if (_.includes(deny_ext, extension)) {
123
- throw new common_1.BadRequestException(`禁止上传「${extension}」附件`);
124
- }
125
- const metadata = {
126
- owner,
127
- owner_name,
128
- space,
129
- instance: instanceId,
130
- approve,
131
- current: true,
132
- is_private: _.isBoolean(is_private)
133
- ? is_private
134
- : _.isString(is_private)
135
- ? is_private.toLowerCase() === "true"
136
- : false,
137
- };
138
- if (main === "true" || main === true) {
139
- metadata.main = true;
140
- }
141
- let parentId = "";
142
- if (isAddVersion && parent) {
143
- parentId = parent;
144
- }
145
- let fileRecord;
146
- if (parentId) {
147
- metadata.parent = parentId;
148
- if (locked_by && locked_by_name) {
149
- metadata.locked_by = locked_by;
150
- metadata.locked_by_name = locked_by_name;
151
- }
152
- yield this.mongodbService.findOneAndUpdate(COLLECTION_NAME, {
153
- "metadata.parent": parentId,
154
- "metadata.current": true,
155
- }, {
156
- $unset: {
157
- "metadata.current": "",
158
- },
159
- }, {});
160
- fileRecord = yield this.filesService.uploadFile(COLLECTION_NAME, file, {}, {
161
- metadata: metadata,
162
- });
163
- if (fileRecord) {
164
- if ((overwrite === null || overwrite === void 0 ? void 0 : overwrite.toLowerCase()) === "true") {
165
- yield this.mongodbService.deleteMany(COLLECTION_NAME, {
166
- "metadata.instance": instanceId,
167
- "metadata.parent": parentId,
168
- "metadata.owner": owner,
169
- "metadata.approve": approve,
170
- "metadata.current": {
171
- $ne: true,
172
- },
173
- });
174
- }
175
- }
176
- }
177
- else {
178
- fileRecord = yield this.filesService.uploadFile(COLLECTION_NAME, file, {}, {
179
- metadata: metadata,
180
- });
181
- yield this.mongodbService.findOneAndUpdateData(COLLECTION_NAME, { _id: fileRecord._id }, { "metadata.parent": fileRecord._id });
81
+ logger = new common_1.Logger(FileService_1.name);
82
+ async uploadFile(instanceId, file, fields, userSession) {
83
+ const userId = userSession["userId"];
84
+ const spaceId = userSession["spaceId"];
85
+ const { approve, is_private, owner = userId, owner_name = userSession["name"], space = spaceId, upload_from, isAddVersion, parent, main, locked_by, locked_by_name, overwrite, } = fields;
86
+ const deny_ext = process.env.STEEDOS_CFS_UPLOAD_DENY_EXT?.split(",") || [];
87
+ const fileName = this.formatFileName(file.originalname, upload_from);
88
+ const name_split = fileName.split(".");
89
+ const extension = name_split.pop();
90
+ if (_.includes(deny_ext, extension)) {
91
+ throw new common_1.BadRequestException(`禁止上传「${extension}」附件`);
92
+ }
93
+ const metadata = {
94
+ owner,
95
+ owner_name,
96
+ space,
97
+ instance: instanceId,
98
+ approve,
99
+ current: true,
100
+ is_private: _.isBoolean(is_private)
101
+ ? is_private
102
+ : _.isString(is_private)
103
+ ? is_private.toLowerCase() === "true"
104
+ : false,
105
+ };
106
+ if (main === "true" || main === true) {
107
+ metadata.main = true;
108
+ }
109
+ let parentId = "";
110
+ if (isAddVersion && parent) {
111
+ parentId = parent;
112
+ }
113
+ let fileRecord;
114
+ if (parentId) {
115
+ metadata.parent = parentId;
116
+ if (locked_by && locked_by_name) {
117
+ metadata.locked_by = locked_by;
118
+ metadata.locked_by_name = locked_by_name;
182
119
  }
183
- return {
184
- version_id: fileRecord._id,
185
- size: file.size,
186
- };
187
- });
188
- }
189
- copyInstanceFiles(sourceInstanceId_1, targetInstanceId_1, targetInstanceApproveId_1, userSession_1, _a) {
190
- return __awaiter(this, arguments, void 0, function* (sourceInstanceId, targetInstanceId, targetInstanceApproveId, userSession, { can_edit_main_attach, can_edit_normal_attach }) {
191
- const userId = userSession["userId"];
192
- const spaceId = userSession["spaceId"];
193
- const filesInfo = yield this.mongodbService.find(COLLECTION_NAME, {
194
- "metadata.instance": sourceInstanceId,
120
+ await this.mongodbService.findOneAndUpdate(COLLECTION_NAME, {
121
+ "metadata.parent": parentId,
195
122
  "metadata.current": true,
123
+ }, {
124
+ $unset: {
125
+ "metadata.current": "",
126
+ },
127
+ }, {});
128
+ fileRecord = await this.filesService.uploadFile(COLLECTION_NAME, file, {}, {
129
+ metadata: metadata,
196
130
  });
197
- const metadata = {
198
- owner: userId,
199
- owner_name: userSession.name,
200
- space: spaceId,
201
- instance: targetInstanceId,
202
- approve: targetInstanceApproveId,
203
- current: true,
204
- main: false,
205
- };
206
- for (const fileInfo of filesInfo) {
207
- if (fileInfo.metadata.main == true) {
208
- if (can_edit_main_attach != true && can_edit_normal_attach != true)
209
- continue;
210
- }
211
- else {
212
- if (can_edit_normal_attach != true)
213
- continue;
214
- }
215
- if (fileInfo.metadata.main == true && can_edit_main_attach == true) {
216
- metadata.main = true;
131
+ if (fileRecord) {
132
+ if (overwrite?.toLowerCase() === "true") {
133
+ await this.mongodbService.deleteMany(COLLECTION_NAME, {
134
+ "metadata.instance": instanceId,
135
+ "metadata.parent": parentId,
136
+ "metadata.owner": owner,
137
+ "metadata.approve": approve,
138
+ "metadata.current": {
139
+ $ne: true,
140
+ },
141
+ });
217
142
  }
218
- else {
219
- metadata.main = false;
220
- }
221
- const fileStream = yield this.filesService.downloadFileStream(COLLECTION_NAME, fileInfo._id);
222
- const file = yield streamToMulterFile(fileStream, fileInfo.original.name, fileInfo.original.type);
223
- yield this.uploadFile(targetInstanceId, file, metadata, userSession);
224
143
  }
144
+ }
145
+ else {
146
+ fileRecord = await this.filesService.uploadFile(COLLECTION_NAME, file, {}, {
147
+ metadata: metadata,
148
+ });
149
+ await this.mongodbService.findOneAndUpdateData(COLLECTION_NAME, { _id: fileRecord._id }, { "metadata.parent": fileRecord._id });
150
+ }
151
+ return {
152
+ version_id: fileRecord._id,
153
+ size: file.size,
154
+ };
155
+ }
156
+ async copyInstanceFiles(sourceInstanceId, targetInstanceId, targetInstanceApproveId, userSession, { can_edit_main_attach, can_edit_normal_attach }) {
157
+ const userId = userSession["userId"];
158
+ const spaceId = userSession["spaceId"];
159
+ const filesInfo = await this.mongodbService.find(COLLECTION_NAME, {
160
+ "metadata.instance": sourceInstanceId,
161
+ "metadata.current": true,
225
162
  });
163
+ const metadata = {
164
+ owner: userId,
165
+ owner_name: userSession.name,
166
+ space: spaceId,
167
+ instance: targetInstanceId,
168
+ approve: targetInstanceApproveId,
169
+ current: true,
170
+ main: false,
171
+ };
172
+ for (const fileInfo of filesInfo) {
173
+ if (fileInfo.metadata.main == true) {
174
+ if (can_edit_main_attach != true && can_edit_normal_attach != true)
175
+ continue;
176
+ }
177
+ else {
178
+ if (can_edit_normal_attach != true)
179
+ continue;
180
+ }
181
+ if (fileInfo.metadata.main == true && can_edit_main_attach == true) {
182
+ metadata.main = true;
183
+ }
184
+ else {
185
+ metadata.main = false;
186
+ }
187
+ const fileStream = await this.filesService.downloadFileStream(COLLECTION_NAME, fileInfo._id);
188
+ const file = await streamToMulterFile(fileStream, fileInfo.original.name, fileInfo.original.type);
189
+ await this.uploadFile(targetInstanceId, file, metadata, userSession);
190
+ }
226
191
  }
227
192
  formatFileName(originalName, uploadFrom) {
228
193
  if (uploadFrom === "mobile") {
@@ -1 +1 @@
1
- {"version":3,"file":"file.service.js","sourceRoot":"","sources":["../../src/workflow/file.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.service.js","sourceRoot":"","sources":["../../src/workflow/file.service.ts"],"names":[],"mappings":"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"}