@mat3ra/prode 2026.3.30-0 → 2026.5.28-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/dist/js/PropertyFactory.d.ts +2 -2
  2. package/dist/js/generated/AtomicConstraintsPropertySchemaMixin.d.ts +1 -1
  3. package/dist/js/generated/AtomicConstraintsPropertySchemaMixin.js +6 -0
  4. package/dist/js/generated/AtomicForcesPropertySchemaMixin.d.ts +1 -1
  5. package/dist/js/generated/AtomicForcesPropertySchemaMixin.js +9 -0
  6. package/dist/js/generated/AveragePotentialProfilePropertySchemaMixin.d.ts +1 -1
  7. package/dist/js/generated/AveragePotentialProfilePropertySchemaMixin.js +15 -0
  8. package/dist/js/generated/BandGapsPropertySchemaMixin.d.ts +1 -1
  9. package/dist/js/generated/BandGapsPropertySchemaMixin.js +9 -0
  10. package/dist/js/generated/BandStructurePropertySchemaMixin.d.ts +1 -1
  11. package/dist/js/generated/BandStructurePropertySchemaMixin.js +18 -0
  12. package/dist/js/generated/BoundaryConditionsPropertySchemaMixin.d.ts +1 -1
  13. package/dist/js/generated/BoundaryConditionsPropertySchemaMixin.js +9 -0
  14. package/dist/js/generated/ChargeDensityProfilePropertySchemaMixin.d.ts +1 -1
  15. package/dist/js/generated/ChargeDensityProfilePropertySchemaMixin.js +15 -0
  16. package/dist/js/generated/ConvergenceElectronicPropertySchemaMixin.d.ts +1 -1
  17. package/dist/js/generated/ConvergenceElectronicPropertySchemaMixin.js +9 -0
  18. package/dist/js/generated/ConvergenceIonicPropertySchemaMixin.d.ts +1 -1
  19. package/dist/js/generated/ConvergenceIonicPropertySchemaMixin.js +12 -0
  20. package/dist/js/generated/DensityOfStatesPropertySchemaMixin.d.ts +1 -1
  21. package/dist/js/generated/DensityOfStatesPropertySchemaMixin.js +18 -0
  22. package/dist/js/generated/DielectricTensorPropertySchemaMixin.d.ts +1 -1
  23. package/dist/js/generated/DielectricTensorPropertySchemaMixin.js +6 -0
  24. package/dist/js/generated/FermiEnergyPropertySchemaMixin.d.ts +1 -1
  25. package/dist/js/generated/FermiEnergyPropertySchemaMixin.js +9 -0
  26. package/dist/js/generated/FileContentPropertySchemaMixin.d.ts +1 -1
  27. package/dist/js/generated/FileContentPropertySchemaMixin.js +15 -0
  28. package/dist/js/generated/FinalStructurePropertySchemaMixin.d.ts +1 -1
  29. package/dist/js/generated/FinalStructurePropertySchemaMixin.js +9 -0
  30. package/dist/js/generated/HOMOEnergyPropertySchemaMixin.d.ts +1 -1
  31. package/dist/js/generated/HOMOEnergyPropertySchemaMixin.js +9 -0
  32. package/dist/js/generated/HubbardUPropertySchemaMixin.d.ts +1 -1
  33. package/dist/js/generated/HubbardUPropertySchemaMixin.js +9 -0
  34. package/dist/js/generated/HubbardVNNPropertySchemaMixin.d.ts +1 -1
  35. package/dist/js/generated/HubbardVNNPropertySchemaMixin.js +9 -0
  36. package/dist/js/generated/HubbardVPropertySchemaMixin.d.ts +1 -1
  37. package/dist/js/generated/HubbardVPropertySchemaMixin.js +9 -0
  38. package/dist/js/generated/IonizationPotentialElementalPropertySchemaMixin.d.ts +1 -1
  39. package/dist/js/generated/IonizationPotentialElementalPropertySchemaMixin.js +9 -0
  40. package/dist/js/generated/IsRelaxedPropertySchemaMixin.d.ts +1 -1
  41. package/dist/js/generated/IsRelaxedPropertySchemaMixin.js +9 -0
  42. package/dist/js/generated/JupyterNotebookEndpointPropertySchemaMixin.d.ts +1 -1
  43. package/dist/js/generated/JupyterNotebookEndpointPropertySchemaMixin.js +12 -0
  44. package/dist/js/generated/LUMOEnergyPropertySchemaMixin.d.ts +1 -1
  45. package/dist/js/generated/LUMOEnergyPropertySchemaMixin.js +9 -0
  46. package/dist/js/generated/MagneticMomentsPropertySchemaMixin.d.ts +1 -1
  47. package/dist/js/generated/MagneticMomentsPropertySchemaMixin.js +9 -0
  48. package/dist/js/generated/MetaPropertyHolderSchemaMixin.d.ts +1 -1
  49. package/dist/js/generated/MetaPropertyHolderSchemaMixin.js +6 -0
  50. package/dist/js/generated/PhononDOSPropertySchemaMixin.d.ts +1 -1
  51. package/dist/js/generated/PhononDOSPropertySchemaMixin.js +15 -0
  52. package/dist/js/generated/PhononDispersionsPropertySchemaMixin.d.ts +1 -1
  53. package/dist/js/generated/PhononDispersionsPropertySchemaMixin.js +15 -0
  54. package/dist/js/generated/PotentialProfilePropertySchemaMixin.d.ts +1 -1
  55. package/dist/js/generated/PotentialProfilePropertySchemaMixin.js +15 -0
  56. package/dist/js/generated/PressurePropertySchemaMixin.d.ts +1 -1
  57. package/dist/js/generated/PressurePropertySchemaMixin.js +9 -0
  58. package/dist/js/generated/PropertyHolderSchemaMixin.d.ts +1 -1
  59. package/dist/js/generated/PropertyHolderSchemaMixin.js +21 -0
  60. package/dist/js/generated/ProtoPropertyHolderSchemaMixin.d.ts +1 -1
  61. package/dist/js/generated/ProtoPropertyHolderSchemaMixin.js +6 -0
  62. package/dist/js/generated/PseudopotentialMetaPropertySchemaMixin.d.ts +1 -1
  63. package/dist/js/generated/PseudopotentialMetaPropertySchemaMixin.js +36 -0
  64. package/dist/js/generated/ReactionEnergyBarrierPropertySchemaMixin.d.ts +1 -1
  65. package/dist/js/generated/ReactionEnergyBarrierPropertySchemaMixin.js +9 -0
  66. package/dist/js/generated/ReactionEnergyProfilePropertySchemaMixin.d.ts +1 -1
  67. package/dist/js/generated/ReactionEnergyProfilePropertySchemaMixin.js +15 -0
  68. package/dist/js/generated/StressTensorPropertySchemaMixin.d.ts +1 -1
  69. package/dist/js/generated/StressTensorPropertySchemaMixin.js +9 -0
  70. package/dist/js/generated/SurfaceEnergyPropertySchemaMixin.d.ts +1 -1
  71. package/dist/js/generated/SurfaceEnergyPropertySchemaMixin.js +9 -0
  72. package/dist/js/generated/ThermalCorrectionToEnergyPropertySchemaMixin.d.ts +1 -1
  73. package/dist/js/generated/ThermalCorrectionToEnergyPropertySchemaMixin.js +9 -0
  74. package/dist/js/generated/ThermalCorrectionToEnthalpyPropertySchemaMixin.d.ts +1 -1
  75. package/dist/js/generated/ThermalCorrectionToEnthalpyPropertySchemaMixin.js +9 -0
  76. package/dist/js/generated/TotalEnergyContributionsPropertySchemaMixin.d.ts +1 -1
  77. package/dist/js/generated/TotalEnergyContributionsPropertySchemaMixin.js +48 -0
  78. package/dist/js/generated/TotalEnergyPropertySchemaMixin.d.ts +1 -1
  79. package/dist/js/generated/TotalEnergyPropertySchemaMixin.js +9 -0
  80. package/dist/js/generated/TotalForcePropertySchemaMixin.d.ts +1 -1
  81. package/dist/js/generated/TotalForcePropertySchemaMixin.js +9 -0
  82. package/dist/js/generated/ValenceBandOffsetPropertySchemaMixin.d.ts +1 -1
  83. package/dist/js/generated/ValenceBandOffsetPropertySchemaMixin.js +9 -0
  84. package/dist/js/generated/WavefunctionAmplitudePropertySchemaMixin.d.ts +1 -1
  85. package/dist/js/generated/WavefunctionAmplitudePropertySchemaMixin.js +15 -0
  86. package/dist/js/generated/WorkflowPropertySchemaMixin.d.ts +1 -1
  87. package/dist/js/generated/WorkflowPropertySchemaMixin.js +39 -12
  88. package/dist/js/generated/ZeroPointEnergyPropertySchemaMixin.d.ts +1 -1
  89. package/dist/js/generated/ZeroPointEnergyPropertySchemaMixin.js +9 -0
  90. package/dist/js/holders/MetaPropertyHolder.d.ts +4 -5
  91. package/dist/js/holders/MetaPropertyHolder.js +1 -1
  92. package/dist/js/holders/PropertyHolder.d.ts +5 -4
  93. package/dist/js/holders/mixins/MetaPropertyHolderMixin.d.ts +2 -2
  94. package/dist/js/index.d.ts +3 -0
  95. package/dist/js/index.js +7 -1
  96. package/dist/js/meta_properties/PseudopotentialMetaProperty.d.ts +14 -14
  97. package/dist/js/meta_properties/PseudopotentialMetaProperty.js +7 -1
  98. package/dist/js/properties/scalar/ThermalCorrectionToEnergyProperty.d.ts +5 -5
  99. package/dist/js/properties/scalar/ThermalCorrectionToEnergyProperty.js +1 -1
  100. package/dist/js/properties/scalar/ThermalCorrectionToEnthalpyProperty.d.ts +5 -5
  101. package/dist/js/properties/scalar/ThermalCorrectionToEnthalpyProperty.js +1 -1
  102. package/dist/js/types.d.ts +1 -0
  103. package/package.json +5 -5
  104. package/src/js/PropertyFactory.ts +1 -2
  105. package/src/js/generated/AtomicConstraintsPropertySchemaMixin.ts +9 -1
  106. package/src/js/generated/AtomicForcesPropertySchemaMixin.ts +12 -1
  107. package/src/js/generated/AveragePotentialProfilePropertySchemaMixin.ts +18 -1
  108. package/src/js/generated/BandGapsPropertySchemaMixin.ts +12 -1
  109. package/src/js/generated/BandStructurePropertySchemaMixin.ts +21 -1
  110. package/src/js/generated/BoundaryConditionsPropertySchemaMixin.ts +12 -1
  111. package/src/js/generated/ChargeDensityProfilePropertySchemaMixin.ts +18 -1
  112. package/src/js/generated/ConvergenceElectronicPropertySchemaMixin.ts +12 -1
  113. package/src/js/generated/ConvergenceIonicPropertySchemaMixin.ts +15 -1
  114. package/src/js/generated/DensityOfStatesPropertySchemaMixin.ts +21 -1
  115. package/src/js/generated/DielectricTensorPropertySchemaMixin.ts +9 -1
  116. package/src/js/generated/FermiEnergyPropertySchemaMixin.ts +12 -1
  117. package/src/js/generated/FileContentPropertySchemaMixin.ts +18 -1
  118. package/src/js/generated/FinalStructurePropertySchemaMixin.ts +12 -1
  119. package/src/js/generated/HOMOEnergyPropertySchemaMixin.ts +12 -1
  120. package/src/js/generated/HubbardUPropertySchemaMixin.ts +12 -1
  121. package/src/js/generated/HubbardVNNPropertySchemaMixin.ts +12 -1
  122. package/src/js/generated/HubbardVPropertySchemaMixin.ts +12 -1
  123. package/src/js/generated/IonizationPotentialElementalPropertySchemaMixin.ts +12 -1
  124. package/src/js/generated/IsRelaxedPropertySchemaMixin.ts +12 -1
  125. package/src/js/generated/JupyterNotebookEndpointPropertySchemaMixin.ts +15 -1
  126. package/src/js/generated/LUMOEnergyPropertySchemaMixin.ts +12 -1
  127. package/src/js/generated/MagneticMomentsPropertySchemaMixin.ts +12 -1
  128. package/src/js/generated/MetaPropertyHolderSchemaMixin.ts +9 -1
  129. package/src/js/generated/PhononDOSPropertySchemaMixin.ts +18 -1
  130. package/src/js/generated/PhononDispersionsPropertySchemaMixin.ts +18 -1
  131. package/src/js/generated/PotentialProfilePropertySchemaMixin.ts +18 -1
  132. package/src/js/generated/PressurePropertySchemaMixin.ts +12 -1
  133. package/src/js/generated/PropertyHolderSchemaMixin.ts +24 -1
  134. package/src/js/generated/ProtoPropertyHolderSchemaMixin.ts +9 -1
  135. package/src/js/generated/PseudopotentialMetaPropertySchemaMixin.ts +39 -1
  136. package/src/js/generated/ReactionEnergyBarrierPropertySchemaMixin.ts +12 -1
  137. package/src/js/generated/ReactionEnergyProfilePropertySchemaMixin.ts +18 -1
  138. package/src/js/generated/StressTensorPropertySchemaMixin.ts +12 -1
  139. package/src/js/generated/SurfaceEnergyPropertySchemaMixin.ts +12 -1
  140. package/src/js/generated/ThermalCorrectionToEnergyPropertySchemaMixin.ts +12 -1
  141. package/src/js/generated/ThermalCorrectionToEnthalpyPropertySchemaMixin.ts +12 -1
  142. package/src/js/generated/TotalEnergyContributionsPropertySchemaMixin.ts +59 -1
  143. package/src/js/generated/TotalEnergyPropertySchemaMixin.ts +12 -1
  144. package/src/js/generated/TotalForcePropertySchemaMixin.ts +12 -1
  145. package/src/js/generated/ValenceBandOffsetPropertySchemaMixin.ts +12 -1
  146. package/src/js/generated/WavefunctionAmplitudePropertySchemaMixin.ts +18 -1
  147. package/src/js/generated/WorkflowPropertySchemaMixin.ts +42 -13
  148. package/src/js/generated/ZeroPointEnergyPropertySchemaMixin.ts +12 -1
  149. package/src/js/holders/MetaPropertyHolder.ts +5 -3
  150. package/src/js/holders/PropertyHolder.ts +5 -3
  151. package/src/js/holders/mixins/MetaPropertyHolderMixin.ts +2 -2
  152. package/src/js/index.ts +3 -0
  153. package/src/js/meta_properties/PseudopotentialMetaProperty.ts +24 -15
  154. package/src/js/properties/scalar/ThermalCorrectionToEnergyProperty.ts +7 -3
  155. package/src/js/properties/scalar/ThermalCorrectionToEnthalpyProperty.ts +8 -3
  156. package/src/js/types.ts +4 -0
