@teambit/dependency-resolver 1.0.531 → 1.0.532
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.
- package/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/policy/index.d.ts +1 -1
- package/dist/policy/index.js +6 -0
- package/dist/policy/index.js.map +1 -1
- package/dist/policy/variant-policy/index.d.ts +1 -1
- package/dist/policy/variant-policy/index.js +6 -0
- package/dist/policy/variant-policy/index.js.map +1 -1
- package/dist/policy/variant-policy/variant-policy.d.ts +17 -2
- package/dist/policy/variant-policy/variant-policy.js +3 -1
- package/dist/policy/variant-policy/variant-policy.js.map +1 -1
- package/dist/{preview-1738293456518.js → preview-1738379875603.js} +2 -2
- package/package.json +20 -20
- package/policy/index.ts +1 -0
- package/policy/variant-policy/index.ts +1 -0
- package/policy/variant-policy/variant-policy.ts +8 -2
package/dist/index.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ export type { ProxyConfig as PackageManagerProxyConfig, NetworkConfig as Package
|
|
|
12
12
|
export { DependencyList, BaseDependency, ComponentDependency, KEY_NAME_BY_LIFECYCLE_TYPE } from './dependencies';
|
|
13
13
|
export type { DependencyLifecycleType, WorkspaceDependencyLifecycleType, DependencyFactory, SerializedDependency, Dependency, SemverVersion, DependenciesManifest, } from './dependencies';
|
|
14
14
|
export { WorkspacePolicy, VariantPolicy, EnvPolicy } from './policy';
|
|
15
|
-
export type { WorkspacePolicyEntry, WorkspacePolicyConfigObject, VariantPolicyConfigObject, Policy, PolicySemver, PolicyConfigKeys, PolicyConfigKeysNames, PolicyEntry, SerializedVariantPolicy, WorkspacePolicyConfigKeysNames, EnvPolicyConfigObject, } from './policy';
|
|
15
|
+
export type { WorkspacePolicyEntry, WorkspacePolicyConfigObject, VariantPolicyConfigObject, Policy, PolicySemver, PolicyConfigKeys, PolicyConfigKeysNames, PolicyEntry, SerializedVariantPolicy, WorkspacePolicyConfigKeysNames, EnvPolicyConfigObject, VariantPolicyConfigArr, } from './policy';
|
|
16
16
|
export { DependencyLinker } from './dependency-linker';
|
|
17
17
|
export type { CoreAspectLinkResult, LinkDetail, LinkResults, LinkingOptions, DepsLinkedToEnvResult, NestedNMDepsLinksResult, LinkToDirResult, } from './dependency-linker';
|
|
18
18
|
export { DependencyInstaller } from './dependency-installer';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_dependencyResolver","data","require","_manifest","_registry","_dependencyResolverMain","_dependencies","_policy","_dependencyLinker","_dependencyInstaller","_extendWithComponentsFromDir","_hoistDependencies"],"sources":["index.ts"],"sourcesContent":["import { DependencyResolverAspect } from './dependency-resolver.aspect';\n\nexport type { UpdatedComponent } from './apply-updates';\nexport type { RawComponentState, ComponentsManifestsMap, RegistriesMap } from './types';\nexport { WorkspaceManifest, ComponentManifest } from './manifest';\nexport type { CreateFromComponentsOptions, ManifestDependenciesObject } from './manifest';\nexport { Registries, Registry } from './registry';\nexport type {\n InstallationContext,\n PackageImportMethod,\n PackageManager,\n PackageManagerInstallOptions,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n CalcDepsGraphOptions,\n ComponentIdByPkgName,\n} from './package-manager';\nexport type { DependencyResolverWorkspaceConfig, NodeLinker } from './dependency-resolver-workspace-config';\nexport type {\n DependencyResolverMain,\n DependencyResolverVariantConfig,\n MergedOutdatedPkg,\n} from './dependency-resolver.main.runtime';\nexport { NPM_REGISTRY, BIT_CLOUD_REGISTRY } from './dependency-resolver.main.runtime';\nexport type {\n ProxyConfig as PackageManagerProxyConfig,\n NetworkConfig as PackageManagerNetworkConfig,\n} from './dependency-resolver.main.runtime';\nexport { DependencyList, BaseDependency, ComponentDependency, KEY_NAME_BY_LIFECYCLE_TYPE } from './dependencies';\nexport type {\n DependencyLifecycleType,\n WorkspaceDependencyLifecycleType,\n DependencyFactory,\n SerializedDependency,\n Dependency,\n SemverVersion,\n DependenciesManifest,\n} from './dependencies';\nexport { WorkspacePolicy, VariantPolicy, EnvPolicy } from './policy';\nexport type {\n WorkspacePolicyEntry,\n WorkspacePolicyConfigObject,\n VariantPolicyConfigObject,\n Policy,\n PolicySemver,\n PolicyConfigKeys,\n PolicyConfigKeysNames,\n PolicyEntry,\n SerializedVariantPolicy,\n WorkspacePolicyConfigKeysNames,\n EnvPolicyConfigObject,\n} from './policy';\nexport { DependencyLinker } from './dependency-linker';\nexport type {\n CoreAspectLinkResult,\n LinkDetail,\n LinkResults,\n LinkingOptions,\n DepsLinkedToEnvResult,\n NestedNMDepsLinksResult,\n LinkToDirResult,\n} from './dependency-linker';\nexport { DependencyInstaller } from './dependency-installer';\nexport type { GetComponentManifestsOptions, InstallOptions, InstallArgs } from './dependency-installer';\nexport type { DependencyDetector, FileContext } from './dependency-detector';\nexport type { DependencySource, VariantPolicyEntry } from './policy/variant-policy/variant-policy';\nexport type { OutdatedPkg } from './get-all-policy-pkgs';\nexport { extendWithComponentsFromDir } from './extend-with-components-from-dir';\nexport { isRange } from './manifest/deduping/hoist-dependencies';\nexport type { DependencyEnv } from './dependency-env';\nexport { DependencyResolverAspect as default, DependencyResolverAspect };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,oBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,mBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIA,SAAAE,UAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,SAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAiBA,SAAAI,wBAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,uBAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKA,SAAAK,cAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,aAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAUA,SAAAM,QAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,OAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;
|
|
1
|
+
{"version":3,"names":["_dependencyResolver","data","require","_manifest","_registry","_dependencyResolverMain","_dependencies","_policy","_dependencyLinker","_dependencyInstaller","_extendWithComponentsFromDir","_hoistDependencies"],"sources":["index.ts"],"sourcesContent":["import { DependencyResolverAspect } from './dependency-resolver.aspect';\n\nexport type { UpdatedComponent } from './apply-updates';\nexport type { RawComponentState, ComponentsManifestsMap, RegistriesMap } from './types';\nexport { WorkspaceManifest, ComponentManifest } from './manifest';\nexport type { CreateFromComponentsOptions, ManifestDependenciesObject } from './manifest';\nexport { Registries, Registry } from './registry';\nexport type {\n InstallationContext,\n PackageImportMethod,\n PackageManager,\n PackageManagerInstallOptions,\n PackageManagerResolveRemoteVersionOptions,\n ResolvedPackageVersion,\n CalcDepsGraphOptions,\n ComponentIdByPkgName,\n} from './package-manager';\nexport type { DependencyResolverWorkspaceConfig, NodeLinker } from './dependency-resolver-workspace-config';\nexport type {\n DependencyResolverMain,\n DependencyResolverVariantConfig,\n MergedOutdatedPkg,\n} from './dependency-resolver.main.runtime';\nexport { NPM_REGISTRY, BIT_CLOUD_REGISTRY } from './dependency-resolver.main.runtime';\nexport type {\n ProxyConfig as PackageManagerProxyConfig,\n NetworkConfig as PackageManagerNetworkConfig,\n} from './dependency-resolver.main.runtime';\nexport { DependencyList, BaseDependency, ComponentDependency, KEY_NAME_BY_LIFECYCLE_TYPE } from './dependencies';\nexport type {\n DependencyLifecycleType,\n WorkspaceDependencyLifecycleType,\n DependencyFactory,\n SerializedDependency,\n Dependency,\n SemverVersion,\n DependenciesManifest,\n} from './dependencies';\nexport { WorkspacePolicy, VariantPolicy, EnvPolicy } from './policy';\nexport type {\n WorkspacePolicyEntry,\n WorkspacePolicyConfigObject,\n VariantPolicyConfigObject,\n Policy,\n PolicySemver,\n PolicyConfigKeys,\n PolicyConfigKeysNames,\n PolicyEntry,\n SerializedVariantPolicy,\n WorkspacePolicyConfigKeysNames,\n EnvPolicyConfigObject,\n VariantPolicyConfigArr,\n} from './policy';\nexport { DependencyLinker } from './dependency-linker';\nexport type {\n CoreAspectLinkResult,\n LinkDetail,\n LinkResults,\n LinkingOptions,\n DepsLinkedToEnvResult,\n NestedNMDepsLinksResult,\n LinkToDirResult,\n} from './dependency-linker';\nexport { DependencyInstaller } from './dependency-installer';\nexport type { GetComponentManifestsOptions, InstallOptions, InstallArgs } from './dependency-installer';\nexport type { DependencyDetector, FileContext } from './dependency-detector';\nexport type { DependencySource, VariantPolicyEntry } from './policy/variant-policy/variant-policy';\nexport type { OutdatedPkg } from './get-all-policy-pkgs';\nexport { extendWithComponentsFromDir } from './extend-with-components-from-dir';\nexport { isRange } from './manifest/deduping/hoist-dependencies';\nexport type { DependencyEnv } from './dependency-env';\nexport { DependencyResolverAspect as default, DependencyResolverAspect };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,oBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,mBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIA,SAAAE,UAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,SAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAiBA,SAAAI,wBAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,uBAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKA,SAAAK,cAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,aAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAUA,SAAAM,QAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,OAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAeA,SAAAO,kBAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,iBAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAUA,SAAAQ,qBAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,oBAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKA,SAAAS,6BAAA;EAAA,MAAAT,IAAA,GAAAC,OAAA;EAAAQ,4BAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAU,mBAAA;EAAA,MAAAV,IAAA,GAAAC,OAAA;EAAAS,kBAAA,YAAAA,CAAA;IAAA,OAAAV,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA","ignoreList":[]}
|
package/dist/policy/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { Policy, PolicySemver, PolicyConfigKeys, PolicyConfigKeysNames, PolicyEntry } from './policy';
|
|
2
2
|
export { WorkspacePolicy, WorkspacePolicyFactory, WorkspacePolicyConfigObject, AddEntryOptions as WorkspacePolicyAddEntryOptions, WorkspacePolicyEntry, WorkspacePolicyConfigKeysNames, } from './workspace-policy';
|
|
3
|
-
export { VariantPolicy, VariantPolicyEntryValue, VariantPolicyConfigObject, SerializedVariantPolicy, } from './variant-policy';
|
|
3
|
+
export { VariantPolicy, VariantPolicyEntryValue, VariantPolicyConfigObject, SerializedVariantPolicy, VariantPolicyConfigArr, } from './variant-policy';
|
|
4
4
|
export { EnvPolicy, EnvPolicyConfigObject } from './env-policy';
|
package/dist/policy/index.js
CHANGED
|
@@ -57,6 +57,12 @@ Object.defineProperty(exports, "VariantPolicy", {
|
|
|
57
57
|
return _variantPolicy().VariantPolicy;
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
|
+
Object.defineProperty(exports, "VariantPolicyConfigArr", {
|
|
61
|
+
enumerable: true,
|
|
62
|
+
get: function () {
|
|
63
|
+
return _variantPolicy().VariantPolicyConfigArr;
|
|
64
|
+
}
|
|
65
|
+
});
|
|
60
66
|
Object.defineProperty(exports, "VariantPolicyConfigObject", {
|
|
61
67
|
enumerable: true,
|
|
62
68
|
get: function () {
|
package/dist/policy/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_policy","data","require","_workspacePolicy","_variantPolicy","_envPolicy"],"sources":["index.ts"],"sourcesContent":["export { Policy, PolicySemver, PolicyConfigKeys, PolicyConfigKeysNames, PolicyEntry } from './policy';\nexport {\n WorkspacePolicy,\n WorkspacePolicyFactory,\n WorkspacePolicyConfigObject,\n AddEntryOptions as WorkspacePolicyAddEntryOptions,\n WorkspacePolicyEntry,\n WorkspacePolicyConfigKeysNames,\n} from './workspace-policy';\nexport {\n VariantPolicy,\n VariantPolicyEntryValue,\n VariantPolicyConfigObject,\n SerializedVariantPolicy,\n} from './variant-policy';\n\nexport { EnvPolicy, EnvPolicyConfigObject } from './env-policy';\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_policy","data","require","_workspacePolicy","_variantPolicy","_envPolicy"],"sources":["index.ts"],"sourcesContent":["export { Policy, PolicySemver, PolicyConfigKeys, PolicyConfigKeysNames, PolicyEntry } from './policy';\nexport {\n WorkspacePolicy,\n WorkspacePolicyFactory,\n WorkspacePolicyConfigObject,\n AddEntryOptions as WorkspacePolicyAddEntryOptions,\n WorkspacePolicyEntry,\n WorkspacePolicyConfigKeysNames,\n} from './workspace-policy';\nexport {\n VariantPolicy,\n VariantPolicyEntryValue,\n VariantPolicyConfigObject,\n SerializedVariantPolicy,\n VariantPolicyConfigArr,\n} from './variant-policy';\n\nexport { EnvPolicy, EnvPolicyConfigObject } from './env-policy';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,iBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,gBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAQA,SAAAG,eAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,cAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAQA,SAAAI,WAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,UAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { VariantPolicy, VariantPolicyConfigObject, VariantPolicyFromConfigObjectOptions, SerializedVariantPolicy, VariantPolicyEntry, VariantPolicyEntryValue, createVariantPolicyEntry, DependencySource, } from './variant-policy';
|
|
1
|
+
export { VariantPolicy, VariantPolicyConfigObject, VariantPolicyFromConfigObjectOptions, SerializedVariantPolicy, VariantPolicyEntry, VariantPolicyEntryValue, createVariantPolicyEntry, DependencySource, VariantPolicyConfigArr, } from './variant-policy';
|
|
@@ -21,6 +21,12 @@ Object.defineProperty(exports, "VariantPolicy", {
|
|
|
21
21
|
return _variantPolicy().VariantPolicy;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "VariantPolicyConfigArr", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _variantPolicy().VariantPolicyConfigArr;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
24
30
|
Object.defineProperty(exports, "VariantPolicyConfigObject", {
|
|
25
31
|
enumerable: true,
|
|
26
32
|
get: function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_variantPolicy","data","require"],"sources":["index.ts"],"sourcesContent":["export {\n VariantPolicy,\n VariantPolicyConfigObject,\n VariantPolicyFromConfigObjectOptions,\n SerializedVariantPolicy,\n VariantPolicyEntry,\n VariantPolicyEntryValue,\n createVariantPolicyEntry,\n DependencySource,\n} from './variant-policy';\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_variantPolicy","data","require"],"sources":["index.ts"],"sourcesContent":["export {\n VariantPolicy,\n VariantPolicyConfigObject,\n VariantPolicyFromConfigObjectOptions,\n SerializedVariantPolicy,\n VariantPolicyEntry,\n VariantPolicyEntryValue,\n createVariantPolicyEntry,\n DependencySource,\n VariantPolicyConfigArr,\n} from './variant-policy';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,eAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,cAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA","ignoreList":[]}
|
|
@@ -1,10 +1,24 @@
|
|
|
1
1
|
import { DependenciesOverridesData } from '@teambit/legacy.consumer-config';
|
|
2
|
-
import { Policy, PolicyConfigKeys, PolicyEntry, SemverVersion } from '../policy';
|
|
2
|
+
import { Policy, PolicyConfigKeys, PolicyConfigKeysNames, PolicyEntry, SemverVersion } from '../policy';
|
|
3
3
|
import { DependencyLifecycleType } from '../../dependencies';
|
|
4
4
|
export type VariantPolicyConfigObject = Partial<Record<keyof PolicyConfigKeys, VariantPolicyLifecycleConfigObject>>;
|
|
5
5
|
type VariantPolicyLifecycleConfigObject = {
|
|
6
6
|
[dependencyId: string]: VariantPolicyConfigEntryValue;
|
|
7
7
|
};
|
|
8
|
+
type VariantPolicyLifecycleConfigEntryObject = {
|
|
9
|
+
name: string;
|
|
10
|
+
version: string;
|
|
11
|
+
/**
|
|
12
|
+
* hide the dependency from the component's package.json / dependencies list
|
|
13
|
+
*/
|
|
14
|
+
hidden?: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* force add to component dependencies even if it's not used by the component.
|
|
17
|
+
*/
|
|
18
|
+
force?: boolean;
|
|
19
|
+
optional?: boolean;
|
|
20
|
+
};
|
|
21
|
+
export type VariantPolicyConfigArr = Partial<Record<PolicyConfigKeysNames, VariantPolicyLifecycleConfigEntryObject[]>>;
|
|
8
22
|
export type VariantPolicyConfigEntryValue = VariantPolicyEntryValue | VariantPolicyEntryVersion;
|
|
9
23
|
/**
|
|
10
24
|
* Allowed values are valid semver values, git urls, fs path.
|
|
@@ -79,7 +93,8 @@ export declare class VariantPolicy implements Policy<VariantPolicyConfigObject>
|
|
|
79
93
|
*/
|
|
80
94
|
toLegacyAutoDetectOverrides(): DependenciesOverridesData;
|
|
81
95
|
toLegacyDepsOverrides(): DependenciesOverridesData;
|
|
82
|
-
static fromConfigObject(configObject: any,
|
|
96
|
+
static fromConfigObject(configObject: any, // VariantPolicyConfigArr | VariantPolicyConfigObj,
|
|
97
|
+
options?: VariantPolicyFromConfigObjectOptions): VariantPolicy;
|
|
83
98
|
static fromArray(entries: VariantPolicyEntry[]): VariantPolicy;
|
|
84
99
|
static parse(serializedEntries: SerializedVariantPolicy): VariantPolicy;
|
|
85
100
|
static getEmpty(): VariantPolicy;
|
|
@@ -192,7 +192,9 @@ class VariantPolicy {
|
|
|
192
192
|
}, res);
|
|
193
193
|
return res;
|
|
194
194
|
}
|
|
195
|
-
static fromConfigObject(configObject,
|
|
195
|
+
static fromConfigObject(configObject,
|
|
196
|
+
// VariantPolicyConfigArr | VariantPolicyConfigObj,
|
|
197
|
+
options = {}) {
|
|
196
198
|
const runtimeEntries = entriesFromKey(configObject, 'dependencies', options);
|
|
197
199
|
const devEntries = entriesFromKey(configObject, 'devDependencies', options);
|
|
198
200
|
const peerEntries = entriesFromKey(configObject, 'peerDependencies', options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_toolboxCrypto","data","require","_lodash","_componentPackageVersion","_dependencies","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","VariantPolicy","constructor","_policiesEntries","uniqEntries","entries","names","map","dependencyId","find","depId","lifecycleType","matchedEntry","entry","idEqual","lifecycleEqual","byLifecycleType","filtered","sortByName","sorted","sortBy","hashNameVersion","toHash","version","join","sha1","predicate","hiddenOnly","dep","hidden","getResolvedFromEnv","resolveFromEnv","getDepVersion","undefined","getValidSemverDepVersion","snapToSemver","serialize","toConfigObject","res","dependencies","devDependencies","peerDependencies","reduce","acc","keyName","KEY_NAME_BY_LIFECYCLE_TYPE","toVersionManifest","toNameVersionTuple","toLegacyAutoDetectOverrides","force","toLegacyDepsOverrides","used","includes","fromConfigObject","configObject","options","runtimeEntries","entriesFromKey","devEntries","peerEntries","concat","fromArray","parse","serializedEntries","getEmpty","mergePolices","policies","allEntries","curr","reverse","exports","uniq","uniqWith","entry1","entry2","obj","LIFECYCLE_TYPE_BY_KEY_NAME","Array","isArray","entriesFromArrayKey","entriesFromObjectKey","createVariantPolicyEntry","compact","configEntries","name","source","Boolean","optional","opts","Error","entryValue"],"sources":["variant-policy.ts"],"sourcesContent":["import { sha1 } from '@teambit/toolbox.crypto.sha1';\nimport { compact, sortBy, uniqWith } from 'lodash';\nimport { snapToSemver } from '@teambit/component-package-version';\nimport { DependenciesOverridesData } from '@teambit/legacy.consumer-config';\nimport { Policy, PolicyConfigKeys, PolicyConfigKeysNames, PolicyEntry, SemverVersion } from '../policy';\nimport { DependencyLifecycleType, KEY_NAME_BY_LIFECYCLE_TYPE, LIFECYCLE_TYPE_BY_KEY_NAME } from '../../dependencies';\n\nexport type VariantPolicyConfigObject = Partial<Record<keyof PolicyConfigKeys, VariantPolicyLifecycleConfigObject>>;\n\ntype VariantPolicyLifecycleConfigObject = {\n [dependencyId: string]: VariantPolicyConfigEntryValue;\n};\n\ntype VariantPolicyLifecycleConfigEntryObject = {\n name: string;\n version: string;\n /**\n * hide the dependency from the component's package.json / dependencies list\n */\n hidden?: boolean;\n /**\n * force add to component dependencies even if it's not used by the component.\n */\n force?: boolean;\n optional?: boolean;\n};\n\nexport type VariantPolicyConfigEntryValue = VariantPolicyEntryValue | VariantPolicyEntryVersion;\n\n/**\n * Allowed values are valid semver values, git urls, fs path.\n */\nexport type VariantPolicyEntryVersion = SemverVersion;\n\nexport type VariantPolicyEntryValue = {\n version: VariantPolicyEntryVersion;\n resolveFromEnv?: boolean;\n optional?: boolean;\n};\n\nexport type DependencySource = 'auto' | 'env' | 'env-own' | 'slots' | 'config';\n\nexport type VariantPolicyEntry = PolicyEntry & {\n value: VariantPolicyEntryValue;\n source?: DependencySource; // determines where the dependency was resolved from, e.g. from its env, or config\n /**\n * hide the dependency from the component's package.json / dependencies list\n */\n hidden?: boolean;\n /**\n * force add to component dependencies even if it's not used by the component.\n */\n force?: boolean;\n optional?: boolean;\n};\n\nexport type SerializedVariantPolicyEntry = VariantPolicyEntry;\nexport type SerializedVariantPolicy = SerializedVariantPolicyEntry[];\n\nexport interface VariantPolicyFromConfigObjectOptions {\n includeLegacyPeersInSelfPolicy?: boolean;\n source?: DependencySource;\n hidden?: boolean;\n force?: boolean;\n optional?: boolean;\n}\n\nexport class VariantPolicy implements Policy<VariantPolicyConfigObject> {\n constructor(private _policiesEntries: VariantPolicyEntry[]) {\n this._policiesEntries = uniqEntries(_policiesEntries);\n }\n\n get entries(): VariantPolicyEntry[] {\n return this._policiesEntries;\n }\n\n get names(): string[] {\n return this.entries.map((e) => e.dependencyId);\n }\n\n get length(): number {\n return this.entries.length;\n }\n\n find(depId: string, lifecycleType?: DependencyLifecycleType): VariantPolicyEntry | undefined {\n const matchedEntry = this.entries.find((entry) => {\n const idEqual = entry.dependencyId === depId;\n const lifecycleEqual = lifecycleType ? entry.lifecycleType === lifecycleType : true;\n return idEqual && lifecycleEqual;\n });\n return matchedEntry;\n }\n\n byLifecycleType(lifecycleType: DependencyLifecycleType): VariantPolicy {\n const filtered = this._policiesEntries.filter((entry) => entry.lifecycleType === lifecycleType);\n return new VariantPolicy(filtered);\n }\n\n sortByName(): VariantPolicy {\n const sorted = sortBy(this.entries, ['dependencyId']);\n return new VariantPolicy(sorted);\n }\n\n /**\n * Return a hash of all the peers names and their version\n * This useful when you want to compare 2 envs\n */\n hashNameVersion(): string {\n const sorted = this.sortByName();\n const toHash = sorted.entries.map(({ dependencyId, value }) => `${dependencyId}::${value.version}`).join(':::');\n return sha1(toHash);\n }\n\n filter(predicate: (dep: VariantPolicyEntry, index?: number) => boolean): VariantPolicy {\n const filtered = this.entries.filter(predicate);\n return new VariantPolicy(filtered);\n }\n\n hiddenOnly(): VariantPolicy {\n return this.filter((dep) => !!dep.hidden);\n }\n\n /**\n * Filter only deps which should be resolved from the env\n */\n getResolvedFromEnv() {\n return this.filter((dep) => {\n return !!dep.value.resolveFromEnv;\n });\n }\n\n getDepVersion(depId: string, lifecycleType?: DependencyLifecycleType): VariantPolicyEntryVersion | undefined {\n const entry = this.find(depId, lifecycleType);\n if (!entry) {\n return undefined;\n }\n return entry.value.version;\n }\n\n getValidSemverDepVersion(\n depId: string,\n lifecycleType?: DependencyLifecycleType\n ): VariantPolicyEntryVersion | undefined {\n const version = this.getDepVersion(depId, lifecycleType);\n if (!version) return undefined;\n return snapToSemver(version);\n }\n\n serialize(): SerializedVariantPolicy {\n return this.entries;\n }\n\n toConfigObject(): VariantPolicyConfigObject {\n const res: VariantPolicyConfigObject = {\n dependencies: {},\n devDependencies: {},\n peerDependencies: {},\n };\n this._policiesEntries.reduce((acc, entry) => {\n const keyName = KEY_NAME_BY_LIFECYCLE_TYPE[entry.lifecycleType];\n const value = entry.value.resolveFromEnv ? entry.value : entry.value.version;\n acc[keyName][entry.dependencyId] = value;\n return acc;\n }, res);\n return res;\n }\n\n /**\n * Create a manifest object in the form of a package.json entries\n * a.k.a { [depId]: version }\n * @returns\n */\n toVersionManifest(): { [name: string]: string } {\n return this.entries.reduce((acc, entry) => {\n acc[entry.dependencyId] = entry.value.version;\n return acc;\n }, {});\n }\n\n toNameVersionTuple(): [string, string][] {\n return this.entries.map((entry) => {\n return [entry.dependencyId, entry.value.version];\n });\n }\n\n /**\n * This used in in the legacy to apply env component policy on stuff that were auto detected\n * it will take used only entries (which means entries that component are really uses)\n * and in case of hidden deps it will mark them as removed using the \"-\" value to remove them from the component\n * @returns\n */\n toLegacyAutoDetectOverrides(): DependenciesOverridesData {\n const res: DependenciesOverridesData = {\n dependencies: {},\n devDependencies: {},\n peerDependencies: {},\n };\n this._policiesEntries.reduce((acc, entry) => {\n if (entry.force) return acc;\n const keyName = KEY_NAME_BY_LIFECYCLE_TYPE[entry.lifecycleType];\n acc[keyName][entry.dependencyId] = entry.value.version;\n return acc;\n }, res);\n return res;\n }\n\n toLegacyDepsOverrides(): DependenciesOverridesData {\n const res: DependenciesOverridesData = {\n dependencies: {},\n devDependencies: {},\n peerDependencies: {},\n };\n const used: string[] = [];\n this._policiesEntries.reduce((acc, entry) => {\n // entries that not marked with force, will be handled by the legacy deps resolver and will not be added to the overrides\n if (!entry.force) return acc;\n const keyName = KEY_NAME_BY_LIFECYCLE_TYPE[entry.lifecycleType];\n // We don't want the same entry to appear many times in different lifecycle types\n // this is important for example when a peer is configured by an env (on itself) which will make it a runtime dep of the env\n // but the env of the env is configure the same dep as peer in general (like with react)\n if (!used.includes(entry.dependencyId) || entry.value.version === '-') {\n acc[keyName][entry.dependencyId] = entry.value.version;\n if (entry.value.version !== '-') {\n used.push(entry.dependencyId);\n }\n }\n return acc;\n }, res);\n return res;\n }\n\n static fromConfigObject(configObject, options: VariantPolicyFromConfigObjectOptions = {}): VariantPolicy {\n const runtimeEntries = entriesFromKey(configObject, 'dependencies', options);\n const devEntries = entriesFromKey(configObject, 'devDependencies', options);\n const peerEntries = entriesFromKey(configObject, 'peerDependencies', options);\n const entries = runtimeEntries.concat(devEntries).concat(peerEntries);\n return new VariantPolicy(entries);\n }\n\n static fromArray(entries: VariantPolicyEntry[]): VariantPolicy {\n return new VariantPolicy(entries);\n }\n\n static parse(serializedEntries: SerializedVariantPolicy): VariantPolicy {\n return new VariantPolicy(serializedEntries);\n }\n\n static getEmpty(): VariantPolicy {\n return new VariantPolicy([]);\n }\n\n static mergePolices(policies: VariantPolicy[]): VariantPolicy {\n let allEntries: VariantPolicyEntry[] = [];\n allEntries = policies.reduce((acc, curr) => {\n return acc.concat(curr.entries);\n }, allEntries);\n // We reverse it to make sure the latest policy will be stronger in case of conflict\n allEntries = allEntries.reverse();\n return new VariantPolicy(allEntries);\n }\n}\n\nfunction uniqEntries(entries: Array<VariantPolicyEntry>): Array<VariantPolicyEntry> {\n const uniq = uniqWith(entries, (entry1: VariantPolicyEntry, entry2: VariantPolicyEntry) => {\n return entry1.dependencyId === entry2.dependencyId && entry1.lifecycleType === entry2.lifecycleType;\n });\n return uniq;\n}\n\nfunction entriesFromKey(\n configObject: VariantPolicyConfigObject,\n keyName: PolicyConfigKeysNames,\n options: VariantPolicyFromConfigObjectOptions\n): VariantPolicyEntry[] {\n const obj = configObject[keyName];\n if (!obj) {\n return [];\n }\n const lifecycleType = LIFECYCLE_TYPE_BY_KEY_NAME[keyName];\n if (Array.isArray(obj)) {\n return entriesFromArrayKey(obj, lifecycleType, options);\n }\n return entriesFromObjectKey(obj, lifecycleType, options);\n}\n\nfunction entriesFromObjectKey(\n obj: Record<string, VariantPolicyConfigEntryValue> | undefined,\n lifecycleType: DependencyLifecycleType,\n options: VariantPolicyFromConfigObjectOptions\n): VariantPolicyEntry[] {\n if (!obj) {\n return [];\n }\n const entries = Object.entries(obj).map(([depId, value]: [string, VariantPolicyConfigEntryValue]) => {\n if (value) {\n return createVariantPolicyEntry(depId, value, lifecycleType, {\n ...options,\n force: options.force ?? true,\n });\n }\n return undefined;\n });\n return compact(entries);\n}\n\nfunction entriesFromArrayKey(\n configEntries: Array<VariantPolicyLifecycleConfigEntryObject> | undefined,\n lifecycleType: DependencyLifecycleType,\n options: VariantPolicyFromConfigObjectOptions\n): VariantPolicyEntry[] {\n if (!configEntries) {\n return [];\n }\n const entries = configEntries.map((entry) => {\n return createVariantPolicyEntry(entry.name, entry.version, lifecycleType, {\n ...options,\n source: options.source ?? 'config',\n hidden: Boolean(options.hidden ?? entry.hidden),\n // allow override the entry's force value (used for the env itself)\n force: Boolean(options.force ?? entry.force),\n optional: Boolean(options.optional ?? entry.optional),\n });\n });\n return entries;\n}\n\nexport function createVariantPolicyEntry(\n depId: string,\n value: VariantPolicyConfigEntryValue,\n lifecycleType: DependencyLifecycleType,\n opts: VariantPolicyFromConfigObjectOptions\n): VariantPolicyEntry {\n if (!value) {\n throw new Error(`createVariantPolicyEntry, value is missing for ${depId}`);\n }\n const version = typeof value === 'string' ? value : value.version;\n const resolveFromEnv = typeof value === 'string' ? false : value.resolveFromEnv;\n const optional = typeof value === 'string' ? undefined : value.optional;\n\n const entryValue: VariantPolicyEntryValue = {\n version,\n resolveFromEnv,\n };\n const entry: VariantPolicyEntry = {\n ...opts,\n dependencyId: depId,\n value: entryValue,\n lifecycleType,\n optional: optional ?? opts.optional,\n };\n return entry;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_toolboxCrypto","data","require","_lodash","_componentPackageVersion","_dependencies","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","VariantPolicy","constructor","_policiesEntries","uniqEntries","entries","names","map","dependencyId","find","depId","lifecycleType","matchedEntry","entry","idEqual","lifecycleEqual","byLifecycleType","filtered","sortByName","sorted","sortBy","hashNameVersion","toHash","version","join","sha1","predicate","hiddenOnly","dep","hidden","getResolvedFromEnv","resolveFromEnv","getDepVersion","undefined","getValidSemverDepVersion","snapToSemver","serialize","toConfigObject","res","dependencies","devDependencies","peerDependencies","reduce","acc","keyName","KEY_NAME_BY_LIFECYCLE_TYPE","toVersionManifest","toNameVersionTuple","toLegacyAutoDetectOverrides","force","toLegacyDepsOverrides","used","includes","fromConfigObject","configObject","options","runtimeEntries","entriesFromKey","devEntries","peerEntries","concat","fromArray","parse","serializedEntries","getEmpty","mergePolices","policies","allEntries","curr","reverse","exports","uniq","uniqWith","entry1","entry2","obj","LIFECYCLE_TYPE_BY_KEY_NAME","Array","isArray","entriesFromArrayKey","entriesFromObjectKey","createVariantPolicyEntry","compact","configEntries","name","source","Boolean","optional","opts","Error","entryValue"],"sources":["variant-policy.ts"],"sourcesContent":["import { sha1 } from '@teambit/toolbox.crypto.sha1';\nimport { compact, sortBy, uniqWith } from 'lodash';\nimport { snapToSemver } from '@teambit/component-package-version';\nimport { DependenciesOverridesData } from '@teambit/legacy.consumer-config';\nimport { Policy, PolicyConfigKeys, PolicyConfigKeysNames, PolicyEntry, SemverVersion } from '../policy';\nimport { DependencyLifecycleType, KEY_NAME_BY_LIFECYCLE_TYPE, LIFECYCLE_TYPE_BY_KEY_NAME } from '../../dependencies';\n\nexport type VariantPolicyConfigObject = Partial<Record<keyof PolicyConfigKeys, VariantPolicyLifecycleConfigObject>>;\n\ntype VariantPolicyLifecycleConfigObject = {\n [dependencyId: string]: VariantPolicyConfigEntryValue;\n};\n\ntype VariantPolicyLifecycleConfigEntryObject = {\n name: string;\n version: string;\n /**\n * hide the dependency from the component's package.json / dependencies list\n */\n hidden?: boolean;\n /**\n * force add to component dependencies even if it's not used by the component.\n */\n force?: boolean;\n optional?: boolean;\n};\n\nexport type VariantPolicyConfigArr = Partial<Record<PolicyConfigKeysNames, VariantPolicyLifecycleConfigEntryObject[]>>;\ntype VariantPolicyConfigObj = Partial<Record<PolicyConfigKeysNames, Record<string, VariantPolicyConfigEntryValue>>>;\n\nexport type VariantPolicyConfigEntryValue = VariantPolicyEntryValue | VariantPolicyEntryVersion;\n\n/**\n * Allowed values are valid semver values, git urls, fs path.\n */\nexport type VariantPolicyEntryVersion = SemverVersion;\n\nexport type VariantPolicyEntryValue = {\n version: VariantPolicyEntryVersion;\n resolveFromEnv?: boolean;\n optional?: boolean;\n};\n\nexport type DependencySource = 'auto' | 'env' | 'env-own' | 'slots' | 'config';\n\nexport type VariantPolicyEntry = PolicyEntry & {\n value: VariantPolicyEntryValue;\n source?: DependencySource; // determines where the dependency was resolved from, e.g. from its env, or config\n /**\n * hide the dependency from the component's package.json / dependencies list\n */\n hidden?: boolean;\n /**\n * force add to component dependencies even if it's not used by the component.\n */\n force?: boolean;\n optional?: boolean;\n};\n\nexport type SerializedVariantPolicyEntry = VariantPolicyEntry;\nexport type SerializedVariantPolicy = SerializedVariantPolicyEntry[];\n\nexport interface VariantPolicyFromConfigObjectOptions {\n includeLegacyPeersInSelfPolicy?: boolean;\n source?: DependencySource;\n hidden?: boolean;\n force?: boolean;\n optional?: boolean;\n}\n\nexport class VariantPolicy implements Policy<VariantPolicyConfigObject> {\n constructor(private _policiesEntries: VariantPolicyEntry[]) {\n this._policiesEntries = uniqEntries(_policiesEntries);\n }\n\n get entries(): VariantPolicyEntry[] {\n return this._policiesEntries;\n }\n\n get names(): string[] {\n return this.entries.map((e) => e.dependencyId);\n }\n\n get length(): number {\n return this.entries.length;\n }\n\n find(depId: string, lifecycleType?: DependencyLifecycleType): VariantPolicyEntry | undefined {\n const matchedEntry = this.entries.find((entry) => {\n const idEqual = entry.dependencyId === depId;\n const lifecycleEqual = lifecycleType ? entry.lifecycleType === lifecycleType : true;\n return idEqual && lifecycleEqual;\n });\n return matchedEntry;\n }\n\n byLifecycleType(lifecycleType: DependencyLifecycleType): VariantPolicy {\n const filtered = this._policiesEntries.filter((entry) => entry.lifecycleType === lifecycleType);\n return new VariantPolicy(filtered);\n }\n\n sortByName(): VariantPolicy {\n const sorted = sortBy(this.entries, ['dependencyId']);\n return new VariantPolicy(sorted);\n }\n\n /**\n * Return a hash of all the peers names and their version\n * This useful when you want to compare 2 envs\n */\n hashNameVersion(): string {\n const sorted = this.sortByName();\n const toHash = sorted.entries.map(({ dependencyId, value }) => `${dependencyId}::${value.version}`).join(':::');\n return sha1(toHash);\n }\n\n filter(predicate: (dep: VariantPolicyEntry, index?: number) => boolean): VariantPolicy {\n const filtered = this.entries.filter(predicate);\n return new VariantPolicy(filtered);\n }\n\n hiddenOnly(): VariantPolicy {\n return this.filter((dep) => !!dep.hidden);\n }\n\n /**\n * Filter only deps which should be resolved from the env\n */\n getResolvedFromEnv() {\n return this.filter((dep) => {\n return !!dep.value.resolveFromEnv;\n });\n }\n\n getDepVersion(depId: string, lifecycleType?: DependencyLifecycleType): VariantPolicyEntryVersion | undefined {\n const entry = this.find(depId, lifecycleType);\n if (!entry) {\n return undefined;\n }\n return entry.value.version;\n }\n\n getValidSemverDepVersion(\n depId: string,\n lifecycleType?: DependencyLifecycleType\n ): VariantPolicyEntryVersion | undefined {\n const version = this.getDepVersion(depId, lifecycleType);\n if (!version) return undefined;\n return snapToSemver(version);\n }\n\n serialize(): SerializedVariantPolicy {\n return this.entries;\n }\n\n toConfigObject(): VariantPolicyConfigObject {\n const res: VariantPolicyConfigObject = {\n dependencies: {},\n devDependencies: {},\n peerDependencies: {},\n };\n this._policiesEntries.reduce((acc, entry) => {\n const keyName = KEY_NAME_BY_LIFECYCLE_TYPE[entry.lifecycleType];\n const value = entry.value.resolveFromEnv ? entry.value : entry.value.version;\n acc[keyName][entry.dependencyId] = value;\n return acc;\n }, res);\n return res;\n }\n\n /**\n * Create a manifest object in the form of a package.json entries\n * a.k.a { [depId]: version }\n * @returns\n */\n toVersionManifest(): { [name: string]: string } {\n return this.entries.reduce((acc, entry) => {\n acc[entry.dependencyId] = entry.value.version;\n return acc;\n }, {});\n }\n\n toNameVersionTuple(): [string, string][] {\n return this.entries.map((entry) => {\n return [entry.dependencyId, entry.value.version];\n });\n }\n\n /**\n * This used in in the legacy to apply env component policy on stuff that were auto detected\n * it will take used only entries (which means entries that component are really uses)\n * and in case of hidden deps it will mark them as removed using the \"-\" value to remove them from the component\n * @returns\n */\n toLegacyAutoDetectOverrides(): DependenciesOverridesData {\n const res: DependenciesOverridesData = {\n dependencies: {},\n devDependencies: {},\n peerDependencies: {},\n };\n this._policiesEntries.reduce((acc, entry) => {\n if (entry.force) return acc;\n const keyName = KEY_NAME_BY_LIFECYCLE_TYPE[entry.lifecycleType];\n acc[keyName][entry.dependencyId] = entry.value.version;\n return acc;\n }, res);\n return res;\n }\n\n toLegacyDepsOverrides(): DependenciesOverridesData {\n const res: DependenciesOverridesData = {\n dependencies: {},\n devDependencies: {},\n peerDependencies: {},\n };\n const used: string[] = [];\n this._policiesEntries.reduce((acc, entry) => {\n // entries that not marked with force, will be handled by the legacy deps resolver and will not be added to the overrides\n if (!entry.force) return acc;\n const keyName = KEY_NAME_BY_LIFECYCLE_TYPE[entry.lifecycleType];\n // We don't want the same entry to appear many times in different lifecycle types\n // this is important for example when a peer is configured by an env (on itself) which will make it a runtime dep of the env\n // but the env of the env is configure the same dep as peer in general (like with react)\n if (!used.includes(entry.dependencyId) || entry.value.version === '-') {\n acc[keyName][entry.dependencyId] = entry.value.version;\n if (entry.value.version !== '-') {\n used.push(entry.dependencyId);\n }\n }\n return acc;\n }, res);\n return res;\n }\n\n static fromConfigObject(\n configObject: any, // VariantPolicyConfigArr | VariantPolicyConfigObj,\n options: VariantPolicyFromConfigObjectOptions = {}\n ): VariantPolicy {\n const runtimeEntries = entriesFromKey(configObject, 'dependencies', options);\n const devEntries = entriesFromKey(configObject, 'devDependencies', options);\n const peerEntries = entriesFromKey(configObject, 'peerDependencies', options);\n const entries = runtimeEntries.concat(devEntries).concat(peerEntries);\n return new VariantPolicy(entries);\n }\n\n static fromArray(entries: VariantPolicyEntry[]): VariantPolicy {\n return new VariantPolicy(entries);\n }\n\n static parse(serializedEntries: SerializedVariantPolicy): VariantPolicy {\n return new VariantPolicy(serializedEntries);\n }\n\n static getEmpty(): VariantPolicy {\n return new VariantPolicy([]);\n }\n\n static mergePolices(policies: VariantPolicy[]): VariantPolicy {\n let allEntries: VariantPolicyEntry[] = [];\n allEntries = policies.reduce((acc, curr) => {\n return acc.concat(curr.entries);\n }, allEntries);\n // We reverse it to make sure the latest policy will be stronger in case of conflict\n allEntries = allEntries.reverse();\n return new VariantPolicy(allEntries);\n }\n}\n\nfunction uniqEntries(entries: Array<VariantPolicyEntry>): Array<VariantPolicyEntry> {\n const uniq = uniqWith(entries, (entry1: VariantPolicyEntry, entry2: VariantPolicyEntry) => {\n return entry1.dependencyId === entry2.dependencyId && entry1.lifecycleType === entry2.lifecycleType;\n });\n return uniq;\n}\n\nfunction entriesFromKey(\n configObject: VariantPolicyConfigArr | VariantPolicyConfigObj,\n keyName: PolicyConfigKeysNames,\n options: VariantPolicyFromConfigObjectOptions\n): VariantPolicyEntry[] {\n const obj = configObject[keyName];\n if (!obj) {\n return [];\n }\n const lifecycleType = LIFECYCLE_TYPE_BY_KEY_NAME[keyName];\n if (Array.isArray(obj)) {\n return entriesFromArrayKey(obj, lifecycleType, options);\n }\n return entriesFromObjectKey(obj, lifecycleType, options);\n}\n\nfunction entriesFromObjectKey(\n obj: Record<string, VariantPolicyConfigEntryValue> | undefined,\n lifecycleType: DependencyLifecycleType,\n options: VariantPolicyFromConfigObjectOptions\n): VariantPolicyEntry[] {\n if (!obj) {\n return [];\n }\n const entries = Object.entries(obj).map(([depId, value]: [string, VariantPolicyConfigEntryValue]) => {\n if (value) {\n return createVariantPolicyEntry(depId, value, lifecycleType, {\n ...options,\n force: options.force ?? true,\n });\n }\n return undefined;\n });\n return compact(entries);\n}\n\nfunction entriesFromArrayKey(\n configEntries: Array<VariantPolicyLifecycleConfigEntryObject> | undefined,\n lifecycleType: DependencyLifecycleType,\n options: VariantPolicyFromConfigObjectOptions\n): VariantPolicyEntry[] {\n if (!configEntries) {\n return [];\n }\n const entries = configEntries.map((entry) => {\n return createVariantPolicyEntry(entry.name, entry.version, lifecycleType, {\n ...options,\n source: options.source ?? 'config',\n hidden: Boolean(options.hidden ?? entry.hidden),\n // allow override the entry's force value (used for the env itself)\n force: Boolean(options.force ?? entry.force),\n optional: Boolean(options.optional ?? entry.optional),\n });\n });\n return entries;\n}\n\nexport function createVariantPolicyEntry(\n depId: string,\n value: VariantPolicyConfigEntryValue,\n lifecycleType: DependencyLifecycleType,\n opts: VariantPolicyFromConfigObjectOptions\n): VariantPolicyEntry {\n if (!value) {\n throw new Error(`createVariantPolicyEntry, value is missing for ${depId}`);\n }\n const version = typeof value === 'string' ? value : value.version;\n const resolveFromEnv = typeof value === 'string' ? false : value.resolveFromEnv;\n const optional = typeof value === 'string' ? undefined : value.optional;\n\n const entryValue: VariantPolicyEntryValue = {\n version,\n resolveFromEnv,\n };\n const entry: VariantPolicyEntry = {\n ...opts,\n dependencyId: depId,\n value: entryValue,\n lifecycleType,\n optional: optional ?? opts.optional,\n };\n return entry;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_dependency-resolver@1.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_dependency-resolver@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_dependency-resolver@1.0.532/dist/dependency-resolver.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_dependency-resolver@1.0.532/dist/dependency-resolver.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/dependency-resolver",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.532",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/dependencies/dependency-resolver",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.dependencies",
|
|
8
8
|
"name": "dependency-resolver",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.532"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"chalk": "2.4.2",
|
|
@@ -33,30 +33,30 @@
|
|
|
33
33
|
"@teambit/legacy-bit-id": "1.1.1",
|
|
34
34
|
"@teambit/component-version": "1.0.3",
|
|
35
35
|
"@teambit/toolbox.object.sorter": "0.0.2",
|
|
36
|
-
"@teambit/component": "1.0.
|
|
37
|
-
"@teambit/envs": "1.0.
|
|
38
|
-
"@teambit/dependencies": "1.0.
|
|
39
|
-
"@teambit/aspect-loader": "1.0.
|
|
40
|
-
"@teambit/logger": "0.0.
|
|
41
|
-
"@teambit/objects": "0.0.
|
|
36
|
+
"@teambit/component": "1.0.532",
|
|
37
|
+
"@teambit/envs": "1.0.532",
|
|
38
|
+
"@teambit/dependencies": "1.0.532",
|
|
39
|
+
"@teambit/aspect-loader": "1.0.532",
|
|
40
|
+
"@teambit/logger": "0.0.1202",
|
|
41
|
+
"@teambit/objects": "0.0.39",
|
|
42
42
|
"@teambit/toolbox.path.path": "0.0.6",
|
|
43
|
-
"@teambit/pkg.modules.component-package-name": "0.0.
|
|
44
|
-
"@teambit/graphql": "1.0.
|
|
45
|
-
"@teambit/cli": "0.0.
|
|
46
|
-
"@teambit/component.sources": "0.0.
|
|
47
|
-
"@teambit/config": "0.0.
|
|
48
|
-
"@teambit/global-config": "0.0.
|
|
43
|
+
"@teambit/pkg.modules.component-package-name": "0.0.33",
|
|
44
|
+
"@teambit/graphql": "1.0.532",
|
|
45
|
+
"@teambit/cli": "0.0.1109",
|
|
46
|
+
"@teambit/component.sources": "0.0.78",
|
|
47
|
+
"@teambit/config": "0.0.1283",
|
|
48
|
+
"@teambit/global-config": "0.0.1112",
|
|
49
49
|
"@teambit/harmony.modules.feature-toggle": "0.0.16",
|
|
50
50
|
"@teambit/harmony.modules.requireable-component": "0.0.500",
|
|
51
51
|
"@teambit/legacy.constants": "0.0.8",
|
|
52
|
-
"@teambit/legacy.consumer-component": "0.0.
|
|
53
|
-
"@teambit/legacy.extension-data": "0.0.
|
|
54
|
-
"@teambit/scope.network": "0.0.
|
|
55
|
-
"@teambit/snapping": "1.0.
|
|
56
|
-
"@teambit/workspace.modules.node-modules-linker": "0.0.
|
|
52
|
+
"@teambit/legacy.consumer-component": "0.0.27",
|
|
53
|
+
"@teambit/legacy.extension-data": "0.0.28",
|
|
54
|
+
"@teambit/scope.network": "0.0.26",
|
|
55
|
+
"@teambit/snapping": "1.0.532",
|
|
56
|
+
"@teambit/workspace.modules.node-modules-linker": "0.0.254",
|
|
57
57
|
"@teambit/component-issues": "0.0.153",
|
|
58
58
|
"@teambit/component-package-version": "0.0.435",
|
|
59
|
-
"@teambit/legacy.consumer-config": "0.0.
|
|
59
|
+
"@teambit/legacy.consumer-config": "0.0.26",
|
|
60
60
|
"@teambit/toolbox.crypto.sha1": "0.0.5"
|
|
61
61
|
},
|
|
62
62
|
"devDependencies": {
|
package/policy/index.ts
CHANGED
|
@@ -25,6 +25,9 @@ type VariantPolicyLifecycleConfigEntryObject = {
|
|
|
25
25
|
optional?: boolean;
|
|
26
26
|
};
|
|
27
27
|
|
|
28
|
+
export type VariantPolicyConfigArr = Partial<Record<PolicyConfigKeysNames, VariantPolicyLifecycleConfigEntryObject[]>>;
|
|
29
|
+
type VariantPolicyConfigObj = Partial<Record<PolicyConfigKeysNames, Record<string, VariantPolicyConfigEntryValue>>>;
|
|
30
|
+
|
|
28
31
|
export type VariantPolicyConfigEntryValue = VariantPolicyEntryValue | VariantPolicyEntryVersion;
|
|
29
32
|
|
|
30
33
|
/**
|
|
@@ -229,7 +232,10 @@ export class VariantPolicy implements Policy<VariantPolicyConfigObject> {
|
|
|
229
232
|
return res;
|
|
230
233
|
}
|
|
231
234
|
|
|
232
|
-
static fromConfigObject(
|
|
235
|
+
static fromConfigObject(
|
|
236
|
+
configObject: any, // VariantPolicyConfigArr | VariantPolicyConfigObj,
|
|
237
|
+
options: VariantPolicyFromConfigObjectOptions = {}
|
|
238
|
+
): VariantPolicy {
|
|
233
239
|
const runtimeEntries = entriesFromKey(configObject, 'dependencies', options);
|
|
234
240
|
const devEntries = entriesFromKey(configObject, 'devDependencies', options);
|
|
235
241
|
const peerEntries = entriesFromKey(configObject, 'peerDependencies', options);
|
|
@@ -268,7 +274,7 @@ function uniqEntries(entries: Array<VariantPolicyEntry>): Array<VariantPolicyEnt
|
|
|
268
274
|
}
|
|
269
275
|
|
|
270
276
|
function entriesFromKey(
|
|
271
|
-
configObject:
|
|
277
|
+
configObject: VariantPolicyConfigArr | VariantPolicyConfigObj,
|
|
272
278
|
keyName: PolicyConfigKeysNames,
|
|
273
279
|
options: VariantPolicyFromConfigObjectOptions
|
|
274
280
|
): VariantPolicyEntry[] {
|