@teambit/snapping 1.0.486 → 1.0.488

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.
Files changed (34) hide show
  1. package/artifacts/__bit_junit.xml +13 -9
  2. package/artifacts/schema.json +1491 -1431
  3. package/dist/flattened-edges.d.ts +2 -2
  4. package/dist/flattened-edges.js.map +1 -1
  5. package/dist/generate-comp-from-scope.js +16 -31
  6. package/dist/generate-comp-from-scope.js.map +1 -1
  7. package/dist/get-flattened-dependencies.d.ts +32 -0
  8. package/dist/get-flattened-dependencies.js +190 -0
  9. package/dist/get-flattened-dependencies.js.map +1 -0
  10. package/dist/message-per-component.d.ts +17 -0
  11. package/dist/message-per-component.js +204 -0
  12. package/dist/message-per-component.js.map +1 -0
  13. package/dist/message-per-component.spec.d.ts +1 -0
  14. package/dist/message-per-component.spec.js +63 -0
  15. package/dist/message-per-component.spec.js.map +1 -0
  16. package/dist/reset-cmd.js +5 -5
  17. package/dist/reset-cmd.js.map +1 -1
  18. package/dist/reset-component.d.ts +3 -3
  19. package/dist/reset-component.js +8 -9
  20. package/dist/reset-component.js.map +1 -1
  21. package/dist/snap-cmd.js +7 -7
  22. package/dist/snap-cmd.js.map +1 -1
  23. package/dist/snapping.main.runtime.d.ts +4 -8
  24. package/dist/snapping.main.runtime.js +50 -64
  25. package/dist/snapping.main.runtime.js.map +1 -1
  26. package/dist/snapping.spec.js +5 -5
  27. package/dist/snapping.spec.js.map +1 -1
  28. package/dist/tag-cmd.js +6 -6
  29. package/dist/tag-cmd.js.map +1 -1
  30. package/dist/tag-model-component.d.ts +3 -4
  31. package/dist/tag-model-component.js +26 -40
  32. package/dist/tag-model-component.js.map +1 -1
  33. package/package.json +48 -36
  34. /package/dist/{preview-1733541556857.js → preview-1733830651067.js} +0 -0
