@mat3ra/prode 2025.11.25-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 (276) hide show
  1. package/.babelrc +17 -0
  2. package/LICENSE.md +15 -0
  3. package/README.md +93 -0
  4. package/dist/js/MetaProperty.d.ts +3 -0
  5. package/dist/js/MetaProperty.js +9 -0
  6. package/dist/js/Property.d.ts +25 -0
  7. package/dist/js/Property.js +25 -0
  8. package/dist/js/PropertyFactory.d.ts +54 -0
  9. package/dist/js/PropertyFactory.js +137 -0
  10. package/dist/js/ProtoProperty.d.ts +5 -0
  11. package/dist/js/ProtoProperty.js +11 -0
  12. package/dist/js/charts/highcharts.d.ts +57 -0
  13. package/dist/js/charts/highcharts.js +96 -0
  14. package/dist/js/generated/AtomicConstraintsPropertySchemaMixin.d.ts +5 -0
  15. package/dist/js/generated/AtomicConstraintsPropertySchemaMixin.js +15 -0
  16. package/dist/js/generated/AtomicForcesPropertySchemaMixin.d.ts +5 -0
  17. package/dist/js/generated/AtomicForcesPropertySchemaMixin.js +18 -0
  18. package/dist/js/generated/AveragePotentialProfilePropertySchemaMixin.d.ts +5 -0
  19. package/dist/js/generated/AveragePotentialProfilePropertySchemaMixin.js +24 -0
  20. package/dist/js/generated/BandGapsPropertySchemaMixin.d.ts +5 -0
  21. package/dist/js/generated/BandGapsPropertySchemaMixin.js +18 -0
  22. package/dist/js/generated/BandStructurePropertySchemaMixin.d.ts +5 -0
  23. package/dist/js/generated/BandStructurePropertySchemaMixin.js +27 -0
  24. package/dist/js/generated/BoundaryConditionsPropertySchemaMixin.d.ts +5 -0
  25. package/dist/js/generated/BoundaryConditionsPropertySchemaMixin.js +18 -0
  26. package/dist/js/generated/ChargeDensityProfilePropertySchemaMixin.d.ts +5 -0
  27. package/dist/js/generated/ChargeDensityProfilePropertySchemaMixin.js +24 -0
  28. package/dist/js/generated/ConvergenceElectronicPropertySchemaMixin.d.ts +5 -0
  29. package/dist/js/generated/ConvergenceElectronicPropertySchemaMixin.js +18 -0
  30. package/dist/js/generated/ConvergenceIonicPropertySchemaMixin.d.ts +5 -0
  31. package/dist/js/generated/ConvergenceIonicPropertySchemaMixin.js +21 -0
  32. package/dist/js/generated/DensityOfStatesPropertySchemaMixin.d.ts +5 -0
  33. package/dist/js/generated/DensityOfStatesPropertySchemaMixin.js +27 -0
  34. package/dist/js/generated/DielectricTensorPropertySchemaMixin.d.ts +5 -0
  35. package/dist/js/generated/DielectricTensorPropertySchemaMixin.js +15 -0
  36. package/dist/js/generated/FermiEnergyPropertySchemaMixin.d.ts +5 -0
  37. package/dist/js/generated/FermiEnergyPropertySchemaMixin.js +18 -0
  38. package/dist/js/generated/FileContentPropertySchemaMixin.d.ts +5 -0
  39. package/dist/js/generated/FileContentPropertySchemaMixin.js +24 -0
  40. package/dist/js/generated/FinalStructurePropertySchemaMixin.d.ts +5 -0
  41. package/dist/js/generated/FinalStructurePropertySchemaMixin.js +18 -0
  42. package/dist/js/generated/HubbardUPropertySchemaMixin.d.ts +5 -0
  43. package/dist/js/generated/HubbardUPropertySchemaMixin.js +18 -0
  44. package/dist/js/generated/HubbardVNNPropertySchemaMixin.d.ts +5 -0
  45. package/dist/js/generated/HubbardVNNPropertySchemaMixin.js +18 -0
  46. package/dist/js/generated/HubbardVPropertySchemaMixin.d.ts +5 -0
  47. package/dist/js/generated/HubbardVPropertySchemaMixin.js +18 -0
  48. package/dist/js/generated/IonizationPotentialElementalPropertySchemaMixin.d.ts +5 -0
  49. package/dist/js/generated/IonizationPotentialElementalPropertySchemaMixin.js +18 -0
  50. package/dist/js/generated/IsRelaxedPropertySchemaMixin.d.ts +5 -0
  51. package/dist/js/generated/IsRelaxedPropertySchemaMixin.js +18 -0
  52. package/dist/js/generated/JupyterNotebookEndpointPropertySchemaMixin.d.ts +5 -0
  53. package/dist/js/generated/JupyterNotebookEndpointPropertySchemaMixin.js +21 -0
  54. package/dist/js/generated/MagneticMomentsPropertySchemaMixin.d.ts +5 -0
  55. package/dist/js/generated/MagneticMomentsPropertySchemaMixin.js +18 -0
  56. package/dist/js/generated/MetaPropertyHolderSchemaMixin.d.ts +5 -0
  57. package/dist/js/generated/MetaPropertyHolderSchemaMixin.js +15 -0
  58. package/dist/js/generated/PhononDOSPropertySchemaMixin.d.ts +5 -0
  59. package/dist/js/generated/PhononDOSPropertySchemaMixin.js +24 -0
  60. package/dist/js/generated/PhononDispersionsPropertySchemaMixin.d.ts +5 -0
  61. package/dist/js/generated/PhononDispersionsPropertySchemaMixin.js +24 -0
  62. package/dist/js/generated/PotentialProfilePropertySchemaMixin.d.ts +5 -0
  63. package/dist/js/generated/PotentialProfilePropertySchemaMixin.js +24 -0
  64. package/dist/js/generated/PressurePropertySchemaMixin.d.ts +5 -0
  65. package/dist/js/generated/PressurePropertySchemaMixin.js +18 -0
  66. package/dist/js/generated/PropertyHolderSchemaMixin.d.ts +5 -0
  67. package/dist/js/generated/PropertyHolderSchemaMixin.js +30 -0
  68. package/dist/js/generated/ProtoPropertyHolderSchemaMixin.d.ts +5 -0
  69. package/dist/js/generated/ProtoPropertyHolderSchemaMixin.js +15 -0
  70. package/dist/js/generated/PseudopotentialMetaPropertySchemaMixin.d.ts +5 -0
  71. package/dist/js/generated/PseudopotentialMetaPropertySchemaMixin.js +45 -0
  72. package/dist/js/generated/ReactionEnergyBarrierPropertySchemaMixin.d.ts +5 -0
  73. package/dist/js/generated/ReactionEnergyBarrierPropertySchemaMixin.js +18 -0
  74. package/dist/js/generated/ReactionEnergyProfilePropertySchemaMixin.d.ts +5 -0
  75. package/dist/js/generated/ReactionEnergyProfilePropertySchemaMixin.js +24 -0
  76. package/dist/js/generated/StressTensorPropertySchemaMixin.d.ts +5 -0
  77. package/dist/js/generated/StressTensorPropertySchemaMixin.js +18 -0
  78. package/dist/js/generated/SurfaceEnergyPropertySchemaMixin.d.ts +5 -0
  79. package/dist/js/generated/SurfaceEnergyPropertySchemaMixin.js +18 -0
  80. package/dist/js/generated/TotalEnergyContributionsPropertySchemaMixin.d.ts +5 -0
  81. package/dist/js/generated/TotalEnergyContributionsPropertySchemaMixin.js +57 -0
  82. package/dist/js/generated/TotalEnergyPropertySchemaMixin.d.ts +5 -0
  83. package/dist/js/generated/TotalEnergyPropertySchemaMixin.js +18 -0
  84. package/dist/js/generated/TotalForcePropertySchemaMixin.d.ts +5 -0
  85. package/dist/js/generated/TotalForcePropertySchemaMixin.js +18 -0
  86. package/dist/js/generated/ValenceBandOffsetPropertySchemaMixin.d.ts +5 -0
  87. package/dist/js/generated/ValenceBandOffsetPropertySchemaMixin.js +18 -0
  88. package/dist/js/generated/WorkflowPropertySchemaMixin.d.ts +5 -0
  89. package/dist/js/generated/WorkflowPropertySchemaMixin.js +33 -0
  90. package/dist/js/generated/ZeroPointEnergyPropertySchemaMixin.d.ts +5 -0
  91. package/dist/js/generated/ZeroPointEnergyPropertySchemaMixin.js +18 -0
  92. package/dist/js/holders/MetaPropertyHolder.d.ts +10 -0
  93. package/dist/js/holders/MetaPropertyHolder.js +12 -0
  94. package/dist/js/holders/PropertyHolder.d.ts +10 -0
  95. package/dist/js/holders/PropertyHolder.js +12 -0
  96. package/dist/js/holders/ProtoPropertyHolder.d.ts +10 -0
  97. package/dist/js/holders/ProtoPropertyHolder.js +12 -0
  98. package/dist/js/holders/mixins/MetaPropertyHolderMixin.d.ts +12 -0
  99. package/dist/js/holders/mixins/MetaPropertyHolderMixin.js +18 -0
  100. package/dist/js/holders/mixins/PropertyHolderMixin.d.ts +16 -0
  101. package/dist/js/holders/mixins/PropertyHolderMixin.js +37 -0
  102. package/dist/js/holders/mixins/ProtoPropertyHolderMixin.d.ts +12 -0
  103. package/dist/js/holders/mixins/ProtoPropertyHolderMixin.js +18 -0
  104. package/dist/js/index.d.ts +20 -0
  105. package/dist/js/index.js +60 -0
  106. package/dist/js/meta_properties/PseudopotentialMetaProperty.d.ts +78 -0
  107. package/dist/js/meta_properties/PseudopotentialMetaProperty.js +157 -0
  108. package/dist/js/properties/include/mixins/2d_plot.d.ts +27 -0
  109. package/dist/js/properties/include/mixins/2d_plot.js +79 -0
  110. package/dist/js/properties/non-scalar/AveragePotentialProfileProperty.d.ts +38 -0
  111. package/dist/js/properties/non-scalar/AveragePotentialProfileProperty.js +54 -0
  112. package/dist/js/properties/non-scalar/BandGapsProperty.d.ts +59 -0
  113. package/dist/js/properties/non-scalar/BandGapsProperty.js +52 -0
  114. package/dist/js/properties/non-scalar/BandStructureProperty.d.ts +186 -0
  115. package/dist/js/properties/non-scalar/BandStructureProperty.js +218 -0
  116. package/dist/js/properties/non-scalar/ChargeDensityProfileProperty.d.ts +25 -0
  117. package/dist/js/properties/non-scalar/ChargeDensityProfileProperty.js +34 -0
  118. package/dist/js/properties/non-scalar/DensityOfStatesProperty.d.ts +145 -0
  119. package/dist/js/properties/non-scalar/DensityOfStatesProperty.js +126 -0
  120. package/dist/js/properties/non-scalar/DielectricTensorProperty.d.ts +49 -0
  121. package/dist/js/properties/non-scalar/DielectricTensorProperty.js +119 -0
  122. package/dist/js/properties/non-scalar/FileContentProperty.d.ts +15 -0
  123. package/dist/js/properties/non-scalar/FileContentProperty.js +18 -0
  124. package/dist/js/properties/non-scalar/FinalStructureProperty.d.ts +14 -0
  125. package/dist/js/properties/non-scalar/FinalStructureProperty.js +17 -0
  126. package/dist/js/properties/non-scalar/HubbardUProperty.d.ts +14 -0
  127. package/dist/js/properties/non-scalar/HubbardUProperty.js +17 -0
  128. package/dist/js/properties/non-scalar/HubbardVNNProperty.d.ts +14 -0
  129. package/dist/js/properties/non-scalar/HubbardVNNProperty.js +17 -0
  130. package/dist/js/properties/non-scalar/HubbardVProperty.d.ts +14 -0
  131. package/dist/js/properties/non-scalar/HubbardVProperty.js +17 -0
  132. package/dist/js/properties/non-scalar/IsRelaxedProperty.d.ts +15 -0
  133. package/dist/js/properties/non-scalar/IsRelaxedProperty.js +18 -0
  134. package/dist/js/properties/non-scalar/JupyterNotebookEndpointProperty.d.ts +14 -0
  135. package/dist/js/properties/non-scalar/JupyterNotebookEndpointProperty.js +17 -0
  136. package/dist/js/properties/non-scalar/PhononDOSProperty.d.ts +19 -0
  137. package/dist/js/properties/non-scalar/PhononDOSProperty.js +37 -0
  138. package/dist/js/properties/non-scalar/PhononDispersionsProperty.d.ts +21 -0
  139. package/dist/js/properties/non-scalar/PhononDispersionsProperty.js +28 -0
  140. package/dist/js/properties/non-scalar/PotentialProfileProperty.d.ts +38 -0
  141. package/dist/js/properties/non-scalar/PotentialProfileProperty.js +58 -0
  142. package/dist/js/properties/non-scalar/ReactionEnergyProfileProperty.d.ts +25 -0
  143. package/dist/js/properties/non-scalar/ReactionEnergyProfileProperty.js +34 -0
  144. package/dist/js/properties/non-scalar/WorkflowProperty.d.ts +14 -0
  145. package/dist/js/properties/non-scalar/WorkflowProperty.js +17 -0
  146. package/dist/js/properties/non-scalar/convergence/ConvergenceElectronicProperty.d.ts +17 -0
  147. package/dist/js/properties/non-scalar/convergence/ConvergenceElectronicProperty.js +63 -0
  148. package/dist/js/properties/non-scalar/convergence/ConvergenceIonicProperty.d.ts +17 -0
  149. package/dist/js/properties/non-scalar/convergence/ConvergenceIonicProperty.js +45 -0
  150. package/dist/js/properties/object/TotalEnergyContributionsProperty.d.ts +18 -0
  151. package/dist/js/properties/object/TotalEnergyContributionsProperty.js +20 -0
  152. package/dist/js/properties/scalar/FermiEnergyProperty.d.ts +14 -0
  153. package/dist/js/properties/scalar/FermiEnergyProperty.js +17 -0
  154. package/dist/js/properties/scalar/IonizationPotentialElementalProperty.d.ts +14 -0
  155. package/dist/js/properties/scalar/IonizationPotentialElementalProperty.js +17 -0
  156. package/dist/js/properties/scalar/PressureProperty.d.ts +15 -0
  157. package/dist/js/properties/scalar/PressureProperty.js +18 -0
  158. package/dist/js/properties/scalar/ReactionEnergyBarrierProperty.d.ts +15 -0
  159. package/dist/js/properties/scalar/ReactionEnergyBarrierProperty.js +18 -0
  160. package/dist/js/properties/scalar/SurfaceEnergyProperty.d.ts +15 -0
  161. package/dist/js/properties/scalar/SurfaceEnergyProperty.js +18 -0
  162. package/dist/js/properties/scalar/TotalEnergyProperty.d.ts +15 -0
  163. package/dist/js/properties/scalar/TotalEnergyProperty.js +18 -0
  164. package/dist/js/properties/scalar/TotalForceProperty.d.ts +14 -0
  165. package/dist/js/properties/scalar/TotalForceProperty.js +17 -0
  166. package/dist/js/properties/scalar/ValenceBandOffsetProperty.d.ts +15 -0
  167. package/dist/js/properties/scalar/ValenceBandOffsetProperty.js +18 -0
  168. package/dist/js/properties/scalar/ZeroPointEnergyProperty.d.ts +14 -0
  169. package/dist/js/properties/scalar/ZeroPointEnergyProperty.js +17 -0
  170. package/dist/js/properties/tensor/AtomicForcesProperty.d.ts +14 -0
  171. package/dist/js/properties/tensor/AtomicForcesProperty.js +17 -0
  172. package/dist/js/properties/tensor/MagneticMomentsProperty.d.ts +14 -0
  173. package/dist/js/properties/tensor/MagneticMomentsProperty.js +17 -0
  174. package/dist/js/properties/tensor/StressTensorProperty.d.ts +14 -0
  175. package/dist/js/properties/tensor/StressTensorProperty.js +17 -0
  176. package/dist/js/proto_properties/AtomicConstraintsProperty.d.ts +13 -0
  177. package/dist/js/proto_properties/AtomicConstraintsProperty.js +16 -0
  178. package/dist/js/proto_properties/BoundaryConditionsProperty.d.ts +13 -0
  179. package/dist/js/proto_properties/BoundaryConditionsProperty.js +16 -0
  180. package/dist/js/settings.d.ts +48 -0
  181. package/dist/js/settings.js +56 -0
  182. package/dist/js/types.d.ts +14 -0
  183. package/dist/js/types.js +2 -0
  184. package/package.json +101 -0
  185. package/src/js/MetaProperty.ts +3 -0
  186. package/src/js/Property.ts +49 -0
  187. package/src/js/PropertyFactory.ts +208 -0
  188. package/src/js/ProtoProperty.ts +6 -0
  189. package/src/js/charts/highcharts.ts +172 -0
  190. package/src/js/generated/AtomicConstraintsPropertySchemaMixin.ts +24 -0
  191. package/src/js/generated/AtomicForcesPropertySchemaMixin.ts +26 -0
  192. package/src/js/generated/AveragePotentialProfilePropertySchemaMixin.ts +37 -0
  193. package/src/js/generated/BandGapsPropertySchemaMixin.ts +26 -0
  194. package/src/js/generated/BandStructurePropertySchemaMixin.ts +35 -0
  195. package/src/js/generated/BoundaryConditionsPropertySchemaMixin.ts +27 -0
  196. package/src/js/generated/ChargeDensityProfilePropertySchemaMixin.ts +37 -0
  197. package/src/js/generated/ConvergenceElectronicPropertySchemaMixin.ts +27 -0
  198. package/src/js/generated/ConvergenceIonicPropertySchemaMixin.ts +30 -0
  199. package/src/js/generated/DensityOfStatesPropertySchemaMixin.ts +36 -0
  200. package/src/js/generated/DielectricTensorPropertySchemaMixin.ts +24 -0
  201. package/src/js/generated/FermiEnergyPropertySchemaMixin.ts +26 -0
  202. package/src/js/generated/FileContentPropertySchemaMixin.ts +32 -0
  203. package/src/js/generated/FinalStructurePropertySchemaMixin.ts +27 -0
  204. package/src/js/generated/HubbardUPropertySchemaMixin.ts +26 -0
  205. package/src/js/generated/HubbardVNNPropertySchemaMixin.ts +26 -0
  206. package/src/js/generated/HubbardVPropertySchemaMixin.ts +26 -0
  207. package/src/js/generated/IonizationPotentialElementalPropertySchemaMixin.ts +27 -0
  208. package/src/js/generated/IsRelaxedPropertySchemaMixin.ts +26 -0
  209. package/src/js/generated/JupyterNotebookEndpointPropertySchemaMixin.ts +30 -0
  210. package/src/js/generated/MagneticMomentsPropertySchemaMixin.ts +27 -0
  211. package/src/js/generated/MetaPropertyHolderSchemaMixin.ts +23 -0
  212. package/src/js/generated/PhononDOSPropertySchemaMixin.ts +36 -0
  213. package/src/js/generated/PhononDispersionsPropertySchemaMixin.ts +35 -0
  214. package/src/js/generated/PotentialProfilePropertySchemaMixin.ts +33 -0
  215. package/src/js/generated/PressurePropertySchemaMixin.ts +26 -0
  216. package/src/js/generated/PropertyHolderSchemaMixin.ts +38 -0
  217. package/src/js/generated/ProtoPropertyHolderSchemaMixin.ts +23 -0
  218. package/src/js/generated/PseudopotentialMetaPropertySchemaMixin.ts +54 -0
  219. package/src/js/generated/README.md +27 -0
  220. package/src/js/generated/ReactionEnergyBarrierPropertySchemaMixin.ts +27 -0
  221. package/src/js/generated/ReactionEnergyProfilePropertySchemaMixin.ts +37 -0
  222. package/src/js/generated/StressTensorPropertySchemaMixin.ts +26 -0
  223. package/src/js/generated/SurfaceEnergyPropertySchemaMixin.ts +26 -0
  224. package/src/js/generated/TotalEnergyContributionsPropertySchemaMixin.ts +80 -0
  225. package/src/js/generated/TotalEnergyPropertySchemaMixin.ts +26 -0
  226. package/src/js/generated/TotalForcePropertySchemaMixin.ts +26 -0
  227. package/src/js/generated/ValenceBandOffsetPropertySchemaMixin.ts +27 -0
  228. package/src/js/generated/WorkflowPropertySchemaMixin.ts +41 -0
  229. package/src/js/generated/ZeroPointEnergyPropertySchemaMixin.ts +27 -0
  230. package/src/js/holders/MetaPropertyHolder.ts +19 -0
  231. package/src/js/holders/PropertyHolder.ts +17 -0
  232. package/src/js/holders/ProtoPropertyHolder.ts +17 -0
  233. package/src/js/holders/mixins/MetaPropertyHolderMixin.ts +31 -0
  234. package/src/js/holders/mixins/PropertyHolderMixin.ts +55 -0
  235. package/src/js/holders/mixins/ProtoPropertyHolderMixin.ts +31 -0
  236. package/src/js/index.ts +21 -0
  237. package/src/js/meta_properties/PseudopotentialMetaProperty.ts +206 -0
  238. package/src/js/properties/include/mixins/2d_plot.ts +105 -0
  239. package/src/js/properties/non-scalar/AveragePotentialProfileProperty.ts +69 -0
  240. package/src/js/properties/non-scalar/BandGapsProperty.ts +65 -0
  241. package/src/js/properties/non-scalar/BandStructureProperty.ts +284 -0
  242. package/src/js/properties/non-scalar/ChargeDensityProfileProperty.ts +48 -0
  243. package/src/js/properties/non-scalar/DensityOfStatesProperty.ts +174 -0
  244. package/src/js/properties/non-scalar/DielectricTensorProperty.ts +153 -0
  245. package/src/js/properties/non-scalar/FileContentProperty.ts +27 -0
  246. package/src/js/properties/non-scalar/FinalStructureProperty.ts +25 -0
  247. package/src/js/properties/non-scalar/HubbardUProperty.ts +25 -0
  248. package/src/js/properties/non-scalar/HubbardVNNProperty.ts +25 -0
  249. package/src/js/properties/non-scalar/HubbardVProperty.ts +25 -0
  250. package/src/js/properties/non-scalar/IsRelaxedProperty.ts +27 -0
  251. package/src/js/properties/non-scalar/JupyterNotebookEndpointProperty.ts +26 -0
  252. package/src/js/properties/non-scalar/PhononDOSProperty.ts +57 -0
  253. package/src/js/properties/non-scalar/PhononDispersionsProperty.ts +46 -0
  254. package/src/js/properties/non-scalar/PotentialProfileProperty.ts +76 -0
  255. package/src/js/properties/non-scalar/ReactionEnergyProfileProperty.ts +48 -0
  256. package/src/js/properties/non-scalar/WorkflowProperty.ts +25 -0
  257. package/src/js/properties/non-scalar/convergence/ConvergenceElectronicProperty.ts +82 -0
  258. package/src/js/properties/non-scalar/convergence/ConvergenceIonicProperty.ts +62 -0
  259. package/src/js/properties/object/TotalEnergyContributionsProperty.ts +29 -0
  260. package/src/js/properties/scalar/FermiEnergyProperty.ts +25 -0
  261. package/src/js/properties/scalar/IonizationPotentialElementalProperty.ts +27 -0
  262. package/src/js/properties/scalar/PressureProperty.ts +27 -0
  263. package/src/js/properties/scalar/ReactionEnergyBarrierProperty.ts +29 -0
  264. package/src/js/properties/scalar/SurfaceEnergyProperty.ts +27 -0
  265. package/src/js/properties/scalar/TotalEnergyProperty.ts +27 -0
  266. package/src/js/properties/scalar/TotalForceProperty.ts +25 -0
  267. package/src/js/properties/scalar/ValenceBandOffsetProperty.ts +27 -0
  268. package/src/js/properties/scalar/ZeroPointEnergyProperty.ts +25 -0
  269. package/src/js/properties/tensor/AtomicForcesProperty.ts +27 -0
  270. package/src/js/properties/tensor/MagneticMomentsProperty.ts +27 -0
  271. package/src/js/properties/tensor/StressTensorProperty.ts +25 -0
  272. package/src/js/proto_properties/AtomicConstraintsProperty.ts +25 -0
  273. package/src/js/proto_properties/BoundaryConditionsProperty.ts +25 -0
  274. package/src/js/settings.ts +52 -0
  275. package/src/js/types.ts +24 -0
  276. package/tsconfig.json +3 -0
