chore: Move the location of the dependencies

This commit is contained in:
BluJ
2023-04-18 10:17:08 -06:00
parent e7a946cc02
commit af1f9b22bd
3 changed files with 17 additions and 7 deletions

View File

@@ -22,11 +22,17 @@ export function setupConfigExports<A extends InputSpec, ConfigType>(options: {
write(options: { write(options: {
effects: Effects; effects: Effects;
input: TypeFromProps<A>; input: TypeFromProps<A>;
}): Promise<{ config?: ConfigType; dependencies?: Dependencies }>; }): Promise<ConfigType>;
read(options: { read(options: {
effects: Effects; effects: Effects;
config: ConfigType; config: ConfigType;
}): Promise<null | DeepPartial<TypeFromProps<A>>>; }): Promise<null | DeepPartial<TypeFromProps<A>>>;
dependencies(options: {
effects: Effects;
input: TypeFromProps<A>;
config: ConfigType;
}): Promise<Dependencies | void>;
}) { }) {
const validator = options.spec.validator(); const validator = options.spec.validator();
return { return {
@@ -35,9 +41,13 @@ export function setupConfigExports<A extends InputSpec, ConfigType>(options: {
await effects.error(String(validator.errorMessage(input))); await effects.error(String(validator.errorMessage(input)));
return { error: "Set config type error for config" }; return { error: "Set config type error for config" };
} }
const { config, dependencies } = await options.write({ input, effects }); const config = await options.write({
input: JSON.parse(JSON.stringify(input)),
await effects.setDependencies(dependencies || []); effects,
});
const dependencies =
(await options.dependencies({ effects, input, config })) || [];
await effects.setDependencies(dependencies);
await effects.setWrapperData({ path: "config", value: config || null }); await effects.setWrapperData({ path: "config", value: config || null });
}) as ExpectedExports.setConfig, }) as ExpectedExports.setConfig,
getConfig: (async ({ effects, config }) => { getConfig: (async ({ effects, config }) => {

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{ {
"name": "start-sdk", "name": "start-sdk",
"version": "0.4.0-lib0.charlie25", "version": "0.4.0-lib0.charlie26",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "start-sdk", "name": "start-sdk",
"version": "0.4.0-lib0.charlie25", "version": "0.4.0-lib0.charlie26",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@iarna/toml": "^2.2.5", "@iarna/toml": "^2.2.5",

View File

@@ -1,6 +1,6 @@
{ {
"name": "start-sdk", "name": "start-sdk",
"version": "0.4.0-lib0.charlie25", "version": "0.4.0-lib0.charlie26",
"description": "For making the patterns that are wanted in making services for the startOS.", "description": "For making the patterns that are wanted in making services for the startOS.",
"main": "./lib/index.js", "main": "./lib/index.js",
"types": "./lib/index.d.ts", "types": "./lib/index.d.ts",