@@ -0,0 +1,204 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.MessagePerComponentFetcher = void 0;
7
+ function _openEditor() {
8
+ const data = _interopRequireDefault(require("open-editor"));
9
+ _openEditor = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _fsExtra() {
15
+ const data = _interopRequireDefault(require("fs-extra"));
16
+ _fsExtra = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _child_process() {
22
+ const data = require("child_process");
23
+ _child_process = function () {
24
+ return data;
25
+ };
26
+ return data;
27
+ }
28
+ function _legacy() {
29
+ const data = require("@teambit/legacy.loader");
30
+ _legacy = function () {
31
+ return data;
32
+ };
33
+ return data;
34
+ }
35
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
36
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
37
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
38
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
39
+ const DEFAULT_MESSAGE = 'DEFAULT:';
40
+ const DEFAULT_AUTO_TAG_MESSAGE = 'DEFAULT-AUTO-TAG:';
41
+ const formatId = id => `${id}:`;
42
+ const addSpace = str => `${str} `;
43
+ const DEFAULT_EDITOR = 'vim';
44
+ class MessagePerComponentFetcher {
45
+ constructor(idsToTag, idsToAutoTag) {
46
+ _defineProperty(this, "idsToTagObject", void 0);
47
+ _defineProperty(this, "idsToAutoTagObject", void 0);
48
+ this.idsToTagObject = idsToTag.toObject();
49
+ this.idsToAutoTagObject = idsToAutoTag.toObject();
50
+ }
51
+ async getMessagesFromEditor(tmp, editor) {
52
+ const template = this.getTemplate();
53
+ const templateFilePath = await tmp.save(template);
54
+ const editorName = typeof editor === 'string' ? editor : undefined;
55
+ await this.openEditor(templateFilePath, editorName);
56
+ const afterSave = await _fsExtra().default.readFile(templateFilePath, 'utf-8');
57
+ if (template === afterSave) {
58
+ throw new Error(`no changes have been done to the messages templates. consider using "--message" flag instead`);
59
+ }
60
+ await tmp.remove(templateFilePath);
61
+ return this.parseFileWithMessages(afterSave);
62
+ }
63
+ getTemplate() {
64
+ const idsToTag = this.getIdsToTagStr();
65
+ const idsToAutoTag = this.getIdsToAutoTagStr();
66
+ const idsStr = ids => ids.map(formatId).map(addSpace).join('\n');
67
+ const getAutoTagTemplate = () => {
68
+ if (!idsToAutoTag.length) return '';
69
+ return `
70
+ # The following components will be auto-tagged (due to dependencies bump)
71
+ # You can leave the following default message to avoid setting messages for these components
72
+ ${DEFAULT_AUTO_TAG_MESSAGE} bump dependencies versions
73
+ ${idsStr(idsToAutoTag)}
74
+ `;
75
+ };
76
+ return `# Please set the messages for the following components.
77
+ # You can enter a default-message to be applied to all empty components. this is optional.
78
+ ${addSpace(DEFAULT_MESSAGE)}
79
+ ${idsStr(idsToTag)}
80
+ ${getAutoTagTemplate()}
81
+ `;
82
+ }
83
+ parseFileWithMessages(messagesFileContent) {
84
+ let defaultMessage = null;
85
+ let defaultAutoTagMessage = null;
86
+ const results = [];
87
+ const idsToTagStr = this.getIdsToTagStr();
88
+ const idsToAutoTagStr = this.getIdsToAutoTagStr();
89
+ const messagesSplit = messagesFileContent.split('\n');
90
+
91
+ // there are 4 sections in the template file. these 4 variables keep track in what section we're at.
92
+ let startedDefaultMessage = false;
93
+ let startedIdsToTag = false;
94
+ let startedAutoTagDefaultMessage = false;
95
+ let startedIdsToAutoTag = false;
96
+ messagesSplit.forEach(line => {
97
+ line = line.trim();
98
+ if (!line) {
99
+ return; // an empty line
100
+ }
101
+ if (line.startsWith('#')) {
102
+ return; // it's a comment
103
+ }
104
+ if (line.startsWith(DEFAULT_MESSAGE)) {
105
+ defaultMessage = line.replace(DEFAULT_MESSAGE, '').trim();
106
+ startedDefaultMessage = true;
107
+ return;
108
+ }
109
+ const idToTag = idsToTagStr.find(id => line.startsWith(formatId(id)));
110
+ const removeId = id => line.replace(formatId(id), '').trim();
111
+ if (idToTag) {
112
+ startedIdsToTag = true;
113
+ const msg = removeId(idToTag) || defaultMessage;
114
+ if (!msg) {
115
+ throw new Error(`error: "${idToTag}" has no message and the default-message was not set`);
116
+ }
117
+ results.push({
118
+ id: this.idsToTagObject[idToTag],
119
+ msg
120
+ });
121
+ return;
122
+ }
123
+ if (line.startsWith(DEFAULT_AUTO_TAG_MESSAGE)) {
124
+ startedAutoTagDefaultMessage = true;
125
+ defaultAutoTagMessage = line.replace(DEFAULT_AUTO_TAG_MESSAGE, '').trim();
126
+ return;
127
+ }
128
+ const idToAutoTag = idsToAutoTagStr.find(id => line.startsWith(formatId(id)));
129
+ if (idToAutoTag) {
130
+ startedIdsToAutoTag = true;
131
+ const msg = removeId(idToAutoTag) || defaultAutoTagMessage;
132
+ if (!msg) {
133
+ throw new Error(`error: "${idToTag}" has no message and the default-auto-message was not set`);
134
+ }
135
+ results.push({
136
+ id: this.idsToAutoTagObject[idToAutoTag],
137
+ msg
138
+ });
139
+ return;
140
+ }
141
+ // must be another line of one of the strings above. let's figure out what was it.
142
+ // the template starts with the default-message, followed by the ids to tag, followed by the
143
+ // auto-tag-default-message, followed by the ids to auto-tag.
144
+ if (!startedDefaultMessage) {
145
+ throw new Error(`error: the following line was added "${line}". please add the messages to the ids and default fields only`);
146
+ }
147
+ if (!startedIdsToTag) {
148
+ defaultMessage += `\n${line}`;
149
+ return;
150
+ }
151
+ if (!startedAutoTagDefaultMessage) {
152
+ const lastEnteredId = results[results.length - 1];
153
+ lastEnteredId.msg += `\n${line}`;
154
+ return;
155
+ }
156
+ if (!startedIdsToAutoTag) {
157
+ defaultAutoTagMessage += `\n${line}`;
158
+ return;
159
+ }
160
+ const lastEnteredId = results[results.length - 1];
161
+ lastEnteredId.msg += `\n${line}`;
162
+ });
163
+ return results;
164
+ }
165
+ async openEditor(templateFilePath, editor) {
166
+ const file = {
167
+ file: templateFilePath,
168
+ column: DEFAULT_MESSAGE.length + 1,
169
+ line: 3
170
+ };
171
+ const editorFromEnvVar = process.env.EDITOR || process.env.VISUAL; // taken from env-editor package
172
+ if (!editorFromEnvVar && !editor) {
173
+ editor = DEFAULT_EDITOR;
174
+ }
175
+ const editorData = _openEditor().default.make([file], {
176
+ editor
177
+ });
178
+ if (!editorData.isTerminalEditor) {
179
+ throw new Error(`your editor "${editorData.binary}" is not a terminal editor. either set $EDITOR in your env variable or pass "--editor" with a terminal editor (e.g. "nano", "vim")`);
180
+ }
181
+ _legacy().loader.stop();
182
+ return new Promise((resolve, reject) => {
183
+ const editorProcess = (0, _child_process().spawn)(editorData.binary, editorData.arguments, {
184
+ stdio: 'inherit'
185
+ });
186
+ editorProcess.on('exit', code => {
187
+ if (code === 0) {
188
+ resolve('completed');
189
+ } else {
190
+ reject(new Error(`${editor} had non zero exit code: ${code}`));
191
+ }
192
+ });
193
+ });
194
+ }
195
+ getIdsToTagStr() {
196
+ return Object.keys(this.idsToTagObject);
197
+ }
198
+ getIdsToAutoTagStr() {
199
+ return Object.keys(this.idsToAutoTagObject);
200
+ }
201
+ }
202
+ exports.MessagePerComponentFetcher = MessagePerComponentFetcher;
203
+
204
+ //# sourceMappingURL=message-per-component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_openEditor","data","_interopRequireDefault","require","_fsExtra","_child_process","_legacy","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","DEFAULT_MESSAGE","DEFAULT_AUTO_TAG_MESSAGE","formatId","id","addSpace","str","DEFAULT_EDITOR","MessagePerComponentFetcher","constructor","idsToTag","idsToAutoTag","idsToTagObject","toObject","idsToAutoTagObject","getMessagesFromEditor","tmp","editor","template","getTemplate","templateFilePath","save","editorName","undefined","openEditor","afterSave","fs","readFile","Error","remove","parseFileWithMessages","getIdsToTagStr","getIdsToAutoTagStr","idsStr","ids","map","join","getAutoTagTemplate","length","messagesFileContent","defaultMessage","defaultAutoTagMessage","results","idsToTagStr","idsToAutoTagStr","messagesSplit","split","startedDefaultMessage","startedIdsToTag","startedAutoTagDefaultMessage","startedIdsToAutoTag","forEach","line","trim","startsWith","replace","idToTag","find","removeId","msg","push","idToAutoTag","lastEnteredId","file","column","editorFromEnvVar","process","env","EDITOR","VISUAL","editorData","make","isTerminalEditor","binary","loader","stop","Promise","resolve","reject","editorProcess","spawn","arguments","stdio","on","code","keys","exports"],"sources":["message-per-component.ts"],"sourcesContent":["import openEditor from 'open-editor';\nimport fs from 'fs-extra';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { spawn } from 'child_process';\nimport { Tmp } from '@teambit/legacy.scope';\nimport { loader } from '@teambit/legacy.loader';\n\nconst DEFAULT_MESSAGE = 'DEFAULT:';\nconst DEFAULT_AUTO_TAG_MESSAGE = 'DEFAULT-AUTO-TAG:';\nconst formatId = (id: string) => `${id}:`;\nconst addSpace = (str: string) => `${str} `;\nconst DEFAULT_EDITOR = 'vim';\n\nexport type MessagePerComponent = { id: ComponentID; msg: string };\n\nexport class MessagePerComponentFetcher {\n private idsToTagObject: { [bitIdStr: string]: ComponentID };\n private idsToAutoTagObject: { [bitIdStr: string]: ComponentID };\n constructor(idsToTag: ComponentIdList, idsToAutoTag: ComponentIdList) {\n this.idsToTagObject = idsToTag.toObject();\n this.idsToAutoTagObject = idsToAutoTag.toObject();\n }\n\n async getMessagesFromEditor(tmp: Tmp, editor: string | boolean): Promise<MessagePerComponent[]> {\n const template = this.getTemplate();\n const templateFilePath = await tmp.save(template);\n const editorName = typeof editor === 'string' ? editor : undefined;\n await this.openEditor(templateFilePath, editorName);\n const afterSave = await fs.readFile(templateFilePath, 'utf-8');\n if (template === afterSave) {\n throw new Error(`no changes have been done to the messages templates. consider using \"--message\" flag instead`);\n }\n await tmp.remove(templateFilePath);\n return this.parseFileWithMessages(afterSave);\n }\n\n getTemplate() {\n const idsToTag = this.getIdsToTagStr();\n const idsToAutoTag = this.getIdsToAutoTagStr();\n const idsStr = (ids: string[]) => ids.map(formatId).map(addSpace).join('\\n');\n const getAutoTagTemplate = () => {\n if (!idsToAutoTag.length) return '';\n return `\n# The following components will be auto-tagged (due to dependencies bump)\n# You can leave the following default message to avoid setting messages for these components\n${DEFAULT_AUTO_TAG_MESSAGE} bump dependencies versions\n${idsStr(idsToAutoTag)}\n`;\n };\n return `# Please set the messages for the following components.\n# You can enter a default-message to be applied to all empty components. this is optional.\n${addSpace(DEFAULT_MESSAGE)}\n${idsStr(idsToTag)}\n${getAutoTagTemplate()}\n`;\n }\n\n parseFileWithMessages(messagesFileContent: string): MessagePerComponent[] {\n let defaultMessage: string | null = null;\n let defaultAutoTagMessage: string | null = null;\n const results: MessagePerComponent[] = [];\n\n const idsToTagStr = this.getIdsToTagStr();\n const idsToAutoTagStr = this.getIdsToAutoTagStr();\n const messagesSplit = messagesFileContent.split('\\n');\n\n // there are 4 sections in the template file. these 4 variables keep track in what section we're at.\n let startedDefaultMessage = false;\n let startedIdsToTag = false;\n let startedAutoTagDefaultMessage = false;\n let startedIdsToAutoTag = false;\n\n messagesSplit.forEach((line) => {\n line = line.trim();\n if (!line) {\n return; // an empty line\n }\n if (line.startsWith('#')) {\n return; // it's a comment\n }\n if (line.startsWith(DEFAULT_MESSAGE)) {\n defaultMessage = line.replace(DEFAULT_MESSAGE, '').trim();\n startedDefaultMessage = true;\n return;\n }\n const idToTag = idsToTagStr.find((id) => line.startsWith(formatId(id)));\n const removeId = (id: string) => line.replace(formatId(id), '').trim();\n if (idToTag) {\n startedIdsToTag = true;\n const msg = removeId(idToTag) || defaultMessage;\n if (!msg) {\n throw new Error(`error: \"${idToTag}\" has no message and the default-message was not set`);\n }\n results.push({\n id: this.idsToTagObject[idToTag],\n msg,\n });\n return;\n }\n if (line.startsWith(DEFAULT_AUTO_TAG_MESSAGE)) {\n startedAutoTagDefaultMessage = true;\n defaultAutoTagMessage = line.replace(DEFAULT_AUTO_TAG_MESSAGE, '').trim();\n return;\n }\n const idToAutoTag = idsToAutoTagStr.find((id) => line.startsWith(formatId(id)));\n if (idToAutoTag) {\n startedIdsToAutoTag = true;\n const msg = removeId(idToAutoTag) || defaultAutoTagMessage;\n if (!msg) {\n throw new Error(`error: \"${idToTag}\" has no message and the default-auto-message was not set`);\n }\n results.push({\n id: this.idsToAutoTagObject[idToAutoTag],\n msg,\n });\n return;\n }\n // must be another line of one of the strings above. let's figure out what was it.\n // the template starts with the default-message, followed by the ids to tag, followed by the\n // auto-tag-default-message, followed by the ids to auto-tag.\n if (!startedDefaultMessage) {\n throw new Error(\n `error: the following line was added \"${line}\". please add the messages to the ids and default fields only`\n );\n }\n if (!startedIdsToTag) {\n defaultMessage += `\\n${line}`;\n return;\n }\n if (!startedAutoTagDefaultMessage) {\n const lastEnteredId = results[results.length - 1];\n lastEnteredId.msg += `\\n${line}`;\n return;\n }\n if (!startedIdsToAutoTag) {\n defaultAutoTagMessage += `\\n${line}`;\n return;\n }\n const lastEnteredId = results[results.length - 1];\n lastEnteredId.msg += `\\n${line}`;\n });\n\n return results;\n }\n\n private async openEditor(templateFilePath: string, editor?: string) {\n const file = { file: templateFilePath, column: DEFAULT_MESSAGE.length + 1, line: 3 };\n\n const editorFromEnvVar = process.env.EDITOR || process.env.VISUAL; // taken from env-editor package\n if (!editorFromEnvVar && !editor) {\n editor = DEFAULT_EDITOR;\n }\n const editorData = openEditor.make([file], { editor });\n if (!editorData.isTerminalEditor) {\n throw new Error(\n `your editor \"${editorData.binary}\" is not a terminal editor. either set $EDITOR in your env variable or pass \"--editor\" with a terminal editor (e.g. \"nano\", \"vim\")`\n );\n }\n loader.stop();\n return new Promise((resolve, reject) => {\n const editorProcess = spawn(editorData.binary, editorData.arguments, { stdio: 'inherit' });\n editorProcess.on('exit', (code) => {\n if (code === 0) {\n resolve('completed');\n } else {\n reject(new Error(`${editor} had non zero exit code: ${code}`));\n }\n });\n });\n }\n\n private getIdsToTagStr() {\n return Object.keys(this.idsToTagObject);\n }\n private getIdsToAutoTagStr() {\n return Object.keys(this.idsToAutoTagObject);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ function _chai() {
4
+ const data = require("chai");
5
+ _chai = function () {
6
+ return data;
7
+ };
8
+ return data;
9
+ }
10
+ function _componentId() {
11
+ const data = require("@teambit/component-id");
12
+ _componentId = function () {
13
+ return data;
14
+ };
15
+ return data;
16
+ }
17
+ function _messagePerComponent() {
18
+ const data = require("./message-per-component");
19
+ _messagePerComponent = function () {
20
+ return data;
21
+ };
22
+ return data;
23
+ }
24
+ function getInstance() {
25
+ return new (_messagePerComponent().MessagePerComponentFetcher)(new (_componentId().ComponentIdList)(_componentId().ComponentID.fromObject({
26
+ name: 'bar',
27
+ scope: 'some-scope'
28
+ })), new (_componentId().ComponentIdList)());
29
+ }
30
+ describe('MessagePerComponent', () => {
31
+ describe('parseFileWithMessages', () => {
32
+ it('should throw an error when the file has no changes', () => {
33
+ const messagePerComponent = getInstance();
34
+ const template = messagePerComponent.getTemplate();
35
+ (0, _chai().expect)(() => messagePerComponent.parseFileWithMessages(template)).to.throw();
36
+ });
37
+ it('should assign the default message to the component if empty', () => {
38
+ const messagePerComponent = getInstance();
39
+ const template = messagePerComponent.getTemplate();
40
+ const templateChanged = template.replace('DEFAULT:', `DEFAULT: my default msg`);
41
+ const parsed = messagePerComponent.parseFileWithMessages(templateChanged);
42
+ (0, _chai().expect)(parsed[0].msg).to.equal('my default msg');
43
+ });
44
+ it('should support multiple lines per id', () => {
45
+ const messagePerComponent = getInstance();
46
+ const template = messagePerComponent.getTemplate();
47
+ const msgWithNewLine = 'msg for bar\nAnother line';
48
+ const templateChanged = template.replace('bar:', `bar: ${msgWithNewLine}`);
49
+ const parsed = messagePerComponent.parseFileWithMessages(templateChanged);
50
+ (0, _chai().expect)(parsed[0].msg).to.equal(msgWithNewLine);
51
+ });
52
+ it('should support multiple lines for the default message', () => {
53
+ const messagePerComponent = getInstance();
54
+ const template = messagePerComponent.getTemplate();
55
+ const msgWithNewLine = 'default msg\nAnother line';
56
+ const templateChanged = template.replace('DEFAULT:', `DEFAULT: ${msgWithNewLine}`);
57
+ const parsed = messagePerComponent.parseFileWithMessages(templateChanged);
58
+ (0, _chai().expect)(parsed[0].msg).to.equal(msgWithNewLine);
59
+ });
60
+ });
61
+ });
62
+
63
+ //# sourceMappingURL=message-per-component.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_chai","data","require","_componentId","_messagePerComponent","getInstance","MessagePerComponentFetcher","ComponentIdList","ComponentID","fromObject","name","scope","describe","it","messagePerComponent","template","getTemplate","expect","parseFileWithMessages","to","throw","templateChanged","replace","parsed","msg","equal","msgWithNewLine"],"sources":["message-per-component.spec.ts"],"sourcesContent":["import { expect } from 'chai';\nimport { ComponentID, ComponentIdList } from '@teambit/component-id';\nimport { MessagePerComponentFetcher } from './message-per-component';\n\nfunction getInstance() {\n return new MessagePerComponentFetcher(\n new ComponentIdList(ComponentID.fromObject({ name: 'bar', scope: 'some-scope' })),\n new ComponentIdList()\n );\n}\n\ndescribe('MessagePerComponent', () => {\n describe('parseFileWithMessages', () => {\n it('should throw an error when the file has no changes', () => {\n const messagePerComponent = getInstance();\n const template = messagePerComponent.getTemplate();\n expect(() => messagePerComponent.parseFileWithMessages(template)).to.throw();\n });\n it('should assign the default message to the component if empty', () => {\n const messagePerComponent = getInstance();\n const template = messagePerComponent.getTemplate();\n const templateChanged = template.replace('DEFAULT:', `DEFAULT: my default msg`);\n const parsed = messagePerComponent.parseFileWithMessages(templateChanged);\n expect(parsed[0].msg).to.equal('my default msg');\n });\n it('should support multiple lines per id', () => {\n const messagePerComponent = getInstance();\n const template = messagePerComponent.getTemplate();\n const msgWithNewLine = 'msg for bar\\nAnother line';\n const templateChanged = template.replace('bar:', `bar: ${msgWithNewLine}`);\n const parsed = messagePerComponent.parseFileWithMessages(templateChanged);\n expect(parsed[0].msg).to.equal(msgWithNewLine);\n });\n it('should support multiple lines for the default message', () => {\n const messagePerComponent = getInstance();\n const template = messagePerComponent.getTemplate();\n const msgWithNewLine = 'default msg\\nAnother line';\n const templateChanged = template.replace('DEFAULT:', `DEFAULT: ${msgWithNewLine}`);\n const parsed = messagePerComponent.parseFileWithMessages(templateChanged);\n expect(parsed[0].msg).to.equal(msgWithNewLine);\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
package/dist/reset-cmd.js CHANGED
@@ -18,9 +18,9 @@ function _chalk() {
18
18
  };
19
19
  return data;
20
20
  }
