Skip to content

Commit

Permalink
Merge pull request #74 from Exabyte-io/feat/SOF-7297
Browse files Browse the repository at this point in the history
SOF-7297: handle optional atomic labels in Hubbard context providers
  • Loading branch information
pranabdas committed Mar 29, 2024
2 parents cb7e799 + c29dbe5 commit ec60a93
Show file tree
Hide file tree
Showing 7 changed files with 44 additions and 31 deletions.
24 changes: 12 additions & 12 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Expand Up @@ -46,8 +46,8 @@
"underscore.string": "^3.3.4"
},
"devDependencies": {
"@exabyte-io/ade.js": "2024.3.26-0",
"@exabyte-io/application-flavors.js": "2024.3.26-0",
"@exabyte-io/ade.js": "2024.3.29-0",
"@exabyte-io/application-flavors.js": "2024.3.29-0",
"@exabyte-io/eslint-config": "^2022.11.17-0",
"@exabyte-io/ide.js": "2024.3.26-0",
"@exabyte-io/mode.js": "2024.3.26-0",
Expand Down
Expand Up @@ -46,7 +46,9 @@ export class CollinearMagnetizationContextProvider extends mix(JSONSchemaFormDat
},
items: {
atomicSpecies: this.defaultFieldStyles,
value: this.defaultFieldStyles,
value: {
"ui:classNames": "col-xs-6 ",
},
},
};
}
Expand Down
10 changes: 6 additions & 4 deletions src/context/providers/HubbardContextProviderLegacy.js
Expand Up @@ -9,14 +9,16 @@ export class HubbardContextProviderLegacy extends HubbardUContextProvider {
return [
{
...defaultHubbardConfig,
atomicSpecies: this.uniqueElements?.length > 0 ? this.uniqueElements[0] : "",
atomicSpeciesIndex: this.uniqueElements?.length > 0 ? 1 : null,
atomicSpecies: this.firstElement,
atomicSpeciesIndex: this.uniqueElementsWithLabels?.length > 0 ? 1 : null,
},
];
}

speciesIndexFromSpecies = (species) => {
return this.uniqueElements?.length > 0 ? this.uniqueElements.indexOf(species) + 1 : null;
return this.uniqueElementsWithLabels?.length > 0
? this.uniqueElementsWithLabels.indexOf(species) + 1
: null;
};

transformData = (data) => {
Expand Down Expand Up @@ -58,7 +60,7 @@ export class HubbardContextProviderLegacy extends HubbardUContextProvider {
atomicSpecies: {
type: "string",
title: "Atomic species",
enum: this.uniqueElements,
enum: this.uniqueElementsWithLabels,
},
atomicSpeciesIndex: {
type: "integer",
Expand Down
6 changes: 3 additions & 3 deletions src/context/providers/HubbardJContextProvider.js
Expand Up @@ -12,7 +12,7 @@ export class HubbardJContextProvider extends HubbardUContextProvider {
return [
{
...defaultHubbardConfig,
atomicSpecies: this.uniqueElements?.length > 0 ? this.uniqueElements[0] : "",
atomicSpecies: this.firstElement,
},
];
}
Expand Down Expand Up @@ -54,8 +54,8 @@ export class HubbardJContextProvider extends HubbardUContextProvider {
atomicSpecies: {
type: "string",
title: "Species",
enum: this.uniqueElements,
default: this.uniqueElements?.length > 0 ? this.uniqueElements[0] : "",
enum: this.uniqueElementsWithLabels,
default: this.firstElement,
},
atomicOrbital: {
type: "string",
Expand Down
10 changes: 7 additions & 3 deletions src/context/providers/HubbardUContextProvider.js
Expand Up @@ -36,13 +36,17 @@ export class HubbardUContextProvider extends mix(JSONSchemaFormDataProvider).wit
"7p",
"7d",
];
const _elementsWithLabels = this.material?.Basis?.elementsWithLabelsArray || [];
this.uniqueElementsWithLabels = [...new Set(_elementsWithLabels)];
this.firstElement =
this.uniqueElementsWithLabels?.length > 0 ? this.uniqueElementsWithLabels[0] : "";
}

get defaultData() {
return [
{
...defaultHubbardConfig,
atomicSpecies: this.uniqueElements?.length > 0 ? this.uniqueElements[0] : "",
atomicSpecies: this.firstElement,
},
];
}
Expand Down Expand Up @@ -77,8 +81,8 @@ export class HubbardUContextProvider extends mix(JSONSchemaFormDataProvider).wit
atomicSpecies: {
type: "string",
title: "Atomic species",
enum: this.uniqueElements,
default: this.uniqueElements?.length > 0 ? this.uniqueElements[0] : "",
enum: this.uniqueElementsWithLabels,
default: this.firstElement,
},
atomicOrbital: {
type: "string",
Expand Down
17 changes: 11 additions & 6 deletions src/context/providers/HubbardVContextProvider.js
Expand Up @@ -17,17 +17,20 @@ export class HubbardVContextProvider extends HubbardUContextProvider {
...defaultHubbardConfig,
atomicSpecies: this.firstSpecies,
atomicSpecies2: this.secondSpecies,
siteIndex2: this.uniqueElements?.length > 1 ? 2 : defaultHubbardConfig.siteIndex2,
siteIndex2:
this.uniqueElementsWithLabels?.length > 1 ? 2 : defaultHubbardConfig.siteIndex2,
},
];
}

get firstSpecies() {
return this.uniqueElements?.length > 0 ? this.uniqueElements[0] : "";
return this.firstElement;
}

get secondSpecies() {
return this.uniqueElements?.length > 1 ? this.uniqueElements[1] : this.firstSpecies;
return this.uniqueElementsWithLabels?.length > 1
? this.uniqueElementsWithLabels[1]
: this.firstSpecies;
}

get uiSchemaStyled() {
Expand Down Expand Up @@ -64,7 +67,7 @@ export class HubbardVContextProvider extends HubbardUContextProvider {
atomicSpecies: {
type: "string",
title: "Species 1",
enum: this.uniqueElements,
enum: this.uniqueElementsWithLabels,
default: this.firstSpecies,
},
siteIndex: {
Expand All @@ -81,14 +84,16 @@ export class HubbardVContextProvider extends HubbardUContextProvider {
atomicSpecies2: {
type: "string",
title: "Species 2",
enum: this.uniqueElements,
enum: this.uniqueElementsWithLabels,
default: this.secondSpecies,
},
siteIndex2: {
type: "integer",
title: "Site no 2",
default:
this.uniqueElements?.length > 1 ? 2 : defaultHubbardConfig.siteIndex2,
this.uniqueElementsWithLabels?.length > 1
? 2
: defaultHubbardConfig.siteIndex2,
},
atomicOrbital2: {
type: "string",
Expand Down

0 comments on commit ec60a93

Please sign in to comment.