@@ -0,0 +1,36 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { DensityOfStatesPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type DensityOfStatesPropertySchemaMixin = Omit<
5
+ DensityOfStatesPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type DensityOfStatesPropertyInMemoryEntity = InMemoryEntity &
10
+ DensityOfStatesPropertySchemaMixin;
11
+
12
+ export function densityOfStatesPropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & DensityOfStatesPropertySchemaMixin = {
15
+ get xAxis() {
16
+ return this.requiredProp<DensityOfStatesPropertySchema["xAxis"]>("xAxis");
17
+ },
18
+ get yAxis() {
19
+ return this.requiredProp<DensityOfStatesPropertySchema["yAxis"]>("yAxis");
20
+ },
21
+ get name() {
22
+ return this.requiredProp<DensityOfStatesPropertySchema["name"]>("name");
23
+ },
24
+ get legend() {
25
+ return this.requiredProp<DensityOfStatesPropertySchema["legend"]>("legend");
26
+ },
27
+ get xDataArray() {
28
+ return this.requiredProp<DensityOfStatesPropertySchema["xDataArray"]>("xDataArray");
29
+ },
30
+ get yDataSeries() {
31
+ return this.requiredProp<DensityOfStatesPropertySchema["yDataSeries"]>("yDataSeries");
32
+ },
33
+ };
34
+
35
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
36
+ }
@@ -0,0 +1,24 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { DielectricTensorPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type DielectricTensorPropertySchemaMixin = Omit<
5
+ DielectricTensorPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type DielectricTensorPropertyInMemoryEntity = InMemoryEntity &
10
+ DielectricTensorPropertySchemaMixin;
11
+
12
+ export function dielectricTensorPropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & DielectricTensorPropertySchemaMixin = {
15
+ get name() {
16
+ return this.requiredProp<DielectricTensorPropertySchema["name"]>("name");
17
+ },
18
+ get values() {
19
+ return this.requiredProp<DielectricTensorPropertySchema["values"]>("values");
20
+ },
21
+ };
22
+
23
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
24
+ }
@@ -0,0 +1,26 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { FermiEnergyPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type FermiEnergyPropertySchemaMixin = Omit<
5
+ FermiEnergyPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type FermiEnergyPropertyInMemoryEntity = InMemoryEntity & FermiEnergyPropertySchemaMixin;
10
+
11
+ export function fermiEnergyPropertySchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & FermiEnergyPropertySchemaMixin = {
14
+ get name() {
15
+ return this.requiredProp<FermiEnergyPropertySchema["name"]>("name");
16
+ },
17
+ get units() {
18
+ return this.requiredProp<FermiEnergyPropertySchema["units"]>("units");
19
+ },
20
+ get value() {
21
+ return this.requiredProp<FermiEnergyPropertySchema["value"]>("value");
22
+ },
23
+ };
24
+
25
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
26
+ }
@@ -0,0 +1,32 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { FileContentPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type FileContentPropertySchemaMixin = Omit<
5
+ FileContentPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type FileContentPropertyInMemoryEntity = InMemoryEntity & FileContentPropertySchemaMixin;
10
+
11
+ export function fileContentPropertySchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & FileContentPropertySchemaMixin = {
14
+ get name() {
15
+ return this.requiredProp<FileContentPropertySchema["name"]>("name");
16
+ },
17
+ get filetype() {
18
+ return this.requiredProp<FileContentPropertySchema["filetype"]>("filetype");
19
+ },
20
+ get objectData() {
21
+ return this.requiredProp<FileContentPropertySchema["objectData"]>("objectData");
22
+ },
23
+ get pathname() {
24
+ return this.prop<FileContentPropertySchema["pathname"]>("pathname");
25
+ },
26
+ get basename() {
27
+ return this.prop<FileContentPropertySchema["basename"]>("basename");
28
+ },
29
+ };
30
+
31
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
32
+ }
@@ -0,0 +1,27 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { FinalStructurePropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type FinalStructurePropertySchemaMixin = Omit<
5
+ FinalStructurePropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type FinalStructurePropertyInMemoryEntity = InMemoryEntity &
10
+ FinalStructurePropertySchemaMixin;
11
+
12
+ export function finalStructurePropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & FinalStructurePropertySchemaMixin = {
15
+ get name() {
16
+ return this.requiredProp<FinalStructurePropertySchema["name"]>("name");
17
+ },
18
+ get isRelaxed() {
19
+ return this.requiredProp<FinalStructurePropertySchema["isRelaxed"]>("isRelaxed");
20
+ },
21
+ get materialId() {
22
+ return this.requiredProp<FinalStructurePropertySchema["materialId"]>("materialId");
23
+ },
24
+ };
25
+
26
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
27
+ }
@@ -0,0 +1,26 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { HubbardUParametersPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type HubbardUPropertySchemaMixin = Omit<
5
+ HubbardUParametersPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type HubbardUPropertyInMemoryEntity = InMemoryEntity & HubbardUPropertySchemaMixin;
10
+
11
+ export function hubbardUPropertySchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & HubbardUPropertySchemaMixin = {
14
+ get name() {
15
+ return this.requiredProp<HubbardUParametersPropertySchema["name"]>("name");
16
+ },
17
+ get units() {
18
+ return this.requiredProp<HubbardUParametersPropertySchema["units"]>("units");
19
+ },
20
+ get values() {
21
+ return this.requiredProp<HubbardUParametersPropertySchema["values"]>("values");
22
+ },
23
+ };
24
+
25
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
26
+ }
@@ -0,0 +1,26 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { HubbardVNNParametersPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type HubbardVNNPropertySchemaMixin = Omit<
5
+ HubbardVNNParametersPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type HubbardVNNPropertyInMemoryEntity = InMemoryEntity & HubbardVNNPropertySchemaMixin;
10
+
11
+ export function hubbardVNNPropertySchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & HubbardVNNPropertySchemaMixin = {
14
+ get name() {
15
+ return this.requiredProp<HubbardVNNParametersPropertySchema["name"]>("name");
16
+ },
17
+ get units() {
18
+ return this.requiredProp<HubbardVNNParametersPropertySchema["units"]>("units");
19
+ },
20
+ get values() {
21
+ return this.requiredProp<HubbardVNNParametersPropertySchema["values"]>("values");
22
+ },
23
+ };
24
+
25
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
26
+ }
@@ -0,0 +1,26 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { HubbardVParametersPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type HubbardVPropertySchemaMixin = Omit<
5
+ HubbardVParametersPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type HubbardVPropertyInMemoryEntity = InMemoryEntity & HubbardVPropertySchemaMixin;
10
+
11
+ export function hubbardVPropertySchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & HubbardVPropertySchemaMixin = {
14
+ get name() {
15
+ return this.requiredProp<HubbardVParametersPropertySchema["name"]>("name");
16
+ },
17
+ get units() {
18
+ return this.requiredProp<HubbardVParametersPropertySchema["units"]>("units");
19
+ },
20
+ get values() {
21
+ return this.requiredProp<HubbardVParametersPropertySchema["values"]>("values");
22
+ },
23
+ };
24
+
25
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
26
+ }
@@ -0,0 +1,27 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { IonizationPotentialElementalPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type IonizationPotentialElementalPropertySchemaMixin = Omit<
5
+ IonizationPotentialElementalPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type IonizationPotentialElementalPropertyInMemoryEntity = InMemoryEntity &
10
+ IonizationPotentialElementalPropertySchemaMixin;
11
+
12
+ export function ionizationPotentialElementalPropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & IonizationPotentialElementalPropertySchemaMixin = {
15
+ get name() {
16
+ return this.requiredProp<IonizationPotentialElementalPropertySchema["name"]>("name");
17
+ },
18
+ get units() {
19
+ return this.requiredProp<IonizationPotentialElementalPropertySchema["units"]>("units");
20
+ },
21
+ get value() {
22
+ return this.requiredProp<IonizationPotentialElementalPropertySchema["value"]>("value");
23
+ },
24
+ };
25
+
26
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
27
+ }
@@ -0,0 +1,26 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { IsRelaxedPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type IsRelaxedPropertySchemaMixin = Omit<
5
+ IsRelaxedPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type IsRelaxedPropertyInMemoryEntity = InMemoryEntity & IsRelaxedPropertySchemaMixin;
10
+
11
+ export function isRelaxedPropertySchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & IsRelaxedPropertySchemaMixin = {
14
+ get name() {
15
+ return this.requiredProp<IsRelaxedPropertySchema["name"]>("name");
16
+ },
17
+ get value() {
18
+ return this.requiredProp<IsRelaxedPropertySchema["value"]>("value");
19
+ },
20
+ get materialId() {
21
+ return this.requiredProp<IsRelaxedPropertySchema["materialId"]>("materialId");
22
+ },
23
+ };
24
+
25
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
26
+ }
@@ -0,0 +1,30 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { JupyterNotebookEndpointPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type JupyterNotebookEndpointPropertySchemaMixin = Omit<
5
+ JupyterNotebookEndpointPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type JupyterNotebookEndpointPropertyInMemoryEntity = InMemoryEntity &
10
+ JupyterNotebookEndpointPropertySchemaMixin;
11
+
12
+ export function jupyterNotebookEndpointPropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & JupyterNotebookEndpointPropertySchemaMixin = {
15
+ get name() {
16
+ return this.requiredProp<JupyterNotebookEndpointPropertySchema["name"]>("name");
17
+ },
18
+ get host() {
19
+ return this.requiredProp<JupyterNotebookEndpointPropertySchema["host"]>("host");
20
+ },
21
+ get port() {
22
+ return this.requiredProp<JupyterNotebookEndpointPropertySchema["port"]>("port");
23
+ },
24
+ get token() {
25
+ return this.requiredProp<JupyterNotebookEndpointPropertySchema["token"]>("token");
26
+ },
27
+ };
28
+
29
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
30
+ }
@@ -0,0 +1,27 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { MagneticMomentsPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type MagneticMomentsPropertySchemaMixin = Omit<
5
+ MagneticMomentsPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type MagneticMomentsPropertyInMemoryEntity = InMemoryEntity &
10
+ MagneticMomentsPropertySchemaMixin;
11
+
12
+ export function magneticMomentsPropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & MagneticMomentsPropertySchemaMixin = {
15
+ get name() {
16
+ return this.requiredProp<MagneticMomentsPropertySchema["name"]>("name");
17
+ },
18
+ get values() {
19
+ return this.requiredProp<MagneticMomentsPropertySchema["values"]>("values");
20
+ },
21
+ get units() {
22
+ return this.requiredProp<MagneticMomentsPropertySchema["units"]>("units");
23
+ },
24
+ };
25
+
26
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
27
+ }
@@ -0,0 +1,23 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { MetaPropertyHolderSchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type MetaPropertyHolderSchemaMixin = Omit<
5
+ MetaPropertyHolderSchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type MetaPropertyHolderInMemoryEntity = InMemoryEntity & MetaPropertyHolderSchemaMixin;
10
+
11
+ export function metaPropertyHolderSchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & MetaPropertyHolderSchemaMixin = {
14
+ get data() {
15
+ return this.requiredProp<MetaPropertyHolderSchema["data"]>("data");
16
+ },
17
+ get source() {
18
+ return this.requiredProp<MetaPropertyHolderSchema["source"]>("source");
19
+ },
20
+ };
21
+
22
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
23
+ }
@@ -0,0 +1,36 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { PhononDensityOfStatesPropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type PhononDOSPropertySchemaMixin = Omit<
5
+ PhononDensityOfStatesPropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type PhononDOSPropertyInMemoryEntity = InMemoryEntity & PhononDOSPropertySchemaMixin;
10
+
11
+ export function phononDOSPropertySchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & PhononDOSPropertySchemaMixin = {
14
+ get xAxis() {
15
+ return this.requiredProp<PhononDensityOfStatesPropertySchema["xAxis"]>("xAxis");
16
+ },
17
+ get yAxis() {
18
+ return this.requiredProp<PhononDensityOfStatesPropertySchema["yAxis"]>("yAxis");
19
+ },
20
+ get name() {
21
+ return this.requiredProp<PhononDensityOfStatesPropertySchema["name"]>("name");
22
+ },
23
+ get xDataArray() {
24
+ return this.requiredProp<PhononDensityOfStatesPropertySchema["xDataArray"]>(
25
+ "xDataArray",
26
+ );
27
+ },
28
+ get yDataSeries() {
29
+ return this.requiredProp<PhononDensityOfStatesPropertySchema["yDataSeries"]>(
30
+ "yDataSeries",
31
+ );
32
+ },
33
+ };
34
+
35
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
36
+ }
@@ -0,0 +1,35 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { PhononBandStructurePropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type PhononDispersionsPropertySchemaMixin = Omit<
5
+ PhononBandStructurePropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type PhononDispersionsPropertyInMemoryEntity = InMemoryEntity &
10
+ PhononDispersionsPropertySchemaMixin;
11
+
12
+ export function phononDispersionsPropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & PhononDispersionsPropertySchemaMixin = {
15
+ get xAxis() {
16
+ return this.requiredProp<PhononBandStructurePropertySchema["xAxis"]>("xAxis");
17
+ },
18
+ get yAxis() {
19
+ return this.requiredProp<PhononBandStructurePropertySchema["yAxis"]>("yAxis");
20
+ },
21
+ get name() {
22
+ return this.requiredProp<PhononBandStructurePropertySchema["name"]>("name");
23
+ },
24
+ get xDataArray() {
25
+ return this.requiredProp<PhononBandStructurePropertySchema["xDataArray"]>("xDataArray");
26
+ },
27
+ get yDataSeries() {
28
+ return this.requiredProp<PhononBandStructurePropertySchema["yDataSeries"]>(
29
+ "yDataSeries",
30
+ );
31
+ },
32
+ };
33
+
34
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
35
+ }
@@ -0,0 +1,33 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { PotentialProfilePropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type PotentialProfilePropertySchemaMixin = Omit<
5
+ PotentialProfilePropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type PotentialProfilePropertyInMemoryEntity = InMemoryEntity &
10
+ PotentialProfilePropertySchemaMixin;
11
+
12
+ export function potentialProfilePropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & PotentialProfilePropertySchemaMixin = {
15
+ get xAxis() {
16
+ return this.requiredProp<PotentialProfilePropertySchema["xAxis"]>("xAxis");
17
+ },
18
+ get yAxis() {
19
+ return this.requiredProp<PotentialProfilePropertySchema["yAxis"]>("yAxis");
20
+ },
21
+ get name() {
22
+ return this.requiredProp<PotentialProfilePropertySchema["name"]>("name");
23
+ },
24
+ get xDataArray() {
25
+ return this.requiredProp<PotentialProfilePropertySchema["xDataArray"]>("xDataArray");
26
+ },
27
+ get yDataSeries() {
28
+ return this.requiredProp<PotentialProfilePropertySchema["yDataSeries"]>("yDataSeries");
29
+ },
30
+ };
31
+
32
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
33
+ }
@@ -0,0 +1,26 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { PressurePropertySchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type PressurePropertySchemaMixin = Omit<
5
+ PressurePropertySchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type PressurePropertyInMemoryEntity = InMemoryEntity & PressurePropertySchemaMixin;
10
+
11
+ export function pressurePropertySchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & PressurePropertySchemaMixin = {
14
+ get name() {
15
+ return this.requiredProp<PressurePropertySchema["name"]>("name");
16
+ },
17
+ get units() {
18
+ return this.requiredProp<PressurePropertySchema["units"]>("units");
19
+ },
20
+ get value() {
21
+ return this.requiredProp<PressurePropertySchema["value"]>("value");
22
+ },
23
+ };
24
+
25
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
26
+ }
@@ -0,0 +1,38 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { PropertyHolderSchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type PropertyHolderSchemaMixin = Omit<
5
+ PropertyHolderSchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type PropertyHolderInMemoryEntity = InMemoryEntity & PropertyHolderSchemaMixin;
10
+
11
+ export function propertyHolderSchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & PropertyHolderSchemaMixin = {
14
+ get group() {
15
+ return this.prop<PropertyHolderSchema["group"]>("group");
16
+ },
17
+ get data() {
18
+ return this.requiredProp<PropertyHolderSchema["data"]>("data");
19
+ },
20
+ get source() {
21
+ return this.requiredProp<PropertyHolderSchema["source"]>("source");
22
+ },
23
+ get exabyteId() {
24
+ return this.requiredProp<PropertyHolderSchema["exabyteId"]>("exabyteId");
25
+ },
26
+ get precision() {
27
+ return this.prop<PropertyHolderSchema["precision"]>("precision");
28
+ },
29
+ get systemTags() {
30
+ return this.prop<PropertyHolderSchema["systemTags"]>("systemTags");
31
+ },
32
+ get repetition() {
33
+ return this.requiredProp<PropertyHolderSchema["repetition"]>("repetition");
34
+ },
35
+ };
36
+
37
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
38
+ }
@@ -0,0 +1,23 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { ProtoPropertyHolderSchema } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type ProtoPropertyHolderSchemaMixin = Omit<
5
+ ProtoPropertyHolderSchema,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type ProtoPropertyHolderInMemoryEntity = InMemoryEntity & ProtoPropertyHolderSchemaMixin;
10
+
11
+ export function protoPropertyHolderSchemaMixin(item: InMemoryEntity) {
12
+ // @ts-expect-error
13
+ const properties: InMemoryEntity & ProtoPropertyHolderSchemaMixin = {
14
+ get data() {
15
+ return this.requiredProp<ProtoPropertyHolderSchema["data"]>("data");
16
+ },
17
+ get source() {
18
+ return this.requiredProp<ProtoPropertyHolderSchema["source"]>("source");
19
+ },
20
+ };
21
+
22
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
23
+ }
@@ -0,0 +1,54 @@
1
+ import type { InMemoryEntity } from "@mat3ra/code/dist/js/entity";
2
+ import type { FileDataItem } from "@mat3ra/esse/dist/js/types";
3
+
4
+ export type PseudopotentialMetaPropertySchemaMixin = Omit<
5
+ FileDataItem,
6
+ "_id" | "slug" | "systemName" | "schemaVersion"
7
+ >;
8
+
9
+ export type PseudopotentialMetaPropertyInMemoryEntity = InMemoryEntity &
10
+ PseudopotentialMetaPropertySchemaMixin;
11
+
12
+ export function pseudopotentialMetaPropertySchemaMixin(item: InMemoryEntity) {
13
+ // @ts-expect-error
14
+ const properties: InMemoryEntity & PseudopotentialMetaPropertySchemaMixin = {
15
+ get element() {
16
+ return this.requiredProp<FileDataItem["element"]>("element");
17
+ },
18
+ get hash() {
19
+ return this.requiredProp<FileDataItem["hash"]>("hash");
20
+ },
21
+ get type() {
22
+ return this.requiredProp<FileDataItem["type"]>("type");
23
+ },
24
+ get source() {
25
+ return this.requiredProp<FileDataItem["source"]>("source");
26
+ },
27
+ get version() {
28
+ return this.prop<FileDataItem["version"]>("version");
29
+ },
30
+ get exchangeCorrelation() {
31
+ return this.requiredProp<FileDataItem["exchangeCorrelation"]>("exchangeCorrelation");
32
+ },
33
+ get valenceConfiguration() {
34
+ return this.prop<FileDataItem["valenceConfiguration"]>("valenceConfiguration");
35
+ },
36
+ get path() {
37
+ return this.requiredProp<FileDataItem["path"]>("path");
38
+ },
39
+ get apps() {
40
+ return this.requiredProp<FileDataItem["apps"]>("apps");
41
+ },
42
+ get filename() {
43
+ return this.prop<FileDataItem["filename"]>("filename");
44
+ },
45
+ get name() {
46
+ return this.requiredProp<FileDataItem["name"]>("name");
47
+ },
48
+ get cutoffs() {
49
+ return this.prop<FileDataItem["cutoffs"]>("cutoffs");
50
+ },
51
+ };
52
+
53
+ Object.defineProperties(item, Object.getOwnPropertyDescriptors(properties));
54
+ }
@@ -0,0 +1,27 @@
1
+ # Generated Files
2
+
3
+ ⚠️ **DO NOT MANUALLY EDIT FILES IN THIS DIRECTORY**
4
+
5
+ This directory contains auto-generated TypeScript files that are created by the build process. Any manual changes to these files will be overwritten the next time the generation script runs.
6
+
7
+ ## How to regenerate these files
8
+
9
+ To regenerate all files in this directory, use the npm script:
10
+
11
+ ```bash
12
+ npm run generate-mixins
13
+ ```
14
+
15
+ ## What these files are
16
+
17
+ These files contain schema mixins that are automatically generated based on the property definitions in the codebase. They provide type-safe schema definitions for various properties used throughout the application.
18
+
19
+ ## If you need to modify the generated content
20
+
21
+ If you need to change the content of these files, you should:
22
+
23
+ 1. Modify the schema definitions in the esse package that these mixins are based on
24
+ 2. Update the generation script (`scripts/generate-mixins.ts`) if needed
25
+ 3. Run `npm run generate-mixins` to regenerate the files
26
+
27
+ **Never edit these files directly!**