21
- function _constants() {
22
- const data = require("@teambit/legacy/dist/constants");
23
- _constants = function () {
21
+ function _legacy() {
22
+ const data = require("@teambit/legacy.constants");
23
+ _legacy = function () {
24
24
  return data;
25
25
  };
26
26
  return data;
@@ -36,13 +36,13 @@ class ResetCmd {
36
36
  _defineProperty(this, "description", 'revert tagged or snapped versions for component(s)');
37
37
  _defineProperty(this, "arguments", [{
38
38
  name: 'component-pattern',
39
- description: _constants().COMPONENT_PATTERN_HELP
39
+ description: _legacy().COMPONENT_PATTERN_HELP
40
40
  }, {
41
41
  name: 'component-version',
42
42
  description: 'the version to untag (semver for tags. hash for snaps)'
43
43
  }]);
44
44
  _defineProperty(this, "group", 'development');
45
- _defineProperty(this, "extendedDescription", `${_constants().BASE_DOCS_DOMAIN}components/tags#undoing-a-tag`);
45
+ _defineProperty(this, "extendedDescription", `${_legacy().BASE_DOCS_DOMAIN}components/tags#undoing-a-tag`);
46
46
  _defineProperty(this, "alias", '');
47
47
  _defineProperty(this, "options", [['a', 'all', 'revert all unexported tags/snaps for all components'], ['', 'head', 'revert the head tag/snap only (by default, all local tags/snaps are reverted)'], ['', 'soft', 'revert only soft-tags (components tagged with --soft flag)'], ['f', 'force', "revert the tag even if it's used as a dependency. WARNING: components that depend on this tag will be corrupted"], ['', 'never-exported', 'reset only components that were never exported']]);
48
48
  _defineProperty(this, "loader", true);
@@ -1 +1 @@
1
- {"version":3,"names":["_bitError","data","require","_chalk","_interopRequireDefault","_constants","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ResetCmd","constructor","snapping","name","description","COMPONENT_PATTERN_HELP","BASE_DOCS_DOMAIN","report","pattern","all","head","force","soft","neverExported","compIds","resetNeverExported","chalk","green","join","BitError","results","isSoftUntag","reset","titleSuffix","title","length","components","map","result","cyan","id","toStringWithoutVersion","versions","exports"],"sources":["reset-cmd.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { BASE_DOCS_DOMAIN, COMPONENT_PATTERN_HELP } from '@teambit/legacy/dist/constants';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport default class ResetCmd implements Command {\n name = 'reset [component-pattern]';\n description = 'revert tagged or snapped versions for component(s)';\n arguments = [\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n {\n name: 'component-version',\n description: 'the version to untag (semver for tags. hash for snaps)',\n },\n ];\n group = 'development';\n extendedDescription = `${BASE_DOCS_DOMAIN}components/tags#undoing-a-tag`;\n alias = '';\n options = [\n ['a', 'all', 'revert all unexported tags/snaps for all components'],\n ['', 'head', 'revert the head tag/snap only (by default, all local tags/snaps are reverted)'],\n ['', 'soft', 'revert only soft-tags (components tagged with --soft flag)'],\n [\n 'f',\n 'force',\n \"revert the tag even if it's used as a dependency. WARNING: components that depend on this tag will be corrupted\",\n ],\n ['', 'never-exported', 'reset only components that were never exported'],\n ] as CommandOptions;\n loader = true;\n\n constructor(private snapping: SnappingMain) {}\n\n async report(\n [pattern]: [string],\n {\n all = false,\n head = false,\n force = false,\n soft = false,\n neverExported = false,\n }: { all?: boolean; head?: boolean; force?: boolean; soft?: boolean; neverExported?: boolean }\n ) {\n if (neverExported) {\n const compIds = await this.snapping.resetNeverExported();\n return chalk.green(`successfully reset the following never-exported components:\\n${compIds.join('\\n')}`);\n }\n if (!pattern && !all) {\n throw new BitError('please specify a component-pattern or use --all flag');\n }\n if (pattern && all) {\n throw new BitError('please specify either a component-pattern or --all flag, not both');\n }\n if (soft && head) {\n throw new BitError('please specify either --soft or --head flag, not both');\n }\n const { results, isSoftUntag } = await this.snapping.reset(pattern, head, force, soft);\n const titleSuffix = isSoftUntag ? 'soft-untagged (are not candidates for tagging any more)' : 'reset';\n const title = chalk.green(`${results.length} component(s) were ${titleSuffix}:\\n`);\n const components = results.map((result) => {\n return `${chalk.cyan(result.id.toStringWithoutVersion())}. version(s): ${result.versions.join(', ')}`;\n });\n return title + components.join('\\n');\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bitError","data","require","_chalk","_interopRequireDefault","_legacy","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ResetCmd","constructor","snapping","name","description","COMPONENT_PATTERN_HELP","BASE_DOCS_DOMAIN","report","pattern","all","head","force","soft","neverExported","compIds","resetNeverExported","chalk","green","join","BitError","results","isSoftUntag","reset","titleSuffix","title","length","components","map","result","cyan","id","toStringWithoutVersion","versions","exports"],"sources":["reset-cmd.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport chalk from 'chalk';\nimport { Command, CommandOptions } from '@teambit/cli';\nimport { BASE_DOCS_DOMAIN, COMPONENT_PATTERN_HELP } from '@teambit/legacy.constants';\nimport { SnappingMain } from './snapping.main.runtime';\n\nexport default class ResetCmd implements Command {\n name = 'reset [component-pattern]';\n description = 'revert tagged or snapped versions for component(s)';\n arguments = [\n {\n name: 'component-pattern',\n description: COMPONENT_PATTERN_HELP,\n },\n {\n name: 'component-version',\n description: 'the version to untag (semver for tags. hash for snaps)',\n },\n ];\n group = 'development';\n extendedDescription = `${BASE_DOCS_DOMAIN}components/tags#undoing-a-tag`;\n alias = '';\n options = [\n ['a', 'all', 'revert all unexported tags/snaps for all components'],\n ['', 'head', 'revert the head tag/snap only (by default, all local tags/snaps are reverted)'],\n ['', 'soft', 'revert only soft-tags (components tagged with --soft flag)'],\n [\n 'f',\n 'force',\n \"revert the tag even if it's used as a dependency. WARNING: components that depend on this tag will be corrupted\",\n ],\n ['', 'never-exported', 'reset only components that were never exported'],\n ] as CommandOptions;\n loader = true;\n\n constructor(private snapping: SnappingMain) {}\n\n async report(\n [pattern]: [string],\n {\n all = false,\n head = false,\n force = false,\n soft = false,\n neverExported = false,\n }: { all?: boolean; head?: boolean; force?: boolean; soft?: boolean; neverExported?: boolean }\n ) {\n if (neverExported) {\n const compIds = await this.snapping.resetNeverExported();\n return chalk.green(`successfully reset the following never-exported components:\\n${compIds.join('\\n')}`);\n }\n if (!pattern && !all) {\n throw new BitError('please specify a component-pattern or use --all flag');\n }\n if (pattern && all) {\n throw new BitError('please specify either a component-pattern or --all flag, not both');\n }\n if (soft && head) {\n throw new BitError('please specify either --soft or --head flag, not both');\n }\n const { results, isSoftUntag } = await this.snapping.reset(pattern, head, force, soft);\n const titleSuffix = isSoftUntag ? 'soft-untagged (are not candidates for tagging any more)' : 'reset';\n const title = chalk.green(`${results.length} component(s) were ${titleSuffix}:\\n`);\n const components = results.map((result) => {\n return `${chalk.cyan(result.id.toStringWithoutVersion())}. version(s): ${result.versions.join(', ')}`;\n });\n return title + components.join('\\n');\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import { ComponentID } from '@teambit/component-id';
2
- import { Scope } from '@teambit/legacy/dist/scope';
3
- import { Consumer } from '@teambit/legacy/dist/consumer';
4
- import { Lane, ModelComponent } from '@teambit/legacy/dist/scope/models';
2
+ import { Scope } from '@teambit/legacy.scope';
3
+ import { Consumer } from '@teambit/legacy.consumer';
4
+ import { Lane, ModelComponent } from '@teambit/scope.objects';
5
5
  import { RemoveMain } from '@teambit/remove';
6
6
  export type ResetResult = {
7
7
  id: ComponentID;
@@ -21,21 +21,20 @@ function _legacy() {
21
21
  };
22
22
  return data;
23
23
  }
24
- function _logger() {
25
- const data = _interopRequireDefault(require("@teambit/legacy/dist/logger/logger"));
26
- _logger = function () {
24
+ function _legacy2() {
25
+ const data = require("@teambit/legacy.logger");
26
+ _legacy2 = function () {
27
27
  return data;
28
28
  };
29
29
  return data;
30
30
  }
31
- function _legacy2() {
31
+ function _legacy3() {
32
32
  const data = require("@teambit/legacy.dependency-graph");
33
- _legacy2 = function () {
33
+ _legacy3 = function () {
34
34
  return data;
35
35
  };
36
36
  return data;
37
37
  }
38
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
39
38
  /**
40
39
  * If head is false, remove all local versions.
41
40
  */
@@ -54,7 +53,7 @@ async function removeLocalVersion(scope, id, lane, head, force = false) {
54
53
  const versionsToRemove = head ? [headRef] : localVersions;
55
54
  const versionsToRemoveStr = component.switchHashesWithTagsIfExist(versionsToRemove);
56
55
  if (!force) {
57
- const dependencyGraph = await _legacy2().DependencyGraph.loadAllVersions(scope);
56
+ const dependencyGraph = await _legacy3().DependencyGraph.loadAllVersions(scope);
58
57
  versionsToRemoveStr.forEach(versionToRemove => {
59
58
  const idWithVersion = component.toComponentId().changeVersion(versionToRemove);
60
59
  const dependents = dependencyGraph.getImmediateDependentsPerId(idWithVersion);
@@ -83,7 +82,7 @@ force, scope) {
83
82
  }
84
83
  // if only head is removed, there is risk of deleting dependencies version without their dependents.
85
84
  if (!force && head) {
86
- const dependencyGraph = await _legacy2().DependencyGraph.loadAllVersions(scope);
85
+ const dependencyGraph = await _legacy3().DependencyGraph.loadAllVersions(scope);
87
86
  const candidateComponentsIds = componentsToUntag.map(component => {
88
87
  const bitId = component.toComponentId();
89
88
  const headRef = component.getHeadRegardlessOfLane();
@@ -102,7 +101,7 @@ force, scope) {
102
101
  }
103
102
  });
104
103
  }
105
- _logger().default.debug(`found ${componentsToUntag.length} components to untag`);
104
+ _legacy2().logger.debug(`found ${componentsToUntag.length} components to untag`);
106
105
  return Promise.all(componentsToUntag.map(component => removeLocalVersion(scope, component.toComponentId(), lane, head, force)));
107
106
  }
108
107
  async function getComponentsWithOptionToUntag(consumer, remove) {
@@ -1 +1 @@
1
- {"version":3,"names":["_bitError","data","require","_legacy","_logger","_interopRequireDefault","_legacy2","e","__esModule","default","removeLocalVersion","scope","id","lane","head","force","component","getModelComponent","idStr","toString","localVersions","getLocalHashes","objects","length","BitError","headRef","getHeadRegardlessOfLane","Error","find","v","isEqual","versionsToRemove","versionsToRemoveStr","switchHashesWithTagsIfExist","dependencyGraph","DependencyGraph","loadAllVersions","forEach","versionToRemove","idWithVersion","toComponentId","changeVersion","dependents","getImmediateDependentsPerId","join","sources","removeComponentVersions","versions","removeLocalVersionsForAllComponents","consumer","remove","componentsToUntag","getComponentsWithOptionToUntag","removeLocalVersionsForMultipleComponents","candidateComponentsIds","map","bitId","getTagOfRefIfExists","candidateComponentsIdsStr","dependentsNotCandidates","filter","dependent","includes","version","logger","debug","Promise","all","componentList","ComponentsList","laneObj","getCurrentLaneObject","components","listExportPendingComponents","removedStagedIds","getRemovedStaged","removedStagedBitIds","nonExistsInStaged","c","isEqualWithoutVersion","modelComps","push"],"sources":["reset-component.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { ComponentID } from '@teambit/component-id';\nimport { Scope } from '@teambit/legacy/dist/scope';\nimport { Consumer } from '@teambit/legacy/dist/consumer';\nimport { ComponentsList } from '@teambit/legacy.component-list';\nimport logger from '@teambit/legacy/dist/logger/logger';\nimport { Lane, ModelComponent } from '@teambit/legacy/dist/scope/models';\nimport { RemoveMain } from '@teambit/remove';\nimport { DependencyGraph } from '@teambit/legacy.dependency-graph';\n\nexport type ResetResult = { id: ComponentID; versions: string[]; component?: ModelComponent };\n\n/**\n * If head is false, remove all local versions.\n */\nexport async function removeLocalVersion(\n scope: Scope,\n id: ComponentID,\n lane?: Lane,\n head?: boolean,\n force = false\n): Promise<ResetResult> {\n const component: ModelComponent = await scope.getModelComponent(id);\n const idStr = id.toString();\n const localVersions = await component.getLocalHashes(scope.objects);\n if (!localVersions.length) throw new BitError(`unable to untag ${idStr}, the component is not staged`);\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef) {\n throw new Error(`unable to reset ${idStr}, it has not head`);\n }\n if (head && !localVersions.find((v) => v.isEqual(headRef))) {\n throw new Error(`unable to reset ${idStr}, the head ${headRef.toString()} is exported`);\n }\n const versionsToRemove = head ? [headRef] : localVersions;\n const versionsToRemoveStr = component.switchHashesWithTagsIfExist(versionsToRemove);\n\n if (!force) {\n const dependencyGraph = await DependencyGraph.loadAllVersions(scope);\n\n versionsToRemoveStr.forEach((versionToRemove) => {\n const idWithVersion = component.toComponentId().changeVersion(versionToRemove);\n const dependents = dependencyGraph.getImmediateDependentsPerId(idWithVersion);\n if (dependents.length) {\n throw new BitError(\n `unable to reset ${idStr}, the version ${versionToRemove} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n\n await scope.sources.removeComponentVersions(component, versionsToRemove, versionsToRemoveStr, lane, head);\n\n return { id, versions: versionsToRemoveStr, component };\n}\n\nexport async function removeLocalVersionsForAllComponents(\n consumer: Consumer,\n remove: RemoveMain,\n lane?: Lane,\n head?: boolean\n): Promise<ResetResult[]> {\n const componentsToUntag = await getComponentsWithOptionToUntag(consumer, remove);\n const force = true; // when removing local versions from all components, no need to check if the component is used as a dependency\n return removeLocalVersionsForMultipleComponents(componentsToUntag, lane, head, force, consumer.scope);\n}\n\nexport async function removeLocalVersionsForMultipleComponents(\n componentsToUntag: ModelComponent[],\n lane?: Lane,\n head?: boolean,\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n force: boolean,\n scope: Scope\n) {\n if (!componentsToUntag.length) {\n throw new BitError(`no components found to reset on your workspace`);\n }\n // if only head is removed, there is risk of deleting dependencies version without their dependents.\n if (!force && head) {\n const dependencyGraph = await DependencyGraph.loadAllVersions(scope);\n const candidateComponentsIds = componentsToUntag.map((component) => {\n const bitId = component.toComponentId();\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef)\n throw new Error(`component ${bitId.toString()} does not have head. it should not be a candidate for reset`);\n\n return bitId.changeVersion(component.getTagOfRefIfExists(headRef) || headRef.toString());\n });\n const candidateComponentsIdsStr = candidateComponentsIds.map((id) => id.toString());\n candidateComponentsIds.forEach((bitId: ComponentID) => {\n const dependents = dependencyGraph.getImmediateDependentsPerId(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const dependentsNotCandidates = dependents.filter((dependent) => !candidateComponentsIdsStr.includes(dependent));\n if (dependentsNotCandidates.length) {\n throw new BitError( // $FlowFixMe\n `unable to untag ${bitId}, the version ${bitId.version} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n logger.debug(`found ${componentsToUntag.length} components to untag`);\n return Promise.all(\n componentsToUntag.map((component) => removeLocalVersion(scope, component.toComponentId(), lane, head, force))\n );\n}\n\nexport async function getComponentsWithOptionToUntag(\n consumer: Consumer,\n remove: RemoveMain\n): Promise<ModelComponent[]> {\n const componentList = new ComponentsList(consumer);\n const laneObj = await consumer.getCurrentLaneObject();\n const components: ModelComponent[] = await componentList.listExportPendingComponents(laneObj);\n const removedStagedIds = await remove.getRemovedStaged();\n if (!removedStagedIds.length) return components;\n const removedStagedBitIds = removedStagedIds.map((id) => id);\n const nonExistsInStaged = removedStagedBitIds.filter(\n (id) => !components.find((c) => c.toComponentId().isEqualWithoutVersion(id))\n );\n if (!nonExistsInStaged.length) return components;\n const modelComps = await Promise.all(nonExistsInStaged.map((id) => consumer.scope.getModelComponent(id)));\n components.push(...modelComps);\n\n return components;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bitError","data","require","_legacy","_legacy2","_legacy3","removeLocalVersion","scope","id","lane","head","force","component","getModelComponent","idStr","toString","localVersions","getLocalHashes","objects","length","BitError","headRef","getHeadRegardlessOfLane","Error","find","v","isEqual","versionsToRemove","versionsToRemoveStr","switchHashesWithTagsIfExist","dependencyGraph","DependencyGraph","loadAllVersions","forEach","versionToRemove","idWithVersion","toComponentId","changeVersion","dependents","getImmediateDependentsPerId","join","sources","removeComponentVersions","versions","removeLocalVersionsForAllComponents","consumer","remove","componentsToUntag","getComponentsWithOptionToUntag","removeLocalVersionsForMultipleComponents","candidateComponentsIds","map","bitId","getTagOfRefIfExists","candidateComponentsIdsStr","dependentsNotCandidates","filter","dependent","includes","version","logger","debug","Promise","all","componentList","ComponentsList","laneObj","getCurrentLaneObject","components","listExportPendingComponents","removedStagedIds","getRemovedStaged","removedStagedBitIds","nonExistsInStaged","c","isEqualWithoutVersion","modelComps","push"],"sources":["reset-component.ts"],"sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport { ComponentID } from '@teambit/component-id';\nimport { Scope } from '@teambit/legacy.scope';\nimport { Consumer } from '@teambit/legacy.consumer';\nimport { ComponentsList } from '@teambit/legacy.component-list';\nimport { logger } from '@teambit/legacy.logger';\nimport { Lane, ModelComponent } from '@teambit/scope.objects';\nimport { RemoveMain } from '@teambit/remove';\nimport { DependencyGraph } from '@teambit/legacy.dependency-graph';\n\nexport type ResetResult = { id: ComponentID; versions: string[]; component?: ModelComponent };\n\n/**\n * If head is false, remove all local versions.\n */\nexport async function removeLocalVersion(\n scope: Scope,\n id: ComponentID,\n lane?: Lane,\n head?: boolean,\n force = false\n): Promise<ResetResult> {\n const component: ModelComponent = await scope.getModelComponent(id);\n const idStr = id.toString();\n const localVersions = await component.getLocalHashes(scope.objects);\n if (!localVersions.length) throw new BitError(`unable to untag ${idStr}, the component is not staged`);\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef) {\n throw new Error(`unable to reset ${idStr}, it has not head`);\n }\n if (head && !localVersions.find((v) => v.isEqual(headRef))) {\n throw new Error(`unable to reset ${idStr}, the head ${headRef.toString()} is exported`);\n }\n const versionsToRemove = head ? [headRef] : localVersions;\n const versionsToRemoveStr = component.switchHashesWithTagsIfExist(versionsToRemove);\n\n if (!force) {\n const dependencyGraph = await DependencyGraph.loadAllVersions(scope);\n\n versionsToRemoveStr.forEach((versionToRemove) => {\n const idWithVersion = component.toComponentId().changeVersion(versionToRemove);\n const dependents = dependencyGraph.getImmediateDependentsPerId(idWithVersion);\n if (dependents.length) {\n throw new BitError(\n `unable to reset ${idStr}, the version ${versionToRemove} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n\n await scope.sources.removeComponentVersions(component, versionsToRemove, versionsToRemoveStr, lane, head);\n\n return { id, versions: versionsToRemoveStr, component };\n}\n\nexport async function removeLocalVersionsForAllComponents(\n consumer: Consumer,\n remove: RemoveMain,\n lane?: Lane,\n head?: boolean\n): Promise<ResetResult[]> {\n const componentsToUntag = await getComponentsWithOptionToUntag(consumer, remove);\n const force = true; // when removing local versions from all components, no need to check if the component is used as a dependency\n return removeLocalVersionsForMultipleComponents(componentsToUntag, lane, head, force, consumer.scope);\n}\n\nexport async function removeLocalVersionsForMultipleComponents(\n componentsToUntag: ModelComponent[],\n lane?: Lane,\n head?: boolean,\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n force: boolean,\n scope: Scope\n) {\n if (!componentsToUntag.length) {\n throw new BitError(`no components found to reset on your workspace`);\n }\n // if only head is removed, there is risk of deleting dependencies version without their dependents.\n if (!force && head) {\n const dependencyGraph = await DependencyGraph.loadAllVersions(scope);\n const candidateComponentsIds = componentsToUntag.map((component) => {\n const bitId = component.toComponentId();\n const headRef = component.getHeadRegardlessOfLane();\n if (!headRef)\n throw new Error(`component ${bitId.toString()} does not have head. it should not be a candidate for reset`);\n\n return bitId.changeVersion(component.getTagOfRefIfExists(headRef) || headRef.toString());\n });\n const candidateComponentsIdsStr = candidateComponentsIds.map((id) => id.toString());\n candidateComponentsIds.forEach((bitId: ComponentID) => {\n const dependents = dependencyGraph.getImmediateDependentsPerId(bitId);\n // @ts-ignore AUTO-ADDED-AFTER-MIGRATION-PLEASE-FIX!\n const dependentsNotCandidates = dependents.filter((dependent) => !candidateComponentsIdsStr.includes(dependent));\n if (dependentsNotCandidates.length) {\n throw new BitError( // $FlowFixMe\n `unable to untag ${bitId}, the version ${bitId.version} has the following dependent(s) ${dependents.join(\n ', '\n )}`\n );\n }\n });\n }\n logger.debug(`found ${componentsToUntag.length} components to untag`);\n return Promise.all(\n componentsToUntag.map((component) => removeLocalVersion(scope, component.toComponentId(), lane, head, force))\n );\n}\n\nexport async function getComponentsWithOptionToUntag(\n consumer: Consumer,\n remove: RemoveMain\n): Promise<ModelComponent[]> {\n const componentList = new ComponentsList(consumer);\n const laneObj = await consumer.getCurrentLaneObject();\n const components: ModelComponent[] = await componentList.listExportPendingComponents(laneObj);\n const removedStagedIds = await remove.getRemovedStaged();\n if (!removedStagedIds.length) return components;\n const removedStagedBitIds = removedStagedIds.map((id) => id);\n const nonExistsInStaged = removedStagedBitIds.filter(\n (id) => !components.find((c) => c.toComponentId().isEqualWithoutVersion(id))\n );\n if (!nonExistsInStaged.length) return components;\n const modelComps = await Promise.all(nonExistsInStaged.map((id) => consumer.scope.getModelComponent(id)));\n components.push(...modelComps);\n\n return components;\n}\n"],"mappings":"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","ignoreList":[]}
package/dist/snap-cmd.js CHANGED
@@ -18,9 +18,9 @@ function _componentIssues() {
18
18
  };
19
19
  return data;
20
20
  }
21
- function _constants() {
22
- const data = require("@teambit/legacy/dist/constants");
23
- _constants = function () {
21
+ function _legacy() {
22
+ const data = require("@teambit/legacy.constants");
23
+ _legacy = function () {
24
24
  return data;
25
25
  };
26
26
  return data;
@@ -47,7 +47,7 @@ class SnapCmd {
47
47
  _defineProperty(this, "group", 'development');
48
48
  _defineProperty(this, "arguments", [{
49
49
  name: 'component-pattern',
50
- description: `${_constants().COMPONENT_PATTERN_HELP}. By default, only new and modified components are snapped (add --unmodified to snap all components in the workspace).`
50
+ description: `${_legacy().COMPONENT_PATTERN_HELP}. By default, only new and modified components are snapped (add --unmodified to snap all components in the workspace).`
51
51
  }]);
52
52
  _defineProperty(this, "helpUrl", 'reference/components/snaps');
53
53
  _defineProperty(this, "alias", '');
@@ -72,7 +72,7 @@ to ignore multiple issues, separate them by a comma and wrap with quotes. to ign
72
72
  unmodified = false,
73
73
  failFast = false
74
74
  }) {
75
- build = (await this.globalConfig.getBool(_constants().CFG_FORCE_LOCAL_BUILD)) || Boolean(build);
75
+ build = (await this.globalConfig.getBool(_legacy().CFG_FORCE_LOCAL_BUILD)) || Boolean(build);
76
76
  const disableTagAndSnapPipelines = disableSnapPipeline;
77
77
  if (!message && !editor) {
78
78
  this.logger.consoleWarning(`--message will be mandatory in the next few releases. make sure to add a message with your snap, will be displayed in the version history`);
@@ -93,7 +93,7 @@ to ignore multiple issues, separate them by a comma and wrap with quotes. to ign
93
93
  unmodified,
94
94
  exitOnFirstFailedTask: failFast
95
95
  });
96
- if (!results) return _chalk().default.yellow(_constants().NOTHING_TO_SNAP_MSG);
96
+ if (!results) return _chalk().default.yellow(_legacy().NOTHING_TO_SNAP_MSG);
97
97
  const {
98
98
  snappedComponents,
99
99
  autoSnappedResults,
@@ -120,7 +120,7 @@ to ignore multiple issues, separate them by a comma and wrap with quotes. to ign
120
120
  const autoTag = autoSnappedResults.filter(result => result.triggeredBy.searchWithoutVersion(component.id));
121
121
  if (autoTag.length) {
122
122
  const autoTagComp = autoTag.map(a => compInBold(a.component.id));
123
- componentOutput += `\n ${_constants().AUTO_SNAPPED_MSG} (${autoTagComp.length} total):
123
+ componentOutput += `\n ${_legacy().AUTO_SNAPPED_MSG} (${autoTagComp.length} total):
124
124
  ${autoTagComp.join('\n ')}`;
125
125
  }
126
126
  return componentOutput;