@teambit/config 0.0.1575 → 0.0.1577

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.
@@ -1,3 +1,3 @@
1
- import { Aspect, RuntimeDefinition } from '@teambit/harmony';
2
- export declare const ConfigRuntime: RuntimeDefinition;
1
+ import { Aspect } from '@teambit/harmony';
2
+ export declare const ConfigRuntime: import("@teambit/harmony").RuntimeDefinition;
3
3
  export declare const ConfigAspect: Aspect;
@@ -11,7 +11,14 @@ function _harmony() {
11
11
  };
12
12
  return data;
13
13
  }
14
- const ConfigRuntime = exports.ConfigRuntime = new (_harmony().RuntimeDefinition)('main');
14
+ function _harmonyModules() {
15
+ const data = require("@teambit/harmony.modules.runtimes");
16
+ _harmonyModules = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ const ConfigRuntime = exports.ConfigRuntime = _harmonyModules().MainRuntime;
15
22
  const ConfigAspect = exports.ConfigAspect = _harmony().Aspect.create({
16
23
  id: 'teambit.harmony/config',
17
24
  dependencies: [],
@@ -1 +1 @@
1
- {"version":3,"names":["_harmony","data","require","ConfigRuntime","exports","RuntimeDefinition","ConfigAspect","Aspect","create","id","dependencies","declareRuntime"],"sources":["config.aspect.ts"],"sourcesContent":["import { Aspect, RuntimeDefinition } from '@teambit/harmony';\n\nexport const ConfigRuntime = new RuntimeDefinition('main');\n\nexport const ConfigAspect = Aspect.create({\n id: 'teambit.harmony/config',\n dependencies: [],\n declareRuntime: ConfigRuntime,\n});\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,KAAIE,4BAAiB,EAAC,MAAM,CAAC;AAEnD,MAAMC,YAAY,GAAAF,OAAA,CAAAE,YAAA,GAAGC,iBAAM,CAACC,MAAM,CAAC;EACxCC,EAAE,EAAE,wBAAwB;EAC5BC,YAAY,EAAE,EAAE;EAChBC,cAAc,EAAER;AAClB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_harmony","data","require","_harmonyModules","ConfigRuntime","exports","MainRuntime","ConfigAspect","Aspect","create","id","dependencies","declareRuntime"],"sources":["config.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\nimport { MainRuntime } from '@teambit/harmony.modules.runtimes';\n\nexport const ConfigRuntime = MainRuntime;\n\nexport const ConfigAspect = Aspect.create({\n id: 'teambit.harmony/config',\n dependencies: [],\n declareRuntime: ConfigRuntime,\n});\n"],"mappings":";;;;;;AAAA,SAAAA,SAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,QAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,gBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,eAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAGE,6BAAW;AAEjC,MAAMC,YAAY,GAAAF,OAAA,CAAAE,YAAA,GAAGC,iBAAM,CAACC,MAAM,CAAC;EACxCC,EAAE,EAAE,wBAAwB;EAC5BC,YAAY,EAAE,EAAE;EAChBC,cAAc,EAAER;AAClB,CAAC,CAAC","ignoreList":[]}
@@ -25,9 +25,9 @@ function _scopeModules() {
25
25
  };
26
26
  return data;
27
27
  }
28
- function _cli() {
29
- const data = require("@teambit/cli");
30
- _cli = function () {
28
+ function _harmonyModules() {
29
+ const data = require("@teambit/harmony.modules.runtimes");
30
+ _harmonyModules = function () {
31
31
  return data;
32
32
  };
33
33
  return data;
@@ -141,7 +141,7 @@ class ConfigMain {
141
141
  }
142
142
  }
143
143
  exports.ConfigMain = ConfigMain;
144
- _defineProperty(ConfigMain, "runtime", _cli().MainRuntime);
144
+ _defineProperty(ConfigMain, "runtime", _harmonyModules().MainRuntime);
145
145
  _defineProperty(ConfigMain, "slots", []);
146
146
  _defineProperty(ConfigMain, "dependencies", []);
147
147
  _defineProperty(ConfigMain, "config", {});
@@ -1 +1 @@
1
- {"version":3,"names":["_workspaceModules","data","require","_legacy","_scopeModules","_cli","_path","_interopRequireDefault","_workspaceConfig","_config2","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ConfigMain","constructor","workspaceConfig","scopeConfig","type","path","config","reloadWorkspaceConfig","cwd","loadWorkspaceConfigIfExist","ensureWorkspace","workspacePath","scopePath","workspaceConfigProps","generator","WorkspaceConfig","ensure","extensions","extension","extensionId","ignoreVersion","setExtension","options","getHarmonyConfigObject","forEach","stringId","workspaceEnsureLegacy","workspaceExtensionProps","toLegacy","provider","_deps","_config","_slots","harmony","configMain","bitConfig","raw","get","undefined","LegacyWorkspaceConfig","registerOnWorkspaceConfigLoading","onLegacyWorkspaceLoad","exports","MainRuntime","ConfigAspect","addRuntime","process","consumerInfo","getWorkspaceInfo","configDirPath","findScopePath","loadIfExist","dirPath","normalize","dirname","newConfig"],"sources":["config.main.runtime.ts"],"sourcesContent":["import { getWorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';\nimport type { ExtensionDataEntry, ExtensionDataList } from '@teambit/legacy.extension-data';\nimport type { ILegacyWorkspaceConfig, WorkspaceConfigLoadFunction } from '@teambit/legacy.consumer-config';\nimport { LegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';\nimport type { PathOsBased, PathOsBasedAbsolute } from '@teambit/legacy.utils';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport { MainRuntime } from '@teambit/cli';\nimport type { GlobalConfig, Harmony } from '@teambit/harmony';\nimport path from 'path';\nimport type { WorkspaceConfigFileProps, WorkspaceExtensionProps } from './workspace-config';\nimport { WorkspaceConfig } from './workspace-config';\nimport type { ConfigType, HostConfig } from './types';\nimport { ConfigAspect } from './config.aspect';\n\nexport type SetExtensionOptions = {\n overrideExisting?: boolean;\n ignoreVersion: boolean;\n mergeIntoExisting?: boolean;\n};\n\nexport type ConfigDeps = [];\n\nexport type ConfigConfig = {};\n\nexport class ConfigMain {\n constructor(\n public workspaceConfig?: WorkspaceConfig,\n public scopeConfig?: WorkspaceConfig\n ) {}\n\n get type(): ConfigType {\n if (this.workspaceConfig) {\n return 'workspace';\n }\n return 'scope';\n }\n\n get path(): PathOsBased | undefined {\n return this.config?.path;\n }\n\n get config(): HostConfig | undefined {\n if (this.workspaceConfig) {\n return this.workspaceConfig;\n }\n return this.scopeConfig;\n }\n\n async reloadWorkspaceConfig(cwd: string) {\n const workspaceConfig = await loadWorkspaceConfigIfExist(cwd);\n if (workspaceConfig) this.workspaceConfig = workspaceConfig;\n }\n\n /**\n * Ensure the given directory has a workspace config\n * Load if existing and create new if not\n *\n * @static\n * @param {PathOsBasedAbsolute} workspacePath\n * @param {WorkspaceConfigFileProps} [workspaceConfigProps={} as any]\n * @returns {Promise<WorkspaceConfig>}\n * @memberof WorkspaceConfig\n */\n static async ensureWorkspace(\n workspacePath: PathOsBasedAbsolute,\n scopePath: PathOsBasedAbsolute,\n workspaceConfigProps: WorkspaceConfigFileProps = {} as any,\n generator?: string\n ): Promise<ConfigMain> {\n const workspaceConfig = await WorkspaceConfig.ensure(workspacePath, scopePath, workspaceConfigProps, generator);\n return new ConfigMain(workspaceConfig);\n }\n\n get extensions(): ExtensionDataList | undefined {\n return this.config?.extensions;\n }\n\n extension(extensionId: string, ignoreVersion: boolean): ExtensionDataEntry | undefined {\n return this.config?.extension(extensionId, ignoreVersion);\n }\n\n setExtension(extensionId: string, config: Record<string, any>, options: SetExtensionOptions) {\n this.config?.setExtension(extensionId, config, options);\n }\n\n getHarmonyConfigObject(): GlobalConfig {\n const config = {};\n if (!this.extensions) return config;\n this.extensions.forEach((extension) => {\n config[extension.stringId] = extension.config;\n });\n return config;\n }\n\n static async workspaceEnsureLegacy(\n workspacePath: string,\n scopePath: string,\n workspaceExtensionProps?: WorkspaceExtensionProps,\n generator?: string\n ) {\n let workspaceConfigProps;\n if (workspaceExtensionProps) {\n workspaceConfigProps = { 'teambit.workspace/workspace': workspaceExtensionProps };\n }\n const config = await ConfigMain.ensureWorkspace(workspacePath, scopePath, workspaceConfigProps, generator);\n const workspaceConfig = config.config;\n return (workspaceConfig as WorkspaceConfig).toLegacy();\n }\n\n static runtime = MainRuntime;\n static slots = [];\n static dependencies = [];\n static config = {};\n static async provider(_deps, _config, _slots, harmony: Harmony) {\n // LegacyWorkspaceConfig.registerOnWorkspaceConfigEnsuring(onLegacyWorkspaceEnsure());\n\n let configMain: ConfigMain | any;\n const bitConfig = harmony.config.raw.get('teambit.harmony/bit') as any;\n const workspaceConfig = await loadWorkspaceConfigIfExist(bitConfig?.cwd);\n if (workspaceConfig) {\n configMain = new ConfigMain(workspaceConfig, undefined);\n } else {\n // TODO: try load scope config here\n configMain = {};\n }\n LegacyWorkspaceConfig.registerOnWorkspaceConfigLoading(onLegacyWorkspaceLoad(configMain));\n return configMain;\n }\n}\n\nConfigAspect.addRuntime(ConfigMain);\n\nasync function loadWorkspaceConfigIfExist(cwd = process.cwd()): Promise<WorkspaceConfig | undefined> {\n const consumerInfo = await getWorkspaceInfo(cwd);\n const configDirPath = consumerInfo?.path || cwd;\n const scopePath = findScopePath(configDirPath);\n const workspaceConfig = await WorkspaceConfig.loadIfExist(configDirPath, scopePath);\n return workspaceConfig;\n}\n\nfunction onLegacyWorkspaceLoad(config?: ConfigMain): WorkspaceConfigLoadFunction {\n return async (dirPath: PathOsBased, scopePath: PathOsBasedAbsolute): Promise<ILegacyWorkspaceConfig | undefined> => {\n if (config?.workspaceConfig && config.path && path.normalize(dirPath) === path.dirname(config.path)) {\n return (config.config as WorkspaceConfig).toLegacy();\n }\n const newConfig = await WorkspaceConfig.loadIfExist(dirPath, scopePath);\n if (newConfig) {\n return newConfig.toLegacy();\n }\n return undefined;\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_workspaceModules","data","require","_legacy","_scopeModules","_harmonyModules","_path","_interopRequireDefault","_workspaceConfig","_config2","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ConfigMain","constructor","workspaceConfig","scopeConfig","type","path","config","reloadWorkspaceConfig","cwd","loadWorkspaceConfigIfExist","ensureWorkspace","workspacePath","scopePath","workspaceConfigProps","generator","WorkspaceConfig","ensure","extensions","extension","extensionId","ignoreVersion","setExtension","options","getHarmonyConfigObject","forEach","stringId","workspaceEnsureLegacy","workspaceExtensionProps","toLegacy","provider","_deps","_config","_slots","harmony","configMain","bitConfig","raw","get","undefined","LegacyWorkspaceConfig","registerOnWorkspaceConfigLoading","onLegacyWorkspaceLoad","exports","MainRuntime","ConfigAspect","addRuntime","process","consumerInfo","getWorkspaceInfo","configDirPath","findScopePath","loadIfExist","dirPath","normalize","dirname","newConfig"],"sources":["config.main.runtime.ts"],"sourcesContent":["import { getWorkspaceInfo } from '@teambit/workspace.modules.workspace-locator';\nimport type { ExtensionDataEntry, ExtensionDataList } from '@teambit/legacy.extension-data';\nimport type { ILegacyWorkspaceConfig, WorkspaceConfigLoadFunction } from '@teambit/legacy.consumer-config';\nimport { LegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';\nimport type { PathOsBased, PathOsBasedAbsolute } from '@teambit/legacy.utils';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport { MainRuntime } from '@teambit/harmony.modules.runtimes';\nimport type { GlobalConfig, Harmony } from '@teambit/harmony';\nimport path from 'path';\nimport type { WorkspaceConfigFileProps, WorkspaceExtensionProps } from './workspace-config';\nimport { WorkspaceConfig } from './workspace-config';\nimport type { ConfigType, HostConfig } from './types';\nimport { ConfigAspect } from './config.aspect';\n\nexport type SetExtensionOptions = {\n overrideExisting?: boolean;\n ignoreVersion: boolean;\n mergeIntoExisting?: boolean;\n};\n\nexport type ConfigDeps = [];\n\nexport type ConfigConfig = {};\n\nexport class ConfigMain {\n constructor(\n public workspaceConfig?: WorkspaceConfig,\n public scopeConfig?: WorkspaceConfig\n ) {}\n\n get type(): ConfigType {\n if (this.workspaceConfig) {\n return 'workspace';\n }\n return 'scope';\n }\n\n get path(): PathOsBased | undefined {\n return this.config?.path;\n }\n\n get config(): HostConfig | undefined {\n if (this.workspaceConfig) {\n return this.workspaceConfig;\n }\n return this.scopeConfig;\n }\n\n async reloadWorkspaceConfig(cwd: string) {\n const workspaceConfig = await loadWorkspaceConfigIfExist(cwd);\n if (workspaceConfig) this.workspaceConfig = workspaceConfig;\n }\n\n /**\n * Ensure the given directory has a workspace config\n * Load if existing and create new if not\n *\n * @static\n * @param {PathOsBasedAbsolute} workspacePath\n * @param {WorkspaceConfigFileProps} [workspaceConfigProps={} as any]\n * @returns {Promise<WorkspaceConfig>}\n * @memberof WorkspaceConfig\n */\n static async ensureWorkspace(\n workspacePath: PathOsBasedAbsolute,\n scopePath: PathOsBasedAbsolute,\n workspaceConfigProps: WorkspaceConfigFileProps = {} as any,\n generator?: string\n ): Promise<ConfigMain> {\n const workspaceConfig = await WorkspaceConfig.ensure(workspacePath, scopePath, workspaceConfigProps, generator);\n return new ConfigMain(workspaceConfig);\n }\n\n get extensions(): ExtensionDataList | undefined {\n return this.config?.extensions;\n }\n\n extension(extensionId: string, ignoreVersion: boolean): ExtensionDataEntry | undefined {\n return this.config?.extension(extensionId, ignoreVersion);\n }\n\n setExtension(extensionId: string, config: Record<string, any>, options: SetExtensionOptions) {\n this.config?.setExtension(extensionId, config, options);\n }\n\n getHarmonyConfigObject(): GlobalConfig {\n const config = {};\n if (!this.extensions) return config;\n this.extensions.forEach((extension) => {\n config[extension.stringId] = extension.config;\n });\n return config;\n }\n\n static async workspaceEnsureLegacy(\n workspacePath: string,\n scopePath: string,\n workspaceExtensionProps?: WorkspaceExtensionProps,\n generator?: string\n ) {\n let workspaceConfigProps;\n if (workspaceExtensionProps) {\n workspaceConfigProps = { 'teambit.workspace/workspace': workspaceExtensionProps };\n }\n const config = await ConfigMain.ensureWorkspace(workspacePath, scopePath, workspaceConfigProps, generator);\n const workspaceConfig = config.config;\n return (workspaceConfig as WorkspaceConfig).toLegacy();\n }\n\n static runtime = MainRuntime;\n static slots = [];\n static dependencies = [];\n static config = {};\n static async provider(_deps, _config, _slots, harmony: Harmony) {\n // LegacyWorkspaceConfig.registerOnWorkspaceConfigEnsuring(onLegacyWorkspaceEnsure());\n\n let configMain: ConfigMain | any;\n const bitConfig = harmony.config.raw.get('teambit.harmony/bit') as any;\n const workspaceConfig = await loadWorkspaceConfigIfExist(bitConfig?.cwd);\n if (workspaceConfig) {\n configMain = new ConfigMain(workspaceConfig, undefined);\n } else {\n // TODO: try load scope config here\n configMain = {};\n }\n LegacyWorkspaceConfig.registerOnWorkspaceConfigLoading(onLegacyWorkspaceLoad(configMain));\n return configMain;\n }\n}\n\nConfigAspect.addRuntime(ConfigMain);\n\nasync function loadWorkspaceConfigIfExist(cwd = process.cwd()): Promise<WorkspaceConfig | undefined> {\n const consumerInfo = await getWorkspaceInfo(cwd);\n const configDirPath = consumerInfo?.path || cwd;\n const scopePath = findScopePath(configDirPath);\n const workspaceConfig = await WorkspaceConfig.loadIfExist(configDirPath, scopePath);\n return workspaceConfig;\n}\n\nfunction onLegacyWorkspaceLoad(config?: ConfigMain): WorkspaceConfigLoadFunction {\n return async (dirPath: PathOsBased, scopePath: PathOsBasedAbsolute): Promise<ILegacyWorkspaceConfig | undefined> => {\n if (config?.workspaceConfig && config.path && path.normalize(dirPath) === path.dirname(config.path)) {\n return (config.config as WorkspaceConfig).toLegacy();\n }\n const newConfig = await WorkspaceConfig.loadIfExist(dirPath, scopePath);\n if (newConfig) {\n return newConfig.toLegacy();\n }\n return undefined;\n };\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,18 +1,19 @@
1
1
  {
2
2
  "name": "@teambit/config",
3
- "version": "0.0.1575",
3
+ "version": "0.0.1577",
4
4
  "homepage": "https://bit.cloud/teambit/harmony/config",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.harmony",
8
8
  "name": "config",
9
- "version": "0.0.1575"
9
+ "version": "0.0.1577"
10
10
  },
11
11
  "dependencies": {
12
12
  "comment-json": "4.2.5",
13
13
  "fs-extra": "10.0.0",
14
14
  "lodash": "4.17.21",
15
15
  "chalk": "4.1.2",
16
+ "@teambit/harmony.modules.runtimes": "0.0.1",
16
17
  "@teambit/harmony": "0.4.12",
17
18
  "@teambit/legacy.utils": "0.0.52",
18
19
  "@teambit/scope.modules.find-scope-path": "0.0.48",
@@ -22,11 +23,10 @@
22
23
  "@teambit/legacy.constants": "0.0.46",
23
24
  "@teambit/legacy.logger": "0.0.63",
24
25
  "@teambit/bit-error": "0.0.404",
25
- "@teambit/cli": "0.0.1400",
26
- "@teambit/legacy.consumer-config": "0.0.171",
27
- "@teambit/legacy.extension-data": "0.0.173",
28
- "@teambit/component.sources": "0.0.223",
29
- "@teambit/legacy.consumer": "0.0.171"
26
+ "@teambit/legacy.consumer-config": "0.0.172",
27
+ "@teambit/legacy.extension-data": "0.0.174",
28
+ "@teambit/component.sources": "0.0.224",
29
+ "@teambit/legacy.consumer": "0.0.172"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@types/fs-extra": "9.0.7",