dragonfly-schema 1.1501.1 → 1.1501.3

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.
package/dist/index.cjs CHANGED
@@ -110,11 +110,30 @@ var import_reflect_metadata = require("reflect-metadata");
110
110
 
111
111
  // src/models/_GridParameterBase.ts
112
112
  var import_class_validator2 = require("class-validator");
113
- var import_class_transformer2 = require("class-transformer");
113
+ var import_class_transformer3 = require("class-transformer");
114
+
115
+ // src/deepTransform.ts
116
+ var import_class_transformer = require("class-transformer");
117
+ function deepTransform(cls, plain) {
118
+ let instance;
119
+ try {
120
+ instance = (0, import_class_transformer.plainToInstance)(cls, plain, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
121
+ } catch (e) {
122
+ instance = plain;
123
+ }
124
+ for (const key of Object.keys(instance)) {
125
+ const value = instance[key];
126
+ const metadataType = Reflect.getMetadata("design:type", instance, key);
127
+ if (value && typeof value === "object" && metadataType && typeof metadataType === "function" && metadataType !== Object && !(value instanceof metadataType)) {
128
+ instance[key] = deepTransform(metadataType, value);
129
+ }
130
+ }
131
+ return instance;
132
+ }
114
133
 
115
134
  // src/models/_OpenAPIGenBaseModel.ts
116
135
  var import_class_validator = require("class-validator");
117
- var import_class_transformer = require("class-transformer");
136
+ var import_class_transformer2 = require("class-transformer");
118
137
  var _OpenAPIGenBaseModel = class {
119
138
  constructor() {
120
139
  /** A base class to use when there is no baseclass available to fall on. */
@@ -131,7 +150,7 @@ var _OpenAPIGenBaseModel = class {
131
150
  var _a;
132
151
  data = typeof data === "object" ? data : {};
133
152
  data["type"] = (_a = this.type) != null ? _a : "InvalidType";
134
- return (0, import_class_transformer.instanceToPlain)(data, { exposeUnsetFields: false });
153
+ return (0, import_class_transformer2.instanceToPlain)(data, { exposeUnsetFields: false });
135
154
  }
136
155
  validate() {
137
156
  return __async(this, null, function* () {
@@ -147,7 +166,7 @@ var _OpenAPIGenBaseModel = class {
147
166
  __decorateClass([
148
167
  (0, import_class_validator.IsString)(),
149
168
  (0, import_class_validator.IsOptional)(),
150
- (0, import_class_transformer.Expose)({ name: "type" })
169
+ (0, import_class_transformer2.Expose)({ name: "type" })
151
170
  ], _OpenAPIGenBaseModel.prototype, "type", 2);
152
171
 
153
172
  // src/models/_GridParameterBase.ts
@@ -165,9 +184,8 @@ var __GridParameterBase = class __GridParameterBase extends _OpenAPIGenBaseModel
165
184
  }
166
185
  init(_data) {
167
186
  var _a, _b;
168
- super.init(_data);
169
187
  if (_data) {
170
- const obj = (0, import_class_transformer2.plainToClass)(__GridParameterBase, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
188
+ const obj = deepTransform(__GridParameterBase, _data);
171
189
  this.dimension = obj.dimension;
172
190
  this.includeMesh = (_a = obj.includeMesh) != null ? _a : true;
173
191
  this.type = (_b = obj.type) != null ? _b : "_GridParameterBase";
@@ -193,7 +211,7 @@ var __GridParameterBase = class __GridParameterBase extends _OpenAPIGenBaseModel
193
211
  data["include_mesh"] = (_a = this.includeMesh) != null ? _a : true;
194
212
  data["type"] = (_b = this.type) != null ? _b : "_GridParameterBase";
195
213
  data = super.toJSON(data);
196
- return (0, import_class_transformer2.instanceToPlain)(data, { exposeUnsetFields: false });
214
+ return (0, import_class_transformer3.instanceToPlain)(data, { exposeUnsetFields: false });
197
215
  }
198
216
  validate() {
199
217
  return __async(this, null, function* () {
@@ -209,24 +227,24 @@ var __GridParameterBase = class __GridParameterBase extends _OpenAPIGenBaseModel
209
227
  __decorateClass([
210
228
  (0, import_class_validator2.IsNumber)(),
211
229
  (0, import_class_validator2.IsDefined)(),
212
- (0, import_class_transformer2.Expose)({ name: "dimension" })
230
+ (0, import_class_transformer3.Expose)({ name: "dimension" })
213
231
  ], __GridParameterBase.prototype, "dimension", 2);
214
232
  __decorateClass([
215
233
  (0, import_class_validator2.IsBoolean)(),
216
234
  (0, import_class_validator2.IsOptional)(),
217
- (0, import_class_transformer2.Expose)({ name: "include_mesh" })
235
+ (0, import_class_transformer3.Expose)({ name: "include_mesh" })
218
236
  ], __GridParameterBase.prototype, "includeMesh", 2);
219
237
  __decorateClass([
220
238
  (0, import_class_validator2.IsString)(),
221
239
  (0, import_class_validator2.IsOptional)(),
222
240
  (0, import_class_validator2.Matches)(/^_GridParameterBase$/),
223
- (0, import_class_transformer2.Expose)({ name: "type" })
241
+ (0, import_class_transformer3.Expose)({ name: "type" })
224
242
  ], __GridParameterBase.prototype, "type", 2);
225
243
  var _GridParameterBase = __GridParameterBase;
226
244
 
227
245
  // src/models/_LouversBase.ts
228
246
  var import_class_validator3 = require("class-validator");
229
- var import_class_transformer3 = require("class-transformer");
247
+ var import_class_transformer4 = require("class-transformer");
230
248
  var __LouversBase = class __LouversBase extends _OpenAPIGenBaseModel {
231
249
  constructor() {
232
250
  super();
@@ -250,9 +268,8 @@ var __LouversBase = class __LouversBase extends _OpenAPIGenBaseModel {
250
268
  }
251
269
  init(_data) {
252
270
  var _a, _b, _c, _d, _e;
253
- super.init(_data);
254
271
  if (_data) {
255
- const obj = (0, import_class_transformer3.plainToClass)(__LouversBase, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
272
+ const obj = deepTransform(__LouversBase, _data);
256
273
  this.depth = obj.depth;
257
274
  this.offset = (_a = obj.offset) != null ? _a : 0;
258
275
  this.angle = (_b = obj.angle) != null ? _b : 0;
@@ -284,7 +301,7 @@ var __LouversBase = class __LouversBase extends _OpenAPIGenBaseModel {
284
301
  data["flip_start_side"] = (_d = this.flipStartSide) != null ? _d : false;
285
302
  data["type"] = (_e = this.type) != null ? _e : "_LouversBase";
286
303
  data = super.toJSON(data);
287
- return (0, import_class_transformer3.instanceToPlain)(data, { exposeUnsetFields: false });
304
+ return (0, import_class_transformer4.instanceToPlain)(data, { exposeUnsetFields: false });
288
305
  }
289
306
  validate() {
290
307
  return __async(this, null, function* () {
@@ -300,43 +317,43 @@ var __LouversBase = class __LouversBase extends _OpenAPIGenBaseModel {
300
317
  __decorateClass([
301
318
  (0, import_class_validator3.IsNumber)(),
302
319
  (0, import_class_validator3.IsDefined)(),
303
- (0, import_class_transformer3.Expose)({ name: "depth" })
320
+ (0, import_class_transformer4.Expose)({ name: "depth" })
304
321
  ], __LouversBase.prototype, "depth", 2);
305
322
  __decorateClass([
306
323
  (0, import_class_validator3.IsNumber)(),
307
324
  (0, import_class_validator3.IsOptional)(),
308
325
  (0, import_class_validator3.Min)(0),
309
- (0, import_class_transformer3.Expose)({ name: "offset" })
326
+ (0, import_class_transformer4.Expose)({ name: "offset" })
310
327
  ], __LouversBase.prototype, "offset", 2);
311
328
  __decorateClass([
312
329
  (0, import_class_validator3.IsNumber)(),
313
330
  (0, import_class_validator3.IsOptional)(),
314
331
  (0, import_class_validator3.Min)(-90),
315
332
  (0, import_class_validator3.Max)(90),
316
- (0, import_class_transformer3.Expose)({ name: "angle" })
333
+ (0, import_class_transformer4.Expose)({ name: "angle" })
317
334
  ], __LouversBase.prototype, "angle", 2);
318
335
  __decorateClass([
319
336
  (0, import_class_validator3.IsArray)(),
320
337
  (0, import_class_validator3.IsNumber)({}, { each: true }),
321
338
  (0, import_class_validator3.IsOptional)(),
322
- (0, import_class_transformer3.Expose)({ name: "contour_vector" })
339
+ (0, import_class_transformer4.Expose)({ name: "contour_vector" })
323
340
  ], __LouversBase.prototype, "contourVector", 2);
324
341
  __decorateClass([
325
342
  (0, import_class_validator3.IsBoolean)(),
326
343
  (0, import_class_validator3.IsOptional)(),
327
- (0, import_class_transformer3.Expose)({ name: "flip_start_side" })
344
+ (0, import_class_transformer4.Expose)({ name: "flip_start_side" })
328
345
  ], __LouversBase.prototype, "flipStartSide", 2);
329
346
  __decorateClass([
330
347
  (0, import_class_validator3.IsString)(),
331
348
  (0, import_class_validator3.IsOptional)(),
332
349
  (0, import_class_validator3.Matches)(/^_LouversBase$/),
333
- (0, import_class_transformer3.Expose)({ name: "type" })
350
+ (0, import_class_transformer4.Expose)({ name: "type" })
334
351
  ], __LouversBase.prototype, "type", 2);
335
352
  var _LouversBase = __LouversBase;
336
353
 
337
354
  // src/models/_WindowParameterBase.ts
338
355
  var import_class_validator4 = require("class-validator");
339
- var import_class_transformer4 = require("class-transformer");
356
+ var import_class_transformer5 = require("class-transformer");
340
357
  var __WindowParameterBase = class __WindowParameterBase extends _OpenAPIGenBaseModel {
341
358
  constructor() {
342
359
  super();
@@ -348,9 +365,8 @@ var __WindowParameterBase = class __WindowParameterBase extends _OpenAPIGenBaseM
348
365
  }
349
366
  init(_data) {
350
367
  var _a;
351
- super.init(_data);
352
368
  if (_data) {
353
- const obj = (0, import_class_transformer4.plainToClass)(__WindowParameterBase, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
369
+ const obj = deepTransform(__WindowParameterBase, _data);
354
370
  this.userData = obj.userData;
355
371
  this.type = (_a = obj.type) != null ? _a : "_WindowParameterBase";
356
372
  }
@@ -374,7 +390,7 @@ var __WindowParameterBase = class __WindowParameterBase extends _OpenAPIGenBaseM
374
390
  data["user_data"] = this.userData;
375
391
  data["type"] = (_a = this.type) != null ? _a : "_WindowParameterBase";
376
392
  data = super.toJSON(data);
377
- return (0, import_class_transformer4.instanceToPlain)(data, { exposeUnsetFields: false });
393
+ return (0, import_class_transformer5.instanceToPlain)(data, { exposeUnsetFields: false });
378
394
  }
379
395
  validate() {
380
396
  return __async(this, null, function* () {
@@ -389,27 +405,27 @@ var __WindowParameterBase = class __WindowParameterBase extends _OpenAPIGenBaseM
389
405
  };
390
406
  __decorateClass([
391
407
  (0, import_class_validator4.IsOptional)(),
392
- (0, import_class_transformer4.Expose)({ name: "user_data" })
408
+ (0, import_class_transformer5.Expose)({ name: "user_data" })
393
409
  ], __WindowParameterBase.prototype, "userData", 2);
394
410
  __decorateClass([
395
411
  (0, import_class_validator4.IsString)(),
396
412
  (0, import_class_validator4.IsOptional)(),
397
413
  (0, import_class_validator4.Matches)(/^_WindowParameterBase$/),
398
- (0, import_class_transformer4.Expose)({ name: "type" })
414
+ (0, import_class_transformer5.Expose)({ name: "type" })
399
415
  ], __WindowParameterBase.prototype, "type", 2);
400
416
  var _WindowParameterBase = __WindowParameterBase;
401
417
 
402
418
  // src/models/Building.ts
403
419
  var import_class_validator42 = require("class-validator");
404
- var import_class_transformer36 = require("class-transformer");
420
+ var import_class_transformer37 = require("class-transformer");
405
421
 
406
422
  // src/models/BuildingPropertiesAbridged.ts
407
423
  var import_class_validator7 = require("class-validator");
408
- var import_class_transformer7 = require("class-transformer");
424
+ var import_class_transformer8 = require("class-transformer");
409
425
 
410
426
  // src/models/BuildingEnergyPropertiesAbridged.ts
411
427
  var import_class_validator5 = require("class-validator");
412
- var import_class_transformer5 = require("class-transformer");
428
+ var import_class_transformer6 = require("class-transformer");
413
429
  var _BuildingEnergyPropertiesAbridged = class _BuildingEnergyPropertiesAbridged extends _OpenAPIGenBaseModel {
414
430
  constructor() {
415
431
  super();
@@ -425,9 +441,8 @@ var _BuildingEnergyPropertiesAbridged = class _BuildingEnergyPropertiesAbridged
425
441
  }
426
442
  init(_data) {
427
443
  var _a;
428
- super.init(_data);
429
444
  if (_data) {
430
- const obj = (0, import_class_transformer5.plainToClass)(_BuildingEnergyPropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
445
+ const obj = deepTransform(_BuildingEnergyPropertiesAbridged, _data);
431
446
  this.type = (_a = obj.type) != null ? _a : "BuildingEnergyPropertiesAbridged";
432
447
  this.constructionSet = obj.constructionSet;
433
448
  this.ceilingPlenumConstruction = obj.ceilingPlenumConstruction;
@@ -455,7 +470,7 @@ var _BuildingEnergyPropertiesAbridged = class _BuildingEnergyPropertiesAbridged
455
470
  data["ceiling_plenum_construction"] = this.ceilingPlenumConstruction;
456
471
  data["floor_plenum_construction"] = this.floorPlenumConstruction;
457
472
  data = super.toJSON(data);
458
- return (0, import_class_transformer5.instanceToPlain)(data, { exposeUnsetFields: false });
473
+ return (0, import_class_transformer6.instanceToPlain)(data, { exposeUnsetFields: false });
459
474
  }
460
475
  validate() {
461
476
  return __async(this, null, function* () {
@@ -472,34 +487,34 @@ __decorateClass([
472
487
  (0, import_class_validator5.IsString)(),
473
488
  (0, import_class_validator5.IsOptional)(),
474
489
  (0, import_class_validator5.Matches)(/^BuildingEnergyPropertiesAbridged$/),
475
- (0, import_class_transformer5.Expose)({ name: "type" })
490
+ (0, import_class_transformer6.Expose)({ name: "type" })
476
491
  ], _BuildingEnergyPropertiesAbridged.prototype, "type", 2);
477
492
  __decorateClass([
478
493
  (0, import_class_validator5.IsString)(),
479
494
  (0, import_class_validator5.IsOptional)(),
480
495
  (0, import_class_validator5.MinLength)(1),
481
496
  (0, import_class_validator5.MaxLength)(100),
482
- (0, import_class_transformer5.Expose)({ name: "construction_set" })
497
+ (0, import_class_transformer6.Expose)({ name: "construction_set" })
483
498
  ], _BuildingEnergyPropertiesAbridged.prototype, "constructionSet", 2);
484
499
  __decorateClass([
485
500
  (0, import_class_validator5.IsString)(),
486
501
  (0, import_class_validator5.IsOptional)(),
487
502
  (0, import_class_validator5.MinLength)(1),
488
503
  (0, import_class_validator5.MaxLength)(100),
489
- (0, import_class_transformer5.Expose)({ name: "ceiling_plenum_construction" })
504
+ (0, import_class_transformer6.Expose)({ name: "ceiling_plenum_construction" })
490
505
  ], _BuildingEnergyPropertiesAbridged.prototype, "ceilingPlenumConstruction", 2);
491
506
  __decorateClass([
492
507
  (0, import_class_validator5.IsString)(),
493
508
  (0, import_class_validator5.IsOptional)(),
494
509
  (0, import_class_validator5.MinLength)(1),
495
510
  (0, import_class_validator5.MaxLength)(100),
496
- (0, import_class_transformer5.Expose)({ name: "floor_plenum_construction" })
511
+ (0, import_class_transformer6.Expose)({ name: "floor_plenum_construction" })
497
512
  ], _BuildingEnergyPropertiesAbridged.prototype, "floorPlenumConstruction", 2);
498
513
  var BuildingEnergyPropertiesAbridged = _BuildingEnergyPropertiesAbridged;
499
514
 
500
515
  // src/models/BuildingRadiancePropertiesAbridged.ts
501
516
  var import_class_validator6 = require("class-validator");
502
- var import_class_transformer6 = require("class-transformer");
517
+ var import_class_transformer7 = require("class-transformer");
503
518
  var _BuildingRadiancePropertiesAbridged = class _BuildingRadiancePropertiesAbridged extends _OpenAPIGenBaseModel {
504
519
  constructor() {
505
520
  super();
@@ -511,9 +526,8 @@ var _BuildingRadiancePropertiesAbridged = class _BuildingRadiancePropertiesAbrid
511
526
  }
512
527
  init(_data) {
513
528
  var _a;
514
- super.init(_data);
515
529
  if (_data) {
516
- const obj = (0, import_class_transformer6.plainToClass)(_BuildingRadiancePropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
530
+ const obj = deepTransform(_BuildingRadiancePropertiesAbridged, _data);
517
531
  this.type = (_a = obj.type) != null ? _a : "BuildingRadiancePropertiesAbridged";
518
532
  this.modifierSet = obj.modifierSet;
519
533
  }
@@ -537,7 +551,7 @@ var _BuildingRadiancePropertiesAbridged = class _BuildingRadiancePropertiesAbrid
537
551
  data["type"] = (_a = this.type) != null ? _a : "BuildingRadiancePropertiesAbridged";
538
552
  data["modifier_set"] = this.modifierSet;
539
553
  data = super.toJSON(data);
540
- return (0, import_class_transformer6.instanceToPlain)(data, { exposeUnsetFields: false });
554
+ return (0, import_class_transformer7.instanceToPlain)(data, { exposeUnsetFields: false });
541
555
  }
542
556
  validate() {
543
557
  return __async(this, null, function* () {
@@ -554,12 +568,12 @@ __decorateClass([
554
568
  (0, import_class_validator6.IsString)(),
555
569
  (0, import_class_validator6.IsOptional)(),
556
570
  (0, import_class_validator6.Matches)(/^BuildingRadiancePropertiesAbridged$/),
557
- (0, import_class_transformer6.Expose)({ name: "type" })
571
+ (0, import_class_transformer7.Expose)({ name: "type" })
558
572
  ], _BuildingRadiancePropertiesAbridged.prototype, "type", 2);
559
573
  __decorateClass([
560
574
  (0, import_class_validator6.IsString)(),
561
575
  (0, import_class_validator6.IsOptional)(),
562
- (0, import_class_transformer6.Expose)({ name: "modifier_set" })
576
+ (0, import_class_transformer7.Expose)({ name: "modifier_set" })
563
577
  ], _BuildingRadiancePropertiesAbridged.prototype, "modifierSet", 2);
564
578
  var BuildingRadiancePropertiesAbridged = _BuildingRadiancePropertiesAbridged;
565
579
 
@@ -577,9 +591,8 @@ var _BuildingPropertiesAbridged = class _BuildingPropertiesAbridged extends _Ope
577
591
  }
578
592
  init(_data) {
579
593
  var _a;
580
- super.init(_data);
581
594
  if (_data) {
582
- const obj = (0, import_class_transformer7.plainToClass)(_BuildingPropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
595
+ const obj = deepTransform(_BuildingPropertiesAbridged, _data);
583
596
  this.type = (_a = obj.type) != null ? _a : "BuildingPropertiesAbridged";
584
597
  this.energy = obj.energy;
585
598
  this.radiance = obj.radiance;
@@ -605,7 +618,7 @@ var _BuildingPropertiesAbridged = class _BuildingPropertiesAbridged extends _Ope
605
618
  data["energy"] = this.energy;
606
619
  data["radiance"] = this.radiance;
607
620
  data = super.toJSON(data);
608
- return (0, import_class_transformer7.instanceToPlain)(data, { exposeUnsetFields: false });
621
+ return (0, import_class_transformer8.instanceToPlain)(data, { exposeUnsetFields: false });
609
622
  }
610
623
  validate() {
611
624
  return __async(this, null, function* () {
@@ -622,21 +635,21 @@ __decorateClass([
622
635
  (0, import_class_validator7.IsString)(),
623
636
  (0, import_class_validator7.IsOptional)(),
624
637
  (0, import_class_validator7.Matches)(/^BuildingPropertiesAbridged$/),
625
- (0, import_class_transformer7.Expose)({ name: "type" })
638
+ (0, import_class_transformer8.Expose)({ name: "type" })
626
639
  ], _BuildingPropertiesAbridged.prototype, "type", 2);
627
640
  __decorateClass([
628
641
  (0, import_class_validator7.IsInstance)(BuildingEnergyPropertiesAbridged),
629
- (0, import_class_transformer7.Type)(() => BuildingEnergyPropertiesAbridged),
642
+ (0, import_class_transformer8.Type)(() => BuildingEnergyPropertiesAbridged),
630
643
  (0, import_class_validator7.ValidateNested)(),
631
644
  (0, import_class_validator7.IsOptional)(),
632
- (0, import_class_transformer7.Expose)({ name: "energy" })
645
+ (0, import_class_transformer8.Expose)({ name: "energy" })
633
646
  ], _BuildingPropertiesAbridged.prototype, "energy", 2);
634
647
  __decorateClass([
635
648
  (0, import_class_validator7.IsInstance)(BuildingRadiancePropertiesAbridged),
636
- (0, import_class_transformer7.Type)(() => BuildingRadiancePropertiesAbridged),
649
+ (0, import_class_transformer8.Type)(() => BuildingRadiancePropertiesAbridged),
637
650
  (0, import_class_validator7.ValidateNested)(),
638
651
  (0, import_class_validator7.IsOptional)(),
639
- (0, import_class_transformer7.Expose)({ name: "radiance" })
652
+ (0, import_class_transformer8.Expose)({ name: "radiance" })
640
653
  ], _BuildingPropertiesAbridged.prototype, "radiance", 2);
641
654
  var BuildingPropertiesAbridged = _BuildingPropertiesAbridged;
642
655
 
@@ -645,7 +658,7 @@ var import_honeybee_schema17 = require("honeybee-schema");
645
658
 
646
659
  // src/models/RoofSpecification.ts
647
660
  var import_class_validator8 = require("class-validator");
648
- var import_class_transformer8 = require("class-transformer");
661
+ var import_class_transformer9 = require("class-transformer");
649
662
  var import_honeybee_schema = require("honeybee-schema");
650
663
  var _RoofSpecification = class _RoofSpecification extends _OpenAPIGenBaseModel {
651
664
  constructor() {
@@ -658,9 +671,8 @@ var _RoofSpecification = class _RoofSpecification extends _OpenAPIGenBaseModel {
658
671
  }
659
672
  init(_data) {
660
673
  var _a;
661
- super.init(_data);
662
674
  if (_data) {
663
- const obj = (0, import_class_transformer8.plainToClass)(_RoofSpecification, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
675
+ const obj = deepTransform(_RoofSpecification, _data);
664
676
  this.geometry = obj.geometry;
665
677
  this.type = (_a = obj.type) != null ? _a : "RoofSpecification";
666
678
  }
@@ -684,7 +696,7 @@ var _RoofSpecification = class _RoofSpecification extends _OpenAPIGenBaseModel {
684
696
  data["geometry"] = this.geometry;
685
697
  data["type"] = (_a = this.type) != null ? _a : "RoofSpecification";
686
698
  data = super.toJSON(data);
687
- return (0, import_class_transformer8.instanceToPlain)(data, { exposeUnsetFields: false });
699
+ return (0, import_class_transformer9.instanceToPlain)(data, { exposeUnsetFields: false });
688
700
  }
689
701
  validate() {
690
702
  return __async(this, null, function* () {
@@ -700,16 +712,16 @@ var _RoofSpecification = class _RoofSpecification extends _OpenAPIGenBaseModel {
700
712
  __decorateClass([
701
713
  (0, import_class_validator8.IsArray)(),
702
714
  (0, import_class_validator8.IsInstance)(import_honeybee_schema.Face3D, { each: true }),
703
- (0, import_class_transformer8.Type)(() => import_honeybee_schema.Face3D),
715
+ (0, import_class_transformer9.Type)(() => import_honeybee_schema.Face3D),
704
716
  (0, import_class_validator8.ValidateNested)({ each: true }),
705
717
  (0, import_class_validator8.IsDefined)(),
706
- (0, import_class_transformer8.Expose)({ name: "geometry" })
718
+ (0, import_class_transformer9.Expose)({ name: "geometry" })
707
719
  ], _RoofSpecification.prototype, "geometry", 2);
708
720
  __decorateClass([
709
721
  (0, import_class_validator8.IsString)(),
710
722
  (0, import_class_validator8.IsOptional)(),
711
723
  (0, import_class_validator8.Matches)(/^RoofSpecification$/),
712
- (0, import_class_transformer8.Expose)({ name: "type" })
724
+ (0, import_class_transformer9.Expose)({ name: "type" })
713
725
  ], _RoofSpecification.prototype, "type", 2);
714
726
  var RoofSpecification = _RoofSpecification;
715
727
 
@@ -718,13 +730,13 @@ var import_honeybee_schema18 = require("honeybee-schema");
718
730
 
719
731
  // src/models/Story.ts
720
732
  var import_class_validator41 = require("class-validator");
721
- var import_class_transformer35 = require("class-transformer");
733
+ var import_class_transformer36 = require("class-transformer");
722
734
  var import_honeybee_schema15 = require("honeybee-schema");
723
735
  var import_honeybee_schema16 = require("honeybee-schema");
724
736
 
725
737
  // src/models/Room2D.ts
726
738
  var import_class_validator36 = require("class-validator");
727
- var import_class_transformer31 = require("class-transformer");
739
+ var import_class_transformer32 = require("class-transformer");
728
740
 
729
741
  // src/helpers/class-validator.ts
730
742
  var import_class_validator9 = require("class-validator");
@@ -812,7 +824,7 @@ var import_honeybee_schema9 = require("honeybee-schema");
812
824
 
813
825
  // src/models/DetailedSkylights.ts
814
826
  var import_class_validator10 = require("class-validator");
815
- var import_class_transformer9 = require("class-transformer");
827
+ var import_class_transformer10 = require("class-transformer");
816
828
  var _DetailedSkylights = class _DetailedSkylights extends _OpenAPIGenBaseModel {
817
829
  constructor() {
818
830
  super();
@@ -826,9 +838,8 @@ var _DetailedSkylights = class _DetailedSkylights extends _OpenAPIGenBaseModel {
826
838
  }
827
839
  init(_data) {
828
840
  var _a;
829
- super.init(_data);
830
841
  if (_data) {
831
- const obj = (0, import_class_transformer9.plainToClass)(_DetailedSkylights, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
842
+ const obj = deepTransform(_DetailedSkylights, _data);
832
843
  this.polygons = obj.polygons;
833
844
  this.type = (_a = obj.type) != null ? _a : "DetailedSkylights";
834
845
  this.areDoors = obj.areDoors;
@@ -854,7 +865,7 @@ var _DetailedSkylights = class _DetailedSkylights extends _OpenAPIGenBaseModel {
854
865
  data["type"] = (_a = this.type) != null ? _a : "DetailedSkylights";
855
866
  data["are_doors"] = this.areDoors;
856
867
  data = super.toJSON(data);
857
- return (0, import_class_transformer9.instanceToPlain)(data, { exposeUnsetFields: false });
868
+ return (0, import_class_transformer10.instanceToPlain)(data, { exposeUnsetFields: false });
858
869
  }
859
870
  validate() {
860
871
  return __async(this, null, function* () {
@@ -871,25 +882,25 @@ __decorateClass([
871
882
  (0, import_class_validator10.IsArray)(),
872
883
  IsNestedNumberArray(),
873
884
  (0, import_class_validator10.IsDefined)(),
874
- (0, import_class_transformer9.Expose)({ name: "polygons" })
885
+ (0, import_class_transformer10.Expose)({ name: "polygons" })
875
886
  ], _DetailedSkylights.prototype, "polygons", 2);
876
887
  __decorateClass([
877
888
  (0, import_class_validator10.IsString)(),
878
889
  (0, import_class_validator10.IsOptional)(),
879
890
  (0, import_class_validator10.Matches)(/^DetailedSkylights$/),
880
- (0, import_class_transformer9.Expose)({ name: "type" })
891
+ (0, import_class_transformer10.Expose)({ name: "type" })
881
892
  ], _DetailedSkylights.prototype, "type", 2);
882
893
  __decorateClass([
883
894
  (0, import_class_validator10.IsArray)(),
884
895
  (0, import_class_validator10.IsBoolean)({ each: true }),
885
896
  (0, import_class_validator10.IsOptional)(),
886
- (0, import_class_transformer9.Expose)({ name: "are_doors" })
897
+ (0, import_class_transformer10.Expose)({ name: "are_doors" })
887
898
  ], _DetailedSkylights.prototype, "areDoors", 2);
888
899
  var DetailedSkylights = _DetailedSkylights;
889
900
 
890
901
  // src/models/DetailedWindows.ts
891
902
  var import_class_validator12 = require("class-validator");
892
- var import_class_transformer10 = require("class-transformer");
903
+ var import_class_transformer11 = require("class-transformer");
893
904
  var _DetailedWindows = class _DetailedWindows extends _WindowParameterBase {
894
905
  constructor() {
895
906
  super();
@@ -903,12 +914,12 @@ var _DetailedWindows = class _DetailedWindows extends _WindowParameterBase {
903
914
  }
904
915
  init(_data) {
905
916
  var _a;
906
- super.init(_data);
907
917
  if (_data) {
908
- const obj = (0, import_class_transformer10.plainToClass)(_DetailedWindows, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
918
+ const obj = deepTransform(_DetailedWindows, _data);
909
919
  this.polygons = obj.polygons;
910
920
  this.type = (_a = obj.type) != null ? _a : "DetailedWindows";
911
921
  this.areDoors = obj.areDoors;
922
+ this.userData = obj.userData;
912
923
  }
913
924
  }
914
925
  static fromJS(data) {
@@ -931,7 +942,7 @@ var _DetailedWindows = class _DetailedWindows extends _WindowParameterBase {
931
942
  data["type"] = (_a = this.type) != null ? _a : "DetailedWindows";
932
943
  data["are_doors"] = this.areDoors;
933
944
  data = super.toJSON(data);
934
- return (0, import_class_transformer10.instanceToPlain)(data, { exposeUnsetFields: false });
945
+ return (0, import_class_transformer11.instanceToPlain)(data, { exposeUnsetFields: false });
935
946
  }
936
947
  validate() {
937
948
  return __async(this, null, function* () {
@@ -948,25 +959,25 @@ __decorateClass([
948
959
  (0, import_class_validator12.IsArray)(),
949
960
  IsNestedNumberArray(),
950
961
  (0, import_class_validator12.IsDefined)(),
951
- (0, import_class_transformer10.Expose)({ name: "polygons" })
962
+ (0, import_class_transformer11.Expose)({ name: "polygons" })
952
963
  ], _DetailedWindows.prototype, "polygons", 2);
953
964
  __decorateClass([
954
965
  (0, import_class_validator12.IsString)(),
955
966
  (0, import_class_validator12.IsOptional)(),
956
967
  (0, import_class_validator12.Matches)(/^DetailedWindows$/),
957
- (0, import_class_transformer10.Expose)({ name: "type" })
968
+ (0, import_class_transformer11.Expose)({ name: "type" })
958
969
  ], _DetailedWindows.prototype, "type", 2);
959
970
  __decorateClass([
960
971
  (0, import_class_validator12.IsArray)(),
961
972
  (0, import_class_validator12.IsBoolean)({ each: true }),
962
973
  (0, import_class_validator12.IsOptional)(),
963
- (0, import_class_transformer10.Expose)({ name: "are_doors" })
974
+ (0, import_class_transformer11.Expose)({ name: "are_doors" })
964
975
  ], _DetailedWindows.prototype, "areDoors", 2);
965
976
  var DetailedWindows = _DetailedWindows;
966
977
 
967
978
  // src/models/ExtrudedBorder.ts
968
979
  var import_class_validator14 = require("class-validator");
969
- var import_class_transformer11 = require("class-transformer");
980
+ var import_class_transformer12 = require("class-transformer");
970
981
  var _ExtrudedBorder = class _ExtrudedBorder extends _OpenAPIGenBaseModel {
971
982
  constructor() {
972
983
  super();
@@ -978,9 +989,8 @@ var _ExtrudedBorder = class _ExtrudedBorder extends _OpenAPIGenBaseModel {
978
989
  }
979
990
  init(_data) {
980
991
  var _a;
981
- super.init(_data);
982
992
  if (_data) {
983
- const obj = (0, import_class_transformer11.plainToClass)(_ExtrudedBorder, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
993
+ const obj = deepTransform(_ExtrudedBorder, _data);
984
994
  this.depth = obj.depth;
985
995
  this.type = (_a = obj.type) != null ? _a : "ExtrudedBorder";
986
996
  }
@@ -1004,7 +1014,7 @@ var _ExtrudedBorder = class _ExtrudedBorder extends _OpenAPIGenBaseModel {
1004
1014
  data["depth"] = this.depth;
1005
1015
  data["type"] = (_a = this.type) != null ? _a : "ExtrudedBorder";
1006
1016
  data = super.toJSON(data);
1007
- return (0, import_class_transformer11.instanceToPlain)(data, { exposeUnsetFields: false });
1017
+ return (0, import_class_transformer12.instanceToPlain)(data, { exposeUnsetFields: false });
1008
1018
  }
1009
1019
  validate() {
1010
1020
  return __async(this, null, function* () {
@@ -1020,19 +1030,19 @@ var _ExtrudedBorder = class _ExtrudedBorder extends _OpenAPIGenBaseModel {
1020
1030
  __decorateClass([
1021
1031
  (0, import_class_validator14.IsNumber)(),
1022
1032
  (0, import_class_validator14.IsDefined)(),
1023
- (0, import_class_transformer11.Expose)({ name: "depth" })
1033
+ (0, import_class_transformer12.Expose)({ name: "depth" })
1024
1034
  ], _ExtrudedBorder.prototype, "depth", 2);
1025
1035
  __decorateClass([
1026
1036
  (0, import_class_validator14.IsString)(),
1027
1037
  (0, import_class_validator14.IsOptional)(),
1028
1038
  (0, import_class_validator14.Matches)(/^ExtrudedBorder$/),
1029
- (0, import_class_transformer11.Expose)({ name: "type" })
1039
+ (0, import_class_transformer12.Expose)({ name: "type" })
1030
1040
  ], _ExtrudedBorder.prototype, "type", 2);
1031
1041
  var ExtrudedBorder = _ExtrudedBorder;
1032
1042
 
1033
1043
  // src/models/GriddedSkylightArea.ts
1034
1044
  var import_class_validator15 = require("class-validator");
1035
- var import_class_transformer12 = require("class-transformer");
1045
+ var import_class_transformer13 = require("class-transformer");
1036
1046
  var import_honeybee_schema2 = require("honeybee-schema");
1037
1047
  var _GriddedSkylightArea = class _GriddedSkylightArea extends _OpenAPIGenBaseModel {
1038
1048
  constructor() {
@@ -1048,9 +1058,8 @@ var _GriddedSkylightArea = class _GriddedSkylightArea extends _OpenAPIGenBaseMod
1048
1058
  }
1049
1059
  init(_data) {
1050
1060
  var _a, _b;
1051
- super.init(_data);
1052
1061
  if (_data) {
1053
- const obj = (0, import_class_transformer12.plainToClass)(_GriddedSkylightArea, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1062
+ const obj = deepTransform(_GriddedSkylightArea, _data);
1054
1063
  this.skylightArea = obj.skylightArea;
1055
1064
  this.type = (_a = obj.type) != null ? _a : "GriddedSkylightArea";
1056
1065
  this.spacing = (_b = obj.spacing) != null ? _b : new import_honeybee_schema2.Autocalculate();
@@ -1076,7 +1085,7 @@ var _GriddedSkylightArea = class _GriddedSkylightArea extends _OpenAPIGenBaseMod
1076
1085
  data["type"] = (_a = this.type) != null ? _a : "GriddedSkylightArea";
1077
1086
  data["spacing"] = (_b = this.spacing) != null ? _b : new import_honeybee_schema2.Autocalculate();
1078
1087
  data = super.toJSON(data);
1079
- return (0, import_class_transformer12.instanceToPlain)(data, { exposeUnsetFields: false });
1088
+ return (0, import_class_transformer13.instanceToPlain)(data, { exposeUnsetFields: false });
1080
1089
  }
1081
1090
  validate() {
1082
1091
  return __async(this, null, function* () {
@@ -1092,23 +1101,23 @@ var _GriddedSkylightArea = class _GriddedSkylightArea extends _OpenAPIGenBaseMod
1092
1101
  __decorateClass([
1093
1102
  (0, import_class_validator15.IsNumber)(),
1094
1103
  (0, import_class_validator15.IsDefined)(),
1095
- (0, import_class_transformer12.Expose)({ name: "skylight_area" })
1104
+ (0, import_class_transformer13.Expose)({ name: "skylight_area" })
1096
1105
  ], _GriddedSkylightArea.prototype, "skylightArea", 2);
1097
1106
  __decorateClass([
1098
1107
  (0, import_class_validator15.IsString)(),
1099
1108
  (0, import_class_validator15.IsOptional)(),
1100
1109
  (0, import_class_validator15.Matches)(/^GriddedSkylightArea$/),
1101
- (0, import_class_transformer12.Expose)({ name: "type" })
1110
+ (0, import_class_transformer13.Expose)({ name: "type" })
1102
1111
  ], _GriddedSkylightArea.prototype, "type", 2);
1103
1112
  __decorateClass([
1104
1113
  (0, import_class_validator15.IsOptional)(),
1105
- (0, import_class_transformer12.Expose)({ name: "spacing" })
1114
+ (0, import_class_transformer13.Expose)({ name: "spacing" })
1106
1115
  ], _GriddedSkylightArea.prototype, "spacing", 2);
1107
1116
  var GriddedSkylightArea = _GriddedSkylightArea;
1108
1117
 
1109
1118
  // src/models/GriddedSkylightRatio.ts
1110
1119
  var import_class_validator16 = require("class-validator");
1111
- var import_class_transformer13 = require("class-transformer");
1120
+ var import_class_transformer14 = require("class-transformer");
1112
1121
  var import_honeybee_schema3 = require("honeybee-schema");
1113
1122
  var _GriddedSkylightRatio = class _GriddedSkylightRatio extends _OpenAPIGenBaseModel {
1114
1123
  constructor() {
@@ -1124,9 +1133,8 @@ var _GriddedSkylightRatio = class _GriddedSkylightRatio extends _OpenAPIGenBaseM
1124
1133
  }
1125
1134
  init(_data) {
1126
1135
  var _a, _b;
1127
- super.init(_data);
1128
1136
  if (_data) {
1129
- const obj = (0, import_class_transformer13.plainToClass)(_GriddedSkylightRatio, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1137
+ const obj = deepTransform(_GriddedSkylightRatio, _data);
1130
1138
  this.skylightRatio = obj.skylightRatio;
1131
1139
  this.type = (_a = obj.type) != null ? _a : "GriddedSkylightRatio";
1132
1140
  this.spacing = (_b = obj.spacing) != null ? _b : new import_honeybee_schema3.Autocalculate();
@@ -1152,7 +1160,7 @@ var _GriddedSkylightRatio = class _GriddedSkylightRatio extends _OpenAPIGenBaseM
1152
1160
  data["type"] = (_a = this.type) != null ? _a : "GriddedSkylightRatio";
1153
1161
  data["spacing"] = (_b = this.spacing) != null ? _b : new import_honeybee_schema3.Autocalculate();
1154
1162
  data = super.toJSON(data);
1155
- return (0, import_class_transformer13.instanceToPlain)(data, { exposeUnsetFields: false });
1163
+ return (0, import_class_transformer14.instanceToPlain)(data, { exposeUnsetFields: false });
1156
1164
  }
1157
1165
  validate() {
1158
1166
  return __async(this, null, function* () {
@@ -1168,17 +1176,17 @@ var _GriddedSkylightRatio = class _GriddedSkylightRatio extends _OpenAPIGenBaseM
1168
1176
  __decorateClass([
1169
1177
  (0, import_class_validator16.IsNumber)(),
1170
1178
  (0, import_class_validator16.IsDefined)(),
1171
- (0, import_class_transformer13.Expose)({ name: "skylight_ratio" })
1179
+ (0, import_class_transformer14.Expose)({ name: "skylight_ratio" })
1172
1180
  ], _GriddedSkylightRatio.prototype, "skylightRatio", 2);
1173
1181
  __decorateClass([
1174
1182
  (0, import_class_validator16.IsString)(),
1175
1183
  (0, import_class_validator16.IsOptional)(),
1176
1184
  (0, import_class_validator16.Matches)(/^GriddedSkylightRatio$/),
1177
- (0, import_class_transformer13.Expose)({ name: "type" })
1185
+ (0, import_class_transformer14.Expose)({ name: "type" })
1178
1186
  ], _GriddedSkylightRatio.prototype, "type", 2);
1179
1187
  __decorateClass([
1180
1188
  (0, import_class_validator16.IsOptional)(),
1181
- (0, import_class_transformer13.Expose)({ name: "spacing" })
1189
+ (0, import_class_transformer14.Expose)({ name: "spacing" })
1182
1190
  ], _GriddedSkylightRatio.prototype, "spacing", 2);
1183
1191
  var GriddedSkylightRatio = _GriddedSkylightRatio;
1184
1192
 
@@ -1188,7 +1196,7 @@ var import_honeybee_schema11 = require("honeybee-schema");
1188
1196
 
1189
1197
  // src/models/LouversByCount.ts
1190
1198
  var import_class_validator17 = require("class-validator");
1191
- var import_class_transformer14 = require("class-transformer");
1199
+ var import_class_transformer15 = require("class-transformer");
1192
1200
  var _LouversByCount = class _LouversByCount extends _LouversBase {
1193
1201
  constructor() {
1194
1202
  super();
@@ -1199,12 +1207,16 @@ var _LouversByCount = class _LouversByCount extends _LouversBase {
1199
1207
  this.type = "LouversByCount";
1200
1208
  }
1201
1209
  init(_data) {
1202
- var _a;
1203
- super.init(_data);
1210
+ var _a, _b, _c, _d, _e;
1204
1211
  if (_data) {
1205
- const obj = (0, import_class_transformer14.plainToClass)(_LouversByCount, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1212
+ const obj = deepTransform(_LouversByCount, _data);
1206
1213
  this.louverCount = obj.louverCount;
1207
1214
  this.type = (_a = obj.type) != null ? _a : "LouversByCount";
1215
+ this.depth = obj.depth;
1216
+ this.offset = (_b = obj.offset) != null ? _b : 0;
1217
+ this.angle = (_c = obj.angle) != null ? _c : 0;
1218
+ this.contourVector = (_d = obj.contourVector) != null ? _d : [0, 1];
1219
+ this.flipStartSide = (_e = obj.flipStartSide) != null ? _e : false;
1208
1220
  }
1209
1221
  }
1210
1222
  static fromJS(data) {
@@ -1226,7 +1238,7 @@ var _LouversByCount = class _LouversByCount extends _LouversBase {
1226
1238
  data["louver_count"] = this.louverCount;
1227
1239
  data["type"] = (_a = this.type) != null ? _a : "LouversByCount";
1228
1240
  data = super.toJSON(data);
1229
- return (0, import_class_transformer14.instanceToPlain)(data, { exposeUnsetFields: false });
1241
+ return (0, import_class_transformer15.instanceToPlain)(data, { exposeUnsetFields: false });
1230
1242
  }
1231
1243
  validate() {
1232
1244
  return __async(this, null, function* () {
@@ -1242,19 +1254,19 @@ var _LouversByCount = class _LouversByCount extends _LouversBase {
1242
1254
  __decorateClass([
1243
1255
  (0, import_class_validator17.IsInt)(),
1244
1256
  (0, import_class_validator17.IsDefined)(),
1245
- (0, import_class_transformer14.Expose)({ name: "louver_count" })
1257
+ (0, import_class_transformer15.Expose)({ name: "louver_count" })
1246
1258
  ], _LouversByCount.prototype, "louverCount", 2);
1247
1259
  __decorateClass([
1248
1260
  (0, import_class_validator17.IsString)(),
1249
1261
  (0, import_class_validator17.IsOptional)(),
1250
1262
  (0, import_class_validator17.Matches)(/^LouversByCount$/),
1251
- (0, import_class_transformer14.Expose)({ name: "type" })
1263
+ (0, import_class_transformer15.Expose)({ name: "type" })
1252
1264
  ], _LouversByCount.prototype, "type", 2);
1253
1265
  var LouversByCount = _LouversByCount;
1254
1266
 
1255
1267
  // src/models/LouversByDistance.ts
1256
1268
  var import_class_validator18 = require("class-validator");
1257
- var import_class_transformer15 = require("class-transformer");
1269
+ var import_class_transformer16 = require("class-transformer");
1258
1270
  var _LouversByDistance = class _LouversByDistance extends _LouversBase {
1259
1271
  constructor() {
1260
1272
  super();
@@ -1265,12 +1277,16 @@ var _LouversByDistance = class _LouversByDistance extends _LouversBase {
1265
1277
  this.type = "LouversByDistance";
1266
1278
  }
1267
1279
  init(_data) {
1268
- var _a;
1269
- super.init(_data);
1280
+ var _a, _b, _c, _d, _e;
1270
1281
  if (_data) {
1271
- const obj = (0, import_class_transformer15.plainToClass)(_LouversByDistance, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1282
+ const obj = deepTransform(_LouversByDistance, _data);
1272
1283
  this.distance = obj.distance;
1273
1284
  this.type = (_a = obj.type) != null ? _a : "LouversByDistance";
1285
+ this.depth = obj.depth;
1286
+ this.offset = (_b = obj.offset) != null ? _b : 0;
1287
+ this.angle = (_c = obj.angle) != null ? _c : 0;
1288
+ this.contourVector = (_d = obj.contourVector) != null ? _d : [0, 1];
1289
+ this.flipStartSide = (_e = obj.flipStartSide) != null ? _e : false;
1274
1290
  }
1275
1291
  }
1276
1292
  static fromJS(data) {
@@ -1292,7 +1308,7 @@ var _LouversByDistance = class _LouversByDistance extends _LouversBase {
1292
1308
  data["distance"] = this.distance;
1293
1309
  data["type"] = (_a = this.type) != null ? _a : "LouversByDistance";
1294
1310
  data = super.toJSON(data);
1295
- return (0, import_class_transformer15.instanceToPlain)(data, { exposeUnsetFields: false });
1311
+ return (0, import_class_transformer16.instanceToPlain)(data, { exposeUnsetFields: false });
1296
1312
  }
1297
1313
  validate() {
1298
1314
  return __async(this, null, function* () {
@@ -1308,13 +1324,13 @@ var _LouversByDistance = class _LouversByDistance extends _LouversBase {
1308
1324
  __decorateClass([
1309
1325
  (0, import_class_validator18.IsNumber)(),
1310
1326
  (0, import_class_validator18.IsDefined)(),
1311
- (0, import_class_transformer15.Expose)({ name: "distance" })
1327
+ (0, import_class_transformer16.Expose)({ name: "distance" })
1312
1328
  ], _LouversByDistance.prototype, "distance", 2);
1313
1329
  __decorateClass([
1314
1330
  (0, import_class_validator18.IsString)(),
1315
1331
  (0, import_class_validator18.IsOptional)(),
1316
1332
  (0, import_class_validator18.Matches)(/^LouversByDistance$/),
1317
- (0, import_class_transformer15.Expose)({ name: "type" })
1333
+ (0, import_class_transformer16.Expose)({ name: "type" })
1318
1334
  ], _LouversByDistance.prototype, "type", 2);
1319
1335
  var LouversByDistance = _LouversByDistance;
1320
1336
 
@@ -1324,7 +1340,7 @@ var import_honeybee_schema13 = require("honeybee-schema");
1324
1340
 
1325
1341
  // src/models/Overhang.ts
1326
1342
  var import_class_validator19 = require("class-validator");
1327
- var import_class_transformer16 = require("class-transformer");
1343
+ var import_class_transformer17 = require("class-transformer");
1328
1344
  var _Overhang = class _Overhang extends _OpenAPIGenBaseModel {
1329
1345
  constructor() {
1330
1346
  super();
@@ -1339,9 +1355,8 @@ var _Overhang = class _Overhang extends _OpenAPIGenBaseModel {
1339
1355
  }
1340
1356
  init(_data) {
1341
1357
  var _a, _b;
1342
- super.init(_data);
1343
1358
  if (_data) {
1344
- const obj = (0, import_class_transformer16.plainToClass)(_Overhang, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1359
+ const obj = deepTransform(_Overhang, _data);
1345
1360
  this.depth = obj.depth;
1346
1361
  this.type = (_a = obj.type) != null ? _a : "Overhang";
1347
1362
  this.angle = (_b = obj.angle) != null ? _b : 0;
@@ -1367,7 +1382,7 @@ var _Overhang = class _Overhang extends _OpenAPIGenBaseModel {
1367
1382
  data["type"] = (_a = this.type) != null ? _a : "Overhang";
1368
1383
  data["angle"] = (_b = this.angle) != null ? _b : 0;
1369
1384
  data = super.toJSON(data);
1370
- return (0, import_class_transformer16.instanceToPlain)(data, { exposeUnsetFields: false });
1385
+ return (0, import_class_transformer17.instanceToPlain)(data, { exposeUnsetFields: false });
1371
1386
  }
1372
1387
  validate() {
1373
1388
  return __async(this, null, function* () {
@@ -1383,26 +1398,26 @@ var _Overhang = class _Overhang extends _OpenAPIGenBaseModel {
1383
1398
  __decorateClass([
1384
1399
  (0, import_class_validator19.IsNumber)(),
1385
1400
  (0, import_class_validator19.IsDefined)(),
1386
- (0, import_class_transformer16.Expose)({ name: "depth" })
1401
+ (0, import_class_transformer17.Expose)({ name: "depth" })
1387
1402
  ], _Overhang.prototype, "depth", 2);
1388
1403
  __decorateClass([
1389
1404
  (0, import_class_validator19.IsString)(),
1390
1405
  (0, import_class_validator19.IsOptional)(),
1391
1406
  (0, import_class_validator19.Matches)(/^Overhang$/),
1392
- (0, import_class_transformer16.Expose)({ name: "type" })
1407
+ (0, import_class_transformer17.Expose)({ name: "type" })
1393
1408
  ], _Overhang.prototype, "type", 2);
1394
1409
  __decorateClass([
1395
1410
  (0, import_class_validator19.IsNumber)(),
1396
1411
  (0, import_class_validator19.IsOptional)(),
1397
1412
  (0, import_class_validator19.Min)(-90),
1398
1413
  (0, import_class_validator19.Max)(90),
1399
- (0, import_class_transformer16.Expose)({ name: "angle" })
1414
+ (0, import_class_transformer17.Expose)({ name: "angle" })
1400
1415
  ], _Overhang.prototype, "angle", 2);
1401
1416
  var Overhang = _Overhang;
1402
1417
 
1403
1418
  // src/models/RectangularWindows.ts
1404
1419
  var import_class_validator20 = require("class-validator");
1405
- var import_class_transformer17 = require("class-transformer");
1420
+ var import_class_transformer18 = require("class-transformer");
1406
1421
  var _RectangularWindows = class _RectangularWindows extends _WindowParameterBase {
1407
1422
  constructor() {
1408
1423
  super();
@@ -1420,14 +1435,14 @@ var _RectangularWindows = class _RectangularWindows extends _WindowParameterBase
1420
1435
  }
1421
1436
  init(_data) {
1422
1437
  var _a;
1423
- super.init(_data);
1424
1438
  if (_data) {
1425
- const obj = (0, import_class_transformer17.plainToClass)(_RectangularWindows, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1439
+ const obj = deepTransform(_RectangularWindows, _data);
1426
1440
  this.origins = obj.origins;
1427
1441
  this.widths = obj.widths;
1428
1442
  this.heights = obj.heights;
1429
1443
  this.type = (_a = obj.type) != null ? _a : "RectangularWindows";
1430
1444
  this.areDoors = obj.areDoors;
1445
+ this.userData = obj.userData;
1431
1446
  }
1432
1447
  }
1433
1448
  static fromJS(data) {
@@ -1452,7 +1467,7 @@ var _RectangularWindows = class _RectangularWindows extends _WindowParameterBase
1452
1467
  data["type"] = (_a = this.type) != null ? _a : "RectangularWindows";
1453
1468
  data["are_doors"] = this.areDoors;
1454
1469
  data = super.toJSON(data);
1455
- return (0, import_class_transformer17.instanceToPlain)(data, { exposeUnsetFields: false });
1470
+ return (0, import_class_transformer18.instanceToPlain)(data, { exposeUnsetFields: false });
1456
1471
  }
1457
1472
  validate() {
1458
1473
  return __async(this, null, function* () {
@@ -1469,37 +1484,37 @@ __decorateClass([
1469
1484
  (0, import_class_validator20.IsArray)(),
1470
1485
  IsNestedNumberArray(),
1471
1486
  (0, import_class_validator20.IsDefined)(),
1472
- (0, import_class_transformer17.Expose)({ name: "origins" })
1487
+ (0, import_class_transformer18.Expose)({ name: "origins" })
1473
1488
  ], _RectangularWindows.prototype, "origins", 2);
1474
1489
  __decorateClass([
1475
1490
  (0, import_class_validator20.IsArray)(),
1476
1491
  (0, import_class_validator20.IsNumber)({}, { each: true }),
1477
1492
  (0, import_class_validator20.IsDefined)(),
1478
- (0, import_class_transformer17.Expose)({ name: "widths" })
1493
+ (0, import_class_transformer18.Expose)({ name: "widths" })
1479
1494
  ], _RectangularWindows.prototype, "widths", 2);
1480
1495
  __decorateClass([
1481
1496
  (0, import_class_validator20.IsArray)(),
1482
1497
  (0, import_class_validator20.IsNumber)({}, { each: true }),
1483
1498
  (0, import_class_validator20.IsDefined)(),
1484
- (0, import_class_transformer17.Expose)({ name: "heights" })
1499
+ (0, import_class_transformer18.Expose)({ name: "heights" })
1485
1500
  ], _RectangularWindows.prototype, "heights", 2);
1486
1501
  __decorateClass([
1487
1502
  (0, import_class_validator20.IsString)(),
1488
1503
  (0, import_class_validator20.IsOptional)(),
1489
1504
  (0, import_class_validator20.Matches)(/^RectangularWindows$/),
1490
- (0, import_class_transformer17.Expose)({ name: "type" })
1505
+ (0, import_class_transformer18.Expose)({ name: "type" })
1491
1506
  ], _RectangularWindows.prototype, "type", 2);
1492
1507
  __decorateClass([
1493
1508
  (0, import_class_validator20.IsArray)(),
1494
1509
  (0, import_class_validator20.IsBoolean)({ each: true }),
1495
1510
  (0, import_class_validator20.IsOptional)(),
1496
- (0, import_class_transformer17.Expose)({ name: "are_doors" })
1511
+ (0, import_class_transformer18.Expose)({ name: "are_doors" })
1497
1512
  ], _RectangularWindows.prototype, "areDoors", 2);
1498
1513
  var RectangularWindows = _RectangularWindows;
1499
1514
 
1500
1515
  // src/models/RepeatingWindowRatio.ts
1501
1516
  var import_class_validator22 = require("class-validator");
1502
- var import_class_transformer18 = require("class-transformer");
1517
+ var import_class_transformer19 = require("class-transformer");
1503
1518
  var _RepeatingWindowRatio = class _RepeatingWindowRatio extends _WindowParameterBase {
1504
1519
  constructor() {
1505
1520
  super();
@@ -1520,15 +1535,15 @@ var _RepeatingWindowRatio = class _RepeatingWindowRatio extends _WindowParameter
1520
1535
  }
1521
1536
  init(_data) {
1522
1537
  var _a, _b;
1523
- super.init(_data);
1524
1538
  if (_data) {
1525
- const obj = (0, import_class_transformer18.plainToClass)(_RepeatingWindowRatio, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1539
+ const obj = deepTransform(_RepeatingWindowRatio, _data);
1526
1540
  this.windowRatio = obj.windowRatio;
1527
1541
  this.windowHeight = obj.windowHeight;
1528
1542
  this.sillHeight = obj.sillHeight;
1529
1543
  this.horizontalSeparation = obj.horizontalSeparation;
1530
1544
  this.type = (_a = obj.type) != null ? _a : "RepeatingWindowRatio";
1531
1545
  this.verticalSeparation = (_b = obj.verticalSeparation) != null ? _b : 0;
1546
+ this.userData = obj.userData;
1532
1547
  }
1533
1548
  }
1534
1549
  static fromJS(data) {
@@ -1554,7 +1569,7 @@ var _RepeatingWindowRatio = class _RepeatingWindowRatio extends _WindowParameter
1554
1569
  data["type"] = (_a = this.type) != null ? _a : "RepeatingWindowRatio";
1555
1570
  data["vertical_separation"] = (_b = this.verticalSeparation) != null ? _b : 0;
1556
1571
  data = super.toJSON(data);
1557
- return (0, import_class_transformer18.instanceToPlain)(data, { exposeUnsetFields: false });
1572
+ return (0, import_class_transformer19.instanceToPlain)(data, { exposeUnsetFields: false });
1558
1573
  }
1559
1574
  validate() {
1560
1575
  return __async(this, null, function* () {
@@ -1570,49 +1585,49 @@ var _RepeatingWindowRatio = class _RepeatingWindowRatio extends _WindowParameter
1570
1585
  __decorateClass([
1571
1586
  (0, import_class_validator22.IsNumber)(),
1572
1587
  (0, import_class_validator22.IsDefined)(),
1573
- (0, import_class_transformer18.Expose)({ name: "window_ratio" })
1588
+ (0, import_class_transformer19.Expose)({ name: "window_ratio" })
1574
1589
  ], _RepeatingWindowRatio.prototype, "windowRatio", 2);
1575
1590
  __decorateClass([
1576
1591
  (0, import_class_validator22.IsNumber)(),
1577
1592
  (0, import_class_validator22.IsDefined)(),
1578
- (0, import_class_transformer18.Expose)({ name: "window_height" })
1593
+ (0, import_class_transformer19.Expose)({ name: "window_height" })
1579
1594
  ], _RepeatingWindowRatio.prototype, "windowHeight", 2);
1580
1595
  __decorateClass([
1581
1596
  (0, import_class_validator22.IsNumber)(),
1582
1597
  (0, import_class_validator22.IsDefined)(),
1583
- (0, import_class_transformer18.Expose)({ name: "sill_height" })
1598
+ (0, import_class_transformer19.Expose)({ name: "sill_height" })
1584
1599
  ], _RepeatingWindowRatio.prototype, "sillHeight", 2);
1585
1600
  __decorateClass([
1586
1601
  (0, import_class_validator22.IsNumber)(),
1587
1602
  (0, import_class_validator22.IsDefined)(),
1588
1603
  (0, import_class_validator22.Min)(0),
1589
- (0, import_class_transformer18.Expose)({ name: "horizontal_separation" })
1604
+ (0, import_class_transformer19.Expose)({ name: "horizontal_separation" })
1590
1605
  ], _RepeatingWindowRatio.prototype, "horizontalSeparation", 2);
1591
1606
  __decorateClass([
1592
1607
  (0, import_class_validator22.IsString)(),
1593
1608
  (0, import_class_validator22.IsOptional)(),
1594
1609
  (0, import_class_validator22.Matches)(/^RepeatingWindowRatio$/),
1595
- (0, import_class_transformer18.Expose)({ name: "type" })
1610
+ (0, import_class_transformer19.Expose)({ name: "type" })
1596
1611
  ], _RepeatingWindowRatio.prototype, "type", 2);
1597
1612
  __decorateClass([
1598
1613
  (0, import_class_validator22.IsNumber)(),
1599
1614
  (0, import_class_validator22.IsOptional)(),
1600
1615
  (0, import_class_validator22.Min)(0),
1601
- (0, import_class_transformer18.Expose)({ name: "vertical_separation" })
1616
+ (0, import_class_transformer19.Expose)({ name: "vertical_separation" })
1602
1617
  ], _RepeatingWindowRatio.prototype, "verticalSeparation", 2);
1603
1618
  var RepeatingWindowRatio = _RepeatingWindowRatio;
1604
1619
 
1605
1620
  // src/models/Room2DPropertiesAbridged.ts
1606
1621
  var import_class_validator35 = require("class-validator");
1607
- var import_class_transformer30 = require("class-transformer");
1622
+ var import_class_transformer31 = require("class-transformer");
1608
1623
 
1609
1624
  // src/models/Room2DComparisonProperties.ts
1610
1625
  var import_class_validator26 = require("class-validator");
1611
- var import_class_transformer22 = require("class-transformer");
1626
+ var import_class_transformer23 = require("class-transformer");
1612
1627
 
1613
1628
  // src/models/SimpleWindowArea.ts
1614
1629
  var import_class_validator23 = require("class-validator");
1615
- var import_class_transformer19 = require("class-transformer");
1630
+ var import_class_transformer20 = require("class-transformer");
1616
1631
  var _SimpleWindowArea = class _SimpleWindowArea extends _WindowParameterBase {
1617
1632
  constructor() {
1618
1633
  super();
@@ -1627,12 +1642,12 @@ var _SimpleWindowArea = class _SimpleWindowArea extends _WindowParameterBase {
1627
1642
  }
1628
1643
  init(_data) {
1629
1644
  var _a, _b;
1630
- super.init(_data);
1631
1645
  if (_data) {
1632
- const obj = (0, import_class_transformer19.plainToClass)(_SimpleWindowArea, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1646
+ const obj = deepTransform(_SimpleWindowArea, _data);
1633
1647
  this.windowArea = obj.windowArea;
1634
1648
  this.type = (_a = obj.type) != null ? _a : "SimpleWindowArea";
1635
1649
  this.rectSplit = (_b = obj.rectSplit) != null ? _b : true;
1650
+ this.userData = obj.userData;
1636
1651
  }
1637
1652
  }
1638
1653
  static fromJS(data) {
@@ -1655,7 +1670,7 @@ var _SimpleWindowArea = class _SimpleWindowArea extends _WindowParameterBase {
1655
1670
  data["type"] = (_a = this.type) != null ? _a : "SimpleWindowArea";
1656
1671
  data["rect_split"] = (_b = this.rectSplit) != null ? _b : true;
1657
1672
  data = super.toJSON(data);
1658
- return (0, import_class_transformer19.instanceToPlain)(data, { exposeUnsetFields: false });
1673
+ return (0, import_class_transformer20.instanceToPlain)(data, { exposeUnsetFields: false });
1659
1674
  }
1660
1675
  validate() {
1661
1676
  return __async(this, null, function* () {
@@ -1671,24 +1686,24 @@ var _SimpleWindowArea = class _SimpleWindowArea extends _WindowParameterBase {
1671
1686
  __decorateClass([
1672
1687
  (0, import_class_validator23.IsNumber)(),
1673
1688
  (0, import_class_validator23.IsDefined)(),
1674
- (0, import_class_transformer19.Expose)({ name: "window_area" })
1689
+ (0, import_class_transformer20.Expose)({ name: "window_area" })
1675
1690
  ], _SimpleWindowArea.prototype, "windowArea", 2);
1676
1691
  __decorateClass([
1677
1692
  (0, import_class_validator23.IsString)(),
1678
1693
  (0, import_class_validator23.IsOptional)(),
1679
1694
  (0, import_class_validator23.Matches)(/^SimpleWindowArea$/),
1680
- (0, import_class_transformer19.Expose)({ name: "type" })
1695
+ (0, import_class_transformer20.Expose)({ name: "type" })
1681
1696
  ], _SimpleWindowArea.prototype, "type", 2);
1682
1697
  __decorateClass([
1683
1698
  (0, import_class_validator23.IsBoolean)(),
1684
1699
  (0, import_class_validator23.IsOptional)(),
1685
- (0, import_class_transformer19.Expose)({ name: "rect_split" })
1700
+ (0, import_class_transformer20.Expose)({ name: "rect_split" })
1686
1701
  ], _SimpleWindowArea.prototype, "rectSplit", 2);
1687
1702
  var SimpleWindowArea = _SimpleWindowArea;
1688
1703
 
1689
1704
  // src/models/SimpleWindowRatio.ts
1690
1705
  var import_class_validator24 = require("class-validator");
1691
- var import_class_transformer20 = require("class-transformer");
1706
+ var import_class_transformer21 = require("class-transformer");
1692
1707
  var _SimpleWindowRatio = class _SimpleWindowRatio extends _WindowParameterBase {
1693
1708
  constructor() {
1694
1709
  super();
@@ -1703,12 +1718,12 @@ var _SimpleWindowRatio = class _SimpleWindowRatio extends _WindowParameterBase {
1703
1718
  }
1704
1719
  init(_data) {
1705
1720
  var _a, _b;
1706
- super.init(_data);
1707
1721
  if (_data) {
1708
- const obj = (0, import_class_transformer20.plainToClass)(_SimpleWindowRatio, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1722
+ const obj = deepTransform(_SimpleWindowRatio, _data);
1709
1723
  this.windowRatio = obj.windowRatio;
1710
1724
  this.type = (_a = obj.type) != null ? _a : "SimpleWindowRatio";
1711
1725
  this.rectSplit = (_b = obj.rectSplit) != null ? _b : true;
1726
+ this.userData = obj.userData;
1712
1727
  }
1713
1728
  }
1714
1729
  static fromJS(data) {
@@ -1731,7 +1746,7 @@ var _SimpleWindowRatio = class _SimpleWindowRatio extends _WindowParameterBase {
1731
1746
  data["type"] = (_a = this.type) != null ? _a : "SimpleWindowRatio";
1732
1747
  data["rect_split"] = (_b = this.rectSplit) != null ? _b : true;
1733
1748
  data = super.toJSON(data);
1734
- return (0, import_class_transformer20.instanceToPlain)(data, { exposeUnsetFields: false });
1749
+ return (0, import_class_transformer21.instanceToPlain)(data, { exposeUnsetFields: false });
1735
1750
  }
1736
1751
  validate() {
1737
1752
  return __async(this, null, function* () {
@@ -1747,24 +1762,24 @@ var _SimpleWindowRatio = class _SimpleWindowRatio extends _WindowParameterBase {
1747
1762
  __decorateClass([
1748
1763
  (0, import_class_validator24.IsNumber)(),
1749
1764
  (0, import_class_validator24.IsDefined)(),
1750
- (0, import_class_transformer20.Expose)({ name: "window_ratio" })
1765
+ (0, import_class_transformer21.Expose)({ name: "window_ratio" })
1751
1766
  ], _SimpleWindowRatio.prototype, "windowRatio", 2);
1752
1767
  __decorateClass([
1753
1768
  (0, import_class_validator24.IsString)(),
1754
1769
  (0, import_class_validator24.IsOptional)(),
1755
1770
  (0, import_class_validator24.Matches)(/^SimpleWindowRatio$/),
1756
- (0, import_class_transformer20.Expose)({ name: "type" })
1771
+ (0, import_class_transformer21.Expose)({ name: "type" })
1757
1772
  ], _SimpleWindowRatio.prototype, "type", 2);
1758
1773
  __decorateClass([
1759
1774
  (0, import_class_validator24.IsBoolean)(),
1760
1775
  (0, import_class_validator24.IsOptional)(),
1761
- (0, import_class_transformer20.Expose)({ name: "rect_split" })
1776
+ (0, import_class_transformer21.Expose)({ name: "rect_split" })
1762
1777
  ], _SimpleWindowRatio.prototype, "rectSplit", 2);
1763
1778
  var SimpleWindowRatio = _SimpleWindowRatio;
1764
1779
 
1765
1780
  // src/models/SingleWindow.ts
1766
1781
  var import_class_validator25 = require("class-validator");
1767
- var import_class_transformer21 = require("class-transformer");
1782
+ var import_class_transformer22 = require("class-transformer");
1768
1783
  var _SingleWindow = class _SingleWindow extends _WindowParameterBase {
1769
1784
  constructor() {
1770
1785
  super();
@@ -1781,13 +1796,13 @@ var _SingleWindow = class _SingleWindow extends _WindowParameterBase {
1781
1796
  }
1782
1797
  init(_data) {
1783
1798
  var _a, _b;
1784
- super.init(_data);
1785
1799
  if (_data) {
1786
- const obj = (0, import_class_transformer21.plainToClass)(_SingleWindow, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1800
+ const obj = deepTransform(_SingleWindow, _data);
1787
1801
  this.width = obj.width;
1788
1802
  this.height = obj.height;
1789
1803
  this.type = (_a = obj.type) != null ? _a : "SingleWindow";
1790
1804
  this.sillHeight = (_b = obj.sillHeight) != null ? _b : 1;
1805
+ this.userData = obj.userData;
1791
1806
  }
1792
1807
  }
1793
1808
  static fromJS(data) {
@@ -1811,7 +1826,7 @@ var _SingleWindow = class _SingleWindow extends _WindowParameterBase {
1811
1826
  data["type"] = (_a = this.type) != null ? _a : "SingleWindow";
1812
1827
  data["sill_height"] = (_b = this.sillHeight) != null ? _b : 1;
1813
1828
  data = super.toJSON(data);
1814
- return (0, import_class_transformer21.instanceToPlain)(data, { exposeUnsetFields: false });
1829
+ return (0, import_class_transformer22.instanceToPlain)(data, { exposeUnsetFields: false });
1815
1830
  }
1816
1831
  validate() {
1817
1832
  return __async(this, null, function* () {
@@ -1827,23 +1842,23 @@ var _SingleWindow = class _SingleWindow extends _WindowParameterBase {
1827
1842
  __decorateClass([
1828
1843
  (0, import_class_validator25.IsNumber)(),
1829
1844
  (0, import_class_validator25.IsDefined)(),
1830
- (0, import_class_transformer21.Expose)({ name: "width" })
1845
+ (0, import_class_transformer22.Expose)({ name: "width" })
1831
1846
  ], _SingleWindow.prototype, "width", 2);
1832
1847
  __decorateClass([
1833
1848
  (0, import_class_validator25.IsNumber)(),
1834
1849
  (0, import_class_validator25.IsDefined)(),
1835
- (0, import_class_transformer21.Expose)({ name: "height" })
1850
+ (0, import_class_transformer22.Expose)({ name: "height" })
1836
1851
  ], _SingleWindow.prototype, "height", 2);
1837
1852
  __decorateClass([
1838
1853
  (0, import_class_validator25.IsString)(),
1839
1854
  (0, import_class_validator25.IsOptional)(),
1840
1855
  (0, import_class_validator25.Matches)(/^SingleWindow$/),
1841
- (0, import_class_transformer21.Expose)({ name: "type" })
1856
+ (0, import_class_transformer22.Expose)({ name: "type" })
1842
1857
  ], _SingleWindow.prototype, "type", 2);
1843
1858
  __decorateClass([
1844
1859
  (0, import_class_validator25.IsNumber)(),
1845
1860
  (0, import_class_validator25.IsOptional)(),
1846
- (0, import_class_transformer21.Expose)({ name: "sill_height" })
1861
+ (0, import_class_transformer22.Expose)({ name: "sill_height" })
1847
1862
  ], _SingleWindow.prototype, "sillHeight", 2);
1848
1863
  var SingleWindow = _SingleWindow;
1849
1864
 
@@ -1865,9 +1880,8 @@ var _Room2DComparisonProperties = class _Room2DComparisonProperties extends _Ope
1865
1880
  }
1866
1881
  init(_data) {
1867
1882
  var _a;
1868
- super.init(_data);
1869
1883
  if (_data) {
1870
- const obj = (0, import_class_transformer22.plainToClass)(_Room2DComparisonProperties, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
1884
+ const obj = deepTransform(_Room2DComparisonProperties, _data);
1871
1885
  this.type = (_a = obj.type) != null ? _a : "Room2DComparisonProperties";
1872
1886
  this.floorBoundary = obj.floorBoundary;
1873
1887
  this.floorHoles = obj.floorHoles;
@@ -1897,7 +1911,7 @@ var _Room2DComparisonProperties = class _Room2DComparisonProperties extends _Ope
1897
1911
  data["comparison_windows"] = this.comparisonWindows;
1898
1912
  data["comparison_skylight"] = this.comparisonSkylight;
1899
1913
  data = super.toJSON(data);
1900
- return (0, import_class_transformer22.instanceToPlain)(data, { exposeUnsetFields: false });
1914
+ return (0, import_class_transformer23.instanceToPlain)(data, { exposeUnsetFields: false });
1901
1915
  }
1902
1916
  validate() {
1903
1917
  return __async(this, null, function* () {
@@ -1914,25 +1928,25 @@ __decorateClass([
1914
1928
  (0, import_class_validator26.IsString)(),
1915
1929
  (0, import_class_validator26.IsOptional)(),
1916
1930
  (0, import_class_validator26.Matches)(/^Room2DComparisonProperties$/),
1917
- (0, import_class_transformer22.Expose)({ name: "type" })
1931
+ (0, import_class_transformer23.Expose)({ name: "type" })
1918
1932
  ], _Room2DComparisonProperties.prototype, "type", 2);
1919
1933
  __decorateClass([
1920
1934
  (0, import_class_validator26.IsArray)(),
1921
1935
  IsNestedNumberArray(),
1922
1936
  (0, import_class_validator26.IsOptional)(),
1923
- (0, import_class_transformer22.Expose)({ name: "floor_boundary" })
1937
+ (0, import_class_transformer23.Expose)({ name: "floor_boundary" })
1924
1938
  ], _Room2DComparisonProperties.prototype, "floorBoundary", 2);
1925
1939
  __decorateClass([
1926
1940
  (0, import_class_validator26.IsArray)(),
1927
1941
  IsNestedNumberArray(),
1928
1942
  (0, import_class_validator26.IsOptional)(),
1929
- (0, import_class_transformer22.Expose)({ name: "floor_holes" })
1943
+ (0, import_class_transformer23.Expose)({ name: "floor_holes" })
1930
1944
  ], _Room2DComparisonProperties.prototype, "floorHoles", 2);
1931
1945
  __decorateClass([
1932
1946
  (0, import_class_validator26.IsArray)(),
1933
1947
  (0, import_class_validator26.IsOptional)(),
1934
- (0, import_class_transformer22.Expose)({ name: "comparison_windows" }),
1935
- (0, import_class_transformer22.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
1948
+ (0, import_class_transformer23.Expose)({ name: "comparison_windows" }),
1949
+ (0, import_class_transformer23.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
1936
1950
  if ((item == null ? void 0 : item.type) === "SingleWindow") return SingleWindow.fromJS(item);
1937
1951
  else if ((item == null ? void 0 : item.type) === "SimpleWindowArea") return SimpleWindowArea.fromJS(item);
1938
1952
  else if ((item == null ? void 0 : item.type) === "SimpleWindowRatio") return SimpleWindowRatio.fromJS(item);
@@ -1944,8 +1958,8 @@ __decorateClass([
1944
1958
  ], _Room2DComparisonProperties.prototype, "comparisonWindows", 2);
1945
1959
  __decorateClass([
1946
1960
  (0, import_class_validator26.IsOptional)(),
1947
- (0, import_class_transformer22.Expose)({ name: "comparison_skylight" }),
1948
- (0, import_class_transformer22.Transform)(({ value }) => {
1961
+ (0, import_class_transformer23.Expose)({ name: "comparison_skylight" }),
1962
+ (0, import_class_transformer23.Transform)(({ value }) => {
1949
1963
  const item = value;
1950
1964
  if ((item == null ? void 0 : item.type) === "GriddedSkylightArea") return GriddedSkylightArea.fromJS(item);
1951
1965
  else if ((item == null ? void 0 : item.type) === "GriddedSkylightRatio") return GriddedSkylightRatio.fromJS(item);
@@ -1957,7 +1971,7 @@ var Room2DComparisonProperties = _Room2DComparisonProperties;
1957
1971
 
1958
1972
  // src/models/Room2DDoe2Properties.ts
1959
1973
  var import_class_validator28 = require("class-validator");
1960
- var import_class_transformer23 = require("class-transformer");
1974
+ var import_class_transformer24 = require("class-transformer");
1961
1975
  var import_honeybee_schema4 = require("honeybee-schema");
1962
1976
  var _Room2DDoe2Properties = class _Room2DDoe2Properties extends _OpenAPIGenBaseModel {
1963
1977
  constructor() {
@@ -1983,9 +1997,8 @@ var _Room2DDoe2Properties = class _Room2DDoe2Properties extends _OpenAPIGenBaseM
1983
1997
  }
1984
1998
  init(_data) {
1985
1999
  var _a, _b, _c, _d, _e, _f;
1986
- super.init(_data);
1987
2000
  if (_data) {
1988
- const obj = (0, import_class_transformer23.plainToClass)(_Room2DDoe2Properties, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2001
+ const obj = deepTransform(_Room2DDoe2Properties, _data);
1989
2002
  this.type = (_a = obj.type) != null ? _a : "Room2DDoe2Properties";
1990
2003
  this.assignedFlow = (_b = obj.assignedFlow) != null ? _b : new import_honeybee_schema4.Autocalculate();
1991
2004
  this.flowPerArea = (_c = obj.flowPerArea) != null ? _c : new import_honeybee_schema4.Autocalculate();
@@ -2017,7 +2030,7 @@ var _Room2DDoe2Properties = class _Room2DDoe2Properties extends _OpenAPIGenBaseM
2017
2030
  data["min_flow_per_area"] = (_e = this.minFlowPerArea) != null ? _e : new import_honeybee_schema4.Autocalculate();
2018
2031
  data["hmax_flow_ratio"] = (_f = this.hmaxFlowRatio) != null ? _f : new import_honeybee_schema4.Autocalculate();
2019
2032
  data = super.toJSON(data);
2020
- return (0, import_class_transformer23.instanceToPlain)(data, { exposeUnsetFields: false });
2033
+ return (0, import_class_transformer24.instanceToPlain)(data, { exposeUnsetFields: false });
2021
2034
  }
2022
2035
  validate() {
2023
2036
  return __async(this, null, function* () {
@@ -2034,33 +2047,33 @@ __decorateClass([
2034
2047
  (0, import_class_validator28.IsString)(),
2035
2048
  (0, import_class_validator28.IsOptional)(),
2036
2049
  (0, import_class_validator28.Matches)(/^Room2DDoe2Properties$/),
2037
- (0, import_class_transformer23.Expose)({ name: "type" })
2050
+ (0, import_class_transformer24.Expose)({ name: "type" })
2038
2051
  ], _Room2DDoe2Properties.prototype, "type", 2);
2039
2052
  __decorateClass([
2040
2053
  (0, import_class_validator28.IsOptional)(),
2041
- (0, import_class_transformer23.Expose)({ name: "assigned_flow" })
2054
+ (0, import_class_transformer24.Expose)({ name: "assigned_flow" })
2042
2055
  ], _Room2DDoe2Properties.prototype, "assignedFlow", 2);
2043
2056
  __decorateClass([
2044
2057
  (0, import_class_validator28.IsOptional)(),
2045
- (0, import_class_transformer23.Expose)({ name: "flow_per_area" })
2058
+ (0, import_class_transformer24.Expose)({ name: "flow_per_area" })
2046
2059
  ], _Room2DDoe2Properties.prototype, "flowPerArea", 2);
2047
2060
  __decorateClass([
2048
2061
  (0, import_class_validator28.IsOptional)(),
2049
- (0, import_class_transformer23.Expose)({ name: "min_flow_ratio" })
2062
+ (0, import_class_transformer24.Expose)({ name: "min_flow_ratio" })
2050
2063
  ], _Room2DDoe2Properties.prototype, "minFlowRatio", 2);
2051
2064
  __decorateClass([
2052
2065
  (0, import_class_validator28.IsOptional)(),
2053
- (0, import_class_transformer23.Expose)({ name: "min_flow_per_area" })
2066
+ (0, import_class_transformer24.Expose)({ name: "min_flow_per_area" })
2054
2067
  ], _Room2DDoe2Properties.prototype, "minFlowPerArea", 2);
2055
2068
  __decorateClass([
2056
2069
  (0, import_class_validator28.IsOptional)(),
2057
- (0, import_class_transformer23.Expose)({ name: "hmax_flow_ratio" })
2070
+ (0, import_class_transformer24.Expose)({ name: "hmax_flow_ratio" })
2058
2071
  ], _Room2DDoe2Properties.prototype, "hmaxFlowRatio", 2);
2059
2072
  var Room2DDoe2Properties = _Room2DDoe2Properties;
2060
2073
 
2061
2074
  // src/models/Room2DEnergyPropertiesAbridged.ts
2062
2075
  var import_class_validator29 = require("class-validator");
2063
- var import_class_transformer24 = require("class-transformer");
2076
+ var import_class_transformer25 = require("class-transformer");
2064
2077
  var import_honeybee_schema5 = require("honeybee-schema");
2065
2078
  var import_honeybee_schema6 = require("honeybee-schema");
2066
2079
  var import_honeybee_schema7 = require("honeybee-schema");
@@ -2087,9 +2100,8 @@ var _Room2DEnergyPropertiesAbridged = class _Room2DEnergyPropertiesAbridged exte
2087
2100
  }
2088
2101
  init(_data) {
2089
2102
  var _a;
2090
- super.init(_data);
2091
2103
  if (_data) {
2092
- const obj = (0, import_class_transformer24.plainToClass)(_Room2DEnergyPropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2104
+ const obj = deepTransform(_Room2DEnergyPropertiesAbridged, _data);
2093
2105
  this.type = (_a = obj.type) != null ? _a : "Room2DEnergyPropertiesAbridged";
2094
2106
  this.constructionSet = obj.constructionSet;
2095
2107
  this.programType = obj.programType;
@@ -2125,7 +2137,7 @@ var _Room2DEnergyPropertiesAbridged = class _Room2DEnergyPropertiesAbridged exte
2125
2137
  data["window_vent_opening"] = this.windowVentOpening;
2126
2138
  data["process_loads"] = this.processLoads;
2127
2139
  data = super.toJSON(data);
2128
- return (0, import_class_transformer24.instanceToPlain)(data, { exposeUnsetFields: false });
2140
+ return (0, import_class_transformer25.instanceToPlain)(data, { exposeUnsetFields: false });
2129
2141
  }
2130
2142
  validate() {
2131
2143
  return __async(this, null, function* () {
@@ -2142,67 +2154,67 @@ __decorateClass([
2142
2154
  (0, import_class_validator29.IsString)(),
2143
2155
  (0, import_class_validator29.IsOptional)(),
2144
2156
  (0, import_class_validator29.Matches)(/^Room2DEnergyPropertiesAbridged$/),
2145
- (0, import_class_transformer24.Expose)({ name: "type" })
2157
+ (0, import_class_transformer25.Expose)({ name: "type" })
2146
2158
  ], _Room2DEnergyPropertiesAbridged.prototype, "type", 2);
2147
2159
  __decorateClass([
2148
2160
  (0, import_class_validator29.IsString)(),
2149
2161
  (0, import_class_validator29.IsOptional)(),
2150
2162
  (0, import_class_validator29.MinLength)(1),
2151
2163
  (0, import_class_validator29.MaxLength)(100),
2152
- (0, import_class_transformer24.Expose)({ name: "construction_set" })
2164
+ (0, import_class_transformer25.Expose)({ name: "construction_set" })
2153
2165
  ], _Room2DEnergyPropertiesAbridged.prototype, "constructionSet", 2);
2154
2166
  __decorateClass([
2155
2167
  (0, import_class_validator29.IsString)(),
2156
2168
  (0, import_class_validator29.IsOptional)(),
2157
2169
  (0, import_class_validator29.MinLength)(1),
2158
2170
  (0, import_class_validator29.MaxLength)(100),
2159
- (0, import_class_transformer24.Expose)({ name: "program_type" })
2171
+ (0, import_class_transformer25.Expose)({ name: "program_type" })
2160
2172
  ], _Room2DEnergyPropertiesAbridged.prototype, "programType", 2);
2161
2173
  __decorateClass([
2162
2174
  (0, import_class_validator29.IsString)(),
2163
2175
  (0, import_class_validator29.IsOptional)(),
2164
2176
  (0, import_class_validator29.MinLength)(1),
2165
2177
  (0, import_class_validator29.MaxLength)(100),
2166
- (0, import_class_transformer24.Expose)({ name: "hvac" })
2178
+ (0, import_class_transformer25.Expose)({ name: "hvac" })
2167
2179
  ], _Room2DEnergyPropertiesAbridged.prototype, "hvac", 2);
2168
2180
  __decorateClass([
2169
2181
  (0, import_class_validator29.IsString)(),
2170
2182
  (0, import_class_validator29.IsOptional)(),
2171
2183
  (0, import_class_validator29.MinLength)(1),
2172
2184
  (0, import_class_validator29.MaxLength)(100),
2173
- (0, import_class_transformer24.Expose)({ name: "shw" })
2185
+ (0, import_class_transformer25.Expose)({ name: "shw" })
2174
2186
  ], _Room2DEnergyPropertiesAbridged.prototype, "shw", 2);
2175
2187
  __decorateClass([
2176
2188
  (0, import_class_validator29.IsInstance)(import_honeybee_schema6.VentilationControlAbridged),
2177
- (0, import_class_transformer24.Type)(() => import_honeybee_schema6.VentilationControlAbridged),
2189
+ (0, import_class_transformer25.Type)(() => import_honeybee_schema6.VentilationControlAbridged),
2178
2190
  (0, import_class_validator29.ValidateNested)(),
2179
2191
  (0, import_class_validator29.IsOptional)(),
2180
- (0, import_class_transformer24.Expose)({ name: "window_vent_control" })
2192
+ (0, import_class_transformer25.Expose)({ name: "window_vent_control" })
2181
2193
  ], _Room2DEnergyPropertiesAbridged.prototype, "windowVentControl", 2);
2182
2194
  __decorateClass([
2183
2195
  (0, import_class_validator29.IsInstance)(import_honeybee_schema7.VentilationOpening),
2184
- (0, import_class_transformer24.Type)(() => import_honeybee_schema7.VentilationOpening),
2196
+ (0, import_class_transformer25.Type)(() => import_honeybee_schema7.VentilationOpening),
2185
2197
  (0, import_class_validator29.ValidateNested)(),
2186
2198
  (0, import_class_validator29.IsOptional)(),
2187
- (0, import_class_transformer24.Expose)({ name: "window_vent_opening" })
2199
+ (0, import_class_transformer25.Expose)({ name: "window_vent_opening" })
2188
2200
  ], _Room2DEnergyPropertiesAbridged.prototype, "windowVentOpening", 2);
2189
2201
  __decorateClass([
2190
2202
  (0, import_class_validator29.IsArray)(),
2191
2203
  (0, import_class_validator29.IsInstance)(import_honeybee_schema5.ProcessAbridged, { each: true }),
2192
- (0, import_class_transformer24.Type)(() => import_honeybee_schema5.ProcessAbridged),
2204
+ (0, import_class_transformer25.Type)(() => import_honeybee_schema5.ProcessAbridged),
2193
2205
  (0, import_class_validator29.ValidateNested)({ each: true }),
2194
2206
  (0, import_class_validator29.IsOptional)(),
2195
- (0, import_class_transformer24.Expose)({ name: "process_loads" })
2207
+ (0, import_class_transformer25.Expose)({ name: "process_loads" })
2196
2208
  ], _Room2DEnergyPropertiesAbridged.prototype, "processLoads", 2);
2197
2209
  var Room2DEnergyPropertiesAbridged = _Room2DEnergyPropertiesAbridged;
2198
2210
 
2199
2211
  // src/models/Room2DRadiancePropertiesAbridged.ts
2200
2212
  var import_class_validator34 = require("class-validator");
2201
- var import_class_transformer29 = require("class-transformer");
2213
+ var import_class_transformer30 = require("class-transformer");
2202
2214
 
2203
2215
  // src/models/ExteriorApertureGridParameter.ts
2204
2216
  var import_class_validator30 = require("class-validator");
2205
- var import_class_transformer25 = require("class-transformer");
2217
+ var import_class_transformer26 = require("class-transformer");
2206
2218
 
2207
2219
  // src/models/ExteriorApertureType.ts
2208
2220
  var ExteriorApertureType = /* @__PURE__ */ ((ExteriorApertureType2) => {
@@ -2227,13 +2239,14 @@ var _ExteriorApertureGridParameter = class _ExteriorApertureGridParameter extend
2227
2239
  this.apertureType = "All" /* All */;
2228
2240
  }
2229
2241
  init(_data) {
2230
- var _a, _b, _c;
2231
- super.init(_data);
2242
+ var _a, _b, _c, _d;
2232
2243
  if (_data) {
2233
- const obj = (0, import_class_transformer25.plainToClass)(_ExteriorApertureGridParameter, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2244
+ const obj = deepTransform(_ExteriorApertureGridParameter, _data);
2234
2245
  this.type = (_a = obj.type) != null ? _a : "ExteriorApertureGridParameter";
2235
2246
  this.offset = (_b = obj.offset) != null ? _b : 0.1;
2236
2247
  this.apertureType = (_c = obj.apertureType) != null ? _c : "All" /* All */;
2248
+ this.dimension = obj.dimension;
2249
+ this.includeMesh = (_d = obj.includeMesh) != null ? _d : true;
2237
2250
  }
2238
2251
  }
2239
2252
  static fromJS(data) {
@@ -2256,7 +2269,7 @@ var _ExteriorApertureGridParameter = class _ExteriorApertureGridParameter extend
2256
2269
  data["offset"] = (_b = this.offset) != null ? _b : 0.1;
2257
2270
  data["aperture_type"] = (_c = this.apertureType) != null ? _c : "All" /* All */;
2258
2271
  data = super.toJSON(data);
2259
- return (0, import_class_transformer25.instanceToPlain)(data, { exposeUnsetFields: false });
2272
+ return (0, import_class_transformer26.instanceToPlain)(data, { exposeUnsetFields: false });
2260
2273
  }
2261
2274
  validate() {
2262
2275
  return __async(this, null, function* () {
@@ -2273,24 +2286,24 @@ __decorateClass([
2273
2286
  (0, import_class_validator30.IsString)(),
2274
2287
  (0, import_class_validator30.IsOptional)(),
2275
2288
  (0, import_class_validator30.Matches)(/^ExteriorApertureGridParameter$/),
2276
- (0, import_class_transformer25.Expose)({ name: "type" })
2289
+ (0, import_class_transformer26.Expose)({ name: "type" })
2277
2290
  ], _ExteriorApertureGridParameter.prototype, "type", 2);
2278
2291
  __decorateClass([
2279
2292
  (0, import_class_validator30.IsNumber)(),
2280
2293
  (0, import_class_validator30.IsOptional)(),
2281
- (0, import_class_transformer25.Expose)({ name: "offset" })
2294
+ (0, import_class_transformer26.Expose)({ name: "offset" })
2282
2295
  ], _ExteriorApertureGridParameter.prototype, "offset", 2);
2283
2296
  __decorateClass([
2284
2297
  (0, import_class_validator30.IsEnum)(ExteriorApertureType),
2285
- (0, import_class_transformer25.Type)(() => String),
2298
+ (0, import_class_transformer26.Type)(() => String),
2286
2299
  (0, import_class_validator30.IsOptional)(),
2287
- (0, import_class_transformer25.Expose)({ name: "aperture_type" })
2300
+ (0, import_class_transformer26.Expose)({ name: "aperture_type" })
2288
2301
  ], _ExteriorApertureGridParameter.prototype, "apertureType", 2);
2289
2302
  var ExteriorApertureGridParameter = _ExteriorApertureGridParameter;
2290
2303
 
2291
2304
  // src/models/ExteriorFaceGridParameter.ts
2292
2305
  var import_class_validator31 = require("class-validator");
2293
- var import_class_transformer26 = require("class-transformer");
2306
+ var import_class_transformer27 = require("class-transformer");
2294
2307
 
2295
2308
  // src/models/ExteriorFaceType.ts
2296
2309
  var ExteriorFaceType = /* @__PURE__ */ ((ExteriorFaceType2) => {
@@ -2319,14 +2332,15 @@ var _ExteriorFaceGridParameter = class _ExteriorFaceGridParameter extends _GridP
2319
2332
  this.punchedGeometry = false;
2320
2333
  }
2321
2334
  init(_data) {
2322
- var _a, _b, _c, _d;
2323
- super.init(_data);
2335
+ var _a, _b, _c, _d, _e;
2324
2336
  if (_data) {
2325
- const obj = (0, import_class_transformer26.plainToClass)(_ExteriorFaceGridParameter, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2337
+ const obj = deepTransform(_ExteriorFaceGridParameter, _data);
2326
2338
  this.type = (_a = obj.type) != null ? _a : "ExteriorFaceGridParameter";
2327
2339
  this.offset = (_b = obj.offset) != null ? _b : 0.1;
2328
2340
  this.faceType = (_c = obj.faceType) != null ? _c : "Wall" /* Wall */;
2329
2341
  this.punchedGeometry = (_d = obj.punchedGeometry) != null ? _d : false;
2342
+ this.dimension = obj.dimension;
2343
+ this.includeMesh = (_e = obj.includeMesh) != null ? _e : true;
2330
2344
  }
2331
2345
  }
2332
2346
  static fromJS(data) {
@@ -2350,7 +2364,7 @@ var _ExteriorFaceGridParameter = class _ExteriorFaceGridParameter extends _GridP
2350
2364
  data["face_type"] = (_c = this.faceType) != null ? _c : "Wall" /* Wall */;
2351
2365
  data["punched_geometry"] = (_d = this.punchedGeometry) != null ? _d : false;
2352
2366
  data = super.toJSON(data);
2353
- return (0, import_class_transformer26.instanceToPlain)(data, { exposeUnsetFields: false });
2367
+ return (0, import_class_transformer27.instanceToPlain)(data, { exposeUnsetFields: false });
2354
2368
  }
2355
2369
  validate() {
2356
2370
  return __async(this, null, function* () {
@@ -2367,29 +2381,29 @@ __decorateClass([
2367
2381
  (0, import_class_validator31.IsString)(),
2368
2382
  (0, import_class_validator31.IsOptional)(),
2369
2383
  (0, import_class_validator31.Matches)(/^ExteriorFaceGridParameter$/),
2370
- (0, import_class_transformer26.Expose)({ name: "type" })
2384
+ (0, import_class_transformer27.Expose)({ name: "type" })
2371
2385
  ], _ExteriorFaceGridParameter.prototype, "type", 2);
2372
2386
  __decorateClass([
2373
2387
  (0, import_class_validator31.IsNumber)(),
2374
2388
  (0, import_class_validator31.IsOptional)(),
2375
- (0, import_class_transformer26.Expose)({ name: "offset" })
2389
+ (0, import_class_transformer27.Expose)({ name: "offset" })
2376
2390
  ], _ExteriorFaceGridParameter.prototype, "offset", 2);
2377
2391
  __decorateClass([
2378
2392
  (0, import_class_validator31.IsEnum)(ExteriorFaceType),
2379
- (0, import_class_transformer26.Type)(() => String),
2393
+ (0, import_class_transformer27.Type)(() => String),
2380
2394
  (0, import_class_validator31.IsOptional)(),
2381
- (0, import_class_transformer26.Expose)({ name: "face_type" })
2395
+ (0, import_class_transformer27.Expose)({ name: "face_type" })
2382
2396
  ], _ExteriorFaceGridParameter.prototype, "faceType", 2);
2383
2397
  __decorateClass([
2384
2398
  (0, import_class_validator31.IsBoolean)(),
2385
2399
  (0, import_class_validator31.IsOptional)(),
2386
- (0, import_class_transformer26.Expose)({ name: "punched_geometry" })
2400
+ (0, import_class_transformer27.Expose)({ name: "punched_geometry" })
2387
2401
  ], _ExteriorFaceGridParameter.prototype, "punchedGeometry", 2);
2388
2402
  var ExteriorFaceGridParameter = _ExteriorFaceGridParameter;
2389
2403
 
2390
2404
  // src/models/RoomGridParameter.ts
2391
2405
  var import_class_validator32 = require("class-validator");
2392
- var import_class_transformer27 = require("class-transformer");
2406
+ var import_class_transformer28 = require("class-transformer");
2393
2407
  var _RoomGridParameter = class _RoomGridParameter extends _GridParameterBase {
2394
2408
  constructor() {
2395
2409
  super();
@@ -2404,13 +2418,14 @@ var _RoomGridParameter = class _RoomGridParameter extends _GridParameterBase {
2404
2418
  this.wallOffset = 0;
2405
2419
  }
2406
2420
  init(_data) {
2407
- var _a, _b, _c;
2408
- super.init(_data);
2421
+ var _a, _b, _c, _d;
2409
2422
  if (_data) {
2410
- const obj = (0, import_class_transformer27.plainToClass)(_RoomGridParameter, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2423
+ const obj = deepTransform(_RoomGridParameter, _data);
2411
2424
  this.type = (_a = obj.type) != null ? _a : "RoomGridParameter";
2412
2425
  this.offset = (_b = obj.offset) != null ? _b : 1;
2413
2426
  this.wallOffset = (_c = obj.wallOffset) != null ? _c : 0;
2427
+ this.dimension = obj.dimension;
2428
+ this.includeMesh = (_d = obj.includeMesh) != null ? _d : true;
2414
2429
  }
2415
2430
  }
2416
2431
  static fromJS(data) {
@@ -2433,7 +2448,7 @@ var _RoomGridParameter = class _RoomGridParameter extends _GridParameterBase {
2433
2448
  data["offset"] = (_b = this.offset) != null ? _b : 1;
2434
2449
  data["wall_offset"] = (_c = this.wallOffset) != null ? _c : 0;
2435
2450
  data = super.toJSON(data);
2436
- return (0, import_class_transformer27.instanceToPlain)(data, { exposeUnsetFields: false });
2451
+ return (0, import_class_transformer28.instanceToPlain)(data, { exposeUnsetFields: false });
2437
2452
  }
2438
2453
  validate() {
2439
2454
  return __async(this, null, function* () {
@@ -2450,23 +2465,23 @@ __decorateClass([
2450
2465
  (0, import_class_validator32.IsString)(),
2451
2466
  (0, import_class_validator32.IsOptional)(),
2452
2467
  (0, import_class_validator32.Matches)(/^RoomGridParameter$/),
2453
- (0, import_class_transformer27.Expose)({ name: "type" })
2468
+ (0, import_class_transformer28.Expose)({ name: "type" })
2454
2469
  ], _RoomGridParameter.prototype, "type", 2);
2455
2470
  __decorateClass([
2456
2471
  (0, import_class_validator32.IsNumber)(),
2457
2472
  (0, import_class_validator32.IsOptional)(),
2458
- (0, import_class_transformer27.Expose)({ name: "offset" })
2473
+ (0, import_class_transformer28.Expose)({ name: "offset" })
2459
2474
  ], _RoomGridParameter.prototype, "offset", 2);
2460
2475
  __decorateClass([
2461
2476
  (0, import_class_validator32.IsNumber)(),
2462
2477
  (0, import_class_validator32.IsOptional)(),
2463
- (0, import_class_transformer27.Expose)({ name: "wall_offset" })
2478
+ (0, import_class_transformer28.Expose)({ name: "wall_offset" })
2464
2479
  ], _RoomGridParameter.prototype, "wallOffset", 2);
2465
2480
  var RoomGridParameter = _RoomGridParameter;
2466
2481
 
2467
2482
  // src/models/RoomRadialGridParameter.ts
2468
2483
  var import_class_validator33 = require("class-validator");
2469
- var import_class_transformer28 = require("class-transformer");
2484
+ var import_class_transformer29 = require("class-transformer");
2470
2485
  var import_honeybee_schema8 = require("honeybee-schema");
2471
2486
  var _RoomRadialGridParameter = class _RoomRadialGridParameter extends RoomGridParameter {
2472
2487
  constructor() {
@@ -2484,14 +2499,17 @@ var _RoomRadialGridParameter = class _RoomRadialGridParameter extends RoomGridPa
2484
2499
  this.type = "RoomRadialGridParameter";
2485
2500
  }
2486
2501
  init(_data) {
2487
- var _a, _b, _c;
2488
- super.init(_data);
2502
+ var _a, _b, _c, _d, _e, _f;
2489
2503
  if (_data) {
2490
- const obj = (0, import_class_transformer28.plainToClass)(_RoomRadialGridParameter, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2504
+ const obj = deepTransform(_RoomRadialGridParameter, _data);
2491
2505
  this.dirCount = (_a = obj.dirCount) != null ? _a : 8;
2492
2506
  this.startVector = obj.startVector;
2493
2507
  this.meshRadius = (_b = obj.meshRadius) != null ? _b : new import_honeybee_schema8.Autocalculate();
2494
2508
  this.type = (_c = obj.type) != null ? _c : "RoomRadialGridParameter";
2509
+ this.offset = (_d = obj.offset) != null ? _d : 1;
2510
+ this.wallOffset = (_e = obj.wallOffset) != null ? _e : 0;
2511
+ this.dimension = obj.dimension;
2512
+ this.includeMesh = (_f = obj.includeMesh) != null ? _f : true;
2495
2513
  }
2496
2514
  }
2497
2515
  static fromJS(data) {
@@ -2515,7 +2533,7 @@ var _RoomRadialGridParameter = class _RoomRadialGridParameter extends RoomGridPa
2515
2533
  data["mesh_radius"] = (_b = this.meshRadius) != null ? _b : new import_honeybee_schema8.Autocalculate();
2516
2534
  data["type"] = (_c = this.type) != null ? _c : "RoomRadialGridParameter";
2517
2535
  data = super.toJSON(data);
2518
- return (0, import_class_transformer28.instanceToPlain)(data, { exposeUnsetFields: false });
2536
+ return (0, import_class_transformer29.instanceToPlain)(data, { exposeUnsetFields: false });
2519
2537
  }
2520
2538
  validate() {
2521
2539
  return __async(this, null, function* () {
@@ -2531,23 +2549,23 @@ var _RoomRadialGridParameter = class _RoomRadialGridParameter extends RoomGridPa
2531
2549
  __decorateClass([
2532
2550
  (0, import_class_validator33.IsInt)(),
2533
2551
  (0, import_class_validator33.IsOptional)(),
2534
- (0, import_class_transformer28.Expose)({ name: "dir_count" })
2552
+ (0, import_class_transformer29.Expose)({ name: "dir_count" })
2535
2553
  ], _RoomRadialGridParameter.prototype, "dirCount", 2);
2536
2554
  __decorateClass([
2537
2555
  (0, import_class_validator33.IsArray)(),
2538
2556
  (0, import_class_validator33.IsNumber)({}, { each: true }),
2539
2557
  (0, import_class_validator33.IsOptional)(),
2540
- (0, import_class_transformer28.Expose)({ name: "start_vector" })
2558
+ (0, import_class_transformer29.Expose)({ name: "start_vector" })
2541
2559
  ], _RoomRadialGridParameter.prototype, "startVector", 2);
2542
2560
  __decorateClass([
2543
2561
  (0, import_class_validator33.IsOptional)(),
2544
- (0, import_class_transformer28.Expose)({ name: "mesh_radius" })
2562
+ (0, import_class_transformer29.Expose)({ name: "mesh_radius" })
2545
2563
  ], _RoomRadialGridParameter.prototype, "meshRadius", 2);
2546
2564
  __decorateClass([
2547
2565
  (0, import_class_validator33.IsString)(),
2548
2566
  (0, import_class_validator33.IsOptional)(),
2549
2567
  (0, import_class_validator33.Matches)(/^RoomRadialGridParameter$/),
2550
- (0, import_class_transformer28.Expose)({ name: "type" })
2568
+ (0, import_class_transformer29.Expose)({ name: "type" })
2551
2569
  ], _RoomRadialGridParameter.prototype, "type", 2);
2552
2570
  var RoomRadialGridParameter = _RoomRadialGridParameter;
2553
2571
 
@@ -2565,9 +2583,8 @@ var _Room2DRadiancePropertiesAbridged = class _Room2DRadiancePropertiesAbridged
2565
2583
  }
2566
2584
  init(_data) {
2567
2585
  var _a;
2568
- super.init(_data);
2569
2586
  if (_data) {
2570
- const obj = (0, import_class_transformer29.plainToClass)(_Room2DRadiancePropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2587
+ const obj = deepTransform(_Room2DRadiancePropertiesAbridged, _data);
2571
2588
  this.type = (_a = obj.type) != null ? _a : "Room2DRadiancePropertiesAbridged";
2572
2589
  this.modifierSet = obj.modifierSet;
2573
2590
  this.gridParameters = obj.gridParameters;
@@ -2593,7 +2610,7 @@ var _Room2DRadiancePropertiesAbridged = class _Room2DRadiancePropertiesAbridged
2593
2610
  data["modifier_set"] = this.modifierSet;
2594
2611
  data["grid_parameters"] = this.gridParameters;
2595
2612
  data = super.toJSON(data);
2596
- return (0, import_class_transformer29.instanceToPlain)(data, { exposeUnsetFields: false });
2613
+ return (0, import_class_transformer30.instanceToPlain)(data, { exposeUnsetFields: false });
2597
2614
  }
2598
2615
  validate() {
2599
2616
  return __async(this, null, function* () {
@@ -2610,18 +2627,18 @@ __decorateClass([
2610
2627
  (0, import_class_validator34.IsString)(),
2611
2628
  (0, import_class_validator34.IsOptional)(),
2612
2629
  (0, import_class_validator34.Matches)(/^Room2DRadiancePropertiesAbridged$/),
2613
- (0, import_class_transformer29.Expose)({ name: "type" })
2630
+ (0, import_class_transformer30.Expose)({ name: "type" })
2614
2631
  ], _Room2DRadiancePropertiesAbridged.prototype, "type", 2);
2615
2632
  __decorateClass([
2616
2633
  (0, import_class_validator34.IsString)(),
2617
2634
  (0, import_class_validator34.IsOptional)(),
2618
- (0, import_class_transformer29.Expose)({ name: "modifier_set" })
2635
+ (0, import_class_transformer30.Expose)({ name: "modifier_set" })
2619
2636
  ], _Room2DRadiancePropertiesAbridged.prototype, "modifierSet", 2);
2620
2637
  __decorateClass([
2621
2638
  (0, import_class_validator34.IsArray)(),
2622
2639
  (0, import_class_validator34.IsOptional)(),
2623
- (0, import_class_transformer29.Expose)({ name: "grid_parameters" }),
2624
- (0, import_class_transformer29.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
2640
+ (0, import_class_transformer30.Expose)({ name: "grid_parameters" }),
2641
+ (0, import_class_transformer30.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
2625
2642
  if ((item == null ? void 0 : item.type) === "RoomGridParameter") return RoomGridParameter.fromJS(item);
2626
2643
  else if ((item == null ? void 0 : item.type) === "RoomRadialGridParameter") return RoomRadialGridParameter.fromJS(item);
2627
2644
  else if ((item == null ? void 0 : item.type) === "ExteriorFaceGridParameter") return ExteriorFaceGridParameter.fromJS(item);
@@ -2649,9 +2666,8 @@ var _Room2DPropertiesAbridged = class _Room2DPropertiesAbridged extends _OpenAPI
2649
2666
  }
2650
2667
  init(_data) {
2651
2668
  var _a;
2652
- super.init(_data);
2653
2669
  if (_data) {
2654
- const obj = (0, import_class_transformer30.plainToClass)(_Room2DPropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2670
+ const obj = deepTransform(_Room2DPropertiesAbridged, _data);
2655
2671
  this.type = (_a = obj.type) != null ? _a : "Room2DPropertiesAbridged";
2656
2672
  this.energy = obj.energy;
2657
2673
  this.radiance = obj.radiance;
@@ -2681,7 +2697,7 @@ var _Room2DPropertiesAbridged = class _Room2DPropertiesAbridged extends _OpenAPI
2681
2697
  data["doe2"] = this.doe2;
2682
2698
  data["comparison"] = this.comparison;
2683
2699
  data = super.toJSON(data);
2684
- return (0, import_class_transformer30.instanceToPlain)(data, { exposeUnsetFields: false });
2700
+ return (0, import_class_transformer31.instanceToPlain)(data, { exposeUnsetFields: false });
2685
2701
  }
2686
2702
  validate() {
2687
2703
  return __async(this, null, function* () {
@@ -2698,35 +2714,35 @@ __decorateClass([
2698
2714
  (0, import_class_validator35.IsString)(),
2699
2715
  (0, import_class_validator35.IsOptional)(),
2700
2716
  (0, import_class_validator35.Matches)(/^Room2DPropertiesAbridged$/),
2701
- (0, import_class_transformer30.Expose)({ name: "type" })
2717
+ (0, import_class_transformer31.Expose)({ name: "type" })
2702
2718
  ], _Room2DPropertiesAbridged.prototype, "type", 2);
2703
2719
  __decorateClass([
2704
2720
  (0, import_class_validator35.IsInstance)(Room2DEnergyPropertiesAbridged),
2705
- (0, import_class_transformer30.Type)(() => Room2DEnergyPropertiesAbridged),
2721
+ (0, import_class_transformer31.Type)(() => Room2DEnergyPropertiesAbridged),
2706
2722
  (0, import_class_validator35.ValidateNested)(),
2707
2723
  (0, import_class_validator35.IsOptional)(),
2708
- (0, import_class_transformer30.Expose)({ name: "energy" })
2724
+ (0, import_class_transformer31.Expose)({ name: "energy" })
2709
2725
  ], _Room2DPropertiesAbridged.prototype, "energy", 2);
2710
2726
  __decorateClass([
2711
2727
  (0, import_class_validator35.IsInstance)(Room2DRadiancePropertiesAbridged),
2712
- (0, import_class_transformer30.Type)(() => Room2DRadiancePropertiesAbridged),
2728
+ (0, import_class_transformer31.Type)(() => Room2DRadiancePropertiesAbridged),
2713
2729
  (0, import_class_validator35.ValidateNested)(),
2714
2730
  (0, import_class_validator35.IsOptional)(),
2715
- (0, import_class_transformer30.Expose)({ name: "radiance" })
2731
+ (0, import_class_transformer31.Expose)({ name: "radiance" })
2716
2732
  ], _Room2DPropertiesAbridged.prototype, "radiance", 2);
2717
2733
  __decorateClass([
2718
2734
  (0, import_class_validator35.IsInstance)(Room2DDoe2Properties),
2719
- (0, import_class_transformer30.Type)(() => Room2DDoe2Properties),
2735
+ (0, import_class_transformer31.Type)(() => Room2DDoe2Properties),
2720
2736
  (0, import_class_validator35.ValidateNested)(),
2721
2737
  (0, import_class_validator35.IsOptional)(),
2722
- (0, import_class_transformer30.Expose)({ name: "doe2" })
2738
+ (0, import_class_transformer31.Expose)({ name: "doe2" })
2723
2739
  ], _Room2DPropertiesAbridged.prototype, "doe2", 2);
2724
2740
  __decorateClass([
2725
2741
  (0, import_class_validator35.IsInstance)(Room2DComparisonProperties),
2726
- (0, import_class_transformer30.Type)(() => Room2DComparisonProperties),
2742
+ (0, import_class_transformer31.Type)(() => Room2DComparisonProperties),
2727
2743
  (0, import_class_validator35.ValidateNested)(),
2728
2744
  (0, import_class_validator35.IsOptional)(),
2729
- (0, import_class_transformer30.Expose)({ name: "comparison" })
2745
+ (0, import_class_transformer31.Expose)({ name: "comparison" })
2730
2746
  ], _Room2DPropertiesAbridged.prototype, "comparison", 2);
2731
2747
  var Room2DPropertiesAbridged = _Room2DPropertiesAbridged;
2732
2748
 
@@ -2781,9 +2797,8 @@ var _Room2D = class _Room2D extends import_honeybee_schema11.IDdBaseModel {
2781
2797
  }
2782
2798
  init(_data) {
2783
2799
  var _a, _b, _c, _d, _e, _f, _g;
2784
- super.init(_data);
2785
2800
  if (_data) {
2786
- const obj = (0, import_class_transformer31.plainToClass)(_Room2D, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
2801
+ const obj = deepTransform(_Room2D, _data);
2787
2802
  this.floorBoundary = obj.floorBoundary;
2788
2803
  this.floorHeight = obj.floorHeight;
2789
2804
  this.floorToCeilingHeight = obj.floorToCeilingHeight;
@@ -2802,6 +2817,9 @@ var _Room2D = class _Room2D extends import_honeybee_schema11.IDdBaseModel {
2802
2817
  this.shadingParameters = obj.shadingParameters;
2803
2818
  this.airBoundaries = obj.airBoundaries;
2804
2819
  this.skylightParameters = obj.skylightParameters;
2820
+ this.identifier = obj.identifier;
2821
+ this.displayName = obj.displayName;
2822
+ this.userData = obj.userData;
2805
2823
  }
2806
2824
  }
2807
2825
  static fromJS(data) {
@@ -2839,7 +2857,7 @@ var _Room2D = class _Room2D extends import_honeybee_schema11.IDdBaseModel {
2839
2857
  data["air_boundaries"] = this.airBoundaries;
2840
2858
  data["skylight_parameters"] = this.skylightParameters;
2841
2859
  data = super.toJSON(data);
2842
- return (0, import_class_transformer31.instanceToPlain)(data, { exposeUnsetFields: false });
2860
+ return (0, import_class_transformer32.instanceToPlain)(data, { exposeUnsetFields: false });
2843
2861
  }
2844
2862
  validate() {
2845
2863
  return __async(this, null, function* () {
@@ -2856,79 +2874,79 @@ __decorateClass([
2856
2874
  (0, import_class_validator36.IsArray)(),
2857
2875
  IsNestedNumberArray(),
2858
2876
  (0, import_class_validator36.IsDefined)(),
2859
- (0, import_class_transformer31.Expose)({ name: "floor_boundary" })
2877
+ (0, import_class_transformer32.Expose)({ name: "floor_boundary" })
2860
2878
  ], _Room2D.prototype, "floorBoundary", 2);
2861
2879
  __decorateClass([
2862
2880
  (0, import_class_validator36.IsNumber)(),
2863
2881
  (0, import_class_validator36.IsDefined)(),
2864
- (0, import_class_transformer31.Expose)({ name: "floor_height" })
2882
+ (0, import_class_transformer32.Expose)({ name: "floor_height" })
2865
2883
  ], _Room2D.prototype, "floorHeight", 2);
2866
2884
  __decorateClass([
2867
2885
  (0, import_class_validator36.IsNumber)(),
2868
2886
  (0, import_class_validator36.IsDefined)(),
2869
- (0, import_class_transformer31.Expose)({ name: "floor_to_ceiling_height" })
2887
+ (0, import_class_transformer32.Expose)({ name: "floor_to_ceiling_height" })
2870
2888
  ], _Room2D.prototype, "floorToCeilingHeight", 2);
2871
2889
  __decorateClass([
2872
2890
  (0, import_class_validator36.IsInstance)(Room2DPropertiesAbridged),
2873
- (0, import_class_transformer31.Type)(() => Room2DPropertiesAbridged),
2891
+ (0, import_class_transformer32.Type)(() => Room2DPropertiesAbridged),
2874
2892
  (0, import_class_validator36.ValidateNested)(),
2875
2893
  (0, import_class_validator36.IsDefined)(),
2876
- (0, import_class_transformer31.Expose)({ name: "properties" })
2894
+ (0, import_class_transformer32.Expose)({ name: "properties" })
2877
2895
  ], _Room2D.prototype, "properties", 2);
2878
2896
  __decorateClass([
2879
2897
  (0, import_class_validator36.IsString)(),
2880
2898
  (0, import_class_validator36.IsOptional)(),
2881
2899
  (0, import_class_validator36.Matches)(/^Room2D$/),
2882
- (0, import_class_transformer31.Expose)({ name: "type" })
2900
+ (0, import_class_transformer32.Expose)({ name: "type" })
2883
2901
  ], _Room2D.prototype, "type", 2);
2884
2902
  __decorateClass([
2885
2903
  (0, import_class_validator36.IsArray)(),
2886
2904
  IsNestedNumberArray(),
2887
2905
  (0, import_class_validator36.IsOptional)(),
2888
- (0, import_class_transformer31.Expose)({ name: "floor_holes" })
2906
+ (0, import_class_transformer32.Expose)({ name: "floor_holes" })
2889
2907
  ], _Room2D.prototype, "floorHoles", 2);
2890
2908
  __decorateClass([
2891
2909
  (0, import_class_validator36.IsBoolean)(),
2892
2910
  (0, import_class_validator36.IsOptional)(),
2893
- (0, import_class_transformer31.Expose)({ name: "is_ground_contact" })
2911
+ (0, import_class_transformer32.Expose)({ name: "is_ground_contact" })
2894
2912
  ], _Room2D.prototype, "isGroundContact", 2);
2895
2913
  __decorateClass([
2896
2914
  (0, import_class_validator36.IsBoolean)(),
2897
2915
  (0, import_class_validator36.IsOptional)(),
2898
- (0, import_class_transformer31.Expose)({ name: "is_top_exposed" })
2916
+ (0, import_class_transformer32.Expose)({ name: "is_top_exposed" })
2899
2917
  ], _Room2D.prototype, "isTopExposed", 2);
2900
2918
  __decorateClass([
2901
2919
  (0, import_class_validator36.IsBoolean)(),
2902
2920
  (0, import_class_validator36.IsOptional)(),
2903
- (0, import_class_transformer31.Expose)({ name: "has_floor" })
2921
+ (0, import_class_transformer32.Expose)({ name: "has_floor" })
2904
2922
  ], _Room2D.prototype, "hasFloor", 2);
2905
2923
  __decorateClass([
2906
2924
  (0, import_class_validator36.IsBoolean)(),
2907
2925
  (0, import_class_validator36.IsOptional)(),
2908
- (0, import_class_transformer31.Expose)({ name: "has_ceiling" })
2926
+ (0, import_class_transformer32.Expose)({ name: "has_ceiling" })
2909
2927
  ], _Room2D.prototype, "hasCeiling", 2);
2910
2928
  __decorateClass([
2911
2929
  (0, import_class_validator36.IsNumber)(),
2912
2930
  (0, import_class_validator36.IsOptional)(),
2913
2931
  (0, import_class_validator36.Min)(0),
2914
- (0, import_class_transformer31.Expose)({ name: "ceiling_plenum_depth" })
2932
+ (0, import_class_transformer32.Expose)({ name: "ceiling_plenum_depth" })
2915
2933
  ], _Room2D.prototype, "ceilingPlenumDepth", 2);
2916
2934
  __decorateClass([
2917
2935
  (0, import_class_validator36.IsNumber)(),
2918
2936
  (0, import_class_validator36.IsOptional)(),
2919
2937
  (0, import_class_validator36.Min)(0),
2920
- (0, import_class_transformer31.Expose)({ name: "floor_plenum_depth" })
2938
+ (0, import_class_transformer32.Expose)({ name: "floor_plenum_depth" })
2921
2939
  ], _Room2D.prototype, "floorPlenumDepth", 2);
2922
2940
  __decorateClass([
2923
2941
  (0, import_class_validator36.IsString)(),
2924
2942
  (0, import_class_validator36.IsOptional)(),
2925
- (0, import_class_transformer31.Expose)({ name: "zone" })
2943
+ (0, import_class_transformer32.Expose)({ name: "zone" })
2926
2944
  ], _Room2D.prototype, "zone", 2);
2927
2945
  __decorateClass([
2928
2946
  (0, import_class_validator36.IsArray)(),
2929
2947
  (0, import_class_validator36.IsOptional)(),
2930
- (0, import_class_transformer31.Expose)({ name: "boundary_conditions" }),
2931
- (0, import_class_transformer31.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
2948
+ (0, import_class_transformer32.Expose)({ name: "boundary_conditions" }),
2949
+ (0, import_class_transformer32.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
2932
2950
  if ((item == null ? void 0 : item.type) === "Ground") return import_honeybee_schema10.Ground.fromJS(item);
2933
2951
  else if ((item == null ? void 0 : item.type) === "Outdoors") return import_honeybee_schema13.Outdoors.fromJS(item);
2934
2952
  else if ((item == null ? void 0 : item.type) === "Surface") return import_honeybee_schema14.Surface.fromJS(item);
@@ -2940,8 +2958,8 @@ __decorateClass([
2940
2958
  __decorateClass([
2941
2959
  (0, import_class_validator36.IsArray)(),
2942
2960
  (0, import_class_validator36.IsOptional)(),
2943
- (0, import_class_transformer31.Expose)({ name: "window_parameters" }),
2944
- (0, import_class_transformer31.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
2961
+ (0, import_class_transformer32.Expose)({ name: "window_parameters" }),
2962
+ (0, import_class_transformer32.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
2945
2963
  if ((item == null ? void 0 : item.type) === "SingleWindow") return SingleWindow.fromJS(item);
2946
2964
  else if ((item == null ? void 0 : item.type) === "SimpleWindowArea") return SimpleWindowArea.fromJS(item);
2947
2965
  else if ((item == null ? void 0 : item.type) === "SimpleWindowRatio") return SimpleWindowRatio.fromJS(item);
@@ -2954,8 +2972,8 @@ __decorateClass([
2954
2972
  __decorateClass([
2955
2973
  (0, import_class_validator36.IsArray)(),
2956
2974
  (0, import_class_validator36.IsOptional)(),
2957
- (0, import_class_transformer31.Expose)({ name: "shading_parameters" }),
2958
- (0, import_class_transformer31.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
2975
+ (0, import_class_transformer32.Expose)({ name: "shading_parameters" }),
2976
+ (0, import_class_transformer32.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
2959
2977
  if ((item == null ? void 0 : item.type) === "ExtrudedBorder") return ExtrudedBorder.fromJS(item);
2960
2978
  else if ((item == null ? void 0 : item.type) === "Overhang") return Overhang.fromJS(item);
2961
2979
  else if ((item == null ? void 0 : item.type) === "LouversByDistance") return LouversByDistance.fromJS(item);
@@ -2967,12 +2985,12 @@ __decorateClass([
2967
2985
  (0, import_class_validator36.IsArray)(),
2968
2986
  (0, import_class_validator36.IsBoolean)({ each: true }),
2969
2987
  (0, import_class_validator36.IsOptional)(),
2970
- (0, import_class_transformer31.Expose)({ name: "air_boundaries" })
2988
+ (0, import_class_transformer32.Expose)({ name: "air_boundaries" })
2971
2989
  ], _Room2D.prototype, "airBoundaries", 2);
2972
2990
  __decorateClass([
2973
2991
  (0, import_class_validator36.IsOptional)(),
2974
- (0, import_class_transformer31.Expose)({ name: "skylight_parameters" }),
2975
- (0, import_class_transformer31.Transform)(({ value }) => {
2992
+ (0, import_class_transformer32.Expose)({ name: "skylight_parameters" }),
2993
+ (0, import_class_transformer32.Transform)(({ value }) => {
2976
2994
  const item = value;
2977
2995
  if ((item == null ? void 0 : item.type) === "GriddedSkylightArea") return GriddedSkylightArea.fromJS(item);
2978
2996
  else if ((item == null ? void 0 : item.type) === "GriddedSkylightRatio") return GriddedSkylightRatio.fromJS(item);
@@ -2984,11 +3002,11 @@ var Room2D = _Room2D;
2984
3002
 
2985
3003
  // src/models/StoryPropertiesAbridged.ts
2986
3004
  var import_class_validator40 = require("class-validator");
2987
- var import_class_transformer34 = require("class-transformer");
3005
+ var import_class_transformer35 = require("class-transformer");
2988
3006
 
2989
3007
  // src/models/StoryEnergyPropertiesAbridged.ts
2990
3008
  var import_class_validator38 = require("class-validator");
2991
- var import_class_transformer32 = require("class-transformer");
3009
+ var import_class_transformer33 = require("class-transformer");
2992
3010
  var _StoryEnergyPropertiesAbridged = class _StoryEnergyPropertiesAbridged extends _OpenAPIGenBaseModel {
2993
3011
  constructor() {
2994
3012
  super();
@@ -3000,9 +3018,8 @@ var _StoryEnergyPropertiesAbridged = class _StoryEnergyPropertiesAbridged extend
3000
3018
  }
3001
3019
  init(_data) {
3002
3020
  var _a;
3003
- super.init(_data);
3004
3021
  if (_data) {
3005
- const obj = (0, import_class_transformer32.plainToClass)(_StoryEnergyPropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3022
+ const obj = deepTransform(_StoryEnergyPropertiesAbridged, _data);
3006
3023
  this.type = (_a = obj.type) != null ? _a : "StoryEnergyPropertiesAbridged";
3007
3024
  this.constructionSet = obj.constructionSet;
3008
3025
  }
@@ -3026,7 +3043,7 @@ var _StoryEnergyPropertiesAbridged = class _StoryEnergyPropertiesAbridged extend
3026
3043
  data["type"] = (_a = this.type) != null ? _a : "StoryEnergyPropertiesAbridged";
3027
3044
  data["construction_set"] = this.constructionSet;
3028
3045
  data = super.toJSON(data);
3029
- return (0, import_class_transformer32.instanceToPlain)(data, { exposeUnsetFields: false });
3046
+ return (0, import_class_transformer33.instanceToPlain)(data, { exposeUnsetFields: false });
3030
3047
  }
3031
3048
  validate() {
3032
3049
  return __async(this, null, function* () {
@@ -3043,20 +3060,20 @@ __decorateClass([
3043
3060
  (0, import_class_validator38.IsString)(),
3044
3061
  (0, import_class_validator38.IsOptional)(),
3045
3062
  (0, import_class_validator38.Matches)(/^StoryEnergyPropertiesAbridged$/),
3046
- (0, import_class_transformer32.Expose)({ name: "type" })
3063
+ (0, import_class_transformer33.Expose)({ name: "type" })
3047
3064
  ], _StoryEnergyPropertiesAbridged.prototype, "type", 2);
3048
3065
  __decorateClass([
3049
3066
  (0, import_class_validator38.IsString)(),
3050
3067
  (0, import_class_validator38.IsOptional)(),
3051
3068
  (0, import_class_validator38.MinLength)(1),
3052
3069
  (0, import_class_validator38.MaxLength)(100),
3053
- (0, import_class_transformer32.Expose)({ name: "construction_set" })
3070
+ (0, import_class_transformer33.Expose)({ name: "construction_set" })
3054
3071
  ], _StoryEnergyPropertiesAbridged.prototype, "constructionSet", 2);
3055
3072
  var StoryEnergyPropertiesAbridged = _StoryEnergyPropertiesAbridged;
3056
3073
 
3057
3074
  // src/models/StoryRadiancePropertiesAbridged.ts
3058
3075
  var import_class_validator39 = require("class-validator");
3059
- var import_class_transformer33 = require("class-transformer");
3076
+ var import_class_transformer34 = require("class-transformer");
3060
3077
  var _StoryRadiancePropertiesAbridged = class _StoryRadiancePropertiesAbridged extends _OpenAPIGenBaseModel {
3061
3078
  constructor() {
3062
3079
  super();
@@ -3068,9 +3085,8 @@ var _StoryRadiancePropertiesAbridged = class _StoryRadiancePropertiesAbridged ex
3068
3085
  }
3069
3086
  init(_data) {
3070
3087
  var _a;
3071
- super.init(_data);
3072
3088
  if (_data) {
3073
- const obj = (0, import_class_transformer33.plainToClass)(_StoryRadiancePropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3089
+ const obj = deepTransform(_StoryRadiancePropertiesAbridged, _data);
3074
3090
  this.type = (_a = obj.type) != null ? _a : "StoryRadiancePropertiesAbridged";
3075
3091
  this.modifierSet = obj.modifierSet;
3076
3092
  }
@@ -3094,7 +3110,7 @@ var _StoryRadiancePropertiesAbridged = class _StoryRadiancePropertiesAbridged ex
3094
3110
  data["type"] = (_a = this.type) != null ? _a : "StoryRadiancePropertiesAbridged";
3095
3111
  data["modifier_set"] = this.modifierSet;
3096
3112
  data = super.toJSON(data);
3097
- return (0, import_class_transformer33.instanceToPlain)(data, { exposeUnsetFields: false });
3113
+ return (0, import_class_transformer34.instanceToPlain)(data, { exposeUnsetFields: false });
3098
3114
  }
3099
3115
  validate() {
3100
3116
  return __async(this, null, function* () {
@@ -3111,12 +3127,12 @@ __decorateClass([
3111
3127
  (0, import_class_validator39.IsString)(),
3112
3128
  (0, import_class_validator39.IsOptional)(),
3113
3129
  (0, import_class_validator39.Matches)(/^StoryRadiancePropertiesAbridged$/),
3114
- (0, import_class_transformer33.Expose)({ name: "type" })
3130
+ (0, import_class_transformer34.Expose)({ name: "type" })
3115
3131
  ], _StoryRadiancePropertiesAbridged.prototype, "type", 2);
3116
3132
  __decorateClass([
3117
3133
  (0, import_class_validator39.IsString)(),
3118
3134
  (0, import_class_validator39.IsOptional)(),
3119
- (0, import_class_transformer33.Expose)({ name: "modifier_set" })
3135
+ (0, import_class_transformer34.Expose)({ name: "modifier_set" })
3120
3136
  ], _StoryRadiancePropertiesAbridged.prototype, "modifierSet", 2);
3121
3137
  var StoryRadiancePropertiesAbridged = _StoryRadiancePropertiesAbridged;
3122
3138
 
@@ -3134,9 +3150,8 @@ var _StoryPropertiesAbridged = class _StoryPropertiesAbridged extends _OpenAPIGe
3134
3150
  }
3135
3151
  init(_data) {
3136
3152
  var _a;
3137
- super.init(_data);
3138
3153
  if (_data) {
3139
- const obj = (0, import_class_transformer34.plainToClass)(_StoryPropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3154
+ const obj = deepTransform(_StoryPropertiesAbridged, _data);
3140
3155
  this.type = (_a = obj.type) != null ? _a : "StoryPropertiesAbridged";
3141
3156
  this.energy = obj.energy;
3142
3157
  this.radiance = obj.radiance;
@@ -3162,7 +3177,7 @@ var _StoryPropertiesAbridged = class _StoryPropertiesAbridged extends _OpenAPIGe
3162
3177
  data["energy"] = this.energy;
3163
3178
  data["radiance"] = this.radiance;
3164
3179
  data = super.toJSON(data);
3165
- return (0, import_class_transformer34.instanceToPlain)(data, { exposeUnsetFields: false });
3180
+ return (0, import_class_transformer35.instanceToPlain)(data, { exposeUnsetFields: false });
3166
3181
  }
3167
3182
  validate() {
3168
3183
  return __async(this, null, function* () {
@@ -3179,21 +3194,21 @@ __decorateClass([
3179
3194
  (0, import_class_validator40.IsString)(),
3180
3195
  (0, import_class_validator40.IsOptional)(),
3181
3196
  (0, import_class_validator40.Matches)(/^StoryPropertiesAbridged$/),
3182
- (0, import_class_transformer34.Expose)({ name: "type" })
3197
+ (0, import_class_transformer35.Expose)({ name: "type" })
3183
3198
  ], _StoryPropertiesAbridged.prototype, "type", 2);
3184
3199
  __decorateClass([
3185
3200
  (0, import_class_validator40.IsInstance)(StoryEnergyPropertiesAbridged),
3186
- (0, import_class_transformer34.Type)(() => StoryEnergyPropertiesAbridged),
3201
+ (0, import_class_transformer35.Type)(() => StoryEnergyPropertiesAbridged),
3187
3202
  (0, import_class_validator40.ValidateNested)(),
3188
3203
  (0, import_class_validator40.IsOptional)(),
3189
- (0, import_class_transformer34.Expose)({ name: "energy" })
3204
+ (0, import_class_transformer35.Expose)({ name: "energy" })
3190
3205
  ], _StoryPropertiesAbridged.prototype, "energy", 2);
3191
3206
  __decorateClass([
3192
3207
  (0, import_class_validator40.IsInstance)(StoryRadiancePropertiesAbridged),
3193
- (0, import_class_transformer34.Type)(() => StoryRadiancePropertiesAbridged),
3208
+ (0, import_class_transformer35.Type)(() => StoryRadiancePropertiesAbridged),
3194
3209
  (0, import_class_validator40.ValidateNested)(),
3195
3210
  (0, import_class_validator40.IsOptional)(),
3196
- (0, import_class_transformer34.Expose)({ name: "radiance" })
3211
+ (0, import_class_transformer35.Expose)({ name: "radiance" })
3197
3212
  ], _StoryPropertiesAbridged.prototype, "radiance", 2);
3198
3213
  var StoryPropertiesAbridged = _StoryPropertiesAbridged;
3199
3214
 
@@ -3233,9 +3248,8 @@ var _Story = class _Story extends import_honeybee_schema16.IDdBaseModel {
3233
3248
  }
3234
3249
  init(_data) {
3235
3250
  var _a, _b, _c, _d, _e;
3236
- super.init(_data);
3237
3251
  if (_data) {
3238
- const obj = (0, import_class_transformer35.plainToClass)(_Story, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3252
+ const obj = deepTransform(_Story, _data);
3239
3253
  this.room2ds = obj.room2ds;
3240
3254
  this.properties = obj.properties;
3241
3255
  this.type = (_a = obj.type) != null ? _a : "Story";
@@ -3244,6 +3258,9 @@ var _Story = class _Story extends import_honeybee_schema16.IDdBaseModel {
3244
3258
  this.multiplier = (_d = obj.multiplier) != null ? _d : 1;
3245
3259
  this.roof = obj.roof;
3246
3260
  this.storyType = (_e = obj.storyType) != null ? _e : "Standard" /* Standard */;
3261
+ this.identifier = obj.identifier;
3262
+ this.displayName = obj.displayName;
3263
+ this.userData = obj.userData;
3247
3264
  }
3248
3265
  }
3249
3266
  static fromJS(data) {
@@ -3271,7 +3288,7 @@ var _Story = class _Story extends import_honeybee_schema16.IDdBaseModel {
3271
3288
  data["roof"] = this.roof;
3272
3289
  data["story_type"] = (_e = this.storyType) != null ? _e : "Standard" /* Standard */;
3273
3290
  data = super.toJSON(data);
3274
- return (0, import_class_transformer35.instanceToPlain)(data, { exposeUnsetFields: false });
3291
+ return (0, import_class_transformer36.instanceToPlain)(data, { exposeUnsetFields: false });
3275
3292
  }
3276
3293
  validate() {
3277
3294
  return __async(this, null, function* () {
@@ -3287,50 +3304,50 @@ var _Story = class _Story extends import_honeybee_schema16.IDdBaseModel {
3287
3304
  __decorateClass([
3288
3305
  (0, import_class_validator41.IsArray)(),
3289
3306
  (0, import_class_validator41.IsInstance)(Room2D, { each: true }),
3290
- (0, import_class_transformer35.Type)(() => Room2D),
3307
+ (0, import_class_transformer36.Type)(() => Room2D),
3291
3308
  (0, import_class_validator41.ValidateNested)({ each: true }),
3292
3309
  (0, import_class_validator41.IsDefined)(),
3293
- (0, import_class_transformer35.Expose)({ name: "room_2ds" })
3310
+ (0, import_class_transformer36.Expose)({ name: "room_2ds" })
3294
3311
  ], _Story.prototype, "room2ds", 2);
3295
3312
  __decorateClass([
3296
3313
  (0, import_class_validator41.IsInstance)(StoryPropertiesAbridged),
3297
- (0, import_class_transformer35.Type)(() => StoryPropertiesAbridged),
3314
+ (0, import_class_transformer36.Type)(() => StoryPropertiesAbridged),
3298
3315
  (0, import_class_validator41.ValidateNested)(),
3299
3316
  (0, import_class_validator41.IsDefined)(),
3300
- (0, import_class_transformer35.Expose)({ name: "properties" })
3317
+ (0, import_class_transformer36.Expose)({ name: "properties" })
3301
3318
  ], _Story.prototype, "properties", 2);
3302
3319
  __decorateClass([
3303
3320
  (0, import_class_validator41.IsString)(),
3304
3321
  (0, import_class_validator41.IsOptional)(),
3305
3322
  (0, import_class_validator41.Matches)(/^Story$/),
3306
- (0, import_class_transformer35.Expose)({ name: "type" })
3323
+ (0, import_class_transformer36.Expose)({ name: "type" })
3307
3324
  ], _Story.prototype, "type", 2);
3308
3325
  __decorateClass([
3309
3326
  (0, import_class_validator41.IsOptional)(),
3310
- (0, import_class_transformer35.Expose)({ name: "floor_to_floor_height" })
3327
+ (0, import_class_transformer36.Expose)({ name: "floor_to_floor_height" })
3311
3328
  ], _Story.prototype, "floorToFloorHeight", 2);
3312
3329
  __decorateClass([
3313
3330
  (0, import_class_validator41.IsOptional)(),
3314
- (0, import_class_transformer35.Expose)({ name: "floor_height" })
3331
+ (0, import_class_transformer36.Expose)({ name: "floor_height" })
3315
3332
  ], _Story.prototype, "floorHeight", 2);
3316
3333
  __decorateClass([
3317
3334
  (0, import_class_validator41.IsInt)(),
3318
3335
  (0, import_class_validator41.IsOptional)(),
3319
3336
  (0, import_class_validator41.Min)(1),
3320
- (0, import_class_transformer35.Expose)({ name: "multiplier" })
3337
+ (0, import_class_transformer36.Expose)({ name: "multiplier" })
3321
3338
  ], _Story.prototype, "multiplier", 2);
3322
3339
  __decorateClass([
3323
3340
  (0, import_class_validator41.IsInstance)(RoofSpecification),
3324
- (0, import_class_transformer35.Type)(() => RoofSpecification),
3341
+ (0, import_class_transformer36.Type)(() => RoofSpecification),
3325
3342
  (0, import_class_validator41.ValidateNested)(),
3326
3343
  (0, import_class_validator41.IsOptional)(),
3327
- (0, import_class_transformer35.Expose)({ name: "roof" })
3344
+ (0, import_class_transformer36.Expose)({ name: "roof" })
3328
3345
  ], _Story.prototype, "roof", 2);
3329
3346
  __decorateClass([
3330
3347
  (0, import_class_validator41.IsEnum)(StoryType),
3331
- (0, import_class_transformer35.Type)(() => String),
3348
+ (0, import_class_transformer36.Type)(() => String),
3332
3349
  (0, import_class_validator41.IsOptional)(),
3333
- (0, import_class_transformer35.Expose)({ name: "story_type" })
3350
+ (0, import_class_transformer36.Expose)({ name: "story_type" })
3334
3351
  ], _Story.prototype, "storyType", 2);
3335
3352
  var Story = _Story;
3336
3353
 
@@ -3352,14 +3369,16 @@ var _Building = class _Building extends import_honeybee_schema17.IDdBaseModel {
3352
3369
  }
3353
3370
  init(_data) {
3354
3371
  var _a;
3355
- super.init(_data);
3356
3372
  if (_data) {
3357
- const obj = (0, import_class_transformer36.plainToClass)(_Building, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3373
+ const obj = deepTransform(_Building, _data);
3358
3374
  this.properties = obj.properties;
3359
3375
  this.type = (_a = obj.type) != null ? _a : "Building";
3360
3376
  this.uniqueStories = obj.uniqueStories;
3361
3377
  this.room3ds = obj.room3ds;
3362
3378
  this.roof = obj.roof;
3379
+ this.identifier = obj.identifier;
3380
+ this.displayName = obj.displayName;
3381
+ this.userData = obj.userData;
3363
3382
  }
3364
3383
  }
3365
3384
  static fromJS(data) {
@@ -3384,7 +3403,7 @@ var _Building = class _Building extends import_honeybee_schema17.IDdBaseModel {
3384
3403
  data["room_3ds"] = this.room3ds;
3385
3404
  data["roof"] = this.roof;
3386
3405
  data = super.toJSON(data);
3387
- return (0, import_class_transformer36.instanceToPlain)(data, { exposeUnsetFields: false });
3406
+ return (0, import_class_transformer37.instanceToPlain)(data, { exposeUnsetFields: false });
3388
3407
  }
3389
3408
  validate() {
3390
3409
  return __async(this, null, function* () {
@@ -3399,53 +3418,53 @@ var _Building = class _Building extends import_honeybee_schema17.IDdBaseModel {
3399
3418
  };
3400
3419
  __decorateClass([
3401
3420
  (0, import_class_validator42.IsInstance)(BuildingPropertiesAbridged),
3402
- (0, import_class_transformer36.Type)(() => BuildingPropertiesAbridged),
3421
+ (0, import_class_transformer37.Type)(() => BuildingPropertiesAbridged),
3403
3422
  (0, import_class_validator42.ValidateNested)(),
3404
3423
  (0, import_class_validator42.IsDefined)(),
3405
- (0, import_class_transformer36.Expose)({ name: "properties" })
3424
+ (0, import_class_transformer37.Expose)({ name: "properties" })
3406
3425
  ], _Building.prototype, "properties", 2);
3407
3426
  __decorateClass([
3408
3427
  (0, import_class_validator42.IsString)(),
3409
3428
  (0, import_class_validator42.IsOptional)(),
3410
3429
  (0, import_class_validator42.Matches)(/^Building$/),
3411
- (0, import_class_transformer36.Expose)({ name: "type" })
3430
+ (0, import_class_transformer37.Expose)({ name: "type" })
3412
3431
  ], _Building.prototype, "type", 2);
3413
3432
  __decorateClass([
3414
3433
  (0, import_class_validator42.IsArray)(),
3415
3434
  (0, import_class_validator42.IsInstance)(Story, { each: true }),
3416
- (0, import_class_transformer36.Type)(() => Story),
3435
+ (0, import_class_transformer37.Type)(() => Story),
3417
3436
  (0, import_class_validator42.ValidateNested)({ each: true }),
3418
3437
  (0, import_class_validator42.IsOptional)(),
3419
- (0, import_class_transformer36.Expose)({ name: "unique_stories" })
3438
+ (0, import_class_transformer37.Expose)({ name: "unique_stories" })
3420
3439
  ], _Building.prototype, "uniqueStories", 2);
3421
3440
  __decorateClass([
3422
3441
  (0, import_class_validator42.IsArray)(),
3423
3442
  (0, import_class_validator42.IsInstance)(import_honeybee_schema18.Room, { each: true }),
3424
- (0, import_class_transformer36.Type)(() => import_honeybee_schema18.Room),
3443
+ (0, import_class_transformer37.Type)(() => import_honeybee_schema18.Room),
3425
3444
  (0, import_class_validator42.ValidateNested)({ each: true }),
3426
3445
  (0, import_class_validator42.IsOptional)(),
3427
- (0, import_class_transformer36.Expose)({ name: "room_3ds" })
3446
+ (0, import_class_transformer37.Expose)({ name: "room_3ds" })
3428
3447
  ], _Building.prototype, "room3ds", 2);
3429
3448
  __decorateClass([
3430
3449
  (0, import_class_validator42.IsInstance)(RoofSpecification),
3431
- (0, import_class_transformer36.Type)(() => RoofSpecification),
3450
+ (0, import_class_transformer37.Type)(() => RoofSpecification),
3432
3451
  (0, import_class_validator42.ValidateNested)(),
3433
3452
  (0, import_class_validator42.IsOptional)(),
3434
- (0, import_class_transformer36.Expose)({ name: "roof" })
3453
+ (0, import_class_transformer37.Expose)({ name: "roof" })
3435
3454
  ], _Building.prototype, "roof", 2);
3436
3455
  var Building = _Building;
3437
3456
 
3438
3457
  // src/models/ContextShade.ts
3439
3458
  var import_class_validator46 = require("class-validator");
3440
- var import_class_transformer40 = require("class-transformer");
3459
+ var import_class_transformer41 = require("class-transformer");
3441
3460
 
3442
3461
  // src/models/ContextShadePropertiesAbridged.ts
3443
3462
  var import_class_validator45 = require("class-validator");
3444
- var import_class_transformer39 = require("class-transformer");
3463
+ var import_class_transformer40 = require("class-transformer");
3445
3464
 
3446
3465
  // src/models/ContextShadeEnergyPropertiesAbridged.ts
3447
3466
  var import_class_validator43 = require("class-validator");
3448
- var import_class_transformer37 = require("class-transformer");
3467
+ var import_class_transformer38 = require("class-transformer");
3449
3468
  var _ContextShadeEnergyPropertiesAbridged = class _ContextShadeEnergyPropertiesAbridged extends _OpenAPIGenBaseModel {
3450
3469
  constructor() {
3451
3470
  super();
@@ -3459,9 +3478,8 @@ var _ContextShadeEnergyPropertiesAbridged = class _ContextShadeEnergyPropertiesA
3459
3478
  }
3460
3479
  init(_data) {
3461
3480
  var _a;
3462
- super.init(_data);
3463
3481
  if (_data) {
3464
- const obj = (0, import_class_transformer37.plainToClass)(_ContextShadeEnergyPropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3482
+ const obj = deepTransform(_ContextShadeEnergyPropertiesAbridged, _data);
3465
3483
  this.type = (_a = obj.type) != null ? _a : "ContextShadeEnergyPropertiesAbridged";
3466
3484
  this.construction = obj.construction;
3467
3485
  this.transmittanceSchedule = obj.transmittanceSchedule;
@@ -3487,7 +3505,7 @@ var _ContextShadeEnergyPropertiesAbridged = class _ContextShadeEnergyPropertiesA
3487
3505
  data["construction"] = this.construction;
3488
3506
  data["transmittance_schedule"] = this.transmittanceSchedule;
3489
3507
  data = super.toJSON(data);
3490
- return (0, import_class_transformer37.instanceToPlain)(data, { exposeUnsetFields: false });
3508
+ return (0, import_class_transformer38.instanceToPlain)(data, { exposeUnsetFields: false });
3491
3509
  }
3492
3510
  validate() {
3493
3511
  return __async(this, null, function* () {
@@ -3504,27 +3522,27 @@ __decorateClass([
3504
3522
  (0, import_class_validator43.IsString)(),
3505
3523
  (0, import_class_validator43.IsOptional)(),
3506
3524
  (0, import_class_validator43.Matches)(/^ContextShadeEnergyPropertiesAbridged$/),
3507
- (0, import_class_transformer37.Expose)({ name: "type" })
3525
+ (0, import_class_transformer38.Expose)({ name: "type" })
3508
3526
  ], _ContextShadeEnergyPropertiesAbridged.prototype, "type", 2);
3509
3527
  __decorateClass([
3510
3528
  (0, import_class_validator43.IsString)(),
3511
3529
  (0, import_class_validator43.IsOptional)(),
3512
3530
  (0, import_class_validator43.MinLength)(1),
3513
3531
  (0, import_class_validator43.MaxLength)(100),
3514
- (0, import_class_transformer37.Expose)({ name: "construction" })
3532
+ (0, import_class_transformer38.Expose)({ name: "construction" })
3515
3533
  ], _ContextShadeEnergyPropertiesAbridged.prototype, "construction", 2);
3516
3534
  __decorateClass([
3517
3535
  (0, import_class_validator43.IsString)(),
3518
3536
  (0, import_class_validator43.IsOptional)(),
3519
3537
  (0, import_class_validator43.MinLength)(1),
3520
3538
  (0, import_class_validator43.MaxLength)(100),
3521
- (0, import_class_transformer37.Expose)({ name: "transmittance_schedule" })
3539
+ (0, import_class_transformer38.Expose)({ name: "transmittance_schedule" })
3522
3540
  ], _ContextShadeEnergyPropertiesAbridged.prototype, "transmittanceSchedule", 2);
3523
3541
  var ContextShadeEnergyPropertiesAbridged = _ContextShadeEnergyPropertiesAbridged;
3524
3542
 
3525
3543
  // src/models/ContextShadeRadiancePropertiesAbridged.ts
3526
3544
  var import_class_validator44 = require("class-validator");
3527
- var import_class_transformer38 = require("class-transformer");
3545
+ var import_class_transformer39 = require("class-transformer");
3528
3546
  var _ContextShadeRadiancePropertiesAbridged = class _ContextShadeRadiancePropertiesAbridged extends _OpenAPIGenBaseModel {
3529
3547
  constructor() {
3530
3548
  super();
@@ -3536,9 +3554,8 @@ var _ContextShadeRadiancePropertiesAbridged = class _ContextShadeRadiancePropert
3536
3554
  }
3537
3555
  init(_data) {
3538
3556
  var _a;
3539
- super.init(_data);
3540
3557
  if (_data) {
3541
- const obj = (0, import_class_transformer38.plainToClass)(_ContextShadeRadiancePropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3558
+ const obj = deepTransform(_ContextShadeRadiancePropertiesAbridged, _data);
3542
3559
  this.type = (_a = obj.type) != null ? _a : "ContextShadeRadiancePropertiesAbridged";
3543
3560
  this.modifier = obj.modifier;
3544
3561
  }
@@ -3562,7 +3579,7 @@ var _ContextShadeRadiancePropertiesAbridged = class _ContextShadeRadiancePropert
3562
3579
  data["type"] = (_a = this.type) != null ? _a : "ContextShadeRadiancePropertiesAbridged";
3563
3580
  data["modifier"] = this.modifier;
3564
3581
  data = super.toJSON(data);
3565
- return (0, import_class_transformer38.instanceToPlain)(data, { exposeUnsetFields: false });
3582
+ return (0, import_class_transformer39.instanceToPlain)(data, { exposeUnsetFields: false });
3566
3583
  }
3567
3584
  validate() {
3568
3585
  return __async(this, null, function* () {
@@ -3579,12 +3596,12 @@ __decorateClass([
3579
3596
  (0, import_class_validator44.IsString)(),
3580
3597
  (0, import_class_validator44.IsOptional)(),
3581
3598
  (0, import_class_validator44.Matches)(/^ContextShadeRadiancePropertiesAbridged$/),
3582
- (0, import_class_transformer38.Expose)({ name: "type" })
3599
+ (0, import_class_transformer39.Expose)({ name: "type" })
3583
3600
  ], _ContextShadeRadiancePropertiesAbridged.prototype, "type", 2);
3584
3601
  __decorateClass([
3585
3602
  (0, import_class_validator44.IsString)(),
3586
3603
  (0, import_class_validator44.IsOptional)(),
3587
- (0, import_class_transformer38.Expose)({ name: "modifier" })
3604
+ (0, import_class_transformer39.Expose)({ name: "modifier" })
3588
3605
  ], _ContextShadeRadiancePropertiesAbridged.prototype, "modifier", 2);
3589
3606
  var ContextShadeRadiancePropertiesAbridged = _ContextShadeRadiancePropertiesAbridged;
3590
3607
 
@@ -3602,9 +3619,8 @@ var _ContextShadePropertiesAbridged = class _ContextShadePropertiesAbridged exte
3602
3619
  }
3603
3620
  init(_data) {
3604
3621
  var _a;
3605
- super.init(_data);
3606
3622
  if (_data) {
3607
- const obj = (0, import_class_transformer39.plainToClass)(_ContextShadePropertiesAbridged, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3623
+ const obj = deepTransform(_ContextShadePropertiesAbridged, _data);
3608
3624
  this.type = (_a = obj.type) != null ? _a : "ContextShadePropertiesAbridged";
3609
3625
  this.energy = obj.energy;
3610
3626
  this.radiance = obj.radiance;
@@ -3630,7 +3646,7 @@ var _ContextShadePropertiesAbridged = class _ContextShadePropertiesAbridged exte
3630
3646
  data["energy"] = this.energy;
3631
3647
  data["radiance"] = this.radiance;
3632
3648
  data = super.toJSON(data);
3633
- return (0, import_class_transformer39.instanceToPlain)(data, { exposeUnsetFields: false });
3649
+ return (0, import_class_transformer40.instanceToPlain)(data, { exposeUnsetFields: false });
3634
3650
  }
3635
3651
  validate() {
3636
3652
  return __async(this, null, function* () {
@@ -3647,21 +3663,21 @@ __decorateClass([
3647
3663
  (0, import_class_validator45.IsString)(),
3648
3664
  (0, import_class_validator45.IsOptional)(),
3649
3665
  (0, import_class_validator45.Matches)(/^ContextShadePropertiesAbridged$/),
3650
- (0, import_class_transformer39.Expose)({ name: "type" })
3666
+ (0, import_class_transformer40.Expose)({ name: "type" })
3651
3667
  ], _ContextShadePropertiesAbridged.prototype, "type", 2);
3652
3668
  __decorateClass([
3653
3669
  (0, import_class_validator45.IsInstance)(ContextShadeEnergyPropertiesAbridged),
3654
- (0, import_class_transformer39.Type)(() => ContextShadeEnergyPropertiesAbridged),
3670
+ (0, import_class_transformer40.Type)(() => ContextShadeEnergyPropertiesAbridged),
3655
3671
  (0, import_class_validator45.ValidateNested)(),
3656
3672
  (0, import_class_validator45.IsOptional)(),
3657
- (0, import_class_transformer39.Expose)({ name: "energy" })
3673
+ (0, import_class_transformer40.Expose)({ name: "energy" })
3658
3674
  ], _ContextShadePropertiesAbridged.prototype, "energy", 2);
3659
3675
  __decorateClass([
3660
3676
  (0, import_class_validator45.IsInstance)(ContextShadeRadiancePropertiesAbridged),
3661
- (0, import_class_transformer39.Type)(() => ContextShadeRadiancePropertiesAbridged),
3677
+ (0, import_class_transformer40.Type)(() => ContextShadeRadiancePropertiesAbridged),
3662
3678
  (0, import_class_validator45.ValidateNested)(),
3663
3679
  (0, import_class_validator45.IsOptional)(),
3664
- (0, import_class_transformer39.Expose)({ name: "radiance" })
3680
+ (0, import_class_transformer40.Expose)({ name: "radiance" })
3665
3681
  ], _ContextShadePropertiesAbridged.prototype, "radiance", 2);
3666
3682
  var ContextShadePropertiesAbridged = _ContextShadePropertiesAbridged;
3667
3683
 
@@ -3685,13 +3701,15 @@ var _ContextShade = class _ContextShade extends import_honeybee_schema20.IDdBase
3685
3701
  }
3686
3702
  init(_data) {
3687
3703
  var _a, _b;
3688
- super.init(_data);
3689
3704
  if (_data) {
3690
- const obj = (0, import_class_transformer40.plainToClass)(_ContextShade, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3705
+ const obj = deepTransform(_ContextShade, _data);
3691
3706
  this.geometry = obj.geometry;
3692
3707
  this.properties = obj.properties;
3693
3708
  this.type = (_a = obj.type) != null ? _a : "ContextShade";
3694
3709
  this.isDetached = (_b = obj.isDetached) != null ? _b : true;
3710
+ this.identifier = obj.identifier;
3711
+ this.displayName = obj.displayName;
3712
+ this.userData = obj.userData;
3695
3713
  }
3696
3714
  }
3697
3715
  static fromJS(data) {
@@ -3715,7 +3733,7 @@ var _ContextShade = class _ContextShade extends import_honeybee_schema20.IDdBase
3715
3733
  data["type"] = (_a = this.type) != null ? _a : "ContextShade";
3716
3734
  data["is_detached"] = (_b = this.isDetached) != null ? _b : true;
3717
3735
  data = super.toJSON(data);
3718
- return (0, import_class_transformer40.instanceToPlain)(data, { exposeUnsetFields: false });
3736
+ return (0, import_class_transformer41.instanceToPlain)(data, { exposeUnsetFields: false });
3719
3737
  }
3720
3738
  validate() {
3721
3739
  return __async(this, null, function* () {
@@ -3731,8 +3749,8 @@ var _ContextShade = class _ContextShade extends import_honeybee_schema20.IDdBase
3731
3749
  __decorateClass([
3732
3750
  (0, import_class_validator46.IsArray)(),
3733
3751
  (0, import_class_validator46.IsDefined)(),
3734
- (0, import_class_transformer40.Expose)({ name: "geometry" }),
3735
- (0, import_class_transformer40.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
3752
+ (0, import_class_transformer41.Expose)({ name: "geometry" }),
3753
+ (0, import_class_transformer41.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
3736
3754
  if ((item == null ? void 0 : item.type) === "Face3D") return import_honeybee_schema19.Face3D.fromJS(item);
3737
3755
  else if ((item == null ? void 0 : item.type) === "Mesh3D") return import_honeybee_schema21.Mesh3D.fromJS(item);
3738
3756
  else return item;
@@ -3740,36 +3758,36 @@ __decorateClass([
3740
3758
  ], _ContextShade.prototype, "geometry", 2);
3741
3759
  __decorateClass([
3742
3760
  (0, import_class_validator46.IsInstance)(ContextShadePropertiesAbridged),
3743
- (0, import_class_transformer40.Type)(() => ContextShadePropertiesAbridged),
3761
+ (0, import_class_transformer41.Type)(() => ContextShadePropertiesAbridged),
3744
3762
  (0, import_class_validator46.ValidateNested)(),
3745
3763
  (0, import_class_validator46.IsDefined)(),
3746
- (0, import_class_transformer40.Expose)({ name: "properties" })
3764
+ (0, import_class_transformer41.Expose)({ name: "properties" })
3747
3765
  ], _ContextShade.prototype, "properties", 2);
3748
3766
  __decorateClass([
3749
3767
  (0, import_class_validator46.IsString)(),
3750
3768
  (0, import_class_validator46.IsOptional)(),
3751
3769
  (0, import_class_validator46.Matches)(/^ContextShade$/),
3752
- (0, import_class_transformer40.Expose)({ name: "type" })
3770
+ (0, import_class_transformer41.Expose)({ name: "type" })
3753
3771
  ], _ContextShade.prototype, "type", 2);
3754
3772
  __decorateClass([
3755
3773
  (0, import_class_validator46.IsBoolean)(),
3756
3774
  (0, import_class_validator46.IsOptional)(),
3757
- (0, import_class_transformer40.Expose)({ name: "is_detached" })
3775
+ (0, import_class_transformer41.Expose)({ name: "is_detached" })
3758
3776
  ], _ContextShade.prototype, "isDetached", 2);
3759
3777
  var ContextShade = _ContextShade;
3760
3778
 
3761
3779
  // src/models/Model.ts
3762
3780
  var import_class_validator52 = require("class-validator");
3763
- var import_class_transformer46 = require("class-transformer");
3781
+ var import_class_transformer47 = require("class-transformer");
3764
3782
  var import_honeybee_schema83 = require("honeybee-schema");
3765
3783
 
3766
3784
  // src/models/ModelProperties.ts
3767
3785
  var import_class_validator51 = require("class-validator");
3768
- var import_class_transformer45 = require("class-transformer");
3786
+ var import_class_transformer46 = require("class-transformer");
3769
3787
 
3770
3788
  // src/models/ModelComparisonProperties.ts
3771
3789
  var import_class_validator47 = require("class-validator");
3772
- var import_class_transformer41 = require("class-transformer");
3790
+ var import_class_transformer42 = require("class-transformer");
3773
3791
  var _ModelComparisonProperties = class _ModelComparisonProperties extends _OpenAPIGenBaseModel {
3774
3792
  constructor() {
3775
3793
  super();
@@ -3779,9 +3797,8 @@ var _ModelComparisonProperties = class _ModelComparisonProperties extends _OpenA
3779
3797
  }
3780
3798
  init(_data) {
3781
3799
  var _a;
3782
- super.init(_data);
3783
3800
  if (_data) {
3784
- const obj = (0, import_class_transformer41.plainToClass)(_ModelComparisonProperties, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3801
+ const obj = deepTransform(_ModelComparisonProperties, _data);
3785
3802
  this.type = (_a = obj.type) != null ? _a : "ModelComparisonProperties";
3786
3803
  }
3787
3804
  }
@@ -3803,7 +3820,7 @@ var _ModelComparisonProperties = class _ModelComparisonProperties extends _OpenA
3803
3820
  data = typeof data === "object" ? data : {};
3804
3821
  data["type"] = (_a = this.type) != null ? _a : "ModelComparisonProperties";
3805
3822
  data = super.toJSON(data);
3806
- return (0, import_class_transformer41.instanceToPlain)(data, { exposeUnsetFields: false });
3823
+ return (0, import_class_transformer42.instanceToPlain)(data, { exposeUnsetFields: false });
3807
3824
  }
3808
3825
  validate() {
3809
3826
  return __async(this, null, function* () {
@@ -3820,13 +3837,13 @@ __decorateClass([
3820
3837
  (0, import_class_validator47.IsString)(),
3821
3838
  (0, import_class_validator47.IsOptional)(),
3822
3839
  (0, import_class_validator47.Matches)(/^ModelComparisonProperties$/),
3823
- (0, import_class_transformer41.Expose)({ name: "type" })
3840
+ (0, import_class_transformer42.Expose)({ name: "type" })
3824
3841
  ], _ModelComparisonProperties.prototype, "type", 2);
3825
3842
  var ModelComparisonProperties = _ModelComparisonProperties;
3826
3843
 
3827
3844
  // src/models/ModelDoe2Properties.ts
3828
3845
  var import_class_validator48 = require("class-validator");
3829
- var import_class_transformer42 = require("class-transformer");
3846
+ var import_class_transformer43 = require("class-transformer");
3830
3847
  var _ModelDoe2Properties = class _ModelDoe2Properties extends _OpenAPIGenBaseModel {
3831
3848
  constructor() {
3832
3849
  super();
@@ -3836,9 +3853,8 @@ var _ModelDoe2Properties = class _ModelDoe2Properties extends _OpenAPIGenBaseMod
3836
3853
  }
3837
3854
  init(_data) {
3838
3855
  var _a;
3839
- super.init(_data);
3840
3856
  if (_data) {
3841
- const obj = (0, import_class_transformer42.plainToClass)(_ModelDoe2Properties, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
3857
+ const obj = deepTransform(_ModelDoe2Properties, _data);
3842
3858
  this.type = (_a = obj.type) != null ? _a : "ModelDoe2Properties";
3843
3859
  }
3844
3860
  }
@@ -3860,7 +3876,7 @@ var _ModelDoe2Properties = class _ModelDoe2Properties extends _OpenAPIGenBaseMod
3860
3876
  data = typeof data === "object" ? data : {};
3861
3877
  data["type"] = (_a = this.type) != null ? _a : "ModelDoe2Properties";
3862
3878
  data = super.toJSON(data);
3863
- return (0, import_class_transformer42.instanceToPlain)(data, { exposeUnsetFields: false });
3879
+ return (0, import_class_transformer43.instanceToPlain)(data, { exposeUnsetFields: false });
3864
3880
  }
3865
3881
  validate() {
3866
3882
  return __async(this, null, function* () {
@@ -3877,13 +3893,13 @@ __decorateClass([
3877
3893
  (0, import_class_validator48.IsString)(),
3878
3894
  (0, import_class_validator48.IsOptional)(),
3879
3895
  (0, import_class_validator48.Matches)(/^ModelDoe2Properties$/),
3880
- (0, import_class_transformer42.Expose)({ name: "type" })
3896
+ (0, import_class_transformer43.Expose)({ name: "type" })
3881
3897
  ], _ModelDoe2Properties.prototype, "type", 2);
3882
3898
  var ModelDoe2Properties = _ModelDoe2Properties;
3883
3899
 
3884
3900
  // src/models/ModelEnergyProperties.ts
3885
3901
  var import_class_validator49 = require("class-validator");
3886
- var import_class_transformer43 = require("class-transformer");
3902
+ var import_class_transformer44 = require("class-transformer");
3887
3903
  var import_honeybee_schema22 = require("honeybee-schema");
3888
3904
  var import_honeybee_schema23 = require("honeybee-schema");
3889
3905
  var import_honeybee_schema24 = require("honeybee-schema");
@@ -4819,9 +4835,8 @@ var _ModelEnergyProperties = class _ModelEnergyProperties extends _OpenAPIGenBas
4819
4835
  }
4820
4836
  init(_data) {
4821
4837
  var _a, _b;
4822
- super.init(_data);
4823
4838
  if (_data) {
4824
- const obj = (0, import_class_transformer43.plainToClass)(_ModelEnergyProperties, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
4839
+ const obj = deepTransform(_ModelEnergyProperties, _data);
4825
4840
  this.type = (_a = obj.type) != null ? _a : "ModelEnergyProperties";
4826
4841
  this.globalConstructionSet = (_b = obj.globalConstructionSet) != null ? _b : import_honeybee_schema44.GlobalConstructionSet.fromJS({
4827
4842
  "type": "GlobalConstructionSet",
@@ -5719,7 +5734,7 @@ var _ModelEnergyProperties = class _ModelEnergyProperties extends _OpenAPIGenBas
5719
5734
  data["schedules"] = this.schedules;
5720
5735
  data["schedule_type_limits"] = this.scheduleTypeLimits;
5721
5736
  data = super.toJSON(data);
5722
- return (0, import_class_transformer43.instanceToPlain)(data, { exposeUnsetFields: false });
5737
+ return (0, import_class_transformer44.instanceToPlain)(data, { exposeUnsetFields: false });
5723
5738
  }
5724
5739
  validate() {
5725
5740
  return __async(this, null, function* () {
@@ -5736,20 +5751,20 @@ __decorateClass([
5736
5751
  (0, import_class_validator49.IsString)(),
5737
5752
  (0, import_class_validator49.IsOptional)(),
5738
5753
  (0, import_class_validator49.Matches)(/^ModelEnergyProperties$/),
5739
- (0, import_class_transformer43.Expose)({ name: "type" })
5754
+ (0, import_class_transformer44.Expose)({ name: "type" })
5740
5755
  ], _ModelEnergyProperties.prototype, "type", 2);
5741
5756
  __decorateClass([
5742
5757
  (0, import_class_validator49.IsInstance)(import_honeybee_schema44.GlobalConstructionSet),
5743
- (0, import_class_transformer43.Type)(() => import_honeybee_schema44.GlobalConstructionSet),
5758
+ (0, import_class_transformer44.Type)(() => import_honeybee_schema44.GlobalConstructionSet),
5744
5759
  (0, import_class_validator49.ValidateNested)(),
5745
5760
  (0, import_class_validator49.IsOptional)(),
5746
- (0, import_class_transformer43.Expose)({ name: "global_construction_set" })
5761
+ (0, import_class_transformer44.Expose)({ name: "global_construction_set" })
5747
5762
  ], _ModelEnergyProperties.prototype, "globalConstructionSet", 2);
5748
5763
  __decorateClass([
5749
5764
  (0, import_class_validator49.IsArray)(),
5750
5765
  (0, import_class_validator49.IsOptional)(),
5751
- (0, import_class_transformer43.Expose)({ name: "construction_sets" }),
5752
- (0, import_class_transformer43.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5766
+ (0, import_class_transformer44.Expose)({ name: "construction_sets" }),
5767
+ (0, import_class_transformer44.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5753
5768
  if ((item == null ? void 0 : item.type) === "ConstructionSetAbridged") return import_honeybee_schema26.ConstructionSetAbridged.fromJS(item);
5754
5769
  else if ((item == null ? void 0 : item.type) === "ConstructionSet") return import_honeybee_schema25.ConstructionSet.fromJS(item);
5755
5770
  else return item;
@@ -5758,8 +5773,8 @@ __decorateClass([
5758
5773
  __decorateClass([
5759
5774
  (0, import_class_validator49.IsArray)(),
5760
5775
  (0, import_class_validator49.IsOptional)(),
5761
- (0, import_class_transformer43.Expose)({ name: "constructions" }),
5762
- (0, import_class_transformer43.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5776
+ (0, import_class_transformer44.Expose)({ name: "constructions" }),
5777
+ (0, import_class_transformer44.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5763
5778
  if ((item == null ? void 0 : item.type) === "OpaqueConstructionAbridged") return import_honeybee_schema47.OpaqueConstructionAbridged.fromJS(item);
5764
5779
  else if ((item == null ? void 0 : item.type) === "WindowConstructionAbridged") return import_honeybee_schema68.WindowConstructionAbridged.fromJS(item);
5765
5780
  else if ((item == null ? void 0 : item.type) === "ShadeConstruction") return import_honeybee_schema61.ShadeConstruction.fromJS(item);
@@ -5773,8 +5788,8 @@ __decorateClass([
5773
5788
  __decorateClass([
5774
5789
  (0, import_class_validator49.IsArray)(),
5775
5790
  (0, import_class_validator49.IsOptional)(),
5776
- (0, import_class_transformer43.Expose)({ name: "materials" }),
5777
- (0, import_class_transformer43.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5791
+ (0, import_class_transformer44.Expose)({ name: "materials" }),
5792
+ (0, import_class_transformer44.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5778
5793
  if ((item == null ? void 0 : item.type) === "EnergyMaterial") return import_honeybee_schema28.EnergyMaterial.fromJS(item);
5779
5794
  else if ((item == null ? void 0 : item.type) === "EnergyMaterialNoMass") return import_honeybee_schema29.EnergyMaterialNoMass.fromJS(item);
5780
5795
  else if ((item == null ? void 0 : item.type) === "EnergyMaterialVegetation") return import_honeybee_schema30.EnergyMaterialVegetation.fromJS(item);
@@ -5792,8 +5807,8 @@ __decorateClass([
5792
5807
  __decorateClass([
5793
5808
  (0, import_class_validator49.IsArray)(),
5794
5809
  (0, import_class_validator49.IsOptional)(),
5795
- (0, import_class_transformer43.Expose)({ name: "hvacs" }),
5796
- (0, import_class_transformer43.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5810
+ (0, import_class_transformer44.Expose)({ name: "hvacs" }),
5811
+ (0, import_class_transformer44.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5797
5812
  if ((item == null ? void 0 : item.type) === "IdealAirSystemAbridged") return import_honeybee_schema45.IdealAirSystemAbridged.fromJS(item);
5798
5813
  else if ((item == null ? void 0 : item.type) === "VAV") return import_honeybee_schema63.VAV.fromJS(item);
5799
5814
  else if ((item == null ? void 0 : item.type) === "PVAV") return import_honeybee_schema52.PVAV.fromJS(item);
@@ -5820,16 +5835,16 @@ __decorateClass([
5820
5835
  __decorateClass([
5821
5836
  (0, import_class_validator49.IsArray)(),
5822
5837
  (0, import_class_validator49.IsInstance)(import_honeybee_schema62.SHWSystem, { each: true }),
5823
- (0, import_class_transformer43.Type)(() => import_honeybee_schema62.SHWSystem),
5838
+ (0, import_class_transformer44.Type)(() => import_honeybee_schema62.SHWSystem),
5824
5839
  (0, import_class_validator49.ValidateNested)({ each: true }),
5825
5840
  (0, import_class_validator49.IsOptional)(),
5826
- (0, import_class_transformer43.Expose)({ name: "shws" })
5841
+ (0, import_class_transformer44.Expose)({ name: "shws" })
5827
5842
  ], _ModelEnergyProperties.prototype, "shws", 2);
5828
5843
  __decorateClass([
5829
5844
  (0, import_class_validator49.IsArray)(),
5830
5845
  (0, import_class_validator49.IsOptional)(),
5831
- (0, import_class_transformer43.Expose)({ name: "program_types" }),
5832
- (0, import_class_transformer43.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5846
+ (0, import_class_transformer44.Expose)({ name: "program_types" }),
5847
+ (0, import_class_transformer44.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5833
5848
  if ((item == null ? void 0 : item.type) === "ProgramTypeAbridged") return import_honeybee_schema49.ProgramTypeAbridged.fromJS(item);
5834
5849
  else if ((item == null ? void 0 : item.type) === "ProgramType") return import_honeybee_schema48.ProgramType.fromJS(item);
5835
5850
  else return item;
@@ -5838,8 +5853,8 @@ __decorateClass([
5838
5853
  __decorateClass([
5839
5854
  (0, import_class_validator49.IsArray)(),
5840
5855
  (0, import_class_validator49.IsOptional)(),
5841
- (0, import_class_transformer43.Expose)({ name: "schedules" }),
5842
- (0, import_class_transformer43.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5856
+ (0, import_class_transformer44.Expose)({ name: "schedules" }),
5857
+ (0, import_class_transformer44.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
5843
5858
  if ((item == null ? void 0 : item.type) === "ScheduleRulesetAbridged") return import_honeybee_schema59.ScheduleRulesetAbridged.fromJS(item);
5844
5859
  else if ((item == null ? void 0 : item.type) === "ScheduleFixedIntervalAbridged") return import_honeybee_schema57.ScheduleFixedIntervalAbridged.fromJS(item);
5845
5860
  else if ((item == null ? void 0 : item.type) === "ScheduleRuleset") return import_honeybee_schema58.ScheduleRuleset.fromJS(item);
@@ -5850,16 +5865,16 @@ __decorateClass([
5850
5865
  __decorateClass([
5851
5866
  (0, import_class_validator49.IsArray)(),
5852
5867
  (0, import_class_validator49.IsInstance)(import_honeybee_schema60.ScheduleTypeLimit, { each: true }),
5853
- (0, import_class_transformer43.Type)(() => import_honeybee_schema60.ScheduleTypeLimit),
5868
+ (0, import_class_transformer44.Type)(() => import_honeybee_schema60.ScheduleTypeLimit),
5854
5869
  (0, import_class_validator49.ValidateNested)({ each: true }),
5855
5870
  (0, import_class_validator49.IsOptional)(),
5856
- (0, import_class_transformer43.Expose)({ name: "schedule_type_limits" })
5871
+ (0, import_class_transformer44.Expose)({ name: "schedule_type_limits" })
5857
5872
  ], _ModelEnergyProperties.prototype, "scheduleTypeLimits", 2);
5858
5873
  var ModelEnergyProperties = _ModelEnergyProperties;
5859
5874
 
5860
5875
  // src/models/ModelRadianceProperties.ts
5861
5876
  var import_class_validator50 = require("class-validator");
5862
- var import_class_transformer44 = require("class-transformer");
5877
+ var import_class_transformer45 = require("class-transformer");
5863
5878
  var import_honeybee_schema71 = require("honeybee-schema");
5864
5879
  var import_honeybee_schema72 = require("honeybee-schema");
5865
5880
  var import_honeybee_schema73 = require("honeybee-schema");
@@ -6210,9 +6225,8 @@ var _ModelRadianceProperties = class _ModelRadianceProperties extends _OpenAPIGe
6210
6225
  }
6211
6226
  init(_data) {
6212
6227
  var _a, _b;
6213
- super.init(_data);
6214
6228
  if (_data) {
6215
- const obj = (0, import_class_transformer44.plainToClass)(_ModelRadianceProperties, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
6229
+ const obj = deepTransform(_ModelRadianceProperties, _data);
6216
6230
  this.type = (_a = obj.type) != null ? _a : "ModelRadianceProperties";
6217
6231
  this.globalModifierSet = (_b = obj.globalModifierSet) != null ? _b : import_honeybee_schema73.GlobalModifierSet.fromJS({
6218
6232
  "type": "GlobalModifierSet",
@@ -6562,7 +6576,7 @@ var _ModelRadianceProperties = class _ModelRadianceProperties extends _OpenAPIGe
6562
6576
  data["modifier_sets"] = this.modifierSets;
6563
6577
  data["modifiers"] = this.modifiers;
6564
6578
  data = super.toJSON(data);
6565
- return (0, import_class_transformer44.instanceToPlain)(data, { exposeUnsetFields: false });
6579
+ return (0, import_class_transformer45.instanceToPlain)(data, { exposeUnsetFields: false });
6566
6580
  }
6567
6581
  validate() {
6568
6582
  return __async(this, null, function* () {
@@ -6579,20 +6593,20 @@ __decorateClass([
6579
6593
  (0, import_class_validator50.IsString)(),
6580
6594
  (0, import_class_validator50.IsOptional)(),
6581
6595
  (0, import_class_validator50.Matches)(/^ModelRadianceProperties$/),
6582
- (0, import_class_transformer44.Expose)({ name: "type" })
6596
+ (0, import_class_transformer45.Expose)({ name: "type" })
6583
6597
  ], _ModelRadianceProperties.prototype, "type", 2);
6584
6598
  __decorateClass([
6585
6599
  (0, import_class_validator50.IsInstance)(import_honeybee_schema73.GlobalModifierSet),
6586
- (0, import_class_transformer44.Type)(() => import_honeybee_schema73.GlobalModifierSet),
6600
+ (0, import_class_transformer45.Type)(() => import_honeybee_schema73.GlobalModifierSet),
6587
6601
  (0, import_class_validator50.ValidateNested)(),
6588
6602
  (0, import_class_validator50.IsOptional)(),
6589
- (0, import_class_transformer44.Expose)({ name: "global_modifier_set" })
6603
+ (0, import_class_transformer45.Expose)({ name: "global_modifier_set" })
6590
6604
  ], _ModelRadianceProperties.prototype, "globalModifierSet", 2);
6591
6605
  __decorateClass([
6592
6606
  (0, import_class_validator50.IsArray)(),
6593
6607
  (0, import_class_validator50.IsOptional)(),
6594
- (0, import_class_transformer44.Expose)({ name: "modifier_sets" }),
6595
- (0, import_class_transformer44.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
6608
+ (0, import_class_transformer45.Expose)({ name: "modifier_sets" }),
6609
+ (0, import_class_transformer45.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
6596
6610
  if ((item == null ? void 0 : item.type) === "ModifierSet") return import_honeybee_schema78.ModifierSet.fromJS(item);
6597
6611
  else if ((item == null ? void 0 : item.type) === "ModifierSetAbridged") return import_honeybee_schema79.ModifierSetAbridged.fromJS(item);
6598
6612
  else return item;
@@ -6601,8 +6615,8 @@ __decorateClass([
6601
6615
  __decorateClass([
6602
6616
  (0, import_class_validator50.IsArray)(),
6603
6617
  (0, import_class_validator50.IsOptional)(),
6604
- (0, import_class_transformer44.Expose)({ name: "modifiers" }),
6605
- (0, import_class_transformer44.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
6618
+ (0, import_class_transformer45.Expose)({ name: "modifiers" }),
6619
+ (0, import_class_transformer45.Transform)(({ value }) => value == null ? void 0 : value.map((item) => {
6606
6620
  if ((item == null ? void 0 : item.type) === "Plastic") return import_honeybee_schema80.Plastic.fromJS(item);
6607
6621
  else if ((item == null ? void 0 : item.type) === "Glass") return import_honeybee_schema72.Glass.fromJS(item);
6608
6622
  else if ((item == null ? void 0 : item.type) === "BSDF") return import_honeybee_schema71.BSDF.fromJS(item);
@@ -6635,9 +6649,8 @@ var _ModelProperties = class _ModelProperties extends _OpenAPIGenBaseModel {
6635
6649
  }
6636
6650
  init(_data) {
6637
6651
  var _a;
6638
- super.init(_data);
6639
6652
  if (_data) {
6640
- const obj = (0, import_class_transformer45.plainToClass)(_ModelProperties, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
6653
+ const obj = deepTransform(_ModelProperties, _data);
6641
6654
  this.type = (_a = obj.type) != null ? _a : "ModelProperties";
6642
6655
  this.energy = obj.energy;
6643
6656
  this.radiance = obj.radiance;
@@ -6667,7 +6680,7 @@ var _ModelProperties = class _ModelProperties extends _OpenAPIGenBaseModel {
6667
6680
  data["doe2"] = this.doe2;
6668
6681
  data["comparison"] = this.comparison;
6669
6682
  data = super.toJSON(data);
6670
- return (0, import_class_transformer45.instanceToPlain)(data, { exposeUnsetFields: false });
6683
+ return (0, import_class_transformer46.instanceToPlain)(data, { exposeUnsetFields: false });
6671
6684
  }
6672
6685
  validate() {
6673
6686
  return __async(this, null, function* () {
@@ -6684,35 +6697,35 @@ __decorateClass([
6684
6697
  (0, import_class_validator51.IsString)(),
6685
6698
  (0, import_class_validator51.IsOptional)(),
6686
6699
  (0, import_class_validator51.Matches)(/^ModelProperties$/),
6687
- (0, import_class_transformer45.Expose)({ name: "type" })
6700
+ (0, import_class_transformer46.Expose)({ name: "type" })
6688
6701
  ], _ModelProperties.prototype, "type", 2);
6689
6702
  __decorateClass([
6690
6703
  (0, import_class_validator51.IsInstance)(ModelEnergyProperties),
6691
- (0, import_class_transformer45.Type)(() => ModelEnergyProperties),
6704
+ (0, import_class_transformer46.Type)(() => ModelEnergyProperties),
6692
6705
  (0, import_class_validator51.ValidateNested)(),
6693
6706
  (0, import_class_validator51.IsOptional)(),
6694
- (0, import_class_transformer45.Expose)({ name: "energy" })
6707
+ (0, import_class_transformer46.Expose)({ name: "energy" })
6695
6708
  ], _ModelProperties.prototype, "energy", 2);
6696
6709
  __decorateClass([
6697
6710
  (0, import_class_validator51.IsInstance)(ModelRadianceProperties),
6698
- (0, import_class_transformer45.Type)(() => ModelRadianceProperties),
6711
+ (0, import_class_transformer46.Type)(() => ModelRadianceProperties),
6699
6712
  (0, import_class_validator51.ValidateNested)(),
6700
6713
  (0, import_class_validator51.IsOptional)(),
6701
- (0, import_class_transformer45.Expose)({ name: "radiance" })
6714
+ (0, import_class_transformer46.Expose)({ name: "radiance" })
6702
6715
  ], _ModelProperties.prototype, "radiance", 2);
6703
6716
  __decorateClass([
6704
6717
  (0, import_class_validator51.IsInstance)(ModelDoe2Properties),
6705
- (0, import_class_transformer45.Type)(() => ModelDoe2Properties),
6718
+ (0, import_class_transformer46.Type)(() => ModelDoe2Properties),
6706
6719
  (0, import_class_validator51.ValidateNested)(),
6707
6720
  (0, import_class_validator51.IsOptional)(),
6708
- (0, import_class_transformer45.Expose)({ name: "doe2" })
6721
+ (0, import_class_transformer46.Expose)({ name: "doe2" })
6709
6722
  ], _ModelProperties.prototype, "doe2", 2);
6710
6723
  __decorateClass([
6711
6724
  (0, import_class_validator51.IsInstance)(ModelComparisonProperties),
6712
- (0, import_class_transformer45.Type)(() => ModelComparisonProperties),
6725
+ (0, import_class_transformer46.Type)(() => ModelComparisonProperties),
6713
6726
  (0, import_class_validator51.ValidateNested)(),
6714
6727
  (0, import_class_validator51.IsOptional)(),
6715
- (0, import_class_transformer45.Expose)({ name: "comparison" })
6728
+ (0, import_class_transformer46.Expose)({ name: "comparison" })
6716
6729
  ], _ModelProperties.prototype, "comparison", 2);
6717
6730
  var ModelProperties = _ModelProperties;
6718
6731
 
@@ -6747,9 +6760,8 @@ var _Model = class _Model extends import_honeybee_schema83.IDdBaseModel {
6747
6760
  }
6748
6761
  init(_data) {
6749
6762
  var _a, _b, _c, _d, _e;
6750
- super.init(_data);
6751
6763
  if (_data) {
6752
- const obj = (0, import_class_transformer46.plainToClass)(_Model, _data, { enableImplicitConversion: true, exposeUnsetFields: false, exposeDefaultValues: true });
6764
+ const obj = deepTransform(_Model, _data);
6753
6765
  this.properties = obj.properties;
6754
6766
  this.type = (_a = obj.type) != null ? _a : "Model";
6755
6767
  this.version = (_b = obj.version) != null ? _b : "0.0.0";
@@ -6759,6 +6771,9 @@ var _Model = class _Model extends import_honeybee_schema83.IDdBaseModel {
6759
6771
  this.tolerance = (_d = obj.tolerance) != null ? _d : 0.01;
6760
6772
  this.angleTolerance = (_e = obj.angleTolerance) != null ? _e : 1;
6761
6773
  this.referenceVector = obj.referenceVector;
6774
+ this.identifier = obj.identifier;
6775
+ this.displayName = obj.displayName;
6776
+ this.userData = obj.userData;
6762
6777
  }
6763
6778
  }
6764
6779
  static fromJS(data) {
@@ -6787,7 +6802,7 @@ var _Model = class _Model extends import_honeybee_schema83.IDdBaseModel {
6787
6802
  data["angle_tolerance"] = (_e = this.angleTolerance) != null ? _e : 1;
6788
6803
  data["reference_vector"] = this.referenceVector;
6789
6804
  data = super.toJSON(data);
6790
- return (0, import_class_transformer46.instanceToPlain)(data, { exposeUnsetFields: false });
6805
+ return (0, import_class_transformer47.instanceToPlain)(data, { exposeUnsetFields: false });
6791
6806
  }
6792
6807
  validate() {
6793
6808
  return __async(this, null, function* () {
@@ -6802,62 +6817,62 @@ var _Model = class _Model extends import_honeybee_schema83.IDdBaseModel {
6802
6817
  };
6803
6818
  __decorateClass([
6804
6819
  (0, import_class_validator52.IsInstance)(ModelProperties),
6805
- (0, import_class_transformer46.Type)(() => ModelProperties),
6820
+ (0, import_class_transformer47.Type)(() => ModelProperties),
6806
6821
  (0, import_class_validator52.ValidateNested)(),
6807
6822
  (0, import_class_validator52.IsDefined)(),
6808
- (0, import_class_transformer46.Expose)({ name: "properties" })
6823
+ (0, import_class_transformer47.Expose)({ name: "properties" })
6809
6824
  ], _Model.prototype, "properties", 2);
6810
6825
  __decorateClass([
6811
6826
  (0, import_class_validator52.IsString)(),
6812
6827
  (0, import_class_validator52.IsOptional)(),
6813
6828
  (0, import_class_validator52.Matches)(/^Model$/),
6814
- (0, import_class_transformer46.Expose)({ name: "type" })
6829
+ (0, import_class_transformer47.Expose)({ name: "type" })
6815
6830
  ], _Model.prototype, "type", 2);
6816
6831
  __decorateClass([
6817
6832
  (0, import_class_validator52.IsString)(),
6818
6833
  (0, import_class_validator52.IsOptional)(),
6819
6834
  (0, import_class_validator52.Matches)(/([0-9]+)\.([0-9]+)\.([0-9]+)/),
6820
- (0, import_class_transformer46.Expose)({ name: "version" })
6835
+ (0, import_class_transformer47.Expose)({ name: "version" })
6821
6836
  ], _Model.prototype, "version", 2);
6822
6837
  __decorateClass([
6823
6838
  (0, import_class_validator52.IsArray)(),
6824
6839
  (0, import_class_validator52.IsInstance)(Building, { each: true }),
6825
- (0, import_class_transformer46.Type)(() => Building),
6840
+ (0, import_class_transformer47.Type)(() => Building),
6826
6841
  (0, import_class_validator52.ValidateNested)({ each: true }),
6827
6842
  (0, import_class_validator52.IsOptional)(),
6828
- (0, import_class_transformer46.Expose)({ name: "buildings" })
6843
+ (0, import_class_transformer47.Expose)({ name: "buildings" })
6829
6844
  ], _Model.prototype, "buildings", 2);
6830
6845
  __decorateClass([
6831
6846
  (0, import_class_validator52.IsArray)(),
6832
6847
  (0, import_class_validator52.IsInstance)(ContextShade, { each: true }),
6833
- (0, import_class_transformer46.Type)(() => ContextShade),
6848
+ (0, import_class_transformer47.Type)(() => ContextShade),
6834
6849
  (0, import_class_validator52.ValidateNested)({ each: true }),
6835
6850
  (0, import_class_validator52.IsOptional)(),
6836
- (0, import_class_transformer46.Expose)({ name: "context_shades" })
6851
+ (0, import_class_transformer47.Expose)({ name: "context_shades" })
6837
6852
  ], _Model.prototype, "contextShades", 2);
6838
6853
  __decorateClass([
6839
6854
  (0, import_class_validator52.IsEnum)(import_honeybee_schema84.Units),
6840
- (0, import_class_transformer46.Type)(() => String),
6855
+ (0, import_class_transformer47.Type)(() => String),
6841
6856
  (0, import_class_validator52.IsOptional)(),
6842
- (0, import_class_transformer46.Expose)({ name: "units" })
6857
+ (0, import_class_transformer47.Expose)({ name: "units" })
6843
6858
  ], _Model.prototype, "units", 2);
6844
6859
  __decorateClass([
6845
6860
  (0, import_class_validator52.IsNumber)(),
6846
6861
  (0, import_class_validator52.IsOptional)(),
6847
6862
  (0, import_class_validator52.Min)(0),
6848
- (0, import_class_transformer46.Expose)({ name: "tolerance" })
6863
+ (0, import_class_transformer47.Expose)({ name: "tolerance" })
6849
6864
  ], _Model.prototype, "tolerance", 2);
6850
6865
  __decorateClass([
6851
6866
  (0, import_class_validator52.IsNumber)(),
6852
6867
  (0, import_class_validator52.IsOptional)(),
6853
6868
  (0, import_class_validator52.Min)(0),
6854
- (0, import_class_transformer46.Expose)({ name: "angle_tolerance" })
6869
+ (0, import_class_transformer47.Expose)({ name: "angle_tolerance" })
6855
6870
  ], _Model.prototype, "angleTolerance", 2);
6856
6871
  __decorateClass([
6857
6872
  (0, import_class_validator52.IsArray)(),
6858
6873
  (0, import_class_validator52.IsNumber)({}, { each: true }),
6859
6874
  (0, import_class_validator52.IsOptional)(),
6860
- (0, import_class_transformer46.Expose)({ name: "reference_vector" })
6875
+ (0, import_class_transformer47.Expose)({ name: "reference_vector" })
6861
6876
  ], _Model.prototype, "referenceVector", 2);
6862
6877
  var Model = _Model;
6863
6878
  // Annotate the CommonJS export names for ESM import in node: