@teambit/config 0.0.1238 → 0.0.1240

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,5 +1,5 @@
1
- import { ILegacyWorkspaceConfig } from '@teambit/legacy/dist/consumer/config';
2
1
  import { ExtensionDataEntry, ExtensionDataList } from '@teambit/legacy.extension-data';
2
+ import { ILegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';
3
3
  import { PathOsBased, PathOsBasedAbsolute } from '@teambit/legacy.utils';
4
4
  import { GlobalConfig, Harmony } from '@teambit/harmony';
5
5
  import { WorkspaceConfig, WorkspaceConfigFileProps, WorkspaceExtensionProps } from './workspace-config';
@@ -11,9 +11,9 @@ function _workspaceModules() {
11
11
  };
12
12
  return data;
13
13
  }
14
- function _workspaceConfig() {
15
- const data = _interopRequireDefault(require("@teambit/legacy/dist/consumer/config/workspace-config"));
16
- _workspaceConfig = function () {
14
+ function _legacy() {
15
+ const data = require("@teambit/legacy.consumer-config");
16
+ _legacy = function () {
17
17
  return data;
18
18
  };
19
19
  return data;
@@ -39,9 +39,9 @@ function _path() {
39
39
  };
40
40
  return data;
41
41
  }
42
- function _workspaceConfig2() {
42
+ function _workspaceConfig() {
43
43
  const data = require("./workspace-config");
44
- _workspaceConfig2 = function () {
44
+ _workspaceConfig = function () {
45
45
  return data;
46
46
  };
47
47
  return data;
@@ -93,7 +93,7 @@ class ConfigMain {
93
93
  * @memberof WorkspaceConfig
94
94
  */
95
95
  static async ensureWorkspace(workspacePath, scopePath, workspaceConfigProps = {}, generator) {
96
- const workspaceConfig = await _workspaceConfig2().WorkspaceConfig.ensure(workspacePath, scopePath, workspaceConfigProps, generator);
96
+ const workspaceConfig = await _workspaceConfig().WorkspaceConfig.ensure(workspacePath, scopePath, workspaceConfigProps, generator);
97
97
  return new ConfigMain(workspaceConfig);
98
98
  }
99
99
  get extensions() {
@@ -136,7 +136,7 @@ class ConfigMain {
136
136
  // TODO: try load scope config here
137
137
  configMain = {};
138
138
  }
139
- _workspaceConfig().default.registerOnWorkspaceConfigLoading(onLegacyWorkspaceLoad(configMain));
139
+ _legacy().LegacyWorkspaceConfig.registerOnWorkspaceConfigLoading(onLegacyWorkspaceLoad(configMain));
140
140
  return configMain;
141
141
  }
142
142
  }
@@ -150,7 +150,7 @@ async function loadWorkspaceConfigIfExist(cwd = process.cwd()) {
150
150
  const consumerInfo = await (0, _workspaceModules().getWorkspaceInfo)(cwd);
151
151
  const configDirPath = consumerInfo?.path || cwd;
152
152
  const scopePath = (0, _scopeModules().findScopePath)(configDirPath);
153
- const workspaceConfig = await _workspaceConfig2().WorkspaceConfig.loadIfExist(configDirPath, scopePath);
153
+ const workspaceConfig = await _workspaceConfig().WorkspaceConfig.loadIfExist(configDirPath, scopePath);
154
154
  return workspaceConfig;
155
155
  }
156
156
  function onLegacyWorkspaceLoad(config) {
@@ -158,7 +158,7 @@ function onLegacyWorkspaceLoad(config) {
158
158
  if (config?.workspaceConfig && config.path && _path().default.normalize(dirPath) === _path().default.dirname(config.path)) {
159
159
  return config.config.toLegacy();
160
160
  }
161
- const newConfig = await _workspaceConfig2().WorkspaceConfig.loadIfExist(dirPath, scopePath);
161
+ const newConfig = await _workspaceConfig().WorkspaceConfig.loadIfExist(dirPath, scopePath);
162
162
  if (newConfig) {
163
163
  return newConfig.toLegacy();
164
164
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_workspaceModules","data","require","_workspaceConfig","_interopRequireDefault","_scopeModules","_cli","_path","_workspaceConfig2","_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 { ILegacyWorkspaceConfig } from '@teambit/legacy/dist/consumer/config';\nimport { ExtensionDataEntry, ExtensionDataList } from '@teambit/legacy.extension-data';\nimport LegacyWorkspaceConfig, {\n WorkspaceConfigLoadFunction,\n} from '@teambit/legacy/dist/consumer/config/workspace-config';\nimport { PathOsBased, PathOsBasedAbsolute } from '@teambit/legacy.utils';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport { MainRuntime } from '@teambit/cli';\nimport { GlobalConfig, Harmony } from '@teambit/harmony';\nimport path from 'path';\nimport { WorkspaceConfig, WorkspaceConfigFileProps, WorkspaceExtensionProps } from './workspace-config';\nimport { 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":";;;;;;AAAA,SAAAA,kBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,iBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAE,iBAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,gBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIA,SAAAI,cAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,aAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,KAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,IAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAM,MAAA;EAAA,MAAAN,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAK,KAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,kBAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,iBAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAQ,SAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,QAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA+C,SAAAG,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAYxC,MAAMgB,UAAU,CAAC;EACtBC,WAAWA,CACFC,eAAiC,EACjCC,WAA6B,EACpC;IAAA,KAFOD,eAAiC,GAAjCA,eAAiC;IAAA,KACjCC,WAA6B,GAA7BA,WAA6B;EACnC;EAEH,IAAIC,IAAIA,CAAA,EAAe;IACrB,IAAI,IAAI,CAACF,eAAe,EAAE;MACxB,OAAO,WAAW;IACpB;IACA,OAAO,OAAO;EAChB;EAEA,IAAIG,IAAIA,CAAA,EAA4B;IAClC,OAAO,IAAI,CAACC,MAAM,EAAED,IAAI;EAC1B;EAEA,IAAIC,MAAMA,CAAA,EAA2B;IACnC,IAAI,IAAI,CAACJ,eAAe,EAAE;MACxB,OAAO,IAAI,CAACA,eAAe;IAC7B;IACA,OAAO,IAAI,CAACC,WAAW;EACzB;EAEA,MAAMI,qBAAqBA,CAACC,GAAW,EAAE;IACvC,MAAMN,eAAe,GAAG,MAAMO,0BAA0B,CAACD,GAAG,CAAC;IAC7D,IAAIN,eAAe,EAAE,IAAI,CAACA,eAAe,GAAGA,eAAe;EAC7D;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,aAAaQ,eAAeA,CAC1BC,aAAkC,EAClCC,SAA8B,EAC9BC,oBAA8C,GAAG,CAAC,CAAQ,EAC1DC,SAAkB,EACG;IACrB,MAAMZ,eAAe,GAAG,MAAMa,mCAAe,CAACC,MAAM,CAACL,aAAa,EAAEC,SAAS,EAAEC,oBAAoB,EAAEC,SAAS,CAAC;IAC/G,OAAO,IAAId,UAAU,CAACE,eAAe,CAAC;EACxC;EAEA,IAAIe,UAAUA,CAAA,EAAkC;IAC9C,OAAO,IAAI,CAACX,MAAM,EAAEW,UAAU;EAChC;EAEAC,SAASA,CAACC,WAAmB,EAAEC,aAAsB,EAAkC;IACrF,OAAO,IAAI,CAACd,MAAM,EAAEY,SAAS,CAACC,WAAW,EAAEC,aAAa,CAAC;EAC3D;EAEAC,YAAYA,CAACF,WAAmB,EAAEb,MAA2B,EAAEgB,OAA4B,EAAE;IAC3F,IAAI,CAAChB,MAAM,EAAEe,YAAY,CAACF,WAAW,EAAEb,MAAM,EAAEgB,OAAO,CAAC;EACzD;EAEAC,sBAAsBA,CAAA,EAAiB;IACrC,MAAMjB,MAAM,GAAG,CAAC,CAAC;IACjB,IAAI,CAAC,IAAI,CAACW,UAAU,EAAE,OAAOX,MAAM;IACnC,IAAI,CAACW,UAAU,CAACO,OAAO,CAAEN,SAAS,IAAK;MACrCZ,MAAM,CAACY,SAAS,CAACO,QAAQ,CAAC,GAAGP,SAAS,CAACZ,MAAM;IAC/C,CAAC,CAAC;IACF,OAAOA,MAAM;EACf;EAEA,aAAaoB,qBAAqBA,CAChCf,aAAqB,EACrBC,SAAiB,EACjBe,uBAAiD,EACjDb,SAAkB,EAClB;IACA,IAAID,oBAAoB;IACxB,IAAIc,uBAAuB,EAAE;MAC3Bd,oBAAoB,GAAG;QAAE,6BAA6B,EAAEc;MAAwB,CAAC;IACnF;IACA,MAAMrB,MAAM,GAAG,MAAMN,UAAU,CAACU,eAAe,CAACC,aAAa,EAAEC,SAAS,EAAEC,oBAAoB,EAAEC,SAAS,CAAC;IAC1G,MAAMZ,eAAe,GAAGI,MAAM,CAACA,MAAM;IACrC,OAAQJ,eAAe,CAAqB0B,QAAQ,CAAC,CAAC;EACxD;EAMA,aAAaC,QAAQA,CAACC,KAAK,EAAEC,OAAO,EAAEC,MAAM,EAAEC,OAAgB,EAAE;IAC9D;;IAEA,IAAIC,UAA4B;IAChC,MAAMC,SAAS,GAAGF,OAAO,CAAC3B,MAAM,CAAC8B,GAAG,CAACC,GAAG,CAAC,qBAAqB,CAAQ;IACtE,MAAMnC,eAAe,GAAG,MAAMO,0BAA0B,CAAC0B,SAAS,EAAE3B,GAAG,CAAC;IACxE,IAAIN,eAAe,EAAE;MACnBgC,UAAU,GAAG,IAAIlC,UAAU,CAACE,eAAe,EAAEoC,SAAS,CAAC;IACzD,CAAC,MAAM;MACL;MACAJ,UAAU,GAAG,CAAC,CAAC;IACjB;IACAK,0BAAqB,CAACC,gCAAgC,CAACC,qBAAqB,CAACP,UAAU,CAAC,CAAC;IACzF,OAAOA,UAAU;EACnB;AACF;AAACQ,OAAA,CAAA1C,UAAA,GAAAA,UAAA;AAAAlB,eAAA,CAxGYkB,UAAU,aAqFJ2C,kBAAW;AAAA7D,eAAA,CArFjBkB,UAAU,WAsFN,EAAE;AAAAlB,eAAA,CAtFNkB,UAAU,kBAuFC,EAAE;AAAAlB,eAAA,CAvFbkB,UAAU,YAwFL,CAAC,CAAC;AAkBpB4C,uBAAY,CAACC,UAAU,CAAC7C,UAAU,CAAC;AAEnC,eAAeS,0BAA0BA,CAACD,GAAG,GAAGsC,OAAO,CAACtC,GAAG,CAAC,CAAC,EAAwC;EACnG,MAAMuC,YAAY,GAAG,MAAM,IAAAC,oCAAgB,EAACxC,GAAG,CAAC;EAChD,MAAMyC,aAAa,GAAGF,YAAY,EAAE1C,IAAI,IAAIG,GAAG;EAC/C,MAAMI,SAAS,GAAG,IAAAsC,6BAAa,EAACD,aAAa,CAAC;EAC9C,MAAM/C,eAAe,GAAG,MAAMa,mCAAe,CAACoC,WAAW,CAACF,aAAa,EAAErC,SAAS,CAAC;EACnF,OAAOV,eAAe;AACxB;AAEA,SAASuC,qBAAqBA,CAACnC,MAAmB,EAA+B;EAC/E,OAAO,OAAO8C,OAAoB,EAAExC,SAA8B,KAAkD;IAClH,IAAIN,MAAM,EAAEJ,eAAe,IAAII,MAAM,CAACD,IAAI,IAAIA,eAAI,CAACgD,SAAS,CAACD,OAAO,CAAC,KAAK/C,eAAI,CAACiD,OAAO,CAAChD,MAAM,CAACD,IAAI,CAAC,EAAE;MACnG,OAAQC,MAAM,CAACA,MAAM,CAAqBsB,QAAQ,CAAC,CAAC;IACtD;IACA,MAAM2B,SAAS,GAAG,MAAMxC,mCAAe,CAACoC,WAAW,CAACC,OAAO,EAAExC,SAAS,CAAC;IACvE,IAAI2C,SAAS,EAAE;MACb,OAAOA,SAAS,CAAC3B,QAAQ,CAAC,CAAC;IAC7B;IACA,OAAOU,SAAS;EAClB,CAAC;AACH","ignoreList":[]}
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 { ExtensionDataEntry, ExtensionDataList } from '@teambit/legacy.extension-data';\nimport {\n ILegacyWorkspaceConfig,\n LegacyWorkspaceConfig,\n WorkspaceConfigLoadFunction,\n} from '@teambit/legacy.consumer-config';\nimport { PathOsBased, PathOsBasedAbsolute } from '@teambit/legacy.utils';\nimport { findScopePath } from '@teambit/scope.modules.find-scope-path';\nimport { MainRuntime } from '@teambit/cli';\nimport { GlobalConfig, Harmony } from '@teambit/harmony';\nimport path from 'path';\nimport { WorkspaceConfig, WorkspaceConfigFileProps, WorkspaceExtensionProps } from './workspace-config';\nimport { 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,6 +1,6 @@
1
1
  import { ComponentID } from '@teambit/component-id';
2
2
  import { AbstractVinyl } from '@teambit/component.sources';
3
- import { ILegacyWorkspaceConfig } from '@teambit/legacy/dist/consumer/config';
3
+ import { ILegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';
4
4
  import { ExtensionDataList } from '@teambit/legacy.extension-data';
5
5
  import { PathOsBased, PathOsBasedAbsolute } from '@teambit/legacy.utils';
6
6
  import { CommentJSONValue } from 'comment-json';
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.WorkspaceConfig = void 0;
7
7
  exports.getWorkspaceConfigTemplateParsed = getWorkspaceConfigTemplateParsed;
8
8
  exports.stringifyWorkspaceConfig = stringifyWorkspaceConfig;
9
- function _constants() {
10
- const data = require("@teambit/legacy/dist/constants");
11
- _constants = function () {
9
+ function _legacy() {
10
+ const data = require("@teambit/legacy.constants");
11
+ _legacy = function () {
12
12
  return data;
13
13
  };
14
14
  return data;
@@ -20,30 +20,30 @@ function _component() {
20
20
  };
21
21
  return data;
22
22
  }
23
- function _legacy() {
24
- const data = require("@teambit/legacy.extension-data");
25
- _legacy = function () {
23
+ function _legacy2() {
24
+ const data = require("@teambit/legacy.consumer-config");
25
+ _legacy2 = function () {
26
26
  return data;
27
27
  };
28
28
  return data;
29
29
  }
30
- function _workspaceConfig() {
31
- const data = _interopRequireDefault(require("@teambit/legacy/dist/consumer/config/workspace-config"));
32
- _workspaceConfig = function () {
30
+ function _legacy3() {
31
+ const data = require("@teambit/legacy.extension-data");
32
+ _legacy3 = function () {
33
33
  return data;
34
34
  };
35
35
  return data;
36
36
  }
37
- function _logger() {
38
- const data = _interopRequireDefault(require("@teambit/legacy/dist/logger/logger"));
39
- _logger = function () {
37
+ function _legacy4() {
38
+ const data = require("@teambit/legacy.logger");
39
+ _legacy4 = function () {
40
40
  return data;
41
41
  };
42
42
  return data;
43
43
  }
44
- function _consumer() {
45
- const data = require("@teambit/legacy/dist/consumer/consumer");
46
- _consumer = function () {
44
+ function _legacy5() {
45
+ const data = require("@teambit/legacy.consumer");
46
+ _legacy5 = function () {
47
47
  return data;
48
48
  };
49
49
  return data;
@@ -97,9 +97,9 @@ function _invalidConfigFile() {
97
97
  };
98
98
  return data;
99
99
  }
100
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
100
101
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
101
102
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
102
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
103
103
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
104
104
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
105
105
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
@@ -128,7 +128,7 @@ class WorkspaceConfig {
128
128
  }
129
129
  loadExtensions() {
130
130
  const withoutInternalConfig = (0, _lodash().omit)(this.raw, INTERNAL_CONFIG_PROPS);
131
- this._extensions = _legacy().ExtensionDataList.fromConfigObject(withoutInternalConfig);
131
+ this._extensions = _legacy3().ExtensionDataList.fromConfigObject(withoutInternalConfig);
132
132
  }
133
133
  extension(extensionId, ignoreVersion) {
134
134
  const existing = this.extensions.findExtension(extensionId, ignoreVersion);
@@ -249,7 +249,7 @@ class WorkspaceConfig {
249
249
  static async reset(dirPath, resetHard) {
250
250
  const workspaceJsoncPath = WorkspaceConfig.composeWorkspaceJsoncPath(dirPath);
251
251
  if (resetHard && workspaceJsoncPath) {
252
- _logger().default.info(`deleting the consumer workspace.jsonc file at ${workspaceJsoncPath}`);
252
+ _legacy4().logger.info(`deleting the consumer workspace.jsonc file at ${workspaceJsoncPath}`);
253
253
  await fs().remove(workspaceJsoncPath);
254
254
  }
255
255
  }
@@ -263,7 +263,7 @@ class WorkspaceConfig {
263
263
  * @memberof WorkspaceConfig
264
264
  */
265
265
  static composeWorkspaceJsoncPath(dirPath) {
266
- return path().join(dirPath, _constants().WORKSPACE_JSONC);
266
+ return path().join(dirPath, _legacy().WORKSPACE_JSONC);
267
267
  }
268
268
  static async pathHasWorkspaceJsonc(dirPath) {
269
269
  const isExist = await fs().pathExists(WorkspaceConfig.composeWorkspaceJsoncPath(dirPath));
@@ -279,7 +279,7 @@ class WorkspaceConfig {
279
279
  if (jsoncExist) {
280
280
  return true;
281
281
  }
282
- return _workspaceConfig().default._isExist(dirPath);
282
+ return _legacy2().LegacyWorkspaceConfig._isExist(dirPath);
283
283
  }
284
284
 
285
285
  /**
@@ -328,13 +328,13 @@ class WorkspaceConfig {
328
328
  }
329
329
  async backupConfigFile(reasonForChange) {
330
330
  if (!this.scopePath) {
331
- _logger().default.error(`unable to backup workspace.jsonc file without scope path`);
331
+ _legacy4().logger.error(`unable to backup workspace.jsonc file without scope path`);
332
332
  return;
333
333
  }
334
334
  try {
335
335
  const baseDir = this.getBackupHistoryDir();
336
336
  await fs().ensureDir(baseDir);
337
- const fileId = (0, _consumer().currentDateAndTimeToFileName)();
337
+ const fileId = (0, _legacy5().currentDateAndTimeToFileName)();
338
338
  const backupPath = path().join(baseDir, fileId);
339
339
  await fs().copyFile(this._path, backupPath);
340
340
  const metadataFile = this.getBackupMetadataFilePath();
@@ -342,7 +342,7 @@ class WorkspaceConfig {
342
342
  } catch (err) {
343
343
  if (err.code === 'ENOENT') return; // no such file or directory, meaning the .bitmap file doesn't exist (yet)
344
344
  // it's a nice to have feature. don't kill the process if something goes wrong.
345
- _logger().default.error(`failed to backup workspace.jsonc`, err);
345
+ _legacy4().logger.error(`failed to backup workspace.jsonc`, err);
346
346
  }
347
347
  }
348
348
  getBackupDir() {
@@ -388,7 +388,7 @@ class WorkspaceConfig {
388
388
  componentsDefaultDirectory = `${componentsDefaultDirectory}/{name}`;
389
389
  }
390
390
  return {
391
- lang: _constants().DEFAULT_LANGUAGE,
391
+ lang: _legacy().DEFAULT_LANGUAGE,
392
392
  defaultScope: this.extension('teambit.workspace/workspace', true)?.defaultScope,
393
393
  _useWorkspaces: this.extension('teambit.dependencies/dependency-resolver', true)?.useWorkspaces,
394
394
  dependencyResolver: this.extension('teambit.dependencies/dependency-resolver', true),
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","data","require","_component","_legacy","_workspaceConfig","_interopRequireDefault","_logger","_consumer","_commentJson","fs","_interopRequireWildcard","path","_lodash","_workspace","_exceptions","_invalidConfigFile","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","INTERNAL_CONFIG_PROPS","WorkspaceConfig","constructor","_path","scopePath","raw","loadExtensions","extensions","_extensions","extensionsIds","omit","withoutInternalConfig","ExtensionDataList","fromConfigObject","extension","extensionId","ignoreVersion","existing","findExtension","config","setExtension","options","mergeIntoExisting","overrideExisting","ExtensionAlreadyConfigured","renameExtensionInRaw","oldExtId","newExtId","isChanged","generatorEnvs","envs","includes","splice","indexOf","removeExtension","extCompId","extId","toStringWithoutVersion","existingKey","getExistingKeyIgnoreVersion","id","idStr","find","key","startsWith","fromObject","workspaceJsoncPath","create","props","dirPath","generator","template","getWorkspaceConfigTemplateParsed","workspaceAspectConf","assign","WorkspaceAspect","merged","generators","split","map","g","trim","composeWorkspaceJsoncPath","ensure","workspaceConfigProps","workspaceConfig","loadIfExist","err","InvalidConfigFile","reset","resetHard","logger","info","remove","join","WORKSPACE_JSONC","pathHasWorkspaceJsonc","isExist","pathExists","jsoncExist","LegacyWorkspaceConfig","_isExist","jsoncPath","instance","_loadFromWorkspaceJsonc","undefined","contentBuffer","readFile","parsed","parse","toString","write","dir","reasonForChange","getCalculatedDir","dirname","calculatedDir","files","toVinyl","dataToPersist","DataToPersist","addManyFiles","backupConfigFile","persistAllToFS","error","baseDir","getBackupHistoryDir","ensureDir","fileId","currentDateAndTimeToFileName","backupPath","copyFile","metadataFile","getBackupMetadataFilePath","appendFile","code","getBackupDir","Error","getParsedHistoryMetadata","fileContent","lines","metadata","line","reason","workspaceDir","jsonStr","stringify","base","fullPath","jsonFile","AbstractVinyl","contents","Buffer","from","toLegacy","componentsDefaultDirectory","defaultDirectory","lang","DEFAULT_LANGUAGE","defaultScope","_useWorkspaces","useWorkspaces","dependencyResolver","packageManager","_manageWorkspaces","manageWorkspaces","toConfigObject","isLegacy","bind","_legacyPlainObject","exports","__dirname","stringifyWorkspaceConfig"],"sources":["workspace-config.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport { DEFAULT_LANGUAGE, WORKSPACE_JSONC } from '@teambit/legacy/dist/constants';\nimport { AbstractVinyl, DataToPersist } from '@teambit/component.sources';\nimport { ILegacyWorkspaceConfig } from '@teambit/legacy/dist/consumer/config';\nimport { ExtensionDataList } from '@teambit/legacy.extension-data';\nimport LegacyWorkspaceConfig from '@teambit/legacy/dist/consumer/config/workspace-config';\nimport logger from '@teambit/legacy/dist/logger/logger';\nimport { PathOsBased, PathOsBasedAbsolute } from '@teambit/legacy.utils';\nimport { currentDateAndTimeToFileName } from '@teambit/legacy/dist/consumer/consumer';\nimport { assign, parse, stringify, CommentJSONValue } from 'comment-json';\nimport * as fs from 'fs-extra';\nimport * as path from 'path';\nimport { omit } from 'lodash';\nimport { WorkspaceAspect } from '@teambit/workspace';\nimport { SetExtensionOptions } from './config.main.runtime';\nimport { ExtensionAlreadyConfigured } from './exceptions';\nimport InvalidConfigFile from './exceptions/invalid-config-file';\nimport { HostConfig } from './types';\n\nconst INTERNAL_CONFIG_PROPS = ['$schema', '$schemaVersion', 'require'];\n\nexport type LegacyInitProps = {\n standAlone?: boolean;\n};\n\nexport type WorkspaceConfigFileProps = {\n // TODO: make it no optional\n $schema?: string;\n $schemaVersion?: string;\n} & WorkspaceSettingsNewProps;\n\nexport type ComponentScopeDirMapEntry = {\n defaultScope?: string;\n directory: string;\n};\n\nexport type ComponentScopeDirMap = Array<ComponentScopeDirMapEntry>;\n\nexport type WorkspaceExtensionProps = {\n name?: string;\n defaultScope?: string;\n defaultDirectory?: string;\n components?: ComponentScopeDirMap;\n};\n\nexport type PackageManagerClients = 'npm' | 'yarn' | undefined;\n\nexport interface DependencyResolverExtensionProps {\n packageManager: PackageManagerClients;\n strictPeerDependencies?: boolean;\n extraArgs?: string[];\n packageManagerProcessOptions?: any;\n useWorkspaces?: boolean;\n manageWorkspaces?: boolean;\n}\n\nexport type WorkspaceSettingsNewProps = {\n 'teambit.workspace/workspace': WorkspaceExtensionProps;\n 'teambit.dependencies/dependency-resolver': DependencyResolverExtensionProps;\n};\n\nexport class WorkspaceConfig implements HostConfig {\n raw?: any;\n _extensions: ExtensionDataList;\n isLegacy: boolean;\n\n constructor(\n private data: WorkspaceConfigFileProps,\n private _path: PathOsBasedAbsolute,\n private scopePath?: PathOsBasedAbsolute\n ) {\n this.raw = data;\n this.loadExtensions();\n }\n\n get path(): PathOsBased {\n return this._path;\n }\n\n get extensions(): ExtensionDataList {\n return this._extensions;\n }\n\n get extensionsIds(): string[] {\n return Object.keys(omit(this.raw, INTERNAL_CONFIG_PROPS));\n }\n\n private loadExtensions() {\n const withoutInternalConfig = omit(this.raw, INTERNAL_CONFIG_PROPS);\n this._extensions = ExtensionDataList.fromConfigObject(withoutInternalConfig);\n }\n\n extension(extensionId: string, ignoreVersion: boolean): any {\n const existing = this.extensions.findExtension(extensionId, ignoreVersion);\n return existing?.config;\n }\n\n setExtension(extensionId: string, config: Record<string, any>, options: SetExtensionOptions): any {\n const existing = this.extension(extensionId, options.ignoreVersion);\n if (existing) {\n if (options.mergeIntoExisting) {\n config = { ...existing, ...config };\n } else if (!options.overrideExisting) {\n throw new ExtensionAlreadyConfigured(extensionId);\n }\n }\n\n this.raw[extensionId] = config;\n this.loadExtensions();\n }\n\n renameExtensionInRaw(oldExtId: string, newExtId: string): boolean {\n let isChanged = false;\n if (this.raw[oldExtId]) {\n this.raw[newExtId] = this.raw[oldExtId];\n delete this.raw[oldExtId];\n isChanged = true;\n }\n const generatorEnvs = this.raw?.['teambit.generator/generator']?.envs;\n if (generatorEnvs && generatorEnvs.includes(oldExtId)) {\n generatorEnvs.splice(generatorEnvs.indexOf(oldExtId), 1, newExtId);\n isChanged = true;\n }\n return isChanged;\n }\n\n removeExtension(extCompId: ComponentID): boolean {\n const extId = extCompId.toStringWithoutVersion();\n let isChanged = false;\n const existingKey = this.getExistingKeyIgnoreVersion(extCompId);\n if (existingKey) {\n delete this.raw[existingKey];\n isChanged = true;\n }\n const generatorEnvs = this.raw?.['teambit.generator/generator']?.envs;\n if (generatorEnvs && generatorEnvs.includes(extId)) {\n generatorEnvs.splice(generatorEnvs.indexOf(extId), 1);\n isChanged = true;\n }\n if (isChanged) this.loadExtensions();\n return isChanged;\n }\n\n getExistingKeyIgnoreVersion(id: ComponentID): string | undefined {\n const idStr = id.toStringWithoutVersion();\n if (this.raw[idStr]) return idStr;\n const keys = Object.keys(this.raw);\n return keys.find((key) => key.startsWith(`${idStr}@`));\n }\n\n /**\n * Create an instance of the WorkspaceConfig by data\n *\n * @static\n * @param {WorkspaceConfigFileProps} data\n * @returns\n * @memberof WorkspaceConfig\n */\n static fromObject(data: WorkspaceConfigFileProps, workspaceJsoncPath: PathOsBased, scopePath?: PathOsBasedAbsolute) {\n return new WorkspaceConfig(data, workspaceJsoncPath, scopePath);\n }\n\n /**\n * Create an instance of the WorkspaceConfig by the workspace config template and override values\n *\n * @static\n * @param {WorkspaceConfigFileProps} data values to override in the default template\n * @returns\n * @memberof WorkspaceConfig\n */\n static async create(\n props: WorkspaceConfigFileProps,\n dirPath: PathOsBasedAbsolute,\n scopePath: PathOsBasedAbsolute,\n generator?: string\n ) {\n const template = await getWorkspaceConfigTemplateParsed();\n // previously, we just did `assign(template, props)`, but it was replacing the entire workspace config with the \"props\".\n // so for example, if the props only had defaultScope, it was removing the defaultDirectory.\n const workspaceAspectConf = assign(template[WorkspaceAspect.id], props[WorkspaceAspect.id]);\n const merged = assign(template, { [WorkspaceAspect.id]: workspaceAspectConf });\n if (generator) {\n const generators = generator.split(',').map((g) => g.trim());\n merged['teambit.generator/generator'] = { envs: generators };\n }\n return new WorkspaceConfig(merged, WorkspaceConfig.composeWorkspaceJsoncPath(dirPath), scopePath);\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} dirPath\n * @param {WorkspaceConfigFileProps} [workspaceConfigProps={} as any]\n * @returns {Promise<WorkspaceConfig>}\n * @memberof WorkspaceConfig\n */\n static async ensure(\n dirPath: PathOsBasedAbsolute,\n scopePath: PathOsBasedAbsolute,\n workspaceConfigProps: WorkspaceConfigFileProps = {} as any,\n generator?: string\n ): Promise<WorkspaceConfig> {\n try {\n let workspaceConfig = await this.loadIfExist(dirPath, scopePath);\n if (workspaceConfig) {\n return workspaceConfig;\n }\n workspaceConfig = await this.create(workspaceConfigProps, dirPath, scopePath, generator);\n return workspaceConfig;\n } catch (err: any) {\n if (err instanceof InvalidConfigFile) {\n const workspaceConfig = this.create(workspaceConfigProps, dirPath, scopePath, generator);\n return workspaceConfig;\n }\n throw err;\n }\n }\n\n static async reset(dirPath: PathOsBasedAbsolute, resetHard: boolean): Promise<void> {\n const workspaceJsoncPath = WorkspaceConfig.composeWorkspaceJsoncPath(dirPath);\n if (resetHard && workspaceJsoncPath) {\n logger.info(`deleting the consumer workspace.jsonc file at ${workspaceJsoncPath}`);\n await fs.remove(workspaceJsoncPath);\n }\n }\n\n /**\n * Get the path of the workspace.jsonc file by a containing folder\n *\n * @static\n * @param {PathOsBased} dirPath containing dir of the workspace.jsonc file\n * @returns {PathOsBased}\n * @memberof WorkspaceConfig\n */\n static composeWorkspaceJsoncPath(dirPath: PathOsBased): PathOsBased {\n return path.join(dirPath, WORKSPACE_JSONC);\n }\n\n static async pathHasWorkspaceJsonc(dirPath: PathOsBased): Promise<boolean> {\n const isExist = await fs.pathExists(WorkspaceConfig.composeWorkspaceJsoncPath(dirPath));\n return isExist;\n }\n\n /**\n * Check if the given dir has workspace config (new or legacy)\n * @param dirPath\n */\n static async isExist(dirPath: PathOsBased): Promise<boolean | undefined> {\n const jsoncExist = await WorkspaceConfig.pathHasWorkspaceJsonc(dirPath);\n if (jsoncExist) {\n return true;\n }\n return LegacyWorkspaceConfig._isExist(dirPath);\n }\n\n /**\n * Load the workspace configuration if it's exist\n *\n * @static\n * @param {PathOsBased} dirPath\n * @returns {(Promise<WorkspaceConfig | undefined>)}\n * @memberof WorkspaceConfig\n */\n static async loadIfExist(\n dirPath: PathOsBased,\n scopePath?: PathOsBasedAbsolute\n ): Promise<WorkspaceConfig | undefined> {\n const jsoncExist = await WorkspaceConfig.pathHasWorkspaceJsonc(dirPath);\n if (jsoncExist) {\n const jsoncPath = WorkspaceConfig.composeWorkspaceJsoncPath(dirPath);\n const instance = await WorkspaceConfig._loadFromWorkspaceJsonc(jsoncPath, scopePath);\n return instance;\n }\n return undefined;\n }\n\n static async _loadFromWorkspaceJsonc(workspaceJsoncPath: PathOsBased, scopePath?: string): Promise<WorkspaceConfig> {\n const contentBuffer = await fs.readFile(workspaceJsoncPath);\n let parsed;\n try {\n parsed = parse(contentBuffer.toString());\n } catch (e: any) {\n throw new InvalidConfigFile(workspaceJsoncPath);\n }\n return WorkspaceConfig.fromObject(parsed, workspaceJsoncPath, scopePath);\n }\n\n async write({ dir, reasonForChange }: { dir?: PathOsBasedAbsolute; reasonForChange?: string } = {}): Promise<void> {\n const getCalculatedDir = () => {\n if (dir) return dir;\n return path.dirname(this._path);\n };\n const calculatedDir = getCalculatedDir();\n const files = await this.toVinyl(calculatedDir);\n const dataToPersist = new DataToPersist();\n if (files) {\n dataToPersist.addManyFiles(files);\n await this.backupConfigFile(reasonForChange);\n await dataToPersist.persistAllToFS();\n }\n }\n\n async backupConfigFile(reasonForChange?: string) {\n if (!this.scopePath) {\n logger.error(`unable to backup workspace.jsonc file without scope path`);\n return;\n }\n try {\n const baseDir = this.getBackupHistoryDir();\n await fs.ensureDir(baseDir);\n const fileId = currentDateAndTimeToFileName();\n const backupPath = path.join(baseDir, fileId);\n await fs.copyFile(this._path, backupPath);\n const metadataFile = this.getBackupMetadataFilePath();\n await fs.appendFile(metadataFile, `${fileId} ${reasonForChange || ''}\\n`);\n } catch (err: any) {\n if (err.code === 'ENOENT') return; // no such file or directory, meaning the .bitmap file doesn't exist (yet)\n // it's a nice to have feature. don't kill the process if something goes wrong.\n logger.error(`failed to backup workspace.jsonc`, err);\n }\n }\n private getBackupDir() {\n if (!this.scopePath) throw new Error('unable to get backup dir without scope path');\n return path.join(this.scopePath, 'workspace-config-history');\n }\n getBackupHistoryDir() {\n return path.join(this.getBackupDir(), 'files');\n }\n getBackupMetadataFilePath() {\n return path.join(this.getBackupDir(), 'metadata.txt');\n }\n private async getParsedHistoryMetadata(): Promise<{ [fileId: string]: string }> {\n let fileContent: string | undefined;\n try {\n fileContent = await fs.readFile(this.getBackupMetadataFilePath(), 'utf-8');\n } catch (err: any) {\n if (err.code === 'ENOENT') return {}; // no such file or directory, meaning the history-metadata file doesn't exist (yet)\n }\n const lines = fileContent?.split('\\n') || [];\n const metadata = {};\n lines.forEach((line) => {\n const [fileId, ...reason] = line.split(' ');\n if (!fileId) return;\n metadata[fileId] = reason.join(' ');\n });\n return metadata;\n }\n\n async toVinyl(workspaceDir: PathOsBasedAbsolute): Promise<AbstractVinyl[] | undefined> {\n const jsonStr = `${stringify(this.data, undefined, 2)}\\n`;\n const base = workspaceDir;\n const fullPath = workspaceDir ? WorkspaceConfig.composeWorkspaceJsoncPath(workspaceDir) : this.path;\n const jsonFile = new AbstractVinyl({ base, path: fullPath, contents: Buffer.from(jsonStr) });\n return [jsonFile];\n }\n\n toLegacy(): ILegacyWorkspaceConfig {\n let componentsDefaultDirectory = this.extension('teambit.workspace/workspace', true)?.defaultDirectory;\n if (componentsDefaultDirectory && !componentsDefaultDirectory.includes('{name}')) {\n componentsDefaultDirectory = `${componentsDefaultDirectory}/{name}`;\n }\n\n return {\n lang: DEFAULT_LANGUAGE,\n defaultScope: this.extension('teambit.workspace/workspace', true)?.defaultScope,\n _useWorkspaces: this.extension('teambit.dependencies/dependency-resolver', true)?.useWorkspaces,\n dependencyResolver: this.extension('teambit.dependencies/dependency-resolver', true),\n packageManager: this.extension('teambit.dependencies/dependency-resolver', true)?.packageManager,\n componentsDefaultDirectory,\n _manageWorkspaces: this.extension('teambit.dependencies/dependency-resolver', true)?.manageWorkspaces,\n extensions: this.extensions.toConfigObject(),\n // @ts-ignore\n path: this.path,\n isLegacy: false,\n write: ({ workspaceDir }) => this.write.call(this, { dir: workspaceDir }),\n toVinyl: this.toVinyl.bind(this),\n _legacyPlainObject: () => undefined,\n };\n }\n}\n\nexport async function getWorkspaceConfigTemplateParsed(): Promise<CommentJSONValue> {\n let fileContent: Buffer;\n try {\n fileContent = await fs.readFile(path.join(__dirname, 'workspace-template.jsonc'));\n } catch (err: any) {\n if (err.code !== 'ENOENT') throw err;\n // when the extension is compiled by tsc, it doesn't copy .jsonc files into the dists, grab it from src\n fileContent = await fs.readFile(path.join(__dirname, '..', 'workspace-template.jsonc'));\n }\n return parse(fileContent.toString());\n}\n\nexport function stringifyWorkspaceConfig(workspaceConfig: CommentJSONValue): string {\n return stringify(workspaceConfig, undefined, 2);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_legacy","data","require","_component","_legacy2","_legacy3","_legacy4","_legacy5","_commentJson","fs","_interopRequireWildcard","path","_lodash","_workspace","_exceptions","_invalidConfigFile","_interopRequireDefault","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","INTERNAL_CONFIG_PROPS","WorkspaceConfig","constructor","_path","scopePath","raw","loadExtensions","extensions","_extensions","extensionsIds","omit","withoutInternalConfig","ExtensionDataList","fromConfigObject","extension","extensionId","ignoreVersion","existing","findExtension","config","setExtension","options","mergeIntoExisting","overrideExisting","ExtensionAlreadyConfigured","renameExtensionInRaw","oldExtId","newExtId","isChanged","generatorEnvs","envs","includes","splice","indexOf","removeExtension","extCompId","extId","toStringWithoutVersion","existingKey","getExistingKeyIgnoreVersion","id","idStr","find","key","startsWith","fromObject","workspaceJsoncPath","create","props","dirPath","generator","template","getWorkspaceConfigTemplateParsed","workspaceAspectConf","assign","WorkspaceAspect","merged","generators","split","map","g","trim","composeWorkspaceJsoncPath","ensure","workspaceConfigProps","workspaceConfig","loadIfExist","err","InvalidConfigFile","reset","resetHard","logger","info","remove","join","WORKSPACE_JSONC","pathHasWorkspaceJsonc","isExist","pathExists","jsoncExist","LegacyWorkspaceConfig","_isExist","jsoncPath","instance","_loadFromWorkspaceJsonc","undefined","contentBuffer","readFile","parsed","parse","toString","write","dir","reasonForChange","getCalculatedDir","dirname","calculatedDir","files","toVinyl","dataToPersist","DataToPersist","addManyFiles","backupConfigFile","persistAllToFS","error","baseDir","getBackupHistoryDir","ensureDir","fileId","currentDateAndTimeToFileName","backupPath","copyFile","metadataFile","getBackupMetadataFilePath","appendFile","code","getBackupDir","Error","getParsedHistoryMetadata","fileContent","lines","metadata","line","reason","workspaceDir","jsonStr","stringify","base","fullPath","jsonFile","AbstractVinyl","contents","Buffer","from","toLegacy","componentsDefaultDirectory","defaultDirectory","lang","DEFAULT_LANGUAGE","defaultScope","_useWorkspaces","useWorkspaces","dependencyResolver","packageManager","_manageWorkspaces","manageWorkspaces","toConfigObject","isLegacy","bind","_legacyPlainObject","exports","__dirname","stringifyWorkspaceConfig"],"sources":["workspace-config.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport { DEFAULT_LANGUAGE, WORKSPACE_JSONC } from '@teambit/legacy.constants';\nimport { AbstractVinyl, DataToPersist } from '@teambit/component.sources';\nimport { LegacyWorkspaceConfig, ILegacyWorkspaceConfig } from '@teambit/legacy.consumer-config';\nimport { ExtensionDataList } from '@teambit/legacy.extension-data';\nimport { logger } from '@teambit/legacy.logger';\nimport { PathOsBased, PathOsBasedAbsolute } from '@teambit/legacy.utils';\nimport { currentDateAndTimeToFileName } from '@teambit/legacy.consumer';\nimport { assign, parse, stringify, CommentJSONValue } from 'comment-json';\nimport * as fs from 'fs-extra';\nimport * as path from 'path';\nimport { omit } from 'lodash';\nimport { WorkspaceAspect } from '@teambit/workspace';\nimport { SetExtensionOptions } from './config.main.runtime';\nimport { ExtensionAlreadyConfigured } from './exceptions';\nimport InvalidConfigFile from './exceptions/invalid-config-file';\nimport { HostConfig } from './types';\n\nconst INTERNAL_CONFIG_PROPS = ['$schema', '$schemaVersion', 'require'];\n\nexport type LegacyInitProps = {\n standAlone?: boolean;\n};\n\nexport type WorkspaceConfigFileProps = {\n // TODO: make it no optional\n $schema?: string;\n $schemaVersion?: string;\n} & WorkspaceSettingsNewProps;\n\nexport type ComponentScopeDirMapEntry = {\n defaultScope?: string;\n directory: string;\n};\n\nexport type ComponentScopeDirMap = Array<ComponentScopeDirMapEntry>;\n\nexport type WorkspaceExtensionProps = {\n name?: string;\n defaultScope?: string;\n defaultDirectory?: string;\n components?: ComponentScopeDirMap;\n};\n\nexport type PackageManagerClients = 'npm' | 'yarn' | undefined;\n\nexport interface DependencyResolverExtensionProps {\n packageManager: PackageManagerClients;\n strictPeerDependencies?: boolean;\n extraArgs?: string[];\n packageManagerProcessOptions?: any;\n useWorkspaces?: boolean;\n manageWorkspaces?: boolean;\n}\n\nexport type WorkspaceSettingsNewProps = {\n 'teambit.workspace/workspace': WorkspaceExtensionProps;\n 'teambit.dependencies/dependency-resolver': DependencyResolverExtensionProps;\n};\n\nexport class WorkspaceConfig implements HostConfig {\n raw?: any;\n _extensions: ExtensionDataList;\n isLegacy: boolean;\n\n constructor(\n private data: WorkspaceConfigFileProps,\n private _path: PathOsBasedAbsolute,\n private scopePath?: PathOsBasedAbsolute\n ) {\n this.raw = data;\n this.loadExtensions();\n }\n\n get path(): PathOsBased {\n return this._path;\n }\n\n get extensions(): ExtensionDataList {\n return this._extensions;\n }\n\n get extensionsIds(): string[] {\n return Object.keys(omit(this.raw, INTERNAL_CONFIG_PROPS));\n }\n\n private loadExtensions() {\n const withoutInternalConfig = omit(this.raw, INTERNAL_CONFIG_PROPS);\n this._extensions = ExtensionDataList.fromConfigObject(withoutInternalConfig);\n }\n\n extension(extensionId: string, ignoreVersion: boolean): any {\n const existing = this.extensions.findExtension(extensionId, ignoreVersion);\n return existing?.config;\n }\n\n setExtension(extensionId: string, config: Record<string, any>, options: SetExtensionOptions): any {\n const existing = this.extension(extensionId, options.ignoreVersion);\n if (existing) {\n if (options.mergeIntoExisting) {\n config = { ...existing, ...config };\n } else if (!options.overrideExisting) {\n throw new ExtensionAlreadyConfigured(extensionId);\n }\n }\n\n this.raw[extensionId] = config;\n this.loadExtensions();\n }\n\n renameExtensionInRaw(oldExtId: string, newExtId: string): boolean {\n let isChanged = false;\n if (this.raw[oldExtId]) {\n this.raw[newExtId] = this.raw[oldExtId];\n delete this.raw[oldExtId];\n isChanged = true;\n }\n const generatorEnvs = this.raw?.['teambit.generator/generator']?.envs;\n if (generatorEnvs && generatorEnvs.includes(oldExtId)) {\n generatorEnvs.splice(generatorEnvs.indexOf(oldExtId), 1, newExtId);\n isChanged = true;\n }\n return isChanged;\n }\n\n removeExtension(extCompId: ComponentID): boolean {\n const extId = extCompId.toStringWithoutVersion();\n let isChanged = false;\n const existingKey = this.getExistingKeyIgnoreVersion(extCompId);\n if (existingKey) {\n delete this.raw[existingKey];\n isChanged = true;\n }\n const generatorEnvs = this.raw?.['teambit.generator/generator']?.envs;\n if (generatorEnvs && generatorEnvs.includes(extId)) {\n generatorEnvs.splice(generatorEnvs.indexOf(extId), 1);\n isChanged = true;\n }\n if (isChanged) this.loadExtensions();\n return isChanged;\n }\n\n getExistingKeyIgnoreVersion(id: ComponentID): string | undefined {\n const idStr = id.toStringWithoutVersion();\n if (this.raw[idStr]) return idStr;\n const keys = Object.keys(this.raw);\n return keys.find((key) => key.startsWith(`${idStr}@`));\n }\n\n /**\n * Create an instance of the WorkspaceConfig by data\n *\n * @static\n * @param {WorkspaceConfigFileProps} data\n * @returns\n * @memberof WorkspaceConfig\n */\n static fromObject(data: WorkspaceConfigFileProps, workspaceJsoncPath: PathOsBased, scopePath?: PathOsBasedAbsolute) {\n return new WorkspaceConfig(data, workspaceJsoncPath, scopePath);\n }\n\n /**\n * Create an instance of the WorkspaceConfig by the workspace config template and override values\n *\n * @static\n * @param {WorkspaceConfigFileProps} data values to override in the default template\n * @returns\n * @memberof WorkspaceConfig\n */\n static async create(\n props: WorkspaceConfigFileProps,\n dirPath: PathOsBasedAbsolute,\n scopePath: PathOsBasedAbsolute,\n generator?: string\n ) {\n const template = await getWorkspaceConfigTemplateParsed();\n // previously, we just did `assign(template, props)`, but it was replacing the entire workspace config with the \"props\".\n // so for example, if the props only had defaultScope, it was removing the defaultDirectory.\n const workspaceAspectConf = assign(template[WorkspaceAspect.id], props[WorkspaceAspect.id]);\n const merged = assign(template, { [WorkspaceAspect.id]: workspaceAspectConf });\n if (generator) {\n const generators = generator.split(',').map((g) => g.trim());\n merged['teambit.generator/generator'] = { envs: generators };\n }\n return new WorkspaceConfig(merged, WorkspaceConfig.composeWorkspaceJsoncPath(dirPath), scopePath);\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} dirPath\n * @param {WorkspaceConfigFileProps} [workspaceConfigProps={} as any]\n * @returns {Promise<WorkspaceConfig>}\n * @memberof WorkspaceConfig\n */\n static async ensure(\n dirPath: PathOsBasedAbsolute,\n scopePath: PathOsBasedAbsolute,\n workspaceConfigProps: WorkspaceConfigFileProps = {} as any,\n generator?: string\n ): Promise<WorkspaceConfig> {\n try {\n let workspaceConfig = await this.loadIfExist(dirPath, scopePath);\n if (workspaceConfig) {\n return workspaceConfig;\n }\n workspaceConfig = await this.create(workspaceConfigProps, dirPath, scopePath, generator);\n return workspaceConfig;\n } catch (err: any) {\n if (err instanceof InvalidConfigFile) {\n const workspaceConfig = this.create(workspaceConfigProps, dirPath, scopePath, generator);\n return workspaceConfig;\n }\n throw err;\n }\n }\n\n static async reset(dirPath: PathOsBasedAbsolute, resetHard: boolean): Promise<void> {\n const workspaceJsoncPath = WorkspaceConfig.composeWorkspaceJsoncPath(dirPath);\n if (resetHard && workspaceJsoncPath) {\n logger.info(`deleting the consumer workspace.jsonc file at ${workspaceJsoncPath}`);\n await fs.remove(workspaceJsoncPath);\n }\n }\n\n /**\n * Get the path of the workspace.jsonc file by a containing folder\n *\n * @static\n * @param {PathOsBased} dirPath containing dir of the workspace.jsonc file\n * @returns {PathOsBased}\n * @memberof WorkspaceConfig\n */\n static composeWorkspaceJsoncPath(dirPath: PathOsBased): PathOsBased {\n return path.join(dirPath, WORKSPACE_JSONC);\n }\n\n static async pathHasWorkspaceJsonc(dirPath: PathOsBased): Promise<boolean> {\n const isExist = await fs.pathExists(WorkspaceConfig.composeWorkspaceJsoncPath(dirPath));\n return isExist;\n }\n\n /**\n * Check if the given dir has workspace config (new or legacy)\n * @param dirPath\n */\n static async isExist(dirPath: PathOsBased): Promise<boolean | undefined> {\n const jsoncExist = await WorkspaceConfig.pathHasWorkspaceJsonc(dirPath);\n if (jsoncExist) {\n return true;\n }\n return LegacyWorkspaceConfig._isExist(dirPath);\n }\n\n /**\n * Load the workspace configuration if it's exist\n *\n * @static\n * @param {PathOsBased} dirPath\n * @returns {(Promise<WorkspaceConfig | undefined>)}\n * @memberof WorkspaceConfig\n */\n static async loadIfExist(\n dirPath: PathOsBased,\n scopePath?: PathOsBasedAbsolute\n ): Promise<WorkspaceConfig | undefined> {\n const jsoncExist = await WorkspaceConfig.pathHasWorkspaceJsonc(dirPath);\n if (jsoncExist) {\n const jsoncPath = WorkspaceConfig.composeWorkspaceJsoncPath(dirPath);\n const instance = await WorkspaceConfig._loadFromWorkspaceJsonc(jsoncPath, scopePath);\n return instance;\n }\n return undefined;\n }\n\n static async _loadFromWorkspaceJsonc(workspaceJsoncPath: PathOsBased, scopePath?: string): Promise<WorkspaceConfig> {\n const contentBuffer = await fs.readFile(workspaceJsoncPath);\n let parsed;\n try {\n parsed = parse(contentBuffer.toString());\n } catch (e: any) {\n throw new InvalidConfigFile(workspaceJsoncPath);\n }\n return WorkspaceConfig.fromObject(parsed, workspaceJsoncPath, scopePath);\n }\n\n async write({ dir, reasonForChange }: { dir?: PathOsBasedAbsolute; reasonForChange?: string } = {}): Promise<void> {\n const getCalculatedDir = () => {\n if (dir) return dir;\n return path.dirname(this._path);\n };\n const calculatedDir = getCalculatedDir();\n const files = await this.toVinyl(calculatedDir);\n const dataToPersist = new DataToPersist();\n if (files) {\n dataToPersist.addManyFiles(files);\n await this.backupConfigFile(reasonForChange);\n await dataToPersist.persistAllToFS();\n }\n }\n\n async backupConfigFile(reasonForChange?: string) {\n if (!this.scopePath) {\n logger.error(`unable to backup workspace.jsonc file without scope path`);\n return;\n }\n try {\n const baseDir = this.getBackupHistoryDir();\n await fs.ensureDir(baseDir);\n const fileId = currentDateAndTimeToFileName();\n const backupPath = path.join(baseDir, fileId);\n await fs.copyFile(this._path, backupPath);\n const metadataFile = this.getBackupMetadataFilePath();\n await fs.appendFile(metadataFile, `${fileId} ${reasonForChange || ''}\\n`);\n } catch (err: any) {\n if (err.code === 'ENOENT') return; // no such file or directory, meaning the .bitmap file doesn't exist (yet)\n // it's a nice to have feature. don't kill the process if something goes wrong.\n logger.error(`failed to backup workspace.jsonc`, err);\n }\n }\n private getBackupDir() {\n if (!this.scopePath) throw new Error('unable to get backup dir without scope path');\n return path.join(this.scopePath, 'workspace-config-history');\n }\n getBackupHistoryDir() {\n return path.join(this.getBackupDir(), 'files');\n }\n getBackupMetadataFilePath() {\n return path.join(this.getBackupDir(), 'metadata.txt');\n }\n private async getParsedHistoryMetadata(): Promise<{ [fileId: string]: string }> {\n let fileContent: string | undefined;\n try {\n fileContent = await fs.readFile(this.getBackupMetadataFilePath(), 'utf-8');\n } catch (err: any) {\n if (err.code === 'ENOENT') return {}; // no such file or directory, meaning the history-metadata file doesn't exist (yet)\n }\n const lines = fileContent?.split('\\n') || [];\n const metadata = {};\n lines.forEach((line) => {\n const [fileId, ...reason] = line.split(' ');\n if (!fileId) return;\n metadata[fileId] = reason.join(' ');\n });\n return metadata;\n }\n\n async toVinyl(workspaceDir: PathOsBasedAbsolute): Promise<AbstractVinyl[] | undefined> {\n const jsonStr = `${stringify(this.data, undefined, 2)}\\n`;\n const base = workspaceDir;\n const fullPath = workspaceDir ? WorkspaceConfig.composeWorkspaceJsoncPath(workspaceDir) : this.path;\n const jsonFile = new AbstractVinyl({ base, path: fullPath, contents: Buffer.from(jsonStr) });\n return [jsonFile];\n }\n\n toLegacy(): ILegacyWorkspaceConfig {\n let componentsDefaultDirectory = this.extension('teambit.workspace/workspace', true)?.defaultDirectory;\n if (componentsDefaultDirectory && !componentsDefaultDirectory.includes('{name}')) {\n componentsDefaultDirectory = `${componentsDefaultDirectory}/{name}`;\n }\n\n return {\n lang: DEFAULT_LANGUAGE,\n defaultScope: this.extension('teambit.workspace/workspace', true)?.defaultScope,\n _useWorkspaces: this.extension('teambit.dependencies/dependency-resolver', true)?.useWorkspaces,\n dependencyResolver: this.extension('teambit.dependencies/dependency-resolver', true),\n packageManager: this.extension('teambit.dependencies/dependency-resolver', true)?.packageManager,\n componentsDefaultDirectory,\n _manageWorkspaces: this.extension('teambit.dependencies/dependency-resolver', true)?.manageWorkspaces,\n extensions: this.extensions.toConfigObject(),\n // @ts-ignore\n path: this.path,\n isLegacy: false,\n write: ({ workspaceDir }) => this.write.call(this, { dir: workspaceDir }),\n toVinyl: this.toVinyl.bind(this),\n _legacyPlainObject: () => undefined,\n };\n }\n}\n\nexport async function getWorkspaceConfigTemplateParsed(): Promise<CommentJSONValue> {\n let fileContent: Buffer;\n try {\n fileContent = await fs.readFile(path.join(__dirname, 'workspace-template.jsonc'));\n } catch (err: any) {\n if (err.code !== 'ENOENT') throw err;\n // when the extension is compiled by tsc, it doesn't copy .jsonc files into the dists, grab it from src\n fileContent = await fs.readFile(path.join(__dirname, '..', 'workspace-template.jsonc'));\n }\n return parse(fileContent.toString());\n}\n\nexport function stringifyWorkspaceConfig(workspaceConfig: CommentJSONValue): string {\n return stringify(workspaceConfig, undefined, 2);\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/config",
3
- "version": "0.0.1238",
3
+ "version": "0.0.1240",
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.1238"
9
+ "version": "0.0.1240"
10
10
  },
11
11
  "dependencies": {
12
12
  "comment-json": "3.0.3",
@@ -14,16 +14,20 @@
14
14
  "lodash": "4.17.21",
15
15
  "chalk": "2.4.2",
16
16
  "@teambit/harmony": "0.4.6",
17
- "@teambit/scope.modules.find-scope-path": "0.0.1",
18
17
  "@teambit/component-id": "1.2.2",
19
18
  "@teambit/bit-error": "0.0.404",
20
- "@teambit/cli": "0.0.1064",
21
- "@teambit/legacy.extension-data": "0.0.2",
22
- "@teambit/legacy.utils": "0.0.7",
23
- "@teambit/workspace.modules.workspace-locator": "0.0.1",
24
- "@teambit/toolbox.path.path": "0.0.4",
25
- "@teambit/component.sources": "0.0.52",
26
- "@teambit/workspace": "1.0.487"
19
+ "@teambit/cli": "0.0.1066",
20
+ "@teambit/legacy.consumer-config": "0.0.2",
21
+ "@teambit/legacy.extension-data": "0.0.4",
22
+ "@teambit/legacy.utils": "0.0.9",
23
+ "@teambit/scope.modules.find-scope-path": "0.0.3",
24
+ "@teambit/workspace.modules.workspace-locator": "0.0.3",
25
+ "@teambit/toolbox.path.path": "0.0.5",
26
+ "@teambit/component.sources": "0.0.54",
27
+ "@teambit/legacy.constants": "0.0.2",
28
+ "@teambit/legacy.consumer": "0.0.2",
29
+ "@teambit/legacy.logger": "0.0.2",
30
+ "@teambit/workspace": "1.0.489"
27
31
  },
28
32
  "devDependencies": {
29
33
  "@types/fs-extra": "9.0.7",