@teambit/stash 0.0.96 → 0.0.98
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/stash-data.js +0 -2
- package/dist/stash-data.js.map +1 -1
- package/dist/stash-files.js +1 -4
- package/dist/stash-files.js.map +1 -1
- package/dist/stash.cmd.js +21 -28
- package/dist/stash.cmd.js.map +1 -1
- package/dist/stash.main.runtime.js +8 -14
- package/dist/stash.main.runtime.js.map +1 -1
- package/package.json +8 -10
- /package/dist/{preview-1694575035715.js → preview-1694661423555.js} +0 -0
package/dist/stash-data.js
CHANGED
package/dist/stash-data.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_componentId","data","require","_objects","StashData","constructor","metadata","stashCompsData","toObject","map","id","hash","changeVersion","undefined","toString","fromObject","obj","workspace","Promise","all","compData","ComponentID","resolved","resolveComponentId","Ref","from","exports"],"sources":["stash-data.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport { Ref } from '@teambit/legacy/dist/scope/objects';\nimport { Workspace } from '@teambit/workspace';\n\nexport type StashCompData = { id: ComponentID; hash: Ref };\nexport type StashMetadata = { message?: string };\n\nexport class StashData {\n constructor(readonly metadata: StashMetadata, readonly stashCompsData: StashCompData[]) {}\n\n toObject() {\n return {\n metadata: this.metadata,\n stashCompsData: this.stashCompsData.map(({ id, hash }) => ({\n // id: { scope: id._legacy.scope, name: id.fullName },\n id: id.changeVersion(undefined).toObject(),\n hash: hash.toString(),\n })),\n };\n }\n\n static async fromObject(obj: Record<string, any>, workspace: Workspace): Promise<StashData> {\n const stashCompsData = await Promise.all(\n obj.stashCompsData.map(async (compData) => {\n const id = ComponentID.fromObject(compData.id);\n const resolved = await workspace.resolveComponentId(id);\n return {\n id: resolved,\n hash: Ref.from(compData.hash),\n };\n })\n );\n return new StashData(obj.metadata, stashCompsData);\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_componentId","data","require","_objects","StashData","constructor","metadata","stashCompsData","toObject","map","id","hash","changeVersion","undefined","toString","fromObject","obj","workspace","Promise","all","compData","ComponentID","resolved","resolveComponentId","Ref","from","exports"],"sources":["stash-data.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component-id';\nimport { Ref } from '@teambit/legacy/dist/scope/objects';\nimport { Workspace } from '@teambit/workspace';\n\nexport type StashCompData = { id: ComponentID; hash: Ref };\nexport type StashMetadata = { message?: string };\n\nexport class StashData {\n constructor(readonly metadata: StashMetadata, readonly stashCompsData: StashCompData[]) {}\n\n toObject() {\n return {\n metadata: this.metadata,\n stashCompsData: this.stashCompsData.map(({ id, hash }) => ({\n // id: { scope: id._legacy.scope, name: id.fullName },\n id: id.changeVersion(undefined).toObject(),\n hash: hash.toString(),\n })),\n };\n }\n\n static async fromObject(obj: Record<string, any>, workspace: Workspace): Promise<StashData> {\n const stashCompsData = await Promise.all(\n obj.stashCompsData.map(async (compData) => {\n const id = ComponentID.fromObject(compData.id);\n const resolved = await workspace.resolveComponentId(id);\n return {\n id: resolved,\n hash: Ref.from(compData.hash),\n };\n })\n );\n return new StashData(obj.metadata, stashCompsData);\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,aAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,YAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,SAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,QAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAMO,MAAMG,SAAS,CAAC;EACrBC,WAAWA,CAAUC,QAAuB,EAAWC,cAA+B,EAAE;IAAA,KAAnED,QAAuB,GAAvBA,QAAuB;IAAA,KAAWC,cAA+B,GAA/BA,cAA+B;EAAG;EAEzFC,QAAQA,CAAA,EAAG;IACT,OAAO;MACLF,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBC,cAAc,EAAE,IAAI,CAACA,cAAc,CAACE,GAAG,CAAC,CAAC;QAAEC,EAAE;QAAEC;MAAK,CAAC,MAAM;QACzD;QACAD,EAAE,EAAEA,EAAE,CAACE,aAAa,CAACC,SAAS,CAAC,CAACL,QAAQ,CAAC,CAAC;QAC1CG,IAAI,EAAEA,IAAI,CAACG,QAAQ,CAAC;MACtB,CAAC,CAAC;IACJ,CAAC;EACH;EAEA,aAAaC,UAAUA,CAACC,GAAwB,EAAEC,SAAoB,EAAsB;IAC1F,MAAMV,cAAc,GAAG,MAAMW,OAAO,CAACC,GAAG,CACtCH,GAAG,CAACT,cAAc,CAACE,GAAG,CAAC,MAAOW,QAAQ,IAAK;MACzC,MAAMV,EAAE,GAAGW,0BAAW,CAACN,UAAU,CAACK,QAAQ,CAACV,EAAE,CAAC;MAC9C,MAAMY,QAAQ,GAAG,MAAML,SAAS,CAACM,kBAAkB,CAACb,EAAE,CAAC;MACvD,OAAO;QACLA,EAAE,EAAEY,QAAQ;QACZX,IAAI,EAAEa,cAAG,CAACC,IAAI,CAACL,QAAQ,CAACT,IAAI;MAC9B,CAAC;IACH,CAAC,CACH,CAAC;IACD,OAAO,IAAIP,SAAS,CAACY,GAAG,CAACV,QAAQ,EAAEC,cAAc,CAAC;EACpD;AACF;AAACmB,OAAA,CAAAtB,SAAA,GAAAA,SAAA"}
|
package/dist/stash-files.js
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
require("core-js/modules/es.array.sort.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
|
});
|
|
@@ -36,6 +32,7 @@ function _stashData() {
|
|
|
36
32
|
};
|
|
37
33
|
return data;
|
|
38
34
|
}
|
|
35
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
39
36
|
const STASH_DIR = 'stash';
|
|
40
37
|
const STASH_FILE_PREFIX = 'stash';
|
|
41
38
|
class StashFiles {
|
package/dist/stash-files.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_globby","data","_interopRequireDefault","require","_path","_fsExtra","_stashData","STASH_DIR","STASH_FILE_PREFIX","StashFiles","constructor","workspace","getPath","path","join","scope","getStashFiles","stashPath","files","globby","cwd","getLatestStashFile","latest","sort","pop","getNextStashFileName","latestIndex","parseInt","split","deleteStashFile","filename","fs","remove","saveStashData","stashData","nextStashFile","filePath","outputFile","JSON","stringify","toObject","undefined","getStashData","content","readFile","parse","StashData","fromObject","exports"],"sources":["stash-files.ts"],"sourcesContent":["import { Workspace } from '@teambit/workspace';\nimport globby from 'globby';\nimport path from 'path';\nimport fs from 'fs-extra';\nimport { StashData } from './stash-data';\n\nconst STASH_DIR = 'stash';\nconst STASH_FILE_PREFIX = 'stash';\n\nexport class StashFiles {\n constructor(private workspace: Workspace) {}\n\n getPath() {\n return path.join(this.workspace.scope.path, STASH_DIR);\n }\n\n async getStashFiles(): Promise<string[]> {\n const stashPath = this.getPath();\n const files = await globby(`${STASH_FILE_PREFIX}-*`, { cwd: stashPath });\n return files;\n }\n\n async getLatestStashFile(): Promise<string | undefined> {\n const files = await this.getStashFiles();\n const latest = files.sort().pop();\n return latest;\n }\n\n async getNextStashFileName(): Promise<string> {\n const latest = await this.getLatestStashFile();\n const latestIndex = latest ? parseInt(latest.split('-')[1]) : 0;\n return `${STASH_FILE_PREFIX}-${latestIndex + 1}.json`;\n }\n\n async deleteStashFile(filename: string) {\n await fs.remove(path.join(this.getPath(), filename));\n }\n\n async saveStashData(stashData: StashData) {\n const nextStashFile = await this.getNextStashFileName();\n const stashPath = this.getPath();\n const filePath = path.join(stashPath, nextStashFile);\n await fs.outputFile(filePath, JSON.stringify(stashData.toObject(), undefined, 4));\n }\n\n async getStashData(filename: string): Promise<StashData> {\n const stashPath = this.getPath();\n const filePath = path.join(stashPath, filename);\n const content = await fs.readFile(filePath, 'utf8');\n const data = JSON.parse(content);\n return StashData.fromObject(data, this.workspace);\n }\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_globby","data","_interopRequireDefault","require","_path","_fsExtra","_stashData","obj","__esModule","default","STASH_DIR","STASH_FILE_PREFIX","StashFiles","constructor","workspace","getPath","path","join","scope","getStashFiles","stashPath","files","globby","cwd","getLatestStashFile","latest","sort","pop","getNextStashFileName","latestIndex","parseInt","split","deleteStashFile","filename","fs","remove","saveStashData","stashData","nextStashFile","filePath","outputFile","JSON","stringify","toObject","undefined","getStashData","content","readFile","parse","StashData","fromObject","exports"],"sources":["stash-files.ts"],"sourcesContent":["import { Workspace } from '@teambit/workspace';\nimport globby from 'globby';\nimport path from 'path';\nimport fs from 'fs-extra';\nimport { StashData } from './stash-data';\n\nconst STASH_DIR = 'stash';\nconst STASH_FILE_PREFIX = 'stash';\n\nexport class StashFiles {\n constructor(private workspace: Workspace) {}\n\n getPath() {\n return path.join(this.workspace.scope.path, STASH_DIR);\n }\n\n async getStashFiles(): Promise<string[]> {\n const stashPath = this.getPath();\n const files = await globby(`${STASH_FILE_PREFIX}-*`, { cwd: stashPath });\n return files;\n }\n\n async getLatestStashFile(): Promise<string | undefined> {\n const files = await this.getStashFiles();\n const latest = files.sort().pop();\n return latest;\n }\n\n async getNextStashFileName(): Promise<string> {\n const latest = await this.getLatestStashFile();\n const latestIndex = latest ? parseInt(latest.split('-')[1]) : 0;\n return `${STASH_FILE_PREFIX}-${latestIndex + 1}.json`;\n }\n\n async deleteStashFile(filename: string) {\n await fs.remove(path.join(this.getPath(), filename));\n }\n\n async saveStashData(stashData: StashData) {\n const nextStashFile = await this.getNextStashFileName();\n const stashPath = this.getPath();\n const filePath = path.join(stashPath, nextStashFile);\n await fs.outputFile(filePath, JSON.stringify(stashData.toObject(), undefined, 4));\n }\n\n async getStashData(filename: string): Promise<StashData> {\n const stashPath = this.getPath();\n const filePath = path.join(stashPath, filename);\n const content = await fs.readFile(filePath, 'utf8');\n const data = JSON.parse(content);\n return StashData.fromObject(data, this.workspace);\n }\n}\n"],"mappings":"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"}
|
package/dist/stash.cmd.js
CHANGED
|
@@ -1,18 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
require("core-js/modules/es.promise.js");
|
|
5
3
|
Object.defineProperty(exports, "__esModule", {
|
|
6
4
|
value: true
|
|
7
5
|
});
|
|
8
6
|
exports.StashSaveCmd = exports.StashLoadCmd = exports.StashCmd = void 0;
|
|
9
|
-
function _defineProperty2() {
|
|
10
|
-
const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
_defineProperty2 = function () {
|
|
12
|
-
return data;
|
|
13
|
-
};
|
|
14
|
-
return data;
|
|
15
|
-
}
|
|
16
7
|
function _chalk() {
|
|
17
8
|
const data = _interopRequireDefault(require("chalk"));
|
|
18
9
|
_chalk = function () {
|
|
@@ -27,16 +18,18 @@ function _constants() {
|
|
|
27
18
|
};
|
|
28
19
|
return data;
|
|
29
20
|
}
|
|
30
|
-
|
|
31
|
-
|
|
21
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
22
|
+
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; }
|
|
23
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
24
|
+
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); } // eslint-disable-next-line max-classes-per-file
|
|
32
25
|
class StashSaveCmd {
|
|
33
26
|
constructor(stash) {
|
|
34
27
|
this.stash = stash;
|
|
35
|
-
(
|
|
36
|
-
(
|
|
37
|
-
(
|
|
38
|
-
(
|
|
39
|
-
(
|
|
28
|
+
_defineProperty(this, "name", 'save');
|
|
29
|
+
_defineProperty(this, "description", 'stash modified components');
|
|
30
|
+
_defineProperty(this, "group", 'development');
|
|
31
|
+
_defineProperty(this, "options", [['p', 'pattern', _constants().COMPONENT_PATTERN_HELP], ['m', 'message <string>', 'message to be attached to the stashed components']]);
|
|
32
|
+
_defineProperty(this, "loader", true);
|
|
40
33
|
}
|
|
41
34
|
async report(_arg, {
|
|
42
35
|
pattern,
|
|
@@ -53,11 +46,11 @@ exports.StashSaveCmd = StashSaveCmd;
|
|
|
53
46
|
class StashLoadCmd {
|
|
54
47
|
constructor(stash) {
|
|
55
48
|
this.stash = stash;
|
|
56
|
-
(
|
|
57
|
-
(
|
|
58
|
-
(
|
|
59
|
-
(
|
|
60
|
-
(
|
|
49
|
+
_defineProperty(this, "name", 'load');
|
|
50
|
+
_defineProperty(this, "description", 'load latest stash, checkout components and delete stash');
|
|
51
|
+
_defineProperty(this, "group", 'development');
|
|
52
|
+
_defineProperty(this, "options", []);
|
|
53
|
+
_defineProperty(this, "loader", true);
|
|
61
54
|
}
|
|
62
55
|
async report() {
|
|
63
56
|
const compIds = await this.stash.loadLatest();
|
|
@@ -68,14 +61,14 @@ exports.StashLoadCmd = StashLoadCmd;
|
|
|
68
61
|
class StashCmd {
|
|
69
62
|
constructor(stash) {
|
|
70
63
|
this.stash = stash;
|
|
71
|
-
(
|
|
72
|
-
(
|
|
73
|
-
(
|
|
74
|
-
(
|
|
64
|
+
_defineProperty(this, "name", 'stash [sub-command]');
|
|
65
|
+
_defineProperty(this, "description", 'EXPERIMENTAL (more like a POC). stash modified components');
|
|
66
|
+
_defineProperty(this, "group", 'development');
|
|
67
|
+
_defineProperty(this, "private", true);
|
|
75
68
|
// too early to make it public. it's still in a POC mode.
|
|
76
|
-
(
|
|
77
|
-
(
|
|
78
|
-
(
|
|
69
|
+
_defineProperty(this, "options", [['p', 'pattern', _constants().COMPONENT_PATTERN_HELP], ['m', 'message <string>', 'message to be attached to the stashed components']]);
|
|
70
|
+
_defineProperty(this, "loader", true);
|
|
71
|
+
_defineProperty(this, "commands", []);
|
|
79
72
|
}
|
|
80
73
|
async report(_arg, {
|
|
81
74
|
pattern,
|
package/dist/stash.cmd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_constants","
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_constants","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","StashSaveCmd","constructor","stash","COMPONENT_PATTERN_HELP","report","_arg","pattern","message","compIds","save","chalk","green","length","exports","StashLoadCmd","loadLatest","StashCmd"],"sources":["stash.cmd.ts"],"sourcesContent":["// eslint-disable-next-line max-classes-per-file\nimport chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { COMPONENT_PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport { StashMain } from './stash.main.runtime';\n\nexport class StashSaveCmd implements Command {\n name = 'save';\n description = 'stash modified components';\n group = 'development';\n options = [\n ['p', 'pattern', COMPONENT_PATTERN_HELP],\n ['m', 'message <string>', 'message to be attached to the stashed components'],\n ] as CommandOptions;\n loader = true;\n\n constructor(private stash: StashMain) {}\n\n async report(\n _arg: any,\n {\n pattern,\n message,\n }: {\n pattern?: string;\n message?: string;\n }\n ) {\n const compIds = await this.stash.save({ pattern, message });\n return chalk.green(`stashed ${compIds.length} components`);\n }\n}\n\nexport class StashLoadCmd implements Command {\n name = 'load';\n description = 'load latest stash, checkout components and delete stash';\n group = 'development';\n options = [] as CommandOptions;\n loader = true;\n\n constructor(private stash: StashMain) {}\n\n async report() {\n const compIds = await this.stash.loadLatest();\n return chalk.green(`checked out ${compIds.length} components according to the latest stash`);\n }\n}\n\nexport class StashCmd implements Command {\n name = 'stash [sub-command]';\n description = 'EXPERIMENTAL (more like a POC). stash modified components';\n group = 'development';\n private = true; // too early to make it public. it's still in a POC mode.\n options = [\n ['p', 'pattern', COMPONENT_PATTERN_HELP],\n ['m', 'message <string>', 'message to be attached to the stashed components'],\n ] as CommandOptions;\n loader = true;\n commands: Command[] = [];\n\n constructor(private stash: StashMain) {}\n\n async report(\n _arg: any,\n {\n pattern,\n message,\n }: {\n pattern?: string;\n message?: string;\n }\n ) {\n return new StashSaveCmd(this.stash).report(undefined, { pattern, message });\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,19 +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
3
|
Object.defineProperty(exports, "__esModule", {
|
|
7
4
|
value: true
|
|
8
5
|
});
|
|
9
6
|
exports.default = exports.StashMain = void 0;
|
|
10
|
-
function _defineProperty2() {
|
|
11
|
-
const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
|
-
_defineProperty2 = function () {
|
|
13
|
-
return data;
|
|
14
|
-
};
|
|
15
|
-
return data;
|
|
16
|
-
}
|
|
17
7
|
function _workspace() {
|
|
18
8
|
const data = _interopRequireDefault(require("@teambit/workspace"));
|
|
19
9
|
_workspace = function () {
|
|
@@ -84,12 +74,16 @@ function _stashFiles() {
|
|
|
84
74
|
};
|
|
85
75
|
return data;
|
|
86
76
|
}
|
|
77
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
78
|
+
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; }
|
|
79
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
80
|
+
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); }
|
|
87
81
|
class StashMain {
|
|
88
82
|
constructor(workspace, checkout, snapping) {
|
|
89
83
|
this.workspace = workspace;
|
|
90
84
|
this.checkout = checkout;
|
|
91
85
|
this.snapping = snapping;
|
|
92
|
-
(
|
|
86
|
+
_defineProperty(this, "stashFiles", void 0);
|
|
93
87
|
this.stashFiles = new (_stashFiles().StashFiles)(workspace);
|
|
94
88
|
}
|
|
95
89
|
async save(options) {
|
|
@@ -166,9 +160,9 @@ class StashMain {
|
|
|
166
160
|
}
|
|
167
161
|
}
|
|
168
162
|
exports.StashMain = StashMain;
|
|
169
|
-
(
|
|
170
|
-
(
|
|
171
|
-
(
|
|
163
|
+
_defineProperty(StashMain, "slots", []);
|
|
164
|
+
_defineProperty(StashMain, "dependencies", [_cli().CLIAspect, _workspace().default, _checkout().default, _snapping().default]);
|
|
165
|
+
_defineProperty(StashMain, "runtime", _cli().MainRuntime);
|
|
172
166
|
_stash().StashAspect.addRuntime(StashMain);
|
|
173
167
|
var _default = StashMain;
|
|
174
168
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_workspace","data","_interopRequireDefault","require","_snapping","_bitError","_lodash","_cli","_checkout","_stash","_stash2","_stashData","_stashFiles","StashMain","constructor","workspace","checkout","snapping","_defineProperty2","default","stashFiles","StashFiles","save","options","compIds","pattern","idsByPattern","listIds","comps","getMany","modifiedComps","compact","Promise","all","map","comp","head","undefined","isModified","length","consumeComponents","state","_consumer","_addFlattenedDependenciesToComponents","hashPerId","versionObj","addComponentDataToRepo","id","hash","scope","legacyScope","objects","persist","stashData","StashData","message","saveStashData","modifiedCompIds","c","ids","skipNpmInstall","reset","loadLatest","stashFile","getLatestStashFile","BitError","getStashData","stashCompsData","versionPerId","changeVersion","toString","skipUpdatingBitmap","deleteStashFile","component","consumerComponent","clone","setNewVersion","version","files","sources","consumerComponentToVersion","repo","add","forEach","file","provider","cli","stashMain","stashCmd","StashCmd","commands","StashSaveCmd","StashLoadCmd","register","exports","CLIAspect","WorkspaceAspect","CheckoutAspect","SnappingAspect","MainRuntime","StashAspect","addRuntime","_default"],"sources":["stash.main.runtime.ts"],"sourcesContent":["import WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport SnappingAspect, { SnappingMain } from '@teambit/snapping';\nimport { Component, ComponentID } from '@teambit/component';\nimport { BitError } from '@teambit/bit-error';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { compact } from 'lodash';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport CheckoutAspect, { CheckoutMain } from '@teambit/checkout';\nimport { StashAspect } from './stash.aspect';\nimport { StashCmd, StashLoadCmd, StashSaveCmd } from './stash.cmd';\nimport { StashData } from './stash-data';\nimport { StashFiles } from './stash-files';\n\nexport class StashMain {\n private stashFiles: StashFiles;\n constructor(private workspace: Workspace, private checkout: CheckoutMain, private snapping: SnappingMain) {\n this.stashFiles = new StashFiles(workspace);\n }\n\n async save(options: { message?: string; pattern?: string }): Promise<ComponentID[]> {\n const compIds = options?.pattern\n ? await this.workspace.idsByPattern(options?.pattern)\n : await this.workspace.listIds();\n const comps = await this.workspace.getMany(compIds);\n const modifiedComps = compact(\n await Promise.all(\n comps.map(async (comp) => {\n if (!comp.head) return undefined; // it's new\n const isModified = await this.workspace.isModified(comp);\n if (isModified) return comp;\n return undefined;\n })\n )\n );\n if (!modifiedComps.length) return [];\n\n // per comp: create Version object, save it in the local scope and return the hash. don't save anything in the .bitmap\n const consumeComponents = modifiedComps.map((comp) => comp.state._consumer);\n await this.snapping._addFlattenedDependenciesToComponents(consumeComponents);\n const hashPerId = await Promise.all(\n modifiedComps.map(async (comp) => {\n const versionObj = await this.addComponentDataToRepo(comp);\n return { id: comp.id, hash: versionObj.hash() };\n })\n );\n await this.workspace.scope.legacyScope.objects.persist();\n const stashData = new StashData({ message: options?.message }, hashPerId);\n await this.stashFiles.saveStashData(stashData);\n\n // reset all modified components\n const modifiedCompIds = modifiedComps.map((c) => c.id);\n await this.checkout.checkout({\n ids: modifiedCompIds,\n skipNpmInstall: true,\n reset: true,\n });\n\n return modifiedCompIds;\n }\n\n async loadLatest() {\n const stashFile = await this.stashFiles.getLatestStashFile();\n if (!stashFile) {\n throw new BitError('no stashed components found');\n }\n const stashData = await this.stashFiles.getStashData(stashFile);\n const compIds = stashData.stashCompsData.map((c) => c.id);\n const versionPerId = stashData.stashCompsData.map((c) => c.id.changeVersion(c.hash.toString()));\n\n await this.checkout.checkout({\n ids: compIds,\n skipNpmInstall: true,\n versionPerId,\n skipUpdatingBitmap: true,\n });\n\n await this.stashFiles.deleteStashFile(stashFile);\n\n return compIds;\n }\n\n private async addComponentDataToRepo(component: Component) {\n const consumerComponent = component.state._consumer.clone() as ConsumerComponent;\n consumerComponent.setNewVersion();\n const { version, files } = await this.workspace.scope.legacyScope.sources.consumerComponentToVersion(\n consumerComponent\n );\n const repo = this.workspace.scope.legacyScope.objects;\n repo.add(version);\n files.forEach((file) => repo.add(file.file));\n return version;\n }\n\n static slots = [];\n static dependencies = [CLIAspect, WorkspaceAspect, CheckoutAspect, SnappingAspect];\n static runtime = MainRuntime;\n static async provider([cli, workspace, checkout, snapping]: [CLIMain, Workspace, CheckoutMain, SnappingMain]) {\n const stashMain = new StashMain(workspace, checkout, snapping);\n const stashCmd = new StashCmd(stashMain);\n stashCmd.commands = [new StashSaveCmd(stashMain), new StashLoadCmd(stashMain)];\n cli.register(stashCmd);\n return stashMain;\n }\n}\n\nStashAspect.addRuntime(StashMain);\n\nexport default StashMain;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,SAAAA,WAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,UAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAC,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAI,UAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAK,QAAA;EAAA,MAAAL,IAAA,GAAAE,OAAA;EAAAG,OAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,KAAA;EAAA,MAAAN,IAAA,GAAAE,OAAA;EAAAI,IAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,UAAA;EAAA,MAAAP,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAK,SAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,OAAA;EAAA,MAAAR,IAAA,GAAAE,OAAA;EAAAM,MAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAS,QAAA;EAAA,MAAAT,IAAA,GAAAE,OAAA;EAAAO,OAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAU,WAAA;EAAA,MAAAV,IAAA,GAAAE,OAAA;EAAAQ,UAAA,YAAAA,CAAA;IAAA,OAAAV,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAW,YAAA;EAAA,MAAAX,IAAA,GAAAE,OAAA;EAAAS,WAAA,YAAAA,CAAA;IAAA,OAAAX,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMY,SAAS,CAAC;EAErBC,WAAWA,CAASC,SAAoB,EAAUC,QAAsB,EAAUC,QAAsB,EAAE;IAAA,KAAtFF,SAAoB,GAApBA,SAAoB;IAAA,KAAUC,QAAsB,GAAtBA,QAAsB;IAAA,KAAUC,QAAsB,GAAtBA,QAAsB;IAAA,IAAAC,gBAAA,GAAAC,OAAA;IACtG,IAAI,CAACC,UAAU,GAAG,KAAIC,wBAAU,EAACN,SAAS,CAAC;EAC7C;EAEA,MAAMO,IAAIA,CAACC,OAA+C,EAA0B;IAClF,MAAMC,OAAO,GAAGD,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEE,OAAO,GAC5B,MAAM,IAAI,CAACV,SAAS,CAACW,YAAY,CAACH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEE,OAAO,CAAC,GACnD,MAAM,IAAI,CAACV,SAAS,CAACY,OAAO,CAAC,CAAC;IAClC,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACb,SAAS,CAACc,OAAO,CAACL,OAAO,CAAC;IACnD,MAAMM,aAAa,GAAG,IAAAC,iBAAO,EAC3B,MAAMC,OAAO,CAACC,GAAG,CACfL,KAAK,CAACM,GAAG,CAAC,MAAOC,IAAI,IAAK;MACxB,IAAI,CAACA,IAAI,CAACC,IAAI,EAAE,OAAOC,SAAS,CAAC,CAAC;MAClC,MAAMC,UAAU,GAAG,MAAM,IAAI,CAACvB,SAAS,CAACuB,UAAU,CAACH,IAAI,CAAC;MACxD,IAAIG,UAAU,EAAE,OAAOH,IAAI;MAC3B,OAAOE,SAAS;IAClB,CAAC,CACH,CACF,CAAC;IACD,IAAI,CAACP,aAAa,CAACS,MAAM,EAAE,OAAO,EAAE;;IAEpC;IACA,MAAMC,iBAAiB,GAAGV,aAAa,CAACI,GAAG,CAAEC,IAAI,IAAKA,IAAI,CAACM,KAAK,CAACC,SAAS,CAAC;IAC3E,MAAM,IAAI,CAACzB,QAAQ,CAAC0B,qCAAqC,CAACH,iBAAiB,CAAC;IAC5E,MAAMI,SAAS,GAAG,MAAMZ,OAAO,CAACC,GAAG,CACjCH,aAAa,CAACI,GAAG,CAAC,MAAOC,IAAI,IAAK;MAChC,MAAMU,UAAU,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAACX,IAAI,CAAC;MAC1D,OAAO;QAAEY,EAAE,EAAEZ,IAAI,CAACY,EAAE;QAAEC,IAAI,EAAEH,UAAU,CAACG,IAAI,CAAC;MAAE,CAAC;IACjD,CAAC,CACH,CAAC;IACD,MAAM,IAAI,CAACjC,SAAS,CAACkC,KAAK,CAACC,WAAW,CAACC,OAAO,CAACC,OAAO,CAAC,CAAC;IACxD,MAAMC,SAAS,GAAG,KAAIC,sBAAS,EAAC;MAAEC,OAAO,EAAEhC,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEgC;IAAQ,CAAC,EAAEX,SAAS,CAAC;IACzE,MAAM,IAAI,CAACxB,UAAU,CAACoC,aAAa,CAACH,SAAS,CAAC;;IAE9C;IACA,MAAMI,eAAe,GAAG3B,aAAa,CAACI,GAAG,CAAEwB,CAAC,IAAKA,CAAC,CAACX,EAAE,CAAC;IACtD,MAAM,IAAI,CAAC/B,QAAQ,CAACA,QAAQ,CAAC;MAC3B2C,GAAG,EAAEF,eAAe;MACpBG,cAAc,EAAE,IAAI;MACpBC,KAAK,EAAE;IACT,CAAC,CAAC;IAEF,OAAOJ,eAAe;EACxB;EAEA,MAAMK,UAAUA,CAAA,EAAG;IACjB,MAAMC,SAAS,GAAG,MAAM,IAAI,CAAC3C,UAAU,CAAC4C,kBAAkB,CAAC,CAAC;IAC5D,IAAI,CAACD,SAAS,EAAE;MACd,MAAM,KAAIE,oBAAQ,EAAC,6BAA6B,CAAC;IACnD;IACA,MAAMZ,SAAS,GAAG,MAAM,IAAI,CAACjC,UAAU,CAAC8C,YAAY,CAACH,SAAS,CAAC;IAC/D,MAAMvC,OAAO,GAAG6B,SAAS,CAACc,cAAc,CAACjC,GAAG,CAAEwB,CAAC,IAAKA,CAAC,CAACX,EAAE,CAAC;IACzD,MAAMqB,YAAY,GAAGf,SAAS,CAACc,cAAc,CAACjC,GAAG,CAAEwB,CAAC,IAAKA,CAAC,CAACX,EAAE,CAACsB,aAAa,CAACX,CAAC,CAACV,IAAI,CAACsB,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE/F,MAAM,IAAI,CAACtD,QAAQ,CAACA,QAAQ,CAAC;MAC3B2C,GAAG,EAAEnC,OAAO;MACZoC,cAAc,EAAE,IAAI;MACpBQ,YAAY;MACZG,kBAAkB,EAAE;IACtB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACnD,UAAU,CAACoD,eAAe,CAACT,SAAS,CAAC;IAEhD,OAAOvC,OAAO;EAChB;EAEA,MAAcsB,sBAAsBA,CAAC2B,SAAoB,EAAE;IACzD,MAAMC,iBAAiB,GAAGD,SAAS,CAAChC,KAAK,CAACC,SAAS,CAACiC,KAAK,CAAC,CAAsB;IAChFD,iBAAiB,CAACE,aAAa,CAAC,CAAC;IACjC,MAAM;MAAEC,OAAO;MAAEC;IAAM,CAAC,GAAG,MAAM,IAAI,CAAC/D,SAAS,CAACkC,KAAK,CAACC,WAAW,CAAC6B,OAAO,CAACC,0BAA0B,CAClGN,iBACF,CAAC;IACD,MAAMO,IAAI,GAAG,IAAI,CAAClE,SAAS,CAACkC,KAAK,CAACC,WAAW,CAACC,OAAO;IACrD8B,IAAI,CAACC,GAAG,CAACL,OAAO,CAAC;IACjBC,KAAK,CAACK,OAAO,CAAEC,IAAI,IAAKH,IAAI,CAACC,GAAG,CAACE,IAAI,CAACA,IAAI,CAAC,CAAC;IAC5C,OAAOP,OAAO;EAChB;EAKA,aAAaQ,QAAQA,CAAC,CAACC,GAAG,EAAEvE,SAAS,EAAEC,QAAQ,EAAEC,QAAQ,CAAmD,EAAE;IAC5G,MAAMsE,SAAS,GAAG,IAAI1E,SAAS,CAACE,SAAS,EAAEC,QAAQ,EAAEC,QAAQ,CAAC;IAC9D,MAAMuE,QAAQ,GAAG,KAAIC,kBAAQ,EAACF,SAAS,CAAC;IACxCC,QAAQ,CAACE,QAAQ,GAAG,CAAC,KAAIC,sBAAY,EAACJ,SAAS,CAAC,EAAE,KAAIK,sBAAY,EAACL,SAAS,CAAC,CAAC;IAC9ED,GAAG,CAACO,QAAQ,CAACL,QAAQ,CAAC;IACtB,OAAOD,SAAS;EAClB;AACF;AAACO,OAAA,CAAAjF,SAAA,GAAAA,SAAA;AAAA,IAAAK,gBAAA,GAAAC,OAAA,EA1FYN,SAAS,WAgFL,EAAE;AAAA,IAAAK,gBAAA,GAAAC,OAAA,EAhFNN,SAAS,kBAiFE,CAACkF,gBAAS,EAAEC,oBAAe,EAAEC,mBAAc,EAAEC,mBAAc,CAAC;AAAA,IAAAhF,gBAAA,GAAAC,OAAA,EAjFvEN,SAAS,aAkFHsF,kBAAW;AAU9BC,oBAAW,CAACC,UAAU,CAACxF,SAAS,CAAC;AAAC,IAAAyF,QAAA,GAEnBzF,SAAS;AAAAiF,OAAA,CAAA3E,OAAA,GAAAmF,QAAA"}
|
|
1
|
+
{"version":3,"names":["_workspace","data","_interopRequireDefault","require","_snapping","_bitError","_lodash","_cli","_checkout","_stash","_stash2","_stashData","_stashFiles","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","StashMain","constructor","workspace","checkout","snapping","stashFiles","StashFiles","save","options","compIds","pattern","idsByPattern","listIds","comps","getMany","modifiedComps","compact","Promise","all","map","comp","head","isModified","length","consumeComponents","state","_consumer","_addFlattenedDependenciesToComponents","hashPerId","versionObj","addComponentDataToRepo","id","hash","scope","legacyScope","objects","persist","stashData","StashData","message","saveStashData","modifiedCompIds","c","ids","skipNpmInstall","reset","loadLatest","stashFile","getLatestStashFile","BitError","getStashData","stashCompsData","versionPerId","changeVersion","toString","skipUpdatingBitmap","deleteStashFile","component","consumerComponent","clone","setNewVersion","version","files","sources","consumerComponentToVersion","repo","add","forEach","file","provider","cli","stashMain","stashCmd","StashCmd","commands","StashSaveCmd","StashLoadCmd","register","exports","CLIAspect","WorkspaceAspect","CheckoutAspect","SnappingAspect","MainRuntime","StashAspect","addRuntime","_default"],"sources":["stash.main.runtime.ts"],"sourcesContent":["import WorkspaceAspect, { Workspace } from '@teambit/workspace';\nimport SnappingAspect, { SnappingMain } from '@teambit/snapping';\nimport { Component, ComponentID } from '@teambit/component';\nimport { BitError } from '@teambit/bit-error';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport { compact } from 'lodash';\nimport { CLIAspect, CLIMain, MainRuntime } from '@teambit/cli';\nimport CheckoutAspect, { CheckoutMain } from '@teambit/checkout';\nimport { StashAspect } from './stash.aspect';\nimport { StashCmd, StashLoadCmd, StashSaveCmd } from './stash.cmd';\nimport { StashData } from './stash-data';\nimport { StashFiles } from './stash-files';\n\nexport class StashMain {\n private stashFiles: StashFiles;\n constructor(private workspace: Workspace, private checkout: CheckoutMain, private snapping: SnappingMain) {\n this.stashFiles = new StashFiles(workspace);\n }\n\n async save(options: { message?: string; pattern?: string }): Promise<ComponentID[]> {\n const compIds = options?.pattern\n ? await this.workspace.idsByPattern(options?.pattern)\n : await this.workspace.listIds();\n const comps = await this.workspace.getMany(compIds);\n const modifiedComps = compact(\n await Promise.all(\n comps.map(async (comp) => {\n if (!comp.head) return undefined; // it's new\n const isModified = await this.workspace.isModified(comp);\n if (isModified) return comp;\n return undefined;\n })\n )\n );\n if (!modifiedComps.length) return [];\n\n // per comp: create Version object, save it in the local scope and return the hash. don't save anything in the .bitmap\n const consumeComponents = modifiedComps.map((comp) => comp.state._consumer);\n await this.snapping._addFlattenedDependenciesToComponents(consumeComponents);\n const hashPerId = await Promise.all(\n modifiedComps.map(async (comp) => {\n const versionObj = await this.addComponentDataToRepo(comp);\n return { id: comp.id, hash: versionObj.hash() };\n })\n );\n await this.workspace.scope.legacyScope.objects.persist();\n const stashData = new StashData({ message: options?.message }, hashPerId);\n await this.stashFiles.saveStashData(stashData);\n\n // reset all modified components\n const modifiedCompIds = modifiedComps.map((c) => c.id);\n await this.checkout.checkout({\n ids: modifiedCompIds,\n skipNpmInstall: true,\n reset: true,\n });\n\n return modifiedCompIds;\n }\n\n async loadLatest() {\n const stashFile = await this.stashFiles.getLatestStashFile();\n if (!stashFile) {\n throw new BitError('no stashed components found');\n }\n const stashData = await this.stashFiles.getStashData(stashFile);\n const compIds = stashData.stashCompsData.map((c) => c.id);\n const versionPerId = stashData.stashCompsData.map((c) => c.id.changeVersion(c.hash.toString()));\n\n await this.checkout.checkout({\n ids: compIds,\n skipNpmInstall: true,\n versionPerId,\n skipUpdatingBitmap: true,\n });\n\n await this.stashFiles.deleteStashFile(stashFile);\n\n return compIds;\n }\n\n private async addComponentDataToRepo(component: Component) {\n const consumerComponent = component.state._consumer.clone() as ConsumerComponent;\n consumerComponent.setNewVersion();\n const { version, files } = await this.workspace.scope.legacyScope.sources.consumerComponentToVersion(\n consumerComponent\n );\n const repo = this.workspace.scope.legacyScope.objects;\n repo.add(version);\n files.forEach((file) => repo.add(file.file));\n return version;\n }\n\n static slots = [];\n static dependencies = [CLIAspect, WorkspaceAspect, CheckoutAspect, SnappingAspect];\n static runtime = MainRuntime;\n static async provider([cli, workspace, checkout, snapping]: [CLIMain, Workspace, CheckoutMain, SnappingMain]) {\n const stashMain = new StashMain(workspace, checkout, snapping);\n const stashCmd = new StashCmd(stashMain);\n stashCmd.commands = [new StashSaveCmd(stashMain), new StashLoadCmd(stashMain)];\n cli.register(stashCmd);\n return stashMain;\n }\n}\n\nStashAspect.addRuntime(StashMain);\n\nexport default StashMain;\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,28 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/stash",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.98",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/component/stash",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.component",
|
|
8
8
|
"name": "stash",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.98"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"fs-extra": "10.0.0",
|
|
13
13
|
"globby": "11.0.1",
|
|
14
14
|
"chalk": "2.4.2",
|
|
15
15
|
"lodash": "4.17.21",
|
|
16
|
-
"core-js": "^3.0.0",
|
|
17
|
-
"@babel/runtime": "7.20.0",
|
|
18
16
|
"@teambit/component-id": "0.0.427",
|
|
19
17
|
"@teambit/harmony": "0.4.6",
|
|
20
|
-
"@teambit/workspace": "0.0.
|
|
21
|
-
"@teambit/cli": "0.0.
|
|
18
|
+
"@teambit/workspace": "0.0.1160",
|
|
19
|
+
"@teambit/cli": "0.0.774",
|
|
22
20
|
"@teambit/bit-error": "0.0.402",
|
|
23
|
-
"@teambit/checkout": "0.0.
|
|
24
|
-
"@teambit/component": "0.0.
|
|
25
|
-
"@teambit/snapping": "0.0.
|
|
21
|
+
"@teambit/checkout": "0.0.329",
|
|
22
|
+
"@teambit/component": "0.0.1160",
|
|
23
|
+
"@teambit/snapping": "0.0.475"
|
|
26
24
|
},
|
|
27
25
|
"devDependencies": {
|
|
28
26
|
"@types/fs-extra": "9.0.7",
|
|
@@ -35,7 +33,7 @@
|
|
|
35
33
|
"@types/testing-library__jest-dom": "5.9.5"
|
|
36
34
|
},
|
|
37
35
|
"peerDependencies": {
|
|
38
|
-
"@teambit/legacy": "1.0.
|
|
36
|
+
"@teambit/legacy": "1.0.559",
|
|
39
37
|
"react": "^16.8.0 || ^17.0.0",
|
|
40
38
|
"react-dom": "^16.8.0 || ^17.0.0"
|
|
41
39
|
},
|
|
File without changes
|