@teambit/variants 0.0.879 → 0.0.881

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 * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_variants@0.0.879/dist/variants.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_variants@0.0.879/dist/variants.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_variants@0.0.881/dist/variants.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.workspace_variants@0.0.881/dist/variants.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
@@ -12,6 +11,7 @@ function _react() {
12
11
  };
13
12
  return data;
14
13
  }
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
  const Logo = () => /*#__PURE__*/_react().default.createElement("div", {
16
16
  style: {
17
17
  height: '100%',
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireDefault","require","Logo","default","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["variants.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/variants.svg\" />\n </div>\n);\n"],"mappings":";;;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,IAAI,GAAGA,CAAA,kBAClBJ,MAAA,GAAAK,OAAA,CAAAC,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEV,MAAA,GAAAK,OAAA,CAAAC,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAAsD,CAAE,CACpF,CACN;AAACC,OAAA,CAAAT,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","obj","__esModule","default","Logo","createElement","style","height","display","justifyContent","width","src","exports"],"sources":["variants.composition.tsx"],"sourcesContent":["import React from 'react';\n\nexport const Logo = () => (\n <div style={{ height: '100%', display: 'flex', justifyContent: 'center' }}>\n <img style={{ width: 70 }} src=\"https://static.bit.dev/extensions-icons/variants.svg\" />\n </div>\n);\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA0B,SAAAC,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEnB,MAAMG,IAAI,GAAGA,CAAA,kBAClBP,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxEZ,MAAA,GAAAM,OAAA,CAAAE,aAAA;EAAKC,KAAK,EAAE;IAAEI,KAAK,EAAE;EAAG,CAAE;EAACC,GAAG,EAAC;AAAsD,CAAE,CACpF,CACN;AAACC,OAAA,CAAAR,IAAA,GAAAA,IAAA"}
@@ -1,20 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- require("core-js/modules/es.array.iterator.js");
5
- require("core-js/modules/es.promise.js");
6
- require("core-js/modules/es.regexp.exec.js");
7
3
  Object.defineProperty(exports, "__esModule", {
8
4
  value: true
9
5
  });
10
6
  exports.VariantsMain = void 0;
11
- function _defineProperty2() {
12
- const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
- _defineProperty2 = function () {
14
- return data;
15
- };
16
- return data;
17
- }
18
7
  function _cli() {
19
8
  const data = require("@teambit/cli");
20
9
  _cli = function () {
@@ -78,12 +67,16 @@ function _variants() {
78
67
  };
79
68
  return data;
80
69
  }
70
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
71
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
72
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
73
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
81
74
  const INTERNAL_FIELDS = ['propagate', 'exclude', 'defaultScope'];
82
75
  class VariantsMain {
83
76
  constructor(patterns, configAspect) {
84
77
  this.patterns = patterns;
85
78
  this.configAspect = configAspect;
86
- (0, _defineProperty2().default)(this, "_loadedLegacy", void 0);
79
+ _defineProperty(this, "_loadedLegacy", void 0);
87
80
  this._loadedLegacy = _consumerOverrides().default.load(this.patterns);
88
81
  this.validateConfig();
89
82
  }
@@ -156,8 +149,7 @@ class VariantsMain {
156
149
  * @param {boolean} opts.overrideExisting - When true, any existing entries are overriden.
157
150
  */
158
151
  setExtension(variant, extensionId, extensionConfig, opts) {
159
- var _this$patterns$varian;
160
- const newVariant = (_this$patterns$varian = this.patterns[variant]) !== null && _this$patterns$varian !== void 0 ? _this$patterns$varian : {};
152
+ const newVariant = this.patterns[variant] ?? {};
161
153
  (0, _commentJson().assign)(newVariant, {
162
154
  [extensionId]: extensionConfig
163
155
  });
@@ -174,8 +166,8 @@ class VariantsMain {
174
166
  }
175
167
  }
176
168
  exports.VariantsMain = VariantsMain;
177
- (0, _defineProperty2().default)(VariantsMain, "runtime", _cli().MainRuntime);
178
- (0, _defineProperty2().default)(VariantsMain, "dependencies", [_config().ConfigAspect]);
169
+ _defineProperty(VariantsMain, "runtime", _cli().MainRuntime);
170
+ _defineProperty(VariantsMain, "dependencies", [_config().ConfigAspect]);
179
171
  function getExtensionFromPatternRawConfig(config) {
180
172
  const rawExtensions = (0, _lodash().omit)(config, INTERNAL_FIELDS);
181
173
  const extensions = _extensionData().ExtensionDataList.fromConfigObject(rawExtensions);
@@ -1 +1 @@
1
- {"version":3,"names":["_cli","data","require","_config","_consumerOverrides","_interopRequireDefault","_extensionData","_commentJson","_lodash","_workspaceModules","_legacyBitId","_variants","INTERNAL_FIELDS","VariantsMain","constructor","patterns","configAspect","_defineProperty2","default","_loadedLegacy","ConsumerOverrides","load","validateConfig","forEach","patternConfig","pattern","defaultScope","isValidScopeName","InvalidScopeName","undefined","raw","legacy","byRootDirAndName","rootDir","componentName","matches","match","isMatchPattern","excluded","push","config","specificity","maxSpecificity","sortedMatches","sortMatchesBySpecificity","propagate","extensionsToMerge","getExtensionFromPatternRawConfig","mergedExtensions","ExtensionDataList","mergeConfigs","result","extensions","length","setExtension","variant","extensionId","extensionConfig","opts","_this$patterns$varian","newVariant","assign","VariantsAspect","id","overrideExisting","ignoreVersion","provider","exports","MainRuntime","ConfigAspect","rawExtensions","omit","fromConfigObject","addRuntime"],"sources":["variants.main.runtime.ts"],"sourcesContent":["import { MainRuntime } from '@teambit/cli';\nimport { ConfigAspect } from '@teambit/config';\nimport type { ConfigMain } from '@teambit/config';\nimport ConsumerOverrides from '@teambit/legacy/dist/consumer/config/consumer-overrides';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport { PathLinuxRelative } from '@teambit/legacy/dist/utils/path';\nimport { assign } from 'comment-json';\nimport { omit, forEach } from 'lodash';\nimport {\n MatchedPatternWithConfig,\n isMatchPattern,\n sortMatchesBySpecificity,\n} from '@teambit/workspace.modules.match-pattern';\nimport { InvalidScopeName, isValidScopeName } from '@teambit/legacy-bit-id';\nimport { VariantsAspect } from './variants.aspect';\n\nexport type Patterns = { [pattern: string]: Record<string, any> };\n\nexport type VariantsComponentConfig = {\n propagate: boolean;\n exclude?: string[];\n defaultScope?: string;\n extensions: ExtensionDataList;\n maxSpecificity: number;\n sortedMatches: MatchedPatternWithConfig[];\n};\n\nconst INTERNAL_FIELDS = ['propagate', 'exclude', 'defaultScope'];\n\nexport class VariantsMain {\n static runtime = MainRuntime;\n static dependencies = [ConfigAspect];\n\n _loadedLegacy: ConsumerOverrides;\n\n constructor(private patterns: Patterns, private configAspect: ConfigMain) {\n this._loadedLegacy = ConsumerOverrides.load(this.patterns);\n this.validateConfig();\n }\n\n private validateConfig() {\n forEach(this.patterns, (patternConfig: Record<string, any>, pattern: string) => {\n if (patternConfig.defaultScope && !isValidScopeName(patternConfig.defaultScope)) {\n throw new InvalidScopeName(patternConfig.defaultScope, undefined, pattern);\n }\n });\n }\n\n raw(): Patterns {\n return this.patterns;\n }\n\n /**\n * Get all the patterns defined in the variants section of the workspace as the legacy ConsumerOverrides format\n */\n legacy(): ConsumerOverrides {\n // return ConsumerOverrides.load(this.patterns);\n return this._loadedLegacy;\n }\n\n /**\n * Gets the config for specific component after merge all matching patterns of the component dir and id in the variants section\n * @param rootDir\n */\n byRootDirAndName(rootDir: PathLinuxRelative, componentName: string): VariantsComponentConfig | undefined {\n const matches: MatchedPatternWithConfig[] = [];\n forEach(this.patterns, (patternConfig, pattern) => {\n const match = isMatchPattern(rootDir, componentName, pattern);\n\n // Ignore matches with exclude matches\n if (match.match && !match.excluded) {\n matches.push({\n config: patternConfig,\n specificity: match.maxSpecificity,\n pattern: match.pattern,\n });\n }\n });\n\n const sortedMatches: MatchedPatternWithConfig[] = sortMatchesBySpecificity(matches);\n\n let defaultScope;\n let propagate = true;\n const extensionsToMerge: ExtensionDataList[] = [];\n sortedMatches.forEach((match) => {\n defaultScope = defaultScope || match.config.defaultScope;\n if (propagate) {\n extensionsToMerge.push(getExtensionFromPatternRawConfig(match.config));\n }\n if (match.config.propagate === false) {\n propagate = false;\n }\n });\n\n const mergedExtensions = ExtensionDataList.mergeConfigs(extensionsToMerge);\n const result = {\n defaultScope,\n extensions: mergedExtensions,\n propagate,\n maxSpecificity: sortedMatches.length ? sortedMatches[0].specificity : -1,\n sortedMatches,\n };\n return result;\n }\n\n /**\n * Updates the specified extension object of the specified variant.\n * @param {string} variant - The variant pattern.\n * @param {string} extensionId - The extension ID.\n * @param {Object} extensionConfig - The extension configuration.\n * @param {boolean} opts.overrideExisting - When true, any existing entries are overriden.\n */\n setExtension(variant: string, extensionId: string, extensionConfig: any, opts?: { overrideExisting?: boolean }) {\n const newVariant = this.patterns[variant] ?? {};\n assign(newVariant, { [extensionId]: extensionConfig });\n assign(this.patterns, { [variant]: newVariant });\n this.configAspect.setExtension(VariantsAspect.id, this.patterns, {\n overrideExisting: opts?.overrideExisting === true,\n ignoreVersion: true,\n });\n }\n\n static async provider([configAspect]: [ConfigMain], config) {\n return new VariantsMain(config, configAspect);\n }\n}\n\nfunction getExtensionFromPatternRawConfig(config: Record<string, any>) {\n const rawExtensions = omit(config, INTERNAL_FIELDS);\n const extensions = ExtensionDataList.fromConfigObject(rawExtensions);\n return extensions;\n}\n\nVariantsAspect.addRuntime(VariantsMain);\n"],"mappings":"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"}
1
+ {"version":3,"names":["_cli","data","require","_config","_consumerOverrides","_interopRequireDefault","_extensionData","_commentJson","_lodash","_workspaceModules","_legacyBitId","_variants","obj","__esModule","default","_defineProperty","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","INTERNAL_FIELDS","VariantsMain","constructor","patterns","configAspect","_loadedLegacy","ConsumerOverrides","load","validateConfig","forEach","patternConfig","pattern","defaultScope","isValidScopeName","InvalidScopeName","raw","legacy","byRootDirAndName","rootDir","componentName","matches","match","isMatchPattern","excluded","push","config","specificity","maxSpecificity","sortedMatches","sortMatchesBySpecificity","propagate","extensionsToMerge","getExtensionFromPatternRawConfig","mergedExtensions","ExtensionDataList","mergeConfigs","result","extensions","length","setExtension","variant","extensionId","extensionConfig","opts","newVariant","assign","VariantsAspect","id","overrideExisting","ignoreVersion","provider","exports","MainRuntime","ConfigAspect","rawExtensions","omit","fromConfigObject","addRuntime"],"sources":["variants.main.runtime.ts"],"sourcesContent":["import { MainRuntime } from '@teambit/cli';\nimport { ConfigAspect } from '@teambit/config';\nimport type { ConfigMain } from '@teambit/config';\nimport ConsumerOverrides from '@teambit/legacy/dist/consumer/config/consumer-overrides';\nimport { ExtensionDataList } from '@teambit/legacy/dist/consumer/config/extension-data';\nimport { PathLinuxRelative } from '@teambit/legacy/dist/utils/path';\nimport { assign } from 'comment-json';\nimport { omit, forEach } from 'lodash';\nimport {\n MatchedPatternWithConfig,\n isMatchPattern,\n sortMatchesBySpecificity,\n} from '@teambit/workspace.modules.match-pattern';\nimport { InvalidScopeName, isValidScopeName } from '@teambit/legacy-bit-id';\nimport { VariantsAspect } from './variants.aspect';\n\nexport type Patterns = { [pattern: string]: Record<string, any> };\n\nexport type VariantsComponentConfig = {\n propagate: boolean;\n exclude?: string[];\n defaultScope?: string;\n extensions: ExtensionDataList;\n maxSpecificity: number;\n sortedMatches: MatchedPatternWithConfig[];\n};\n\nconst INTERNAL_FIELDS = ['propagate', 'exclude', 'defaultScope'];\n\nexport class VariantsMain {\n static runtime = MainRuntime;\n static dependencies = [ConfigAspect];\n\n _loadedLegacy: ConsumerOverrides;\n\n constructor(private patterns: Patterns, private configAspect: ConfigMain) {\n this._loadedLegacy = ConsumerOverrides.load(this.patterns);\n this.validateConfig();\n }\n\n private validateConfig() {\n forEach(this.patterns, (patternConfig: Record<string, any>, pattern: string) => {\n if (patternConfig.defaultScope && !isValidScopeName(patternConfig.defaultScope)) {\n throw new InvalidScopeName(patternConfig.defaultScope, undefined, pattern);\n }\n });\n }\n\n raw(): Patterns {\n return this.patterns;\n }\n\n /**\n * Get all the patterns defined in the variants section of the workspace as the legacy ConsumerOverrides format\n */\n legacy(): ConsumerOverrides {\n // return ConsumerOverrides.load(this.patterns);\n return this._loadedLegacy;\n }\n\n /**\n * Gets the config for specific component after merge all matching patterns of the component dir and id in the variants section\n * @param rootDir\n */\n byRootDirAndName(rootDir: PathLinuxRelative, componentName: string): VariantsComponentConfig | undefined {\n const matches: MatchedPatternWithConfig[] = [];\n forEach(this.patterns, (patternConfig, pattern) => {\n const match = isMatchPattern(rootDir, componentName, pattern);\n\n // Ignore matches with exclude matches\n if (match.match && !match.excluded) {\n matches.push({\n config: patternConfig,\n specificity: match.maxSpecificity,\n pattern: match.pattern,\n });\n }\n });\n\n const sortedMatches: MatchedPatternWithConfig[] = sortMatchesBySpecificity(matches);\n\n let defaultScope;\n let propagate = true;\n const extensionsToMerge: ExtensionDataList[] = [];\n sortedMatches.forEach((match) => {\n defaultScope = defaultScope || match.config.defaultScope;\n if (propagate) {\n extensionsToMerge.push(getExtensionFromPatternRawConfig(match.config));\n }\n if (match.config.propagate === false) {\n propagate = false;\n }\n });\n\n const mergedExtensions = ExtensionDataList.mergeConfigs(extensionsToMerge);\n const result = {\n defaultScope,\n extensions: mergedExtensions,\n propagate,\n maxSpecificity: sortedMatches.length ? sortedMatches[0].specificity : -1,\n sortedMatches,\n };\n return result;\n }\n\n /**\n * Updates the specified extension object of the specified variant.\n * @param {string} variant - The variant pattern.\n * @param {string} extensionId - The extension ID.\n * @param {Object} extensionConfig - The extension configuration.\n * @param {boolean} opts.overrideExisting - When true, any existing entries are overriden.\n */\n setExtension(variant: string, extensionId: string, extensionConfig: any, opts?: { overrideExisting?: boolean }) {\n const newVariant = this.patterns[variant] ?? {};\n assign(newVariant, { [extensionId]: extensionConfig });\n assign(this.patterns, { [variant]: newVariant });\n this.configAspect.setExtension(VariantsAspect.id, this.patterns, {\n overrideExisting: opts?.overrideExisting === true,\n ignoreVersion: true,\n });\n }\n\n static async provider([configAspect]: [ConfigMain], config) {\n return new VariantsMain(config, configAspect);\n }\n}\n\nfunction getExtensionFromPatternRawConfig(config: Record<string, any>) {\n const rawExtensions = omit(config, INTERNAL_FIELDS);\n const extensions = ExtensionDataList.fromConfigObject(rawExtensions);\n return extensions;\n}\n\nVariantsAspect.addRuntime(VariantsMain);\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,22 +1,20 @@
1
1
  {
2
2
  "name": "@teambit/variants",
3
- "version": "0.0.879",
3
+ "version": "0.0.881",
4
4
  "homepage": "https://bit.cloud/teambit/workspace/variants",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.workspace",
8
8
  "name": "variants",
9
- "version": "0.0.879"
9
+ "version": "0.0.881"
10
10
  },
11
11
  "dependencies": {
12
12
  "comment-json": "3.0.3",
13
13
  "lodash": "4.17.21",
14
- "core-js": "^3.0.0",
15
- "@babel/runtime": "7.20.0",
16
14
  "@teambit/harmony": "0.4.6",
17
15
  "@teambit/legacy-bit-id": "1.0.0",
18
- "@teambit/cli": "0.0.772",
19
- "@teambit/config": "0.0.787",
16
+ "@teambit/cli": "0.0.774",
17
+ "@teambit/config": "0.0.789",
20
18
  "@teambit/workspace.modules.match-pattern": "0.0.498"
21
19
  },
22
20
  "devDependencies": {
@@ -30,7 +28,7 @@
30
28
  "@teambit/workspace.content.variants": "1.95.9"
31
29
  },
32
30
  "peerDependencies": {
33
- "@teambit/legacy": "1.0.557",
31
+ "@teambit/legacy": "1.0.559",
34
32
  "react": "^16.8.0 || ^17.0.0",
35
33
  "react-dom": "^16.8.0 || ^17.0.0"
36
34
  },