@likewatt/models 1.0.34 → 1.0.36

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 (36) hide show
  1. package/dist/core/Scenario.d.ts +71 -12
  2. package/dist/core/Scenario.js +236 -54
  3. package/dist/core/ScenarioDefaultValue.d.ts +1 -2
  4. package/dist/core/ScenarioDefaultValue.js +21 -7
  5. package/dist/core/internal/battery-params.js +0 -13
  6. package/dist/core/internal/conversion-params.js +0 -10
  7. package/dist/core/internal/customer-infos.model.js +0 -7
  8. package/dist/core/internal/default-ppa-tarif.js +0 -4
  9. package/dist/core/internal/ecs-params.js +0 -11
  10. package/dist/core/internal/electrolyse-params.js +0 -11
  11. package/dist/core/internal/energy-inflation-rate.js +0 -4
  12. package/dist/core/internal/energy-price-tempo.model.js +0 -8
  13. package/dist/core/internal/energy-price.model.js +0 -7
  14. package/dist/core/internal/financing-type.js +0 -4
  15. package/dist/core/internal/folder.model.js +0 -3
  16. package/dist/core/internal/fuel-cell-params.js +0 -13
  17. package/dist/core/internal/generator-params.js +0 -13
  18. package/dist/core/internal/grid-params.js +0 -16
  19. package/dist/core/internal/h2-storage-params.js +0 -11
  20. package/dist/core/internal/off-peak-hour.model.js +0 -4
  21. package/dist/core/internal/optimization-params.js +0 -7
  22. package/dist/core/internal/peak-hour.model.js +0 -3
  23. package/dist/core/internal/power-cost-config.js +0 -6
  24. package/dist/core/internal/pv-params.js +0 -35
  25. package/dist/core/internal/pv2-paramsSchema.js +0 -36
  26. package/dist/core/internal/rate-of-growth-params.js +0 -4
  27. package/dist/core/internal/scenario-params.js +0 -8
  28. package/dist/core/internal/station-params.js +0 -2
  29. package/dist/core/internal/subscription-rate.model.js +0 -4
  30. package/dist/core/internal/thermal-storage-params.js +0 -10
  31. package/dist/core/internal/tracker.js +0 -7
  32. package/dist/core/internal/vs-params.js +0 -9
  33. package/dist/core/internal/wind-turbine-params.js +0 -19
  34. package/dist/index.d.ts +0 -1
  35. package/dist/index.js +0 -1
  36. package/package.json +1 -1
@@ -16,12 +16,42 @@ export declare const ObjectiveSchema: MSchema<Objective, import("mongoose").Mode
16
16
  } & {
17
17
  __v: number;
18
18
  }>;
19
+ export declare class DemandMultiplierSlot {
20
+ days: number[];
21
+ demandMultiplier?: number;
22
+ endHour?: number;
23
+ id: number;
24
+ months: Record<string, unknown>;
25
+ startHour?: number;
26
+ }
27
+ export declare const DemandMultiplierSlotSchema: MSchema<DemandMultiplierSlot, import("mongoose").Model<DemandMultiplierSlot, any, any, any, Document<unknown, any, DemandMultiplierSlot, any> & DemandMultiplierSlot & {
28
+ _id: Types.ObjectId;
29
+ } & {
30
+ __v: number;
31
+ }, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, DemandMultiplierSlot, Document<unknown, {}, import("mongoose").FlatRecord<DemandMultiplierSlot>, {}> & import("mongoose").FlatRecord<DemandMultiplierSlot> & {
32
+ _id: Types.ObjectId;
33
+ } & {
34
+ __v: number;
35
+ }>;
36
+ export declare class RateOfGrowth {
37
+ id: number;
38
+ rate: number;
39
+ year?: number;
40
+ }
41
+ export declare const RateOfGrowthSchema: MSchema<RateOfGrowth, import("mongoose").Model<RateOfGrowth, any, any, any, Document<unknown, any, RateOfGrowth, any> & RateOfGrowth & {
42
+ _id: Types.ObjectId;
43
+ } & {
44
+ __v: number;
45
+ }, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, RateOfGrowth, Document<unknown, {}, import("mongoose").FlatRecord<RateOfGrowth>, {}> & import("mongoose").FlatRecord<RateOfGrowth> & {
46
+ _id: Types.ObjectId;
47
+ } & {
48
+ __v: number;
49
+ }>;
19
50
  export declare class Technology {
20
51
  id: string;
21
- isDefault?: boolean;
22
52
  index: number;
53
+ type?: number | null;
23
54
  settings: Record<string, unknown>;
24
- type?: number;
25
55
  }
26
56
  export declare const TechnologySchema: MSchema<Technology, import("mongoose").Model<Technology, any, any, any, Document<unknown, any, Technology, any> & Technology & {
27
57
  _id: Types.ObjectId;
@@ -32,9 +62,28 @@ export declare const TechnologySchema: MSchema<Technology, import("mongoose").Mo
32
62
  } & {
33
63
  __v: number;
34
64
  }>;
