Skip to content

Commit ef8cc8d

Browse files
Merge pull request #8 from Exabyte-io/fix/SOF-6197
Fix/sof 6197
2 parents 6fb1679 + 72db35d commit ef8cc8d

File tree

4 files changed

+130
-82
lines changed

4 files changed

+130
-82
lines changed

package-lock.json

+62-35
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@
3838
"@babel/preset-react": "7.16.7",
3939
"@babel/register": "^7.16.0",
4040
"@babel/runtime-corejs3": "7.16.8",
41-
"@exabyte-io/ade.js": "2022.7.27-0",
41+
"@exabyte-io/ade.js": "2022.9.2-0",
4242
"@exabyte-io/ide.js": "2022.7.28-1",
43-
"@exabyte-io/mode.js": "2022.8.30-0",
44-
"@exabyte-io/code.js": "2022.8.30-0",
43+
"@exabyte-io/mode.js": "2022.8.31-0",
44+
"@exabyte-io/code.js": "2022.9.2-0",
4545
"js-yaml": "^4.1.0",
4646
"lodash": "^4.17.21",
4747
"mixwith": "^0.1.1",

src/context/providers.js

+62-34
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { context } from "@exabyte-io/mode.js";
2+
23
const {
34
BoundaryConditionsFormDataProvider,
45
MLSettingsContextProvider,
@@ -12,41 +13,68 @@ const {
1213
} = context;
1314

1415
const CONTEXT_DOMAINS = {
15-
important: "important", // used to generate `ImportantSettings` form
16-
}
16+
important: "important", // used to generate `ImportantSettings` form
17+
};
1718

18-
const _makeImportant = (config) => Object.assign(config, {domain: CONTEXT_DOMAINS.important});
19+
const _makeImportant = (config) => Object.assign(config, { domain: CONTEXT_DOMAINS.important });
1920

20-
/**********************************
21+
/** ********************************
2122
* Method-based context providers *
22-
**********************************/
23-
24-
// NOTE: subworkflow-level data manager. Will override the unit-level data with the same name via subworkflow context.
25-
export const PlanewaveCutoffDataManager = PlanewaveCutoffsContextProvider.getConstructorConfig(_makeImportant({
26-
name: "cutoffs",
27-
entityName: "subworkflow"
28-
}));
29-
export const KGridFormDataManager = PointsGridFormDataProvider.getConstructorConfig(_makeImportant({name: "kgrid"}));
30-
export const QGridFormDataManager = PointsGridFormDataProvider.getConstructorConfig(_makeImportant({
31-
name: "qgrid",
32-
divisor: 5, // Using less points for Qgrid by default
33-
}));
34-
export const IGridFormDataManager = PointsGridFormDataProvider.getConstructorConfig(_makeImportant({
35-
name: "igrid",
36-
divisor: 0.2, // Using more points for interpolated grid by default
37-
}));
38-
39-
export const QPathFormDataManager = PointsPathFormDataProvider.getConstructorConfig(_makeImportant({name: "qpath"}));
40-
export const IPathFormDataManager = PointsPathFormDataProvider.getConstructorConfig(_makeImportant({name: "ipath"}));
41-
export const KPathFormDataManager = PointsPathFormDataProvider.getConstructorConfig(_makeImportant({name: "kpath"}));
42-
export const ExplicitKPathFormDataManager = ExplicitPointsPathFormDataProvider.getConstructorConfig(_makeImportant({name: "explicitKPath"}));
43-
export const ExplicitKPath2PIBAFormDataManager = ExplicitPointsPath2PIBAFormDataProvider.getConstructorConfig(_makeImportant({name: "explicitKPath2PIBA"}));
44-
45-
// NEBFormDataManager context is stored under the same key (`input`) as InputDataManager contexts.
46-
export const NEBFormDataManager = NEBFormDataProvider.getConstructorConfig(_makeImportant({name: "neb"}));
47-
48-
export const BoundaryConditionsFormDataManager = BoundaryConditionsFormDataProvider.getConstructorConfig(_makeImportant({name: "boundaryConditions"}));
49-
50-
export const MLSettingsDataManager = MLSettingsContextProvider.getConstructorConfig(_makeImportant({name: "mlSettings"}));
51-
export const MLTrainTestSplitDataManager = MLTrainTestSplitContextProvider.getConstructorConfig(_makeImportant({name: "mlTrainTestSplit"}));
23+
********************************* */
5224

25+
export const wodeProviders = {
26+
// NOTE: subworkflow-level data manager. Will override the unit-level data with the same name via subworkflow context.
27+
PlanewaveCutoffDataManager: {
28+
providerCls: PlanewaveCutoffsContextProvider,
29+
config: _makeImportant({ name: "cutoffs", entityName: "subworkflow" }),
30+
},
31+
KGridFormDataManager: {
32+
providerCls: PointsGridFormDataProvider,
33+
config: _makeImportant({ name: "kgrid" }),
34+
},
35+
QGridFormDataManager: {
36+
providerCls: PointsGridFormDataProvider,
37+
config: _makeImportant({ name: "qgrid", divisor: 5 }), // Using less points for Qgrid by default
38+
},
39+
IGridFormDataManager: {
40+
providerCls: PointsGridFormDataProvider,
41+
config: _makeImportant({ name: "igrid", divisor: 0.2 }), // Using more points for interpolated grid by default
42+
},
43+
QPathFormDataManager: {
44+
providerCls: PointsPathFormDataProvider,
45+
config: _makeImportant({ name: "qpath" }),
46+
},
47+
IPathFormDataManager: {
48+
providerCls: PointsPathFormDataProvider,
49+
config: _makeImportant({ name: "ipath" }),
50+
},
51+
KPathFormDataManager: {
52+
providerCls: PointsPathFormDataProvider,
53+
config: _makeImportant({ name: "kpath" }),
54+
},
55+
ExplicitKPathFormDataManager: {
56+
providerCls: ExplicitPointsPathFormDataProvider,
57+
config: _makeImportant({ name: "explicitKPath" }),
58+
},
59+
ExplicitKPath2PIBAFormDataManager: {
60+
providerCls: ExplicitPointsPath2PIBAFormDataProvider,
61+
config: _makeImportant({ name: "explicitKPath2PIBA" }),
62+
},
63+
// NEBFormDataManager context is stored under the same key (`input`) as InputDataManager contexts.
64+
NEBFormDataManager: {
65+
providerCls: NEBFormDataProvider,
66+
config: _makeImportant({ name: "neb" }),
67+
},
68+
BoundaryConditionsFormDataManager: {
69+
providerCls: BoundaryConditionsFormDataProvider,
70+
config: _makeImportant({ name: "boundaryConditions" }),
71+
},
72+
MLSettingsDataManager: {
73+
providerCls: MLSettingsContextProvider,
74+
config: _makeImportant({ name: "mlSettings" }),
75+
},
76+
MLTrainTestSplitDataManager: {
77+
providerCls: MLTrainTestSplitContextProvider,
78+
config: _makeImportant({ name: "mlTrainTestSplit" }),
79+
},
80+
};

src/context/registry.js

+3-10
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,6 @@
11
import { ContextProviderRegistry as clsInstance } from "@exabyte-io/ade.js";
2-
import _ from "underscore";
2+
import { extendAndPatchRegistry } from "@exabyte-io/code.js/dist/context";
33

4-
import * as allContextProviders from "./providers";
4+
import { wodeProviders } from "./providers";
55

6-
_.map(allContextProviders, (instance, name) =>
7-
clsInstance.addProvider({
8-
instance,
9-
name,
10-
}),
11-
);
12-
13-
export const ContextProviderRegistry = clsInstance;
6+
export const ContextProviderRegistry = extendAndPatchRegistry(clsInstance, wodeProviders);

0 commit comments

Comments
 (0)