@@ -9,28 +9,45 @@ export type ReactionEnergyProfilePropertySchemaMixin = Omit<
9
9
  export type ReactionEnergyProfilePropertyInMemoryEntity = InMemoryEntity &
10
10
  ReactionEnergyProfilePropertySchemaMixin;
11
11
 
12
- export function reactionEnergyProfilePropertySchemaMixin(item: InMemoryEntity) {
12
+ export function reactionEnergyProfilePropertySchemaMixin<T extends InMemoryEntity>(
13
+ item: InMemoryEntity,
14
+ ): asserts item is T & ReactionEnergyProfilePropertySchemaMixin {
13
15
  // @ts-expect-error
14
16
  const properties: InMemoryEntity & ReactionEnergyProfilePropertySchemaMixin = {
15
17
  get xAxis() {
16
18
  return this.requiredProp<ReactionEnergyProfilePropertySchema["xAxis"]>("xAxis");
17
19
  },
20
+ set xAxis(value: ReactionEnergyProfilePropertySchema["xAxis"]) {
21
+ this.setProp("xAxis", value);
22
+ },
18
23
  get yAxis() {
19
24
  return this.requiredProp<ReactionEnergyProfilePropertySchema["yAxis"]>("yAxis");
20
25
  },
26
+ set yAxis(value: ReactionEnergyProfilePropertySchema["yAxis"]) {
27
+ this.setProp("yAxis", value);
28
+ },
21
29
  get name() {
22
30
  return this.requiredProp<ReactionEnergyProfilePropertySchema["name"]>("name");
23
31
  },
32
+ set name(value: ReactionEnergyProfilePropertySchema["name"]) {
33
+ this.setProp("name", value);
34
+ },
24
35
  get xDataArray() {
25
36
  return this.requiredProp<ReactionEnergyProfilePropertySchema["xDataArray"]>(
26
37
  "xDataArray",
27
38
  );
28
39
  },
40
+ set xDataArray(value: ReactionEnergyProfilePropertySchema["xDataArray"]) {
41
+ this.setProp("xDataArray", value);
42
+ },
29
43
  get yDataSeries() {
30
44
  return this.requiredProp<ReactionEnergyProfilePropertySchema["yDataSeries"]>(
31
45
  "yDataSeries",
32
46
  );
33
47
  },
48
+ set yDataSeries(value: ReactionEnergyProfilePropertySchema["yDataSeries"]) {
49
+ this.setProp("yDataSeries", value);
50
+ },
34
51
  };
35
52
 
36
53
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -8,18 +8,29 @@ export type StressTensorPropertySchemaMixin = Omit<
8
8
 
9
9
  export type StressTensorPropertyInMemoryEntity = InMemoryEntity & StressTensorPropertySchemaMixin;
10
10
 
11
- export function stressTensorPropertySchemaMixin(item: InMemoryEntity) {
11
+ export function stressTensorPropertySchemaMixin<T extends InMemoryEntity>(
12
+ item: InMemoryEntity,
13
+ ): asserts item is T & StressTensorPropertySchemaMixin {
12
14
  // @ts-expect-error
13
15
  const properties: InMemoryEntity & StressTensorPropertySchemaMixin = {
14
16
  get value() {
15
17
  return this.requiredProp<StressTensorPropertySchema["value"]>("value");
16
18
  },
19
+ set value(value: StressTensorPropertySchema["value"]) {
20
+ this.setProp("value", value);
21
+ },
17
22
  get name() {
18
23
  return this.requiredProp<StressTensorPropertySchema["name"]>("name");
19
24
  },
25
+ set name(value: StressTensorPropertySchema["name"]) {
26
+ this.setProp("name", value);
27
+ },
20
28
  get units() {
21
29
  return this.requiredProp<StressTensorPropertySchema["units"]>("units");
22
30
  },
31
+ set units(value: StressTensorPropertySchema["units"]) {
32
+ this.setProp("units", value);
33
+ },
23
34
  };
24
35
 
25
36
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -8,18 +8,29 @@ export type SurfaceEnergyPropertySchemaMixin = Omit<
8
8
 
9
9
  export type SurfaceEnergyPropertyInMemoryEntity = InMemoryEntity & SurfaceEnergyPropertySchemaMixin;
10
10
 
11
- export function surfaceEnergyPropertySchemaMixin(item: InMemoryEntity) {
11
+ export function surfaceEnergyPropertySchemaMixin<T extends InMemoryEntity>(
12
+ item: InMemoryEntity,
13
+ ): asserts item is T & SurfaceEnergyPropertySchemaMixin {
12
14
  // @ts-expect-error
13
15
  const properties: InMemoryEntity & SurfaceEnergyPropertySchemaMixin = {
14
16
  get name() {
15
17
  return this.requiredProp<SurfaceEnergyPropertySchema["name"]>("name");
16
18
  },
19
+ set name(value: SurfaceEnergyPropertySchema["name"]) {
20
+ this.setProp("name", value);
21
+ },
17
22
  get units() {
18
23
  return this.requiredProp<SurfaceEnergyPropertySchema["units"]>("units");
19
24
  },
25
+ set units(value: SurfaceEnergyPropertySchema["units"]) {
26
+ this.setProp("units", value);
27
+ },
20
28
  get value() {
21
29
  return this.requiredProp<SurfaceEnergyPropertySchema["value"]>("value");
22
30
  },
31
+ set value(value: SurfaceEnergyPropertySchema["value"]) {
32
+ this.setProp("value", value);
33
+ },
23
34
  };
24
35
 
25
36
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -9,18 +9,29 @@ export type ThermalCorrectionToEnergyPropertySchemaMixin = Omit<
9
9
  export type ThermalCorrectionToEnergyPropertyInMemoryEntity = InMemoryEntity &
10
10
  ThermalCorrectionToEnergyPropertySchemaMixin;
11
11
 
12
- export function thermalCorrectionToEnergyPropertySchemaMixin(item: InMemoryEntity) {
12
+ export function thermalCorrectionToEnergyPropertySchemaMixin<T extends InMemoryEntity>(
13
+ item: InMemoryEntity,
14
+ ): asserts item is T & ThermalCorrectionToEnergyPropertySchemaMixin {
13
15
  // @ts-expect-error
14
16
  const properties: InMemoryEntity & ThermalCorrectionToEnergyPropertySchemaMixin = {
15
17
  get name() {
16
18
  return this.requiredProp<ThermalCorrectionToEnergyPropertySchema["name"]>("name");
17
19
  },
20
+ set name(value: ThermalCorrectionToEnergyPropertySchema["name"]) {
21
+ this.setProp("name", value);
22
+ },
18
23
  get units() {
19
24
  return this.requiredProp<ThermalCorrectionToEnergyPropertySchema["units"]>("units");
20
25
  },
26
+ set units(value: ThermalCorrectionToEnergyPropertySchema["units"]) {
27
+ this.setProp("units", value);
28
+ },
21
29
  get value() {
22
30
  return this.requiredProp<ThermalCorrectionToEnergyPropertySchema["value"]>("value");
23
31
  },
32
+ set value(value: ThermalCorrectionToEnergyPropertySchema["value"]) {
33
+ this.setProp("value", value);
34
+ },
24
35
  };
25
36
 
26
37
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -9,18 +9,29 @@ export type ThermalCorrectionToEnthalpyPropertySchemaMixin = Omit<
9
9
  export type ThermalCorrectionToEnthalpyPropertyInMemoryEntity = InMemoryEntity &
10
10
  ThermalCorrectionToEnthalpyPropertySchemaMixin;
11
11
 
12
- export function thermalCorrectionToEnthalpyPropertySchemaMixin(item: InMemoryEntity) {
12
+ export function thermalCorrectionToEnthalpyPropertySchemaMixin<T extends InMemoryEntity>(
13
+ item: InMemoryEntity,
14
+ ): asserts item is T & ThermalCorrectionToEnthalpyPropertySchemaMixin {
13
15
  // @ts-expect-error
14
16
  const properties: InMemoryEntity & ThermalCorrectionToEnthalpyPropertySchemaMixin = {
15
17
  get name() {
16
18
  return this.requiredProp<ThermalCorrectionToEnthalpyPropertySchema["name"]>("name");
17
19
  },
20
+ set name(value: ThermalCorrectionToEnthalpyPropertySchema["name"]) {
21
+ this.setProp("name", value);
22
+ },
18
23
  get units() {
19
24
  return this.requiredProp<ThermalCorrectionToEnthalpyPropertySchema["units"]>("units");
20
25
  },
26
+ set units(value: ThermalCorrectionToEnthalpyPropertySchema["units"]) {
27
+ this.setProp("units", value);
28
+ },
21
29
  get value() {
22
30
  return this.requiredProp<ThermalCorrectionToEnthalpyPropertySchema["value"]>("value");
23
31
  },
32
+ set value(value: ThermalCorrectionToEnthalpyPropertySchema["value"]) {
33
+ this.setProp("value", value);
34
+ },
24
35
  };
25
36
 
26
37
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -9,7 +9,9 @@ export type TotalEnergyContributionsPropertySchemaMixin = Omit<
9
9
  export type TotalEnergyContributionsPropertyInMemoryEntity = InMemoryEntity &
10
10
  TotalEnergyContributionsPropertySchemaMixin;
11
11
 
12
- export function totalEnergyContributionsPropertySchemaMixin(item: InMemoryEntity) {
12
+ export function totalEnergyContributionsPropertySchemaMixin<T extends InMemoryEntity>(
13
+ item: InMemoryEntity,
14
+ ): asserts item is T & TotalEnergyContributionsPropertySchemaMixin {
13
15
  // @ts-expect-error
14
16
  const properties: InMemoryEntity & TotalEnergyContributionsPropertySchemaMixin = {
15
17
  get temperatureEntropy() {
@@ -17,63 +19,119 @@ export function totalEnergyContributionsPropertySchemaMixin(item: InMemoryEntity
17
19
  "temperatureEntropy",
18
20
  );
19
21
  },
22
+ set temperatureEntropy(
23
+ value: TotalEnergyContributionsPropertySchema["temperatureEntropy"],
24
+ ) {
25
+ this.setProp("temperatureEntropy", value);
26
+ },
20
27
  get harris_foulkes() {
21
28
  return this.prop<TotalEnergyContributionsPropertySchema["harris_foulkes"]>(
22
29
  "harris_foulkes",
23
30
  );
24
31
  },
32
+ set harris_foulkes(value: TotalEnergyContributionsPropertySchema["harris_foulkes"]) {
33
+ this.setProp("harris_foulkes", value);
34
+ },
25
35
  get smearing() {
26
36
  return this.prop<TotalEnergyContributionsPropertySchema["smearing"]>("smearing");
27
37
  },
38
+ set smearing(value: TotalEnergyContributionsPropertySchema["smearing"]) {
39
+ this.setProp("smearing", value);
40
+ },
28
41
  get one_electron() {
29
42
  return this.prop<TotalEnergyContributionsPropertySchema["one_electron"]>(
30
43
  "one_electron",
31
44
  );
32
45
  },
46
+ set one_electron(value: TotalEnergyContributionsPropertySchema["one_electron"]) {
47
+ this.setProp("one_electron", value);
48
+ },
33
49
  get hartree() {
34
50
  return this.prop<TotalEnergyContributionsPropertySchema["hartree"]>("hartree");
35
51
  },
52
+ set hartree(value: TotalEnergyContributionsPropertySchema["hartree"]) {
53
+ this.setProp("hartree", value);
54
+ },
36
55
  get exchange() {
37
56
  return this.prop<TotalEnergyContributionsPropertySchema["exchange"]>("exchange");
38
57
  },
58
+ set exchange(value: TotalEnergyContributionsPropertySchema["exchange"]) {
59
+ this.setProp("exchange", value);
60
+ },
39
61
  get exchange_correlation() {
40
62
  return this.prop<TotalEnergyContributionsPropertySchema["exchange_correlation"]>(
41
63
  "exchange_correlation",
42
64
  );
43
65
  },
66
+ set exchange_correlation(
67
+ value: TotalEnergyContributionsPropertySchema["exchange_correlation"],
68
+ ) {
69
+ this.setProp("exchange_correlation", value);
70
+ },
44
71
  get ewald() {
45
72
  return this.prop<TotalEnergyContributionsPropertySchema["ewald"]>("ewald");
46
73
  },
74
+ set ewald(value: TotalEnergyContributionsPropertySchema["ewald"]) {
75
+ this.setProp("ewald", value);
76
+ },
47
77
  get alphaZ() {
48
78
  return this.prop<TotalEnergyContributionsPropertySchema["alphaZ"]>("alphaZ");
49
79
  },
80
+ set alphaZ(value: TotalEnergyContributionsPropertySchema["alphaZ"]) {
81
+ this.setProp("alphaZ", value);
82
+ },
50
83
  get atomicEnergy() {
51
84
  return this.prop<TotalEnergyContributionsPropertySchema["atomicEnergy"]>(
52
85
  "atomicEnergy",
53
86
  );
54
87
  },
88
+ set atomicEnergy(value: TotalEnergyContributionsPropertySchema["atomicEnergy"]) {
89
+ this.setProp("atomicEnergy", value);
90
+ },
55
91
  get eigenvalues() {
56
92
  return this.prop<TotalEnergyContributionsPropertySchema["eigenvalues"]>("eigenvalues");
57
93
  },
94
+ set eigenvalues(value: TotalEnergyContributionsPropertySchema["eigenvalues"]) {
95
+ this.setProp("eigenvalues", value);
96
+ },
58
97
  get PAWDoubleCounting2() {
59
98
  return this.prop<TotalEnergyContributionsPropertySchema["PAWDoubleCounting2"]>(
60
99
  "PAWDoubleCounting2",
61
100
  );
62
101
  },
102
+ set PAWDoubleCounting2(
103
+ value: TotalEnergyContributionsPropertySchema["PAWDoubleCounting2"],
104
+ ) {
105
+ this.setProp("PAWDoubleCounting2", value);
106
+ },
63
107
  get PAWDoubleCounting3() {
64
108
  return this.prop<TotalEnergyContributionsPropertySchema["PAWDoubleCounting3"]>(
65
109
  "PAWDoubleCounting3",
66
110
  );
67
111
  },
112
+ set PAWDoubleCounting3(
113
+ value: TotalEnergyContributionsPropertySchema["PAWDoubleCounting3"],
114
+ ) {
115
+ this.setProp("PAWDoubleCounting3", value);
116
+ },
68
117
  get hartreeFock() {
69
118
  return this.prop<TotalEnergyContributionsPropertySchema["hartreeFock"]>("hartreeFock");
70
119
  },
120
+ set hartreeFock(value: TotalEnergyContributionsPropertySchema["hartreeFock"]) {
121
+ this.setProp("hartreeFock", value);
122
+ },
71
123
  get name() {
72
124
  return this.requiredProp<TotalEnergyContributionsPropertySchema["name"]>("name");
73
125
  },
126
+ set name(value: TotalEnergyContributionsPropertySchema["name"]) {
127
+ this.setProp("name", value);
128
+ },
74
129
  get units() {
75
130
  return this.prop<TotalEnergyContributionsPropertySchema["units"]>("units");
76
131
  },
132
+ set units(value: TotalEnergyContributionsPropertySchema["units"]) {
133
+ this.setProp("units", value);
134
+ },
77
135
  };
78
136
 
79
137
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -8,18 +8,29 @@ export type TotalEnergyPropertySchemaMixin = Omit<
8
8
 
9
9
  export type TotalEnergyPropertyInMemoryEntity = InMemoryEntity & TotalEnergyPropertySchemaMixin;
10
10
 
11
- export function totalEnergyPropertySchemaMixin(item: InMemoryEntity) {
11
+ export function totalEnergyPropertySchemaMixin<T extends InMemoryEntity>(
12
+ item: InMemoryEntity,
13
+ ): asserts item is T & TotalEnergyPropertySchemaMixin {
12
14
  // @ts-expect-error
13
15
  const properties: InMemoryEntity & TotalEnergyPropertySchemaMixin = {
14
16
  get name() {
15
17
  return this.requiredProp<TotalEnergyPropertySchema["name"]>("name");
16
18
  },
19
+ set name(value: TotalEnergyPropertySchema["name"]) {
20
+ this.setProp("name", value);
21
+ },
17
22
  get units() {
18
23
  return this.requiredProp<TotalEnergyPropertySchema["units"]>("units");
19
24
  },
25
+ set units(value: TotalEnergyPropertySchema["units"]) {
26
+ this.setProp("units", value);
27
+ },
20
28
  get value() {
21
29
  return this.requiredProp<TotalEnergyPropertySchema["value"]>("value");
22
30
  },
31
+ set value(value: TotalEnergyPropertySchema["value"]) {
32
+ this.setProp("value", value);
33
+ },
23
34
  };
24
35
 
25
36
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -8,18 +8,29 @@ export type TotalForcePropertySchemaMixin = Omit<
8
8
 
9
9
  export type TotalForcePropertyInMemoryEntity = InMemoryEntity & TotalForcePropertySchemaMixin;
10
10
 
11
- export function totalForcePropertySchemaMixin(item: InMemoryEntity) {
11
+ export function totalForcePropertySchemaMixin<T extends InMemoryEntity>(
12
+ item: InMemoryEntity,
13
+ ): asserts item is T & TotalForcePropertySchemaMixin {
12
14
  // @ts-expect-error
13
15
  const properties: InMemoryEntity & TotalForcePropertySchemaMixin = {
14
16
  get name() {
15
17
  return this.requiredProp<TotalForcesPropertySchema["name"]>("name");
16
18
  },
19
+ set name(value: TotalForcesPropertySchema["name"]) {
20
+ this.setProp("name", value);
21
+ },
17
22
  get units() {
18
23
  return this.requiredProp<TotalForcesPropertySchema["units"]>("units");
19
24
  },
25
+ set units(value: TotalForcesPropertySchema["units"]) {
26
+ this.setProp("units", value);
27
+ },
20
28
  get value() {
21
29
  return this.requiredProp<TotalForcesPropertySchema["value"]>("value");
22
30
  },
31
+ set value(value: TotalForcesPropertySchema["value"]) {
32
+ this.setProp("value", value);
33
+ },
23
34
  };
24
35
 
25
36
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -9,18 +9,29 @@ export type ValenceBandOffsetPropertySchemaMixin = Omit<
9
9
  export type ValenceBandOffsetPropertyInMemoryEntity = InMemoryEntity &
10
10
  ValenceBandOffsetPropertySchemaMixin;
11
11
 
12
- export function valenceBandOffsetPropertySchemaMixin(item: InMemoryEntity) {
12
+ export function valenceBandOffsetPropertySchemaMixin<T extends InMemoryEntity>(
13
+ item: InMemoryEntity,
14
+ ): asserts item is T & ValenceBandOffsetPropertySchemaMixin {
13
15
  // @ts-expect-error
14
16
  const properties: InMemoryEntity & ValenceBandOffsetPropertySchemaMixin = {
15
17
  get name() {
16
18
  return this.requiredProp<ValenceBandOffsetPropertySchema["name"]>("name");
17
19
  },
20
+ set name(value: ValenceBandOffsetPropertySchema["name"]) {
21
+ this.setProp("name", value);
22
+ },
18
23
  get units() {
19
24
  return this.requiredProp<ValenceBandOffsetPropertySchema["units"]>("units");
20
25
  },
26
+ set units(value: ValenceBandOffsetPropertySchema["units"]) {
27
+ this.setProp("units", value);
28
+ },
21
29
  get value() {
22
30
  return this.requiredProp<ValenceBandOffsetPropertySchema["value"]>("value");
23
31
  },
32
+ set value(value: ValenceBandOffsetPropertySchema["value"]) {
33
+ this.setProp("value", value);
34
+ },
24
35
  };
25
36
 
26
37
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -9,28 +9,45 @@ export type WavefunctionAmplitudePropertySchemaMixin = Omit<
9
9
  export type WavefunctionAmplitudePropertyInMemoryEntity = InMemoryEntity &
10
10
  WavefunctionAmplitudePropertySchemaMixin;
11
11
 
12
- export function wavefunctionAmplitudePropertySchemaMixin(item: InMemoryEntity) {
12
+ export function wavefunctionAmplitudePropertySchemaMixin<T extends InMemoryEntity>(
13
+ item: InMemoryEntity,
14
+ ): asserts item is T & WavefunctionAmplitudePropertySchemaMixin {
13
15
  // @ts-expect-error
14
16
  const properties: InMemoryEntity & WavefunctionAmplitudePropertySchemaMixin = {
15
17
  get xAxis() {
16
18
  return this.requiredProp<WavefunctionAmplitudePropertySchema["xAxis"]>("xAxis");
17
19
  },
20
+ set xAxis(value: WavefunctionAmplitudePropertySchema["xAxis"]) {
21
+ this.setProp("xAxis", value);
22
+ },
18
23
  get yAxis() {
19
24
  return this.requiredProp<WavefunctionAmplitudePropertySchema["yAxis"]>("yAxis");
20
25
  },
26
+ set yAxis(value: WavefunctionAmplitudePropertySchema["yAxis"]) {
27
+ this.setProp("yAxis", value);
28
+ },
21
29
  get name() {
22
30
  return this.requiredProp<WavefunctionAmplitudePropertySchema["name"]>("name");
23
31
  },
32
+ set name(value: WavefunctionAmplitudePropertySchema["name"]) {
33
+ this.setProp("name", value);
34
+ },
24
35
  get xDataArray() {
25
36
  return this.requiredProp<WavefunctionAmplitudePropertySchema["xDataArray"]>(
26
37
  "xDataArray",
27
38
  );
28
39
  },
40
+ set xDataArray(value: WavefunctionAmplitudePropertySchema["xDataArray"]) {
41
+ this.setProp("xDataArray", value);
42
+ },
29
43
  get yDataSeries() {
30
44
  return this.requiredProp<WavefunctionAmplitudePropertySchema["yDataSeries"]>(
31
45
  "yDataSeries",
32
46
  );
33
47
  },
48
+ set yDataSeries(value: WavefunctionAmplitudePropertySchema["yDataSeries"]) {
49
+ this.setProp("yDataSeries", value);
50
+ },
34
51
  };
35
52
 
36
53
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -8,41 +8,70 @@ export type WorkflowPropertySchemaMixin = Omit<
8
8
 
9
9
  export type WorkflowPropertyInMemoryEntity = InMemoryEntity & WorkflowPropertySchemaMixin;
10
10
 
11
- export function workflowPropertySchemaMixin(item: InMemoryEntity) {
11
+ export function workflowPropertySchemaMixin<T extends InMemoryEntity>(
12
+ item: InMemoryEntity,
13
+ ): asserts item is T & WorkflowPropertySchemaMixin {
12
14
  // @ts-expect-error
13
15
  const properties: InMemoryEntity & WorkflowPropertySchemaMixin = {
14
16
  get name() {
15
17
  return this.requiredProp<WorkflowPropertySchema["name"]>("name");
16
18
  },
17
- get subworkflows() {
18
- return this.requiredProp<WorkflowPropertySchema["subworkflows"]>("subworkflows");
19
+ set name(value: WorkflowPropertySchema["name"]) {
20
+ this.setProp("name", value);
19
21
  },
20
- get units() {
21
- return this.requiredProp<WorkflowPropertySchema["units"]>("units");
22
+ get workflows() {
23
+ return this.requiredProp<WorkflowPropertySchema["workflows"]>("workflows");
24
+ },
25
+ set workflows(value: WorkflowPropertySchema["workflows"]) {
26
+ this.setProp("workflows", value);
27
+ },
28
+ get metadata() {
29
+ return this.prop<WorkflowPropertySchema["metadata"]>("metadata");
30
+ },
31
+ set metadata(value: WorkflowPropertySchema["metadata"]) {
32
+ this.setProp("metadata", value);
22
33
  },
23
34
  get properties() {
24
- return this.prop<WorkflowPropertySchema["properties"]>("properties");
35
+ return this.requiredProp<WorkflowPropertySchema["properties"]>("properties");
36
+ },
37
+ set properties(value: WorkflowPropertySchema["properties"]) {
38
+ this.setProp("properties", value);
25
39
  },
26
40
  get isUsingDataset() {
27
41
  return this.prop<WorkflowPropertySchema["isUsingDataset"]>("isUsingDataset");
28
42
  },
43
+ set isUsingDataset(value: WorkflowPropertySchema["isUsingDataset"]) {
44
+ this.setProp("isUsingDataset", value);
45
+ },
29
46
  get isMultiMaterial() {
30
47
  return this.prop<WorkflowPropertySchema["isMultiMaterial"]>("isMultiMaterial");
31
48
  },
32
- get workflows() {
33
- return this.prop<WorkflowPropertySchema["workflows"]>("workflows");
49
+ set isMultiMaterial(value: WorkflowPropertySchema["isMultiMaterial"]) {
50
+ this.setProp("isMultiMaterial", value);
51
+ },
52
+ get subworkflows() {
53
+ return this.requiredProp<WorkflowPropertySchema["subworkflows"]>("subworkflows");
54
+ },
55
+ set subworkflows(value: WorkflowPropertySchema["subworkflows"]) {
56
+ this.setProp("subworkflows", value);
57
+ },
58
+ get units() {
59
+ return this.requiredProp<WorkflowPropertySchema["units"]>("units");
60
+ },
61
+ set units(value: WorkflowPropertySchema["units"]) {
62
+ this.setProp("units", value);
34
63
  },
35
64
  get application() {
36
65
  return this.prop<WorkflowPropertySchema["application"]>("application");
37
66
  },
67
+ set application(value: WorkflowPropertySchema["application"]) {
68
+ this.setProp("application", value);
69
+ },
38
70
  get tags() {
39
71
  return this.prop<WorkflowPropertySchema["tags"]>("tags");
40
72
  },
41
- get isDefault() {
42
- return this.prop<WorkflowPropertySchema["isDefault"]>("isDefault");
43
- },
44
- get metadata() {
45
- return this.prop<WorkflowPropertySchema["metadata"]>("metadata");
73
+ set tags(value: WorkflowPropertySchema["tags"]) {
74
+ this.setProp("tags", value);
46
75
  },
47
76
  };
48
77
 
@@ -9,18 +9,29 @@ export type ZeroPointEnergyPropertySchemaMixin = Omit<
9
9
  export type ZeroPointEnergyPropertyInMemoryEntity = InMemoryEntity &
10
10
  ZeroPointEnergyPropertySchemaMixin;
11
11
 
12
- export function zeroPointEnergyPropertySchemaMixin(item: InMemoryEntity) {
12
+ export function zeroPointEnergyPropertySchemaMixin<T extends InMemoryEntity>(
13
+ item: InMemoryEntity,
14
+ ): asserts item is T & ZeroPointEnergyPropertySchemaMixin {
13
15
  // @ts-expect-error
14
16
  const properties: InMemoryEntity & ZeroPointEnergyPropertySchemaMixin = {
15
17
  get name() {
16
18
  return this.requiredProp<ZeroPointEnergyPropertySchema["name"]>("name");
17
19
  },
20
+ set name(value: ZeroPointEnergyPropertySchema["name"]) {
21
+ this.setProp("name", value);
22
+ },
18
23
  get units() {
19
24
  return this.requiredProp<ZeroPointEnergyPropertySchema["units"]>("units");
20
25
  },
26
+ set units(value: ZeroPointEnergyPropertySchema["units"]) {
27
+ this.setProp("units", value);
28
+ },
21
29
  get value() {
22
30
  return this.requiredProp<ZeroPointEnergyPropertySchema["value"]>("value");
23
31
  },
32
+ set value(value: ZeroPointEnergyPropertySchema["value"]) {
33
+ this.setProp("value", value);
34
+ },
24
35
  };
25
36
 
26
37
  Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
@@ -1,5 +1,4 @@
1
1
  import { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
- import type { Constructor } from "@mat3ra/code/dist/js/utils/types";
3
2
  import type { MetaPropertyHolderSchema } from "@mat3ra/esse/dist/js/types";
4
3
 
5
4
  import {
@@ -7,9 +6,10 @@ import {
7
6
  metaPropertyHolderMixin,
8
7
  } from "./mixins/MetaPropertyHolderMixin";
9
8
 
10
- type MetaPropertyBase = typeof InMemoryEntity & Constructor<MetaPropertyHolderMixin>;
9
+ // eslint-disable-next-line @typescript-eslint/no-empty-interface
10
+ interface MetaPropertyHolder extends MetaPropertyHolderMixin {}
11
11
 
12
- export default class MetaPropertyHolder extends (InMemoryEntity as MetaPropertyBase) {
12
+ class MetaPropertyHolder extends InMemoryEntity {
13
13
  // eslint-disable-next-line no-useless-constructor
14
14
  constructor(data: MetaPropertyHolderSchema) {
15
15
  super(data);
@@ -17,3 +17,5 @@ export default class MetaPropertyHolder extends (InMemoryEntity as MetaPropertyB
17
17
  }
18
18
 
19
19
  metaPropertyHolderMixin(MetaPropertyHolder.prototype);
20
+
21
+ export default MetaPropertyHolder;
@@ -5,11 +5,13 @@ import type { PropertyHolderSchema } from "@mat3ra/esse/dist/js/types";
5
5
  import type { PropertyHolderMixin } from "./mixins/PropertyHolderMixin";
6
6
  import { propertyHolderMixin } from "./mixins/PropertyHolderMixin";
7
7
 
8
- type PropertyHolderBase = typeof InMemoryEntity & Constructor<PropertyHolderMixin>;
8
+ type Schema = PropertyHolderSchema;
9
9
 
10
- export default class PropertyHolder extends (InMemoryEntity as PropertyHolderBase) {
10
+ type Base = typeof InMemoryEntity & Constructor<PropertyHolderMixin>;
11
+
12
+ export default class PropertyHolder extends (InMemoryEntity as Base) implements Schema {
11
13
  // eslint-disable-next-line no-useless-constructor
12
- constructor(data: PropertyHolderSchema) {
14
+ constructor(data: Schema) {
13
15
  super(data);
14
16
  }
15
17
  }
@@ -1,18 +1,18 @@
1
1
  import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
2
  import type { AnyObject } from "@mat3ra/esse/dist/js/esse/types";
3
3
  import type { MetaPropertyHolderSchema } from "@mat3ra/esse/dist/js/types";
4
+ import type { PseudopotentialMetaProperty } from "src/js";
4
5
 
5
6
  import {
6
7
  type MetaPropertyHolderSchemaMixin,
7
8
  metaPropertyHolderSchemaMixin,
8
9
  } from "../../generated/MetaPropertyHolderSchemaMixin";
9
- import type MetaProperty from "../../MetaProperty";
10
10
  import PropertyFactory from "../../PropertyFactory";
11
11
 
12
12
  export interface MetaPropertySchemaJSON extends MetaPropertyHolderSchema, AnyObject {}
13
13
 
14
14
  export type MetaPropertyHolderMixin = {
15
- property: MetaProperty;
15
+ property: PseudopotentialMetaProperty;
16
16
  } & MetaPropertyHolderSchemaMixin;
17
17
 
18
18
  export type MetaPropertyInMemoryEntity = InMemoryEntity & MetaPropertyHolderMixin;
package/src/js/index.ts CHANGED
@@ -22,5 +22,8 @@ export { default as ReactionEnergyProfileProperty } from "./properties/non-scala
22
22
  export { protoPropertyHolderMixin } from "./holders/mixins/ProtoPropertyHolderMixin";
23
23
  export { propertyHolderMixin } from "./holders/mixins/PropertyHolderMixin";
24
24
  export { metaPropertyHolderMixin } from "./holders/mixins/MetaPropertyHolderMixin";
25
+ export { default as PropertyHolder } from "./holders/PropertyHolder";
26
+ export { default as MetaPropertyHolder } from "./holders/MetaPropertyHolder";
27
+ export { default as ProtoPropertyHolder } from "./holders/ProtoPropertyHolder";
25
28
 
26
29
  export * from "./types";