65
+ export declare class ConfigScenario {
66
+ debtDuration?: number;
67
+ debtRatio?: number;
68
+ discountRate?: number;
69
+ interestRate?: number;
70
+ opexInflation?: number;
71
+ sellingPriceInflation?: number;
72
+ taxRate?: number;
73
+ }
74
+ export declare const ConfigScenarioSchema: MSchema<ConfigScenario, import("mongoose").Model<ConfigScenario, any, any, any, Document<unknown, any, ConfigScenario, any> & ConfigScenario & {
75
+ _id: Types.ObjectId;
76
+ } & {
77
+ __v: number;
78
+ }, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, ConfigScenario, Document<unknown, {}, import("mongoose").FlatRecord<ConfigScenario>, {}> & import("mongoose").FlatRecord<ConfigScenario> & {
79
+ _id: Types.ObjectId;
80
+ } & {
81
+ __v: number;
82
+ }>;
35
83
  export declare class ConfigSite {
36
- incrementations: Record<string, unknown>[];
37
- rateOfGrowth?: Record<string, number>;
84
+ id: string;
85
+ demandMultiplierSlots: DemandMultiplierSlot[];
86
+ rateOfGrowth: RateOfGrowth[];
38
87
  }
39
88
  export declare const ConfigSiteSchema: MSchema<ConfigSite, import("mongoose").Model<ConfigSite, any, any, any, Document<unknown, any, ConfigSite, any> & ConfigSite & {
40
89
  _id: Types.ObjectId;
@@ -47,14 +96,24 @@ export declare const ConfigSiteSchema: MSchema<ConfigSite, import("mongoose").Mo
47
96
  }>;
48
97
  export declare class Scenario {
49
98
  readonly _id: Types.ObjectId;
50
- discountRate?: number;
51
- objectives: Objective[];
52
- name: string;
53
- technologies: Technology[];
54
- configSite: ConfigSite;
55
- optimizationHorizon?: Record<string, string>;
56
- siteId: string;
57
- createdAt: Date;
99
+ color?: string;
100
+ configScenario: ConfigScenario;
101
+ configSite?: ConfigSite;
102
+ error?: boolean;
103
+ isDefaultScenario?: boolean;
104
+ leasingLifespan?: number;
105
+ message?: string;
106
+ name?: string;
107
+ objectives?: Objective[];
108
+ optimizationYear?: number;
109
+ priorities?: number[];
110
+ progress?: number;
111
+ projectLifespan?: number;
112
+ sellingPriceInflation?: number;
113
+ siteId?: string;
114
+ technologies?: Technology[];
115
+ version?: number;
116
+ _createdAt: Date;
58
117
  }
59
118
  export type ScenarioDocument = Scenario & Document;
60
119
  export declare const ScenarioSchema: MSchema<Scenario, import("mongoose").Model<Scenario, any, any, any, Document<unknown, any, Scenario, any> & Scenario & Required<{
@@ -9,7 +9,7 @@ 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.ScenarioSchema = exports.Scenario = exports.ConfigSiteSchema = exports.ConfigSite = exports.TechnologySchema = exports.Technology = exports.ObjectiveSchema = exports.Objective = void 0;
12
+ exports.ScenarioSchema = exports.Scenario = exports.ConfigSiteSchema = exports.ConfigSite = exports.ConfigScenarioSchema = exports.ConfigScenario = exports.TechnologySchema = exports.Technology = exports.RateOfGrowthSchema = exports.RateOfGrowth = exports.DemandMultiplierSlotSchema = exports.DemandMultiplierSlot = exports.ObjectiveSchema = exports.Objective = void 0;
13
13
  const mongoose_1 = require("@nestjs/mongoose");
14
14
  const mongoose_2 = require("mongoose");
15
15
  const swagger_1 = require("@nestjs/swagger");
@@ -59,6 +59,78 @@ exports.Objective = Objective = __decorate([
59
59
  (0, mongoose_1.Schema)({ _id: false })
60
60
  ], Objective);
61
61
  exports.ObjectiveSchema = mongoose_1.SchemaFactory.createForClass(Objective);
62
+ let DemandMultiplierSlot = class DemandMultiplierSlot {
63
+ };
64
+ exports.DemandMultiplierSlot = DemandMultiplierSlot;
65
+ __decorate([
66
+ (0, swagger_1.ApiProperty)({ example: [1, 2, 3] }),
67
+ (0, mongoose_1.Prop)({ required: true }),
68
+ (0, class_validator_1.IsArray)(),
69
+ __metadata("design:type", Array)
70
+ ], DemandMultiplierSlot.prototype, "days", void 0);
71
+ __decorate([
72
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
73
+ (0, mongoose_1.Prop)(),
74
+ (0, class_validator_1.IsOptional)(),
75
+ (0, class_validator_1.IsNumber)(),
76
+ __metadata("design:type", Number)
77
+ ], DemandMultiplierSlot.prototype, "demandMultiplier", void 0);
78
+ __decorate([
79
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
80
+ (0, mongoose_1.Prop)(),
81
+ (0, class_validator_1.IsOptional)(),
82
+ (0, class_validator_1.IsNumber)(),
83
+ __metadata("design:type", Number)
84
+ ], DemandMultiplierSlot.prototype, "endHour", void 0);
85
+ __decorate([
86
+ (0, swagger_1.ApiProperty)({ example: 0 }),
87
+ (0, mongoose_1.Prop)({ required: true }),
88
+ (0, class_validator_1.IsNumber)(),
89
+ __metadata("design:type", Number)
90
+ ], DemandMultiplierSlot.prototype, "id", void 0);
91
+ __decorate([
92
+ (0, swagger_1.ApiProperty)({ example: { month: 1, year: 2020 } }),
93
+ (0, mongoose_1.Prop)({ type: mongoose_2.Schema.Types.Mixed, required: true }),
94
+ (0, class_validator_1.IsObject)(),
95
+ __metadata("design:type", Object)
96
+ ], DemandMultiplierSlot.prototype, "months", void 0);
97
+ __decorate([
98
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
99
+ (0, mongoose_1.Prop)(),
100
+ (0, class_validator_1.IsOptional)(),
101
+ (0, class_validator_1.IsNumber)(),
102
+ __metadata("design:type", Number)
103
+ ], DemandMultiplierSlot.prototype, "startHour", void 0);
104
+ exports.DemandMultiplierSlot = DemandMultiplierSlot = __decorate([
105
+ (0, mongoose_1.Schema)({ _id: false })
106
+ ], DemandMultiplierSlot);
107
+ exports.DemandMultiplierSlotSchema = mongoose_1.SchemaFactory.createForClass(DemandMultiplierSlot);
108
+ let RateOfGrowth = class RateOfGrowth {
109
+ };
110
+ exports.RateOfGrowth = RateOfGrowth;
111
+ __decorate([
112
+ (0, swagger_1.ApiProperty)({ example: 0 }),
113
+ (0, mongoose_1.Prop)({ required: true }),
114
+ (0, class_validator_1.IsString)(),
115
+ __metadata("design:type", Number)
116
+ ], RateOfGrowth.prototype, "id", void 0);
117
+ __decorate([
118
+ (0, swagger_1.ApiProperty)({ example: 0 }),
119
+ (0, mongoose_1.Prop)({ required: true }),
120
+ (0, class_validator_1.IsNumber)(),
121
+ __metadata("design:type", Number)
122
+ ], RateOfGrowth.prototype, "rate", void 0);
123
+ __decorate([
124
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
125
+ (0, mongoose_1.Prop)(),
126
+ (0, class_validator_1.IsOptional)(),
127
+ (0, class_validator_1.IsNumber)(),
128
+ __metadata("design:type", Number)
129
+ ], RateOfGrowth.prototype, "year", void 0);
130
+ exports.RateOfGrowth = RateOfGrowth = __decorate([
131
+ (0, mongoose_1.Schema)({ _id: false })
132
+ ], RateOfGrowth);
133
+ exports.RateOfGrowthSchema = mongoose_1.SchemaFactory.createForClass(RateOfGrowth);
62
134
  let Technology = class Technology {
63
135
  };
64
136
  exports.Technology = Technology;
@@ -68,19 +140,19 @@ __decorate([
68
140
  (0, class_validator_1.IsString)(),
69
141
  __metadata("design:type", String)
70
142
  ], Technology.prototype, "id", void 0);
71
- __decorate([
72
- (0, swagger_1.ApiPropertyOptional)({ example: true }),
73
- (0, mongoose_1.Prop)(),
74
- (0, class_validator_1.IsOptional)(),
75
- (0, class_validator_1.IsBoolean)(),
76
- __metadata("design:type", Boolean)
77
- ], Technology.prototype, "isDefault", void 0);
78
143
  __decorate([
79
144
  (0, swagger_1.ApiProperty)({ example: 0 }),
80
145
  (0, mongoose_1.Prop)({ required: true }),
81
146
  (0, class_validator_1.IsNumber)(),
82
147
  __metadata("design:type", Number)
83
148
  ], Technology.prototype, "index", void 0);
149
+ __decorate([
150
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
151
+ (0, mongoose_1.Prop)(),
152
+ (0, class_validator_1.IsOptional)(),
153
+ (0, class_validator_1.IsNumber)(),
154
+ __metadata("design:type", Object)
155
+ ], Technology.prototype, "type", void 0);
84
156
  __decorate([
85
157
  (0, swagger_1.ApiProperty)({
86
158
  example: { power: 100, orientation: 'south', tilt: 30 },
@@ -89,39 +161,86 @@ __decorate([
89
161
  (0, class_validator_1.IsObject)(),
90
162
  __metadata("design:type", Object)
91
163
  ], Technology.prototype, "settings", void 0);
164
+ exports.Technology = Technology = __decorate([
165
+ (0, mongoose_1.Schema)({ _id: false })
166
+ ], Technology);
167
+ exports.TechnologySchema = mongoose_1.SchemaFactory.createForClass(Technology);
168
+ let ConfigScenario = class ConfigScenario {
169
+ };
170
+ exports.ConfigScenario = ConfigScenario;
92
171
  __decorate([
93
172
  (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
94
173
  (0, mongoose_1.Prop)(),
95
174
  (0, class_validator_1.IsOptional)(),
96
175
  (0, class_validator_1.IsNumber)(),
97
176
  __metadata("design:type", Number)
98
- ], Technology.prototype, "type", void 0);
99
- exports.Technology = Technology = __decorate([
177
+ ], ConfigScenario.prototype, "debtDuration", void 0);
178
+ __decorate([
179
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
180
+ (0, mongoose_1.Prop)(),
181
+ (0, class_validator_1.IsOptional)(),
182
+ (0, class_validator_1.IsNumber)(),
183
+ __metadata("design:type", Number)
184
+ ], ConfigScenario.prototype, "debtRatio", void 0);
185
+ __decorate([
186
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
187
+ (0, mongoose_1.Prop)(),
188
+ (0, class_validator_1.IsOptional)(),
189
+ (0, class_validator_1.IsNumber)(),
190
+ __metadata("design:type", Number)
191
+ ], ConfigScenario.prototype, "discountRate", void 0);
192
+ __decorate([
193
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
194
+ (0, mongoose_1.Prop)(),
195
+ (0, class_validator_1.IsOptional)(),
196
+ (0, class_validator_1.IsNumber)(),
197
+ __metadata("design:type", Number)
198
+ ], ConfigScenario.prototype, "interestRate", void 0);
199
+ __decorate([
200
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
201
+ (0, mongoose_1.Prop)(),
202
+ (0, class_validator_1.IsOptional)(),
203
+ (0, class_validator_1.IsNumber)(),
204
+ __metadata("design:type", Number)
205
+ ], ConfigScenario.prototype, "opexInflation", void 0);
206
+ __decorate([
207
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
208
+ (0, mongoose_1.Prop)(),
209
+ (0, class_validator_1.IsOptional)(),
210
+ (0, class_validator_1.IsNumber)(),
211
+ __metadata("design:type", Number)
212
+ ], ConfigScenario.prototype, "sellingPriceInflation", void 0);
213
+ __decorate([
214
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
215
+ (0, mongoose_1.Prop)(),
216
+ (0, class_validator_1.IsOptional)(),
217
+ (0, class_validator_1.IsNumber)(),
218
+ __metadata("design:type", Number)
219
+ ], ConfigScenario.prototype, "taxRate", void 0);
220
+ exports.ConfigScenario = ConfigScenario = __decorate([
100
221
  (0, mongoose_1.Schema)({ _id: false })
101
- ], Technology);
102
- exports.TechnologySchema = mongoose_1.SchemaFactory.createForClass(Technology);
222
+ ], ConfigScenario);
223
+ exports.ConfigScenarioSchema = mongoose_1.SchemaFactory.createForClass(ConfigScenario);
103
224
  let ConfigSite = class ConfigSite {
104
225
  };
105
226
  exports.ConfigSite = ConfigSite;
106
227
  __decorate([
107
- (0, swagger_1.ApiProperty)({
108
- example: [
109
- { type: 'PV', step: 10, max: 100 },
110
- { type: 'Wind', step: 5, max: 50 },
111
- ],
112
- }),
113
- (0, mongoose_1.Prop)({ type: [mongoose_2.Schema.Types.Mixed], default: [] }),
228
+ (0, swagger_1.ApiProperty)({ example: 'pv1' }),
229
+ (0, mongoose_1.Prop)({ required: true }),
230
+ (0, class_validator_1.IsString)(),
231
+ __metadata("design:type", String)
232
+ ], ConfigSite.prototype, "id", void 0);
233
+ __decorate([
234
+ (0, swagger_1.ApiProperty)({ type: [DemandMultiplierSlot] }),
235
+ (0, mongoose_1.Prop)({ type: [exports.DemandMultiplierSlotSchema], required: true }),
114
236
  (0, class_validator_1.IsArray)(),
115
237
  __metadata("design:type", Array)
116
- ], ConfigSite.prototype, "incrementations", void 0);
238
+ ], ConfigSite.prototype, "demandMultiplierSlots", void 0);
117
239
  __decorate([
118
- (0, swagger_1.ApiPropertyOptional)({
119
- example: { year1: 1.02, year2: 1.03 },
120
- }),
121
- (0, mongoose_1.Prop)({ type: mongoose_2.Schema.Types.Mixed }),
122
- (0, class_validator_1.IsOptional)(),
123
- (0, class_validator_1.IsObject)(),
124
- __metadata("design:type", Object)
240
+ (0, swagger_1.ApiProperty)({ type: [RateOfGrowth] }),
241
+ (0, mongoose_1.Prop)({ type: [exports.RateOfGrowthSchema], required: true }),
242
+ (0, class_validator_1.IsArray)(),
243
+ __metadata("design:type", Array)
125
244
  ], ConfigSite.prototype, "rateOfGrowth", void 0);
126
245
  exports.ConfigSite = ConfigSite = __decorate([
127
246
  (0, mongoose_1.Schema)({ _id: false })
@@ -140,17 +259,50 @@ __decorate([
140
259
  __metadata("design:type", mongoose_2.Types.ObjectId)
141
260
  ], Scenario.prototype, "_id", void 0);
142
261
  __decorate([
143
- (0, swagger_1.ApiPropertyOptional)({ example: 0.05 }),
144
- (0, mongoose_1.Prop)({ type: mongoose_2.Schema.Types.Mixed }),
262
+ (0, swagger_1.ApiProperty)({ example: '#4c5fcc' }),
263
+ (0, mongoose_1.Prop)({ required: true }),
264
+ (0, class_validator_1.IsString)(),
265
+ __metadata("design:type", String)
266
+ ], Scenario.prototype, "color", void 0);
267
+ __decorate([
268
+ (0, swagger_1.ApiProperty)({ type: ConfigScenario }),
269
+ (0, mongoose_1.Prop)({ type: exports.ConfigScenarioSchema, required: true }),
270
+ (0, class_validator_1.IsObject)(),
271
+ __metadata("design:type", ConfigScenario)
272
+ ], Scenario.prototype, "configScenario", void 0);
273
+ __decorate([
274
+ (0, swagger_1.ApiProperty)({ type: ConfigSite }),
275
+ (0, mongoose_1.Prop)({ type: exports.ConfigSiteSchema, required: true }),
276
+ (0, class_validator_1.IsObject)(),
277
+ __metadata("design:type", ConfigSite)
278
+ ], Scenario.prototype, "configSite", void 0);
279
+ __decorate([
280
+ (0, swagger_1.ApiPropertyOptional)({ example: true }),
281
+ (0, mongoose_1.Prop)(),
282
+ (0, class_validator_1.IsOptional)(),
283
+ (0, class_validator_1.IsBoolean)(),
284
+ __metadata("design:type", Boolean)
285
+ ], Scenario.prototype, "error", void 0);
286
+ __decorate([
287
+ (0, swagger_1.ApiPropertyOptional)({ example: true }),
288
+ (0, mongoose_1.Prop)(),
289
+ (0, class_validator_1.IsOptional)(),
290
+ (0, class_validator_1.IsBoolean)(),
291
+ __metadata("design:type", Boolean)
292
+ ], Scenario.prototype, "isDefaultScenario", void 0);
293
+ __decorate([
294
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
295
+ (0, mongoose_1.Prop)(),
145
296
  (0, class_validator_1.IsOptional)(),
297
+ (0, class_validator_1.IsNumber)(),
146
298
  __metadata("design:type", Number)
147
- ], Scenario.prototype, "discountRate", void 0);
299
+ ], Scenario.prototype, "leasingLifespan", void 0);
148
300
  __decorate([
149
- (0, swagger_1.ApiProperty)({ type: [Objective] }),
150
- (0, mongoose_1.Prop)({ type: [exports.ObjectiveSchema], required: true }),
151
- (0, class_validator_1.IsArray)(),
152
- __metadata("design:type", Array)
153
- ], Scenario.prototype, "objectives", void 0);
301
+ (0, swagger_1.ApiProperty)({ example: 'message' }),
302
+ (0, mongoose_1.Prop)(),
303
+ (0, class_validator_1.IsString)(),
304
+ __metadata("design:type", String)
305
+ ], Scenario.prototype, "message", void 0);
154
306
  __decorate([
155
307
  (0, swagger_1.ApiProperty)({ example: 'Scenario A - Hybrid PV/Wind' }),
156
308
  (0, mongoose_1.Prop)({ required: true }),
@@ -158,40 +310,70 @@ __decorate([
158
310
  __metadata("design:type", String)
159
311
  ], Scenario.prototype, "name", void 0);
160
312
  __decorate([
161
- (0, swagger_1.ApiProperty)({ type: [Technology] }),
162
- (0, mongoose_1.Prop)({ type: [exports.TechnologySchema], required: true }),
313
+ (0, swagger_1.ApiProperty)({ type: [Objective] }),
314
+ (0, mongoose_1.Prop)({ type: [exports.ObjectiveSchema], required: true }),
163
315
  (0, class_validator_1.IsArray)(),
164
316
  __metadata("design:type", Array)
165
- ], Scenario.prototype, "technologies", void 0);
317
+ ], Scenario.prototype, "objectives", void 0);
166
318
  __decorate([
167
- (0, swagger_1.ApiProperty)({ type: ConfigSite }),
168
- (0, mongoose_1.Prop)({ type: exports.ConfigSiteSchema, required: true }),
169
- (0, class_validator_1.IsObject)(),
170
- __metadata("design:type", ConfigSite)
171
- ], Scenario.prototype, "configSite", void 0);
319
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
320
+ (0, mongoose_1.Prop)(),
321
+ (0, class_validator_1.IsOptional)(),
322
+ (0, class_validator_1.IsNumber)(),
323
+ __metadata("design:type", Number)
324
+ ], Scenario.prototype, "optimizationYear", void 0);
172
325
  __decorate([
173
- (0, swagger_1.ApiPropertyOptional)({
174
- example: {
175
- start: '2025-01-01',
176
- end: '2030-12-31',
177
- },
178
- }),
179
- (0, mongoose_1.Prop)({ type: mongoose_2.Schema.Types.Mixed }),
326
+ (0, swagger_1.ApiPropertyOptional)({ example: [1, 2] }),
327
+ (0, mongoose_1.Prop)(),
180
328
  (0, class_validator_1.IsOptional)(),
181
- (0, class_validator_1.IsObject)(),
182
- __metadata("design:type", Object)
183
- ], Scenario.prototype, "optimizationHorizon", void 0);
329
+ (0, class_validator_1.IsNumber)(),
330
+ __metadata("design:type", Array)
331
+ ], Scenario.prototype, "priorities", void 0);
332
+ __decorate([
333
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
334
+ (0, mongoose_1.Prop)(),
335
+ (0, class_validator_1.IsOptional)(),
336
+ (0, class_validator_1.IsNumber)(),
337
+ __metadata("design:type", Number)
338
+ ], Scenario.prototype, "progress", void 0);
339
+ __decorate([
340
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
341
+ (0, mongoose_1.Prop)(),
342
+ (0, class_validator_1.IsOptional)(),
343
+ (0, class_validator_1.IsNumber)(),
344
+ __metadata("design:type", Number)
345
+ ], Scenario.prototype, "projectLifespan", void 0);
346
+ __decorate([
347
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
348
+ (0, mongoose_1.Prop)(),
349
+ (0, class_validator_1.IsOptional)(),
350
+ (0, class_validator_1.IsNumber)(),
351
+ __metadata("design:type", Number)
352
+ ], Scenario.prototype, "sellingPriceInflation", void 0);
184
353
  __decorate([
185
354
  (0, swagger_1.ApiProperty)({ example: 'site_12345' }),
186
355
  (0, mongoose_1.Prop)({ required: true }),
187
356
  (0, class_validator_1.IsString)(),
188
357
  __metadata("design:type", String)
189
358
  ], Scenario.prototype, "siteId", void 0);
