bit-bin
Version:
<a href="https://opensource.org/licenses/Apache-2.0"><img alt="apache" src="https://img.shields.io/badge/License-Apache%202.0-blue.svg"></a> <a href="https://github.com/teambit/bit/blob/master/CONTRIBUTING.md"><img alt="prs" src="https://img.shields.io/b
90 lines (89 loc) • 4.58 kB
TypeScript
import LegacyWorkspaceConfig, { WorkspaceConfigProps as LegacyWorkspaceConfigProps } from '../../consumer/config/workspace-config';
import ConsumerOverrides, { ConsumerOverridesOfComponent } from '../../consumer/config/consumer-overrides';
import { PathOsBased, PathOsBasedAbsolute } from '../../utils/path';
import { AbstractVinyl } from '../../consumer/component/sources';
import { ILegacyWorkspaceConfig, ExtensionConfigList } from '../../consumer/config';
import { ResolveModulesConfig } from '../../consumer/component/dependencies/files-dependency-builder/types/dependency-tree-type';
import { HostConfig } from './types';
import { BitId } from '../../bit-id';
export declare type ComponentsConfigFn = () => ConsumerOverrides;
export declare type ComponentConfigFn = (componentId: BitId) => ConsumerOverridesOfComponent | undefined;
export declare type LegacyInitProps = {
standAlone?: boolean;
};
export declare type WorkspaceConfigFileProps = {
$schema?: string;
$schemaVersion?: string;
} & ExtensionsDefs;
export declare type ComponentScopeDirMapEntry = {
defaultScope?: string;
directory: string;
};
export declare type ComponentScopeDirMap = Array<ComponentScopeDirMapEntry>;
export declare type WorkspaceExtensionProps = {
defaultOwner?: string;
defaultScope?: string;
defaultDirectory?: string;
components?: ComponentScopeDirMap;
};
export declare type PackageManagerClients = 'npm' | 'yarn' | undefined;
export interface DependencyResolverExtensionProps {
packageManager: PackageManagerClients;
strictPeerDependencies?: boolean;
extraArgs?: string[];
packageManagerProcessOptions?: any;
useWorkspaces?: boolean;
manageWorkspaces?: boolean;
}
export declare type WorkspaceSettingsNewProps = {
'@teambit/workspace': WorkspaceExtensionProps;
'@teambit/dependency-resolver': DependencyResolverExtensionProps;
};
export declare type WorkspaceLegacyProps = {
dependenciesDirectory?: string;
bindingPrefix?: string;
resolveModules?: ResolveModulesConfig;
saveDependenciesAsComponents?: boolean;
distEntry?: string;
distTarget?: string;
};
export declare type ExtensionsDefs = WorkspaceSettingsNewProps;
export declare class WorkspaceConfig implements HostConfig {
private data?;
private legacyConfig?;
_path?: string;
_extensions: ExtensionsDefs;
_legacyProps?: WorkspaceLegacyProps;
_getVariantsConfig?: ComponentsConfigFn;
_getVariantConfig?: ComponentConfigFn;
isLegacy: boolean;
constructor(data?: WorkspaceConfigFileProps | undefined, legacyConfig?: LegacyWorkspaceConfig | undefined);
get path(): PathOsBased;
set path(configPath: PathOsBased);
get extensions(): ExtensionConfigList;
extension(extensionId: string, ignoreVersion: boolean): any;
registerGetVariantsConfig(fn: ComponentsConfigFn): void;
registerGetVariantConfig(fn: ComponentConfigFn): void;
getVariantsConfig(): ConsumerOverrides | undefined;
getVariantConfig(componentId: BitId): ConsumerOverridesOfComponent | undefined;
static fromLegacyConfig(legacyConfig: any): WorkspaceConfig;
static fromObject(data: WorkspaceConfigFileProps): WorkspaceConfig;
static create(props: WorkspaceConfigFileProps, dirPath?: PathOsBasedAbsolute, legacyInitProps?: LegacyInitProps): Promise<WorkspaceConfig>;
static ensure(dirPath: PathOsBasedAbsolute, workspaceConfigProps?: WorkspaceConfigFileProps, legacyInitProps?: LegacyInitProps): Promise<WorkspaceConfig>;
static onLegacyEnsure(dirPath: PathOsBasedAbsolute, standAlone: boolean, legacyWorkspaceConfigProps?: LegacyWorkspaceConfigProps): Promise<WorkspaceConfig>;
static reset(dirPath: PathOsBasedAbsolute, resetHard: boolean): Promise<void>;
static composeWorkspaceJsoncPath(dirPath: PathOsBased): PathOsBased;
static pathHasWorkspaceJsonc(dirPath: PathOsBased): Promise<boolean>;
static isExist(dirPath: PathOsBased): Promise<boolean | undefined>;
static loadIfExist(dirPath: PathOsBased): Promise<WorkspaceConfig | undefined>;
static _loadFromWorkspaceJsonc(workspaceJsoncPath: PathOsBased): Promise<WorkspaceConfig>;
write({ workspaceDir }: {
workspaceDir: PathOsBasedAbsolute;
}): Promise<void>;
toVinyl(workspaceDir: PathOsBasedAbsolute): Promise<AbstractVinyl[] | undefined>;
_legacyPlainObject(): {
[prop: string]: any;
} | undefined;
toLegacy(): ILegacyWorkspaceConfig;
}
export declare function transformLegacyPropsToExtensions(legacyConfig: LegacyWorkspaceConfig | LegacyWorkspaceConfigProps): ExtensionsDefs;