359
+ __decorate([
360
+ (0, swagger_1.ApiProperty)({ type: [Technology] }),
361
+ (0, mongoose_1.Prop)({ type: [exports.TechnologySchema], required: true }),
362
+ (0, class_validator_1.IsArray)(),
363
+ __metadata("design:type", Array)
364
+ ], Scenario.prototype, "technologies", void 0);
365
+ __decorate([
366
+ (0, swagger_1.ApiPropertyOptional)({ example: 1 }),
367
+ (0, mongoose_1.Prop)(),
368
+ (0, class_validator_1.IsOptional)(),
369
+ (0, class_validator_1.IsNumber)(),
370
+ __metadata("design:type", Number)
371
+ ], Scenario.prototype, "version", void 0);
190
372
  __decorate([
191
373
  (0, swagger_1.ApiProperty)({ example: '2025-04-24T14:05:00.000Z' }),
192
374
  (0, mongoose_1.Prop)({ default: Date.now }),
193
375
  __metadata("design:type", Date)
194
- ], Scenario.prototype, "createdAt", void 0);
376
+ ], Scenario.prototype, "_createdAt", void 0);
195
377
  exports.Scenario = Scenario = __decorate([
196
378
  (0, mongoose_1.Schema)({
197
379
  id: false,
@@ -59,8 +59,7 @@ export declare class ScenarioDefaultValue {
59
59
  name?: string;
60
60
  description?: string;
61
61
  isActive?: boolean;
62
- createdBy?: string;
63
- createdAt?: Date;
62
+ createdBy?: Date;
64
63
  updatedAt?: Date;
65
64
  }
66
65
  export type ScenarioDefaultValueDocument = ScenarioDefaultValue & Document;
@@ -66,92 +66,110 @@ __decorate([
66
66
  __decorate([
67
67
  (0, swagger_1.ApiProperty)({ type: battery_params_1.BatteryParams }),
68
68
  (0, mongoose_1.Prop)({ type: battery_params_1.BatteryParams, required: true }),
69
+ (0, class_validator_1.IsObject)(),
69
70
  __metadata("design:type", battery_params_1.BatteryParams)
70
71
  ], ScenarioDefaultValue.prototype, "paramsBattery", void 0);
71
72
  __decorate([
72
73
  (0, swagger_1.ApiProperty)({ type: conversion_params_1.ConversionParams }),
73
74
  (0, mongoose_1.Prop)({ type: conversion_params_1.ConversionParams, required: true }),
75
+ (0, class_validator_1.IsObject)(),
74
76
  __metadata("design:type", conversion_params_1.ConversionParams)
75
77
  ], ScenarioDefaultValue.prototype, "paramsConversion", void 0);
76
78
  __decorate([
77
79
  (0, swagger_1.ApiProperty)({ type: fuel_cell_params_1.FuelCellParams }),
78
80
  (0, mongoose_1.Prop)({ type: fuel_cell_params_1.FuelCellParams, required: true }),
81
+ (0, class_validator_1.IsObject)(),
79
82
  __metadata("design:type", fuel_cell_params_1.FuelCellParams)
80
83
  ], ScenarioDefaultValue.prototype, "paramsFuelCell", void 0);
81
84
  __decorate([
82
85
  (0, swagger_1.ApiProperty)({ type: generator_params_1.GeneratorParams }),
83
86
  (0, mongoose_1.Prop)({ type: generator_params_1.GeneratorParams, required: true }),
87
+ (0, class_validator_1.IsObject)(),
84
88
  __metadata("design:type", generator_params_1.GeneratorParams)
85
89
  ], ScenarioDefaultValue.prototype, "paramsGen", void 0);
86
90
  __decorate([
87
91
  (0, swagger_1.ApiProperty)({ type: grid_params_1.GridParams }),
88
92
  (0, mongoose_1.Prop)({ type: grid_params_1.GridParams, required: true }),
93
+ (0, class_validator_1.IsObject)(),
89
94
  __metadata("design:type", grid_params_1.GridParams)
90
95
  ], ScenarioDefaultValue.prototype, "paramsGrid", void 0);
91
96
  __decorate([
92
97
  (0, swagger_1.ApiProperty)({ type: optimization_params_1.OptimizationParams }),
93
98
  (0, mongoose_1.Prop)({ type: optimization_params_1.OptimizationParams, required: true }),
99
+ (0, class_validator_1.IsObject)(),
94
100
  __metadata("design:type", optimization_params_1.OptimizationParams)
95
101
  ], ScenarioDefaultValue.prototype, "paramsOptimization", void 0);
96
102
  __decorate([
97
103
  (0, swagger_1.ApiProperty)({ type: pv_params_1.PVParams }),
98
104
  (0, mongoose_1.Prop)({ type: pv_params_1.PVParams, required: true }),
105
+ (0, class_validator_1.IsObject)(),
99
106
  __metadata("design:type", pv_params_1.PVParams)
100
107
  ], ScenarioDefaultValue.prototype, "paramsPV", void 0);
101
108
  __decorate([
102
109
  (0, swagger_1.ApiProperty)({ type: pv2_paramsSchema_1.PV2Params }),
103
110
  (0, mongoose_1.Prop)({ type: pv2_paramsSchema_1.PV2Params, required: true }),
111
+ (0, class_validator_1.IsObject)(),
104
112
  __metadata("design:type", pv2_paramsSchema_1.PV2Params)
105
113
  ], ScenarioDefaultValue.prototype, "paramsPV2", void 0);
106
114
  __decorate([
107
115
  (0, swagger_1.ApiProperty)({ type: vs_params_1.VSParams }),
108
116
  (0, mongoose_1.Prop)({ type: vs_params_1.VSParams, required: true }),
117
+ (0, class_validator_1.IsObject)(),
109
118
  __metadata("design:type", vs_params_1.VSParams)
110
119
  ], ScenarioDefaultValue.prototype, "paramsVS", void 0);
111
120
  __decorate([
112
121
  (0, swagger_1.ApiProperty)({ type: wind_turbine_params_1.WindTurbineParams }),
113
122
  (0, mongoose_1.Prop)({ type: wind_turbine_params_1.WindTurbineParams, required: true }),
123
+ (0, class_validator_1.IsObject)(),
114
124
  __metadata("design:type", wind_turbine_params_1.WindTurbineParams)
115
125
  ], ScenarioDefaultValue.prototype, "paramsWindTurbine", void 0);
116
126
  __decorate([
117
127
  (0, swagger_1.ApiProperty)({ type: electrolyse_params_1.ElectrolyseParams }),
118
128
  (0, mongoose_1.Prop)({ type: electrolyse_params_1.ElectrolyseParams, required: true }),
129
+ (0, class_validator_1.IsObject)(),
119
130
  __metadata("design:type", electrolyse_params_1.ElectrolyseParams)
120
131
  ], ScenarioDefaultValue.prototype, "paramsElectrolyse", void 0);
121
132
  __decorate([
122
133
  (0, swagger_1.ApiProperty)({ type: h2_storage_params_1.H2StorageParams }),
123
134
  (0, mongoose_1.Prop)({ type: h2_storage_params_1.H2StorageParams, required: true }),
135
+ (0, class_validator_1.IsObject)(),
124
136
  __metadata("design:type", h2_storage_params_1.H2StorageParams)
125
137
  ], ScenarioDefaultValue.prototype, "paramsStockageH2", void 0);
126
138
  __decorate([
127
139
  (0, swagger_1.ApiProperty)({ type: ecs_params_1.ECSParams }),
128
140
  (0, mongoose_1.Prop)({ type: ecs_params_1.ECSParams, required: true }),
141
+ (0, class_validator_1.IsObject)(),
129
142
  __metadata("design:type", ecs_params_1.ECSParams)
130
143
  ], ScenarioDefaultValue.prototype, "paramsECS", void 0);
131
144
  __decorate([
132
145
  (0, swagger_1.ApiProperty)({ type: thermal_storage_params_1.ThermalStorageParams }),
133
146
  (0, mongoose_1.Prop)({ type: thermal_storage_params_1.ThermalStorageParams, required: true }),
147
+ (0, class_validator_1.IsObject)(),
134
148
  __metadata("design:type", thermal_storage_params_1.ThermalStorageParams)
135
149
  ], ScenarioDefaultValue.prototype, "paramsStockageThermal", void 0);
136
150
  __decorate([
137
151
  (0, swagger_1.ApiProperty)({ type: station_params_1.StationParams }),
138
152
  (0, mongoose_1.Prop)({ type: station_params_1.StationParams, required: true }),
153
+ (0, class_validator_1.IsObject)(),
139
154
  __metadata("design:type", station_params_1.StationParams)
140
155
  ], ScenarioDefaultValue.prototype, "paramsStation", void 0);
141
156
  __decorate([
142
157
  (0, swagger_1.ApiProperty)({ type: scenario_params_1.ScenarioParams }),
143
158
  (0, mongoose_1.Prop)({ type: scenario_params_1.ScenarioParams, required: true }),
159
+ (0, class_validator_1.IsObject)(),
144
160
  __metadata("design:type", scenario_params_1.ScenarioParams)
145
161
  ], ScenarioDefaultValue.prototype, "paramsScenario", void 0);
146
162
  __decorate([
147
163
  (0, swagger_1.ApiProperty)({ type: financing_type_1.FinancingType }),
148
164
  (0, mongoose_1.Prop)({ type: financing_type_1.FinancingType, required: true }),
165
+ (0, class_validator_1.IsObject)(),
149
166
  __metadata("design:type", financing_type_1.FinancingType)
150
167
  ], ScenarioDefaultValue.prototype, "financingType", void 0);
151
168
  __decorate([
152
169
  (0, swagger_1.ApiPropertyOptional)(),
153
170
  (0, mongoose_1.Prop)(),
154
171
  (0, class_validator_1.IsOptional)(),
172
+ (0, class_validator_1.IsObject)(),
155
173
  __metadata("design:type", Object)
156
174
  ], ScenarioDefaultValue.prototype, "scenarioConfigSite", void 0);
157
175
  __decorate([
@@ -180,17 +198,13 @@ __decorate([
180
198
  (0, mongoose_1.Prop)(),
181
199
  (0, class_validator_1.IsOptional)(),
182
200
  (0, class_validator_1.IsString)(),
183
- __metadata("design:type", String)
184
- ], ScenarioDefaultValue.prototype, "createdBy", void 0);
185
- __decorate([
186
- (0, swagger_1.ApiPropertyOptional)(),
187
- (0, mongoose_1.Prop)({ type: Date, default: Date.now }),
188
- (0, class_validator_1.IsOptional)(),
201
+ (0, class_validator_1.IsDate)(),
189
202
  __metadata("design:type", Date)
190
- ], ScenarioDefaultValue.prototype, "createdAt", void 0);
203
+ ], ScenarioDefaultValue.prototype, "createdBy", void 0);
191
204
  __decorate([
192
205
  (0, swagger_1.ApiPropertyOptional)(),
193
206
  (0, mongoose_1.Prop)({ type: Date, default: Date.now }),
207
+ (0, class_validator_1.IsDate)(),
194
208
  (0, class_validator_1.IsOptional)(),
195
209
  __metadata("design:type", Date)
196
210
  ], ScenarioDefaultValue.prototype, "updatedAt", void 0);