@teambit/scope 0.0.881 → 0.0.882
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/exceptions/component-not-found.js +0 -6
- package/dist/exceptions/component-not-found.js.map +1 -1
- package/dist/exceptions/index.js +0 -6
- package/dist/exceptions/index.js.map +1 -1
- package/dist/exceptions/no-id-match-pattern.js +0 -6
- package/dist/exceptions/no-id-match-pattern.js.map +1 -1
- package/dist/index.js +0 -14
- package/dist/index.js.map +1 -1
- package/dist/routes/action.route.js +2 -19
- package/dist/routes/action.route.js.map +1 -1
- package/dist/routes/delete.route.js +0 -11
- package/dist/routes/delete.route.js.map +1 -1
- package/dist/routes/fetch.route.js +0 -27
- package/dist/routes/fetch.route.js.map +1 -1
- package/dist/routes/index.js +0 -12
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/put.route.js +0 -18
- package/dist/routes/put.route.js.map +1 -1
- package/dist/scope-cmd.js +0 -13
- package/dist/scope-cmd.js.map +1 -1
- package/dist/scope-component-loader.js +18 -69
- package/dist/scope-component-loader.js.map +1 -1
- package/dist/scope.aspect.js +0 -5
- package/dist/scope.aspect.js.map +1 -1
- package/dist/scope.composition.js +0 -6
- package/dist/scope.composition.js.map +1 -1
- package/dist/scope.graphql.js +4 -23
- package/dist/scope.graphql.js.map +1 -1
- package/dist/scope.main.runtime.js +71 -349
- package/dist/scope.main.runtime.js.map +1 -1
- package/dist/scope.ui-root.js +0 -14
- package/dist/scope.ui-root.js.map +1 -1
- package/dist/scope.ui.drawer.js +5 -38
- package/dist/scope.ui.drawer.js.map +1 -1
- package/dist/scope.ui.runtime.js +11 -97
- package/dist/scope.ui.runtime.js.map +1 -1
- package/dist/staged-config.js +0 -35
- package/dist/staged-config.js.map +1 -1
- package/dist/ui/menu/index.js +0 -3
- package/dist/ui/menu/index.js.map +1 -1
- package/dist/ui/menu/menu.js +3 -35
- package/dist/ui/menu/menu.js.map +1 -1
- package/dist/ui/scope-overview/index.js +0 -2
- package/dist/ui/scope-overview/index.js.map +1 -1
- package/dist/ui/scope-overview/scope-overview.js +0 -32
- package/dist/ui/scope-overview/scope-overview.js.map +1 -1
- package/dist/ui/scope.js +0 -57
- package/dist/ui/scope.js.map +1 -1
- package/package-tar/teambit-scope-0.0.882.tgz +0 -0
- package/package.json +13 -13
- package/{preview-1666409808293.js → preview-1666496165706.js} +2 -2
- package/package-tar/teambit-scope-0.0.881.tgz +0 -0
|
@@ -1,106 +1,77 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
require("core-js/modules/es.promise.js");
|
|
6
|
-
|
|
7
5
|
Object.defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
8
|
exports.ScopeComponentLoader = void 0;
|
|
11
|
-
|
|
12
9
|
function _defineProperty2() {
|
|
13
10
|
const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
|
-
|
|
15
11
|
_defineProperty2 = function () {
|
|
16
12
|
return data;
|
|
17
13
|
};
|
|
18
|
-
|
|
19
14
|
return data;
|
|
20
15
|
}
|
|
21
|
-
|
|
22
16
|
function _component() {
|
|
23
17
|
const data = require("@teambit/component");
|
|
24
|
-
|
|
25
18
|
_component = function () {
|
|
26
19
|
return data;
|
|
27
20
|
};
|
|
28
|
-
|
|
29
21
|
return data;
|
|
30
22
|
}
|
|
31
|
-
|
|
32
23
|
function _pMapSeries() {
|
|
33
24
|
const data = _interopRequireDefault(require("p-map-series"));
|
|
34
|
-
|
|
35
25
|
_pMapSeries = function () {
|
|
36
26
|
return data;
|
|
37
27
|
};
|
|
38
|
-
|
|
39
28
|
return data;
|
|
40
29
|
}
|
|
41
|
-
|
|
42
30
|
function _semver() {
|
|
43
31
|
const data = require("semver");
|
|
44
|
-
|
|
45
32
|
_semver = function () {
|
|
46
33
|
return data;
|
|
47
34
|
};
|
|
48
|
-
|
|
49
35
|
return data;
|
|
50
36
|
}
|
|
51
|
-
|
|
52
37
|
function _scopeComponentsImporter() {
|
|
53
38
|
const data = _interopRequireDefault(require("@teambit/legacy/dist/scope/component-ops/scope-components-importer"));
|
|
54
|
-
|
|
55
39
|
_scopeComponentsImporter = function () {
|
|
56
40
|
return data;
|
|
57
41
|
};
|
|
58
|
-
|
|
59
42
|
return data;
|
|
60
43
|
}
|
|
61
|
-
|
|
62
44
|
function _bitId() {
|
|
63
45
|
const data = require("@teambit/legacy/dist/bit-id");
|
|
64
|
-
|
|
65
46
|
_bitId = function () {
|
|
66
47
|
return data;
|
|
67
48
|
};
|
|
68
|
-
|
|
69
49
|
return data;
|
|
70
50
|
}
|
|
71
|
-
|
|
72
51
|
function _objects() {
|
|
73
52
|
const data = require("@teambit/legacy/dist/scope/objects");
|
|
74
|
-
|
|
75
53
|
_objects = function () {
|
|
76
54
|
return data;
|
|
77
55
|
};
|
|
78
|
-
|
|
79
56
|
return data;
|
|
80
57
|
}
|
|
81
|
-
|
|
82
58
|
function _inMemoryCache() {
|
|
83
59
|
const data = require("@teambit/legacy/dist/cache/in-memory-cache");
|
|
84
|
-
|
|
85
60
|
_inMemoryCache = function () {
|
|
86
61
|
return data;
|
|
87
62
|
};
|
|
88
|
-
|
|
89
63
|
return data;
|
|
90
64
|
}
|
|
91
|
-
|
|
92
65
|
function _cacheFactory() {
|
|
93
66
|
const data = require("@teambit/legacy/dist/cache/cache-factory");
|
|
94
|
-
|
|
95
67
|
_cacheFactory = function () {
|
|
96
68
|
return data;
|
|
97
69
|
};
|
|
98
|
-
|
|
99
70
|
return data;
|
|
100
71
|
}
|
|
101
|
-
|
|
102
72
|
class ScopeComponentLoader {
|
|
103
73
|
// cache loaded components
|
|
74
|
+
|
|
104
75
|
constructor(scope, logger) {
|
|
105
76
|
this.scope = scope;
|
|
106
77
|
this.logger = logger;
|
|
@@ -116,28 +87,24 @@ class ScopeComponentLoader {
|
|
|
116
87
|
|
|
117
88
|
async get(id, importIfMissing = true) {
|
|
118
89
|
const fromCache = this.getFromCache(id);
|
|
119
|
-
|
|
120
90
|
if (fromCache) {
|
|
121
91
|
return fromCache;
|
|
122
92
|
}
|
|
123
|
-
|
|
124
93
|
const idStr = id.toString();
|
|
125
94
|
this.logger.debug(`ScopeComponentLoader.get, loading ${idStr}`);
|
|
126
95
|
const legacyId = id._legacy;
|
|
127
|
-
let modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);
|
|
128
|
-
|
|
96
|
+
let modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);
|
|
97
|
+
// import if missing
|
|
129
98
|
if (!modelComponent && importIfMissing && id._legacy.hasScope() && !this.importedComponentsCache.get(id.toString())) {
|
|
130
99
|
await this.scope.legacyScope.import(_bitId().BitIds.fromArray([id._legacy]));
|
|
131
100
|
this.importedComponentsCache.set(id.toString(), true);
|
|
132
101
|
modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
|
|
102
|
+
}
|
|
103
|
+
// Search with scope name for bare scopes
|
|
136
104
|
if (!modelComponent && !legacyId.scope) {
|
|
137
105
|
id = id.changeScope(this.scope.name);
|
|
138
106
|
modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);
|
|
139
107
|
}
|
|
140
|
-
|
|
141
108
|
if (!modelComponent) return undefined;
|
|
142
109
|
const versionStr = id.version && id.version !== 'latest' ? id.version : modelComponent.latest();
|
|
143
110
|
const newId = id.changeVersion(versionStr);
|
|
@@ -149,11 +116,10 @@ class ScopeComponentLoader {
|
|
|
149
116
|
this.componentsCache.set(idStr, component);
|
|
150
117
|
return component;
|
|
151
118
|
}
|
|
152
|
-
|
|
153
119
|
async getFromConsumerComponent(consumerComponent) {
|
|
154
120
|
const legacyId = consumerComponent.id;
|
|
155
|
-
const modelComponent = await this.scope.legacyScope.getModelComponent(legacyId);
|
|
156
|
-
|
|
121
|
+
const modelComponent = await this.scope.legacyScope.getModelComponent(legacyId);
|
|
122
|
+
// :TODO move to head snap once we have it merged, for now using `latest`.
|
|
157
123
|
const id = await this.scope.resolveComponentId(legacyId);
|
|
158
124
|
const version = consumerComponent.pendingVersion || (await modelComponent.loadVersion(legacyId.version, this.scope.legacyScope.objects));
|
|
159
125
|
const snap = await this.getHeadSnap(modelComponent);
|
|
@@ -161,43 +127,39 @@ class ScopeComponentLoader {
|
|
|
161
127
|
const tagMap = this.getTagMap(modelComponent);
|
|
162
128
|
return new (_component().Component)(id, snap, state, tagMap, this.scope);
|
|
163
129
|
}
|
|
130
|
+
|
|
164
131
|
/**
|
|
165
132
|
* get a component from a remote without importing it
|
|
166
133
|
*/
|
|
167
|
-
|
|
168
|
-
|
|
169
134
|
async getRemoteComponent(id) {
|
|
170
135
|
const compImport = new (_scopeComponentsImporter().default)(this.scope.legacyScope);
|
|
171
|
-
const objectList = await compImport.getRemoteComponent(id._legacy);
|
|
136
|
+
const objectList = await compImport.getRemoteComponent(id._legacy);
|
|
137
|
+
// it's crucial to add all objects to the Repository cache. otherwise, later, when it asks
|
|
172
138
|
// for the consumerComponent from the legacyScope, it won't work.
|
|
173
|
-
|
|
174
139
|
objectList === null || objectList === void 0 ? void 0 : objectList.getAll().forEach(obj => this.scope.legacyScope.objects.setCache(obj));
|
|
175
140
|
const consumerComponent = await this.scope.legacyScope.getConsumerComponent(id._legacy);
|
|
176
141
|
return this.getFromConsumerComponent(consumerComponent);
|
|
177
142
|
}
|
|
143
|
+
|
|
178
144
|
/**
|
|
179
145
|
* get components from a remote without importing it
|
|
180
146
|
*/
|
|
181
|
-
|
|
182
|
-
|
|
183
147
|
async getManyRemoteComponents(ids) {
|
|
184
148
|
const compImport = new (_scopeComponentsImporter().default)(this.scope.legacyScope);
|
|
185
149
|
const legacyIds = ids.map(id => id._legacy);
|
|
186
|
-
const objectList = await compImport.getManyRemoteComponents(legacyIds);
|
|
150
|
+
const objectList = await compImport.getManyRemoteComponents(legacyIds);
|
|
151
|
+
// it's crucial to add all objects to the Repository cache. otherwise, later, when it asks
|
|
187
152
|
// for the consumerComponent from the legacyScope, it won't work.
|
|
188
|
-
|
|
189
153
|
objectList === null || objectList === void 0 ? void 0 : objectList.getAll().forEach(obj => this.scope.legacyScope.objects.setCache(obj));
|
|
190
154
|
return (0, _pMapSeries().default)(legacyIds, async legacyId => {
|
|
191
155
|
const consumerComponent = await this.scope.legacyScope.getConsumerComponent(legacyId);
|
|
192
156
|
return this.getFromConsumerComponent(consumerComponent);
|
|
193
157
|
});
|
|
194
158
|
}
|
|
195
|
-
|
|
196
159
|
async getState(id, hash) {
|
|
197
160
|
const version = await this.scope.legacyScope.objects.load(new (_objects().Ref)(hash));
|
|
198
161
|
return this.createStateFromVersion(id, version);
|
|
199
162
|
}
|
|
200
|
-
|
|
201
163
|
async getSnap(id, hash) {
|
|
202
164
|
const getVersionObject = async () => {
|
|
203
165
|
try {
|
|
@@ -213,14 +175,13 @@ class ScopeComponentLoader {
|
|
|
213
175
|
}
|
|
214
176
|
}
|
|
215
177
|
};
|
|
216
|
-
|
|
217
178
|
const version = await getVersionObject();
|
|
218
179
|
return this.createSnapFromVersion(version);
|
|
219
180
|
}
|
|
220
|
-
|
|
221
181
|
clearCache() {
|
|
222
182
|
this.componentsCache.deleteAll();
|
|
223
183
|
}
|
|
184
|
+
|
|
224
185
|
/**
|
|
225
186
|
* make sure that not only the id-str match, but also the legacy-id.
|
|
226
187
|
* this is needed because the ComponentID.toString() is the same whether or not the legacy-id has
|
|
@@ -228,19 +189,14 @@ class ScopeComponentLoader {
|
|
|
228
189
|
* as a result, when out-of-sync is happening and the id is changed to include scope-name in the
|
|
229
190
|
* legacy-id, the component is the cache has the old id.
|
|
230
191
|
*/
|
|
231
|
-
|
|
232
|
-
|
|
233
192
|
getFromCache(id) {
|
|
234
193
|
const idStr = id.toString();
|
|
235
194
|
const fromCache = this.componentsCache.get(idStr);
|
|
236
|
-
|
|
237
195
|
if (fromCache && fromCache.id._legacy.isEqual(id._legacy)) {
|
|
238
196
|
return fromCache;
|
|
239
197
|
}
|
|
240
|
-
|
|
241
198
|
return undefined;
|
|
242
199
|
}
|
|
243
|
-
|
|
244
200
|
getTagMap(modelComponent) {
|
|
245
201
|
const tagMap = new (_component().TagMap)();
|
|
246
202
|
const allVersions = modelComponent.versionsIncludeOrphaned;
|
|
@@ -250,44 +206,37 @@ class ScopeComponentLoader {
|
|
|
250
206
|
});
|
|
251
207
|
return tagMap;
|
|
252
208
|
}
|
|
253
|
-
|
|
254
209
|
async getHeadSnap(modelComponent) {
|
|
255
210
|
const head = modelComponent.getHeadRegardlessOfLane();
|
|
256
|
-
|
|
257
211
|
if (!head) {
|
|
258
212
|
// happens for example when on main and merging a lane.
|
|
259
213
|
return null;
|
|
260
214
|
}
|
|
261
|
-
|
|
262
215
|
const version = await modelComponent.loadVersion(head.toString(), this.scope.legacyScope.objects, false);
|
|
263
|
-
|
|
264
216
|
if (!version) {
|
|
265
217
|
// might happen when the component is just a dependency and a previous version was needed.
|
|
266
218
|
return null;
|
|
267
219
|
}
|
|
268
|
-
|
|
269
220
|
return this.createSnapFromVersion(version);
|
|
270
221
|
}
|
|
271
|
-
|
|
272
222
|
createSnapFromVersion(version) {
|
|
273
223
|
return new (_component().Snap)(version.hash().toString(), new Date(parseInt(version.log.date)), version.parents.map(p => p.toString()), {
|
|
274
224
|
displayName: version.log.username || 'unknown',
|
|
275
225
|
email: version.log.email || 'unknown@anywhere'
|
|
276
226
|
}, version.log.message);
|
|
277
227
|
}
|
|
278
|
-
|
|
279
228
|
async createStateFromVersion(id, version) {
|
|
280
229
|
const consumerComponent = await this.scope.legacyScope.getConsumerComponent(id._legacy);
|
|
281
|
-
const state = new (_component().State)(
|
|
230
|
+
const state = new (_component().State)(
|
|
231
|
+
// We use here the consumerComponent.extensions instead of version.extensions
|
|
282
232
|
// because as part of the conversion to consumer component the artifacts are initialized as Artifact instances
|
|
283
|
-
new (_component().Config)(version.mainFile, consumerComponent.extensions),
|
|
233
|
+
new (_component().Config)(version.mainFile, consumerComponent.extensions),
|
|
234
|
+
// todo: see the comment of this "createAspectListFromLegacy" method. the aspect ids may be incorrect.
|
|
284
235
|
// find a better way to get the ids correctly.
|
|
285
236
|
this.scope.componentExtension.createAspectListFromLegacy(consumerComponent.extensions, this.scope.name), _component().ComponentFS.fromVinyls(consumerComponent.files), version.dependencies, consumerComponent);
|
|
286
237
|
return state;
|
|
287
238
|
}
|
|
288
|
-
|
|
289
239
|
}
|
|
290
|
-
|
|
291
240
|
exports.ScopeComponentLoader = ScopeComponentLoader;
|
|
292
241
|
|
|
293
242
|
//# sourceMappingURL=scope-component-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ScopeComponentLoader","constructor","scope","logger","componentsCache","createInMemoryCache","maxSize","getMaxSizeForComponents","importedComponentsCache","maxAge","get","id","importIfMissing","fromCache","getFromCache","idStr","toString","debug","legacyId","_legacy","modelComponent","legacyScope","getModelComponentIfExist","hasScope","import","BitIds","fromArray","set","changeScope","name","undefined","versionStr","version","latest","newId","changeVersion","loadVersion","objects","snap","getHeadSnap","state","createStateFromVersion","tagMap","getTagMap","component","Component","getFromConsumerComponent","consumerComponent","getModelComponent","resolveComponentId","pendingVersion","getRemoteComponent","compImport","ScopeComponentsImporter","objectList","getAll","forEach","obj","setCache","getConsumerComponent","getManyRemoteComponents","ids","legacyIds","map","pMapSeries","getState","hash","load","Ref","getSnap","getVersionObject","err","code","errMsg","error","Error","createSnapFromVersion","clearCache","deleteAll","isEqual","TagMap","allVersions","versionsIncludeOrphaned","Object","keys","tag","Tag","SemVer","head","getHeadRegardlessOfLane","Snap","Date","parseInt","log","date","parents","p","displayName","username","email","message","State","Config","mainFile","extensions","componentExtension","createAspectListFromLegacy","ComponentFS","fromVinyls","files","dependencies"],"sources":["scope-component-loader.ts"],"sourcesContent":["import { Component, ComponentFS, ComponentID, Config, Snap, State, Tag, TagMap } from '@teambit/component';\nimport pMapSeries from 'p-map-series';\nimport { Logger } from '@teambit/logger';\nimport { SemVer } from 'semver';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport { ModelComponent, Version } from '@teambit/legacy/dist/scope/models';\nimport { BitIds } from '@teambit/legacy/dist/bit-id';\nimport { Ref } from '@teambit/legacy/dist/scope/objects';\nimport { getMaxSizeForComponents, InMemoryCache } from '@teambit/legacy/dist/cache/in-memory-cache';\nimport { createInMemoryCache } from '@teambit/legacy/dist/cache/cache-factory';\nimport type { ScopeMain } from './scope.main.runtime';\n\nexport class ScopeComponentLoader {\n private componentsCache: InMemoryCache<Component>; // cache loaded components\n private importedComponentsCache: InMemoryCache<boolean>;\n constructor(private scope: ScopeMain, private logger: Logger) {\n this.componentsCache = createInMemoryCache({ maxSize: getMaxSizeForComponents() });\n this.importedComponentsCache = createInMemoryCache({ maxAge: 1000 * 60 * 30 }); // 30 min\n }\n\n async get(id: ComponentID, importIfMissing = true): Promise<Component | undefined> {\n const fromCache = this.getFromCache(id);\n if (fromCache) {\n return fromCache;\n }\n const idStr = id.toString();\n this.logger.debug(`ScopeComponentLoader.get, loading ${idStr}`);\n const legacyId = id._legacy;\n let modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);\n // import if missing\n if (\n !modelComponent &&\n importIfMissing &&\n id._legacy.hasScope() &&\n !this.importedComponentsCache.get(id.toString())\n ) {\n await this.scope.legacyScope.import(BitIds.fromArray([id._legacy]));\n this.importedComponentsCache.set(id.toString(), true);\n modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);\n }\n // Search with scope name for bare scopes\n if (!modelComponent && !legacyId.scope) {\n id = id.changeScope(this.scope.name);\n modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);\n }\n if (!modelComponent) return undefined;\n\n const versionStr = id.version && id.version !== 'latest' ? id.version : modelComponent.latest();\n const newId = id.changeVersion(versionStr);\n const version = await modelComponent.loadVersion(versionStr, this.scope.legacyScope.objects);\n const snap = await this.getHeadSnap(modelComponent);\n const state = await this.createStateFromVersion(id, version);\n const tagMap = this.getTagMap(modelComponent);\n\n const component = new Component(newId, snap, state, tagMap, this.scope);\n this.componentsCache.set(idStr, component);\n return component;\n }\n\n async getFromConsumerComponent(consumerComponent: ConsumerComponent): Promise<Component> {\n const legacyId = consumerComponent.id;\n const modelComponent = await this.scope.legacyScope.getModelComponent(legacyId);\n // :TODO move to head snap once we have it merged, for now using `latest`.\n const id = await this.scope.resolveComponentId(legacyId);\n const version =\n consumerComponent.pendingVersion ||\n (await modelComponent.loadVersion(legacyId.version as string, this.scope.legacyScope.objects));\n const snap = await this.getHeadSnap(modelComponent);\n const state = await this.createStateFromVersion(id, version);\n const tagMap = this.getTagMap(modelComponent);\n\n return new Component(id, snap, state, tagMap, this.scope);\n }\n\n /**\n * get a component from a remote without importing it\n */\n async getRemoteComponent(id: ComponentID): Promise<Component> {\n const compImport = new ScopeComponentsImporter(this.scope.legacyScope);\n const objectList = await compImport.getRemoteComponent(id._legacy);\n // it's crucial to add all objects to the Repository cache. otherwise, later, when it asks\n // for the consumerComponent from the legacyScope, it won't work.\n objectList?.getAll().forEach((obj) => this.scope.legacyScope.objects.setCache(obj));\n const consumerComponent = await this.scope.legacyScope.getConsumerComponent(id._legacy);\n return this.getFromConsumerComponent(consumerComponent);\n }\n\n /**\n * get components from a remote without importing it\n */\n async getManyRemoteComponents(ids: ComponentID[]): Promise<Component[]> {\n const compImport = new ScopeComponentsImporter(this.scope.legacyScope);\n const legacyIds = ids.map((id) => id._legacy);\n const objectList = await compImport.getManyRemoteComponents(legacyIds);\n // it's crucial to add all objects to the Repository cache. otherwise, later, when it asks\n // for the consumerComponent from the legacyScope, it won't work.\n objectList?.getAll().forEach((obj) => this.scope.legacyScope.objects.setCache(obj));\n return pMapSeries(legacyIds, async (legacyId) => {\n const consumerComponent = await this.scope.legacyScope.getConsumerComponent(legacyId);\n return this.getFromConsumerComponent(consumerComponent);\n });\n }\n\n async getState(id: ComponentID, hash: string): Promise<State> {\n const version = (await this.scope.legacyScope.objects.load(new Ref(hash))) as Version;\n return this.createStateFromVersion(id, version);\n }\n\n async getSnap(id: ComponentID, hash: string): Promise<Snap> {\n const getVersionObject = async (): Promise<Version> => {\n try {\n const snap = await this.scope.legacyScope.objects.load(new Ref(hash), true);\n return snap as Version;\n } catch (err: any) {\n if (err.code === 'ENOENT') {\n const errMsg = `fatal: snap \"${hash}\" file for component \"${id.toString()}\" was not found in the filesystem`;\n this.logger.error(errMsg, err);\n throw new Error(errMsg);\n } else {\n throw err;\n }\n }\n };\n const version = await getVersionObject();\n return this.createSnapFromVersion(version);\n }\n\n clearCache() {\n this.componentsCache.deleteAll();\n }\n\n /**\n * make sure that not only the id-str match, but also the legacy-id.\n * this is needed because the ComponentID.toString() is the same whether or not the legacy-id has\n * scope-name, as it includes the defaultScope if the scope is empty.\n * as a result, when out-of-sync is happening and the id is changed to include scope-name in the\n * legacy-id, the component is the cache has the old id.\n */\n private getFromCache(id: ComponentID): Component | undefined {\n const idStr = id.toString();\n const fromCache = this.componentsCache.get(idStr);\n if (fromCache && fromCache.id._legacy.isEqual(id._legacy)) {\n return fromCache;\n }\n return undefined;\n }\n\n private getTagMap(modelComponent: ModelComponent): TagMap {\n const tagMap = new TagMap();\n const allVersions = modelComponent.versionsIncludeOrphaned;\n Object.keys(allVersions).forEach((versionStr: string) => {\n const tag = new Tag(allVersions[versionStr].toString(), new SemVer(versionStr));\n tagMap.set(tag.version, tag);\n });\n return tagMap;\n }\n\n private async getHeadSnap(modelComponent: ModelComponent): Promise<Snap | null> {\n const head = modelComponent.getHeadRegardlessOfLane();\n if (!head) {\n // happens for example when on main and merging a lane.\n return null;\n }\n const version = await modelComponent.loadVersion(head.toString(), this.scope.legacyScope.objects, false);\n if (!version) {\n // might happen when the component is just a dependency and a previous version was needed.\n return null;\n }\n return this.createSnapFromVersion(version);\n }\n\n private createSnapFromVersion(version: Version): Snap {\n return new Snap(\n version.hash().toString(),\n new Date(parseInt(version.log.date)),\n version.parents.map((p) => p.toString()),\n {\n displayName: version.log.username || 'unknown',\n email: version.log.email || 'unknown@anywhere',\n },\n version.log.message\n );\n }\n\n private async createStateFromVersion(id: ComponentID, version: Version): Promise<State> {\n const consumerComponent = await this.scope.legacyScope.getConsumerComponent(id._legacy);\n const state = new State(\n // We use here the consumerComponent.extensions instead of version.extensions\n // because as part of the conversion to consumer component the artifacts are initialized as Artifact instances\n new Config(version.mainFile, consumerComponent.extensions),\n // todo: see the comment of this \"createAspectListFromLegacy\" method. the aspect ids may be incorrect.\n // find a better way to get the ids correctly.\n this.scope.componentExtension.createAspectListFromLegacy(consumerComponent.extensions, this.scope.name),\n ComponentFS.fromVinyls(consumerComponent.files),\n version.dependencies,\n consumerComponent\n );\n return state;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["ScopeComponentLoader","constructor","scope","logger","componentsCache","createInMemoryCache","maxSize","getMaxSizeForComponents","importedComponentsCache","maxAge","get","id","importIfMissing","fromCache","getFromCache","idStr","toString","debug","legacyId","_legacy","modelComponent","legacyScope","getModelComponentIfExist","hasScope","import","BitIds","fromArray","set","changeScope","name","undefined","versionStr","version","latest","newId","changeVersion","loadVersion","objects","snap","getHeadSnap","state","createStateFromVersion","tagMap","getTagMap","component","Component","getFromConsumerComponent","consumerComponent","getModelComponent","resolveComponentId","pendingVersion","getRemoteComponent","compImport","ScopeComponentsImporter","objectList","getAll","forEach","obj","setCache","getConsumerComponent","getManyRemoteComponents","ids","legacyIds","map","pMapSeries","getState","hash","load","Ref","getSnap","getVersionObject","err","code","errMsg","error","Error","createSnapFromVersion","clearCache","deleteAll","isEqual","TagMap","allVersions","versionsIncludeOrphaned","Object","keys","tag","Tag","SemVer","head","getHeadRegardlessOfLane","Snap","Date","parseInt","log","date","parents","p","displayName","username","email","message","State","Config","mainFile","extensions","componentExtension","createAspectListFromLegacy","ComponentFS","fromVinyls","files","dependencies"],"sources":["scope-component-loader.ts"],"sourcesContent":["import { Component, ComponentFS, ComponentID, Config, Snap, State, Tag, TagMap } from '@teambit/component';\nimport pMapSeries from 'p-map-series';\nimport { Logger } from '@teambit/logger';\nimport { SemVer } from 'semver';\nimport ConsumerComponent from '@teambit/legacy/dist/consumer/component';\nimport ScopeComponentsImporter from '@teambit/legacy/dist/scope/component-ops/scope-components-importer';\nimport { ModelComponent, Version } from '@teambit/legacy/dist/scope/models';\nimport { BitIds } from '@teambit/legacy/dist/bit-id';\nimport { Ref } from '@teambit/legacy/dist/scope/objects';\nimport { getMaxSizeForComponents, InMemoryCache } from '@teambit/legacy/dist/cache/in-memory-cache';\nimport { createInMemoryCache } from '@teambit/legacy/dist/cache/cache-factory';\nimport type { ScopeMain } from './scope.main.runtime';\n\nexport class ScopeComponentLoader {\n private componentsCache: InMemoryCache<Component>; // cache loaded components\n private importedComponentsCache: InMemoryCache<boolean>;\n constructor(private scope: ScopeMain, private logger: Logger) {\n this.componentsCache = createInMemoryCache({ maxSize: getMaxSizeForComponents() });\n this.importedComponentsCache = createInMemoryCache({ maxAge: 1000 * 60 * 30 }); // 30 min\n }\n\n async get(id: ComponentID, importIfMissing = true): Promise<Component | undefined> {\n const fromCache = this.getFromCache(id);\n if (fromCache) {\n return fromCache;\n }\n const idStr = id.toString();\n this.logger.debug(`ScopeComponentLoader.get, loading ${idStr}`);\n const legacyId = id._legacy;\n let modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);\n // import if missing\n if (\n !modelComponent &&\n importIfMissing &&\n id._legacy.hasScope() &&\n !this.importedComponentsCache.get(id.toString())\n ) {\n await this.scope.legacyScope.import(BitIds.fromArray([id._legacy]));\n this.importedComponentsCache.set(id.toString(), true);\n modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);\n }\n // Search with scope name for bare scopes\n if (!modelComponent && !legacyId.scope) {\n id = id.changeScope(this.scope.name);\n modelComponent = await this.scope.legacyScope.getModelComponentIfExist(id._legacy);\n }\n if (!modelComponent) return undefined;\n\n const versionStr = id.version && id.version !== 'latest' ? id.version : modelComponent.latest();\n const newId = id.changeVersion(versionStr);\n const version = await modelComponent.loadVersion(versionStr, this.scope.legacyScope.objects);\n const snap = await this.getHeadSnap(modelComponent);\n const state = await this.createStateFromVersion(id, version);\n const tagMap = this.getTagMap(modelComponent);\n\n const component = new Component(newId, snap, state, tagMap, this.scope);\n this.componentsCache.set(idStr, component);\n return component;\n }\n\n async getFromConsumerComponent(consumerComponent: ConsumerComponent): Promise<Component> {\n const legacyId = consumerComponent.id;\n const modelComponent = await this.scope.legacyScope.getModelComponent(legacyId);\n // :TODO move to head snap once we have it merged, for now using `latest`.\n const id = await this.scope.resolveComponentId(legacyId);\n const version =\n consumerComponent.pendingVersion ||\n (await modelComponent.loadVersion(legacyId.version as string, this.scope.legacyScope.objects));\n const snap = await this.getHeadSnap(modelComponent);\n const state = await this.createStateFromVersion(id, version);\n const tagMap = this.getTagMap(modelComponent);\n\n return new Component(id, snap, state, tagMap, this.scope);\n }\n\n /**\n * get a component from a remote without importing it\n */\n async getRemoteComponent(id: ComponentID): Promise<Component> {\n const compImport = new ScopeComponentsImporter(this.scope.legacyScope);\n const objectList = await compImport.getRemoteComponent(id._legacy);\n // it's crucial to add all objects to the Repository cache. otherwise, later, when it asks\n // for the consumerComponent from the legacyScope, it won't work.\n objectList?.getAll().forEach((obj) => this.scope.legacyScope.objects.setCache(obj));\n const consumerComponent = await this.scope.legacyScope.getConsumerComponent(id._legacy);\n return this.getFromConsumerComponent(consumerComponent);\n }\n\n /**\n * get components from a remote without importing it\n */\n async getManyRemoteComponents(ids: ComponentID[]): Promise<Component[]> {\n const compImport = new ScopeComponentsImporter(this.scope.legacyScope);\n const legacyIds = ids.map((id) => id._legacy);\n const objectList = await compImport.getManyRemoteComponents(legacyIds);\n // it's crucial to add all objects to the Repository cache. otherwise, later, when it asks\n // for the consumerComponent from the legacyScope, it won't work.\n objectList?.getAll().forEach((obj) => this.scope.legacyScope.objects.setCache(obj));\n return pMapSeries(legacyIds, async (legacyId) => {\n const consumerComponent = await this.scope.legacyScope.getConsumerComponent(legacyId);\n return this.getFromConsumerComponent(consumerComponent);\n });\n }\n\n async getState(id: ComponentID, hash: string): Promise<State> {\n const version = (await this.scope.legacyScope.objects.load(new Ref(hash))) as Version;\n return this.createStateFromVersion(id, version);\n }\n\n async getSnap(id: ComponentID, hash: string): Promise<Snap> {\n const getVersionObject = async (): Promise<Version> => {\n try {\n const snap = await this.scope.legacyScope.objects.load(new Ref(hash), true);\n return snap as Version;\n } catch (err: any) {\n if (err.code === 'ENOENT') {\n const errMsg = `fatal: snap \"${hash}\" file for component \"${id.toString()}\" was not found in the filesystem`;\n this.logger.error(errMsg, err);\n throw new Error(errMsg);\n } else {\n throw err;\n }\n }\n };\n const version = await getVersionObject();\n return this.createSnapFromVersion(version);\n }\n\n clearCache() {\n this.componentsCache.deleteAll();\n }\n\n /**\n * make sure that not only the id-str match, but also the legacy-id.\n * this is needed because the ComponentID.toString() is the same whether or not the legacy-id has\n * scope-name, as it includes the defaultScope if the scope is empty.\n * as a result, when out-of-sync is happening and the id is changed to include scope-name in the\n * legacy-id, the component is the cache has the old id.\n */\n private getFromCache(id: ComponentID): Component | undefined {\n const idStr = id.toString();\n const fromCache = this.componentsCache.get(idStr);\n if (fromCache && fromCache.id._legacy.isEqual(id._legacy)) {\n return fromCache;\n }\n return undefined;\n }\n\n private getTagMap(modelComponent: ModelComponent): TagMap {\n const tagMap = new TagMap();\n const allVersions = modelComponent.versionsIncludeOrphaned;\n Object.keys(allVersions).forEach((versionStr: string) => {\n const tag = new Tag(allVersions[versionStr].toString(), new SemVer(versionStr));\n tagMap.set(tag.version, tag);\n });\n return tagMap;\n }\n\n private async getHeadSnap(modelComponent: ModelComponent): Promise<Snap | null> {\n const head = modelComponent.getHeadRegardlessOfLane();\n if (!head) {\n // happens for example when on main and merging a lane.\n return null;\n }\n const version = await modelComponent.loadVersion(head.toString(), this.scope.legacyScope.objects, false);\n if (!version) {\n // might happen when the component is just a dependency and a previous version was needed.\n return null;\n }\n return this.createSnapFromVersion(version);\n }\n\n private createSnapFromVersion(version: Version): Snap {\n return new Snap(\n version.hash().toString(),\n new Date(parseInt(version.log.date)),\n version.parents.map((p) => p.toString()),\n {\n displayName: version.log.username || 'unknown',\n email: version.log.email || 'unknown@anywhere',\n },\n version.log.message\n );\n }\n\n private async createStateFromVersion(id: ComponentID, version: Version): Promise<State> {\n const consumerComponent = await this.scope.legacyScope.getConsumerComponent(id._legacy);\n const state = new State(\n // We use here the consumerComponent.extensions instead of version.extensions\n // because as part of the conversion to consumer component the artifacts are initialized as Artifact instances\n new Config(version.mainFile, consumerComponent.extensions),\n // todo: see the comment of this \"createAspectListFromLegacy\" method. the aspect ids may be incorrect.\n // find a better way to get the ids correctly.\n this.scope.componentExtension.createAspectListFromLegacy(consumerComponent.extensions, this.scope.name),\n ComponentFS.fromVinyls(consumerComponent.files),\n version.dependencies,\n consumerComponent\n );\n return state;\n }\n}\n"],"mappings":"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"}
|
package/dist/scope.aspect.js
CHANGED
|
@@ -4,21 +4,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.ScopeAspect = void 0;
|
|
7
|
-
|
|
8
7
|
function _harmony() {
|
|
9
8
|
const data = require("@teambit/harmony");
|
|
10
|
-
|
|
11
9
|
_harmony = function () {
|
|
12
10
|
return data;
|
|
13
11
|
};
|
|
14
|
-
|
|
15
12
|
return data;
|
|
16
13
|
}
|
|
17
|
-
|
|
18
14
|
const ScopeAspect = _harmony().Aspect.create({
|
|
19
15
|
id: 'teambit.scope/scope'
|
|
20
16
|
});
|
|
21
|
-
|
|
22
17
|
exports.ScopeAspect = ScopeAspect;
|
|
23
18
|
|
|
24
19
|
//# sourceMappingURL=scope.aspect.js.map
|
package/dist/scope.aspect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ScopeAspect","Aspect","create","id"],"sources":["scope.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const ScopeAspect = Aspect.create({\n id: 'teambit.scope/scope',\n});\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["ScopeAspect","Aspect","create","id"],"sources":["scope.aspect.ts"],"sourcesContent":["import { Aspect } from '@teambit/harmony';\n\nexport const ScopeAspect = Aspect.create({\n id: 'teambit.scope/scope',\n});\n"],"mappings":";;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAEO,MAAMA,WAAW,GAAGC,iBAAM,CAACC,MAAM,CAAC;EACvCC,EAAE,EAAE;AACN,CAAC,CAAC;AAAC"}
|
|
@@ -1,22 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.Logo = void 0;
|
|
9
|
-
|
|
10
8
|
function _react() {
|
|
11
9
|
const data = _interopRequireDefault(require("react"));
|
|
12
|
-
|
|
13
10
|
_react = function () {
|
|
14
11
|
return data;
|
|
15
12
|
};
|
|
16
|
-
|
|
17
13
|
return data;
|
|
18
14
|
}
|
|
19
|
-
|
|
20
15
|
const Logo = () => /*#__PURE__*/_react().default.createElement("div", {
|
|
21
16
|
style: {
|
|
22
17
|
height: '100%',
|
|
@@ -29,7 +24,6 @@ const Logo = () => /*#__PURE__*/_react().default.createElement("div", {
|
|
|
29
24
|
},
|
|
30
25
|
src: "https://static.bit.dev/extensions-icons/scope.svg"
|
|
31
26
|
}));
|
|
32
|
-
|
|
33
27
|
exports.Logo = Logo;
|
|
34
28
|
|
|
35
29
|
//# sourceMappingURL=scope.composition.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Logo","height","display","justifyContent","width"],"sources":["scope.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/scope.svg\" />\n </div>\n);\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["Logo","height","display","justifyContent","width"],"sources":["scope.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/scope.svg\" />\n </div>\n);\n"],"mappings":";;;;;;;AAAA;EAAA;EAAA;IAAA;EAAA;EAAA;AAAA;AAEO,MAAMA,IAAI,GAAG,mBAClB;EAAK,KAAK,EAAE;IAAEC,MAAM,EAAE,MAAM;IAAEC,OAAO,EAAE,MAAM;IAAEC,cAAc,EAAE;EAAS;AAAE,gBACxE;EAAK,KAAK,EAAE;IAAEC,KAAK,EAAE;EAAG,CAAE;EAAC,GAAG,EAAC;AAAmD,EAAG,CAExF;AAAC"}
|
package/dist/scope.graphql.js
CHANGED
|
@@ -1,70 +1,49 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
require("core-js/modules/es.symbol.description.js");
|
|
6
|
-
|
|
7
5
|
require("core-js/modules/es.promise.js");
|
|
8
|
-
|
|
9
6
|
Object.defineProperty(exports, "__esModule", {
|
|
10
7
|
value: true
|
|
11
8
|
});
|
|
12
9
|
exports.scopeSchema = scopeSchema;
|
|
13
|
-
|
|
14
10
|
function _defineProperty2() {
|
|
15
11
|
const data = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
-
|
|
17
12
|
_defineProperty2 = function () {
|
|
18
13
|
return data;
|
|
19
14
|
};
|
|
20
|
-
|
|
21
15
|
return data;
|
|
22
16
|
}
|
|
23
|
-
|
|
24
17
|
function _component() {
|
|
25
18
|
const data = require("@teambit/component");
|
|
26
|
-
|
|
27
19
|
_component = function () {
|
|
28
20
|
return data;
|
|
29
21
|
};
|
|
30
|
-
|
|
31
22
|
return data;
|
|
32
23
|
}
|
|
33
|
-
|
|
34
24
|
function _graphqlTag() {
|
|
35
25
|
const data = _interopRequireDefault(require("graphql-tag"));
|
|
36
|
-
|
|
37
26
|
_graphqlTag = function () {
|
|
38
27
|
return data;
|
|
39
28
|
};
|
|
40
|
-
|
|
41
29
|
return data;
|
|
42
30
|
}
|
|
43
|
-
|
|
44
31
|
function _scope() {
|
|
45
32
|
const data = require("@teambit/legacy/dist/api/scope");
|
|
46
|
-
|
|
47
33
|
_scope = function () {
|
|
48
34
|
return data;
|
|
49
35
|
};
|
|
50
|
-
|
|
51
36
|
return data;
|
|
52
37
|
}
|
|
53
|
-
|
|
54
38
|
function _scopeList() {
|
|
55
39
|
const data = _interopRequireDefault(require("@teambit/legacy/dist/api/scope/lib/scope-list"));
|
|
56
|
-
|
|
57
40
|
_scopeList = function () {
|
|
58
41
|
return data;
|
|
59
42
|
};
|
|
60
|
-
|
|
61
43
|
return data;
|
|
62
44
|
}
|
|
63
|
-
|
|
64
45
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
65
|
-
|
|
66
46
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2().default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
67
|
-
|
|
68
47
|
function scopeSchema(scopeMain) {
|
|
69
48
|
return {
|
|
70
49
|
typeDefs: (0, _graphqlTag().default)`
|
|
@@ -178,10 +157,12 @@ function scopeSchema(scopeMain) {
|
|
|
178
157
|
ids
|
|
179
158
|
}) => {
|
|
180
159
|
return scope.getMany(ids.map(str => _component().ComponentID.fromString(str)));
|
|
181
|
-
}
|
|
182
|
-
// }
|
|
160
|
+
}
|
|
161
|
+
// delete: async (scope: ScopeMain, props: { }) => {
|
|
183
162
|
|
|
163
|
+
// }
|
|
184
164
|
},
|
|
165
|
+
|
|
185
166
|
Query: {
|
|
186
167
|
scope: () => scopeMain
|
|
187
168
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["scopeSchema","scopeMain","typeDefs","gql","resolvers","Scope","name","scope","description","icon","backgroundIconColor","components","props","list","includeCache","get","id","ComponentID","fromString","_getLegacy","resolvedId","resolveId","component","state","_consumer","toString","_legacyLatestVersions","ids","latestVersions","path","_legacyList","namespaces","listData","forEach","data","getLogs","getMany","map","str","Query"],"sources":["scope.graphql.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component';\nimport gql from 'graphql-tag';\nimport { latestVersions } from '@teambit/legacy/dist/api/scope';\nimport list from '@teambit/legacy/dist/api/scope/lib/scope-list';\nimport { ScopeMain } from './scope.main.runtime';\n\nexport function scopeSchema(scopeMain: ScopeMain) {\n return {\n typeDefs: gql`\n type Scope {\n # name of the scope.\n name: String\n\n # description of the scope.\n description: String\n\n # icon of the scope.\n icon: String\n\n # background color of the icon.\n backgroundIconColor: String\n\n # path of the scope.\n path: String\n\n # list of components contained in the scope.\n components(offset: Int, limit: Int, includeCache: Boolean, namespaces: [String!]): [Component]\n\n # get a specific component.\n get(id: String!): Component\n\n # get serialized legacy component. deprecated. PLEASE DO NOT USE THIS API.\n _getLegacy(id: String!): String\n\n # get logs.\n getLogs(id: String!): [Log]\n\n # get many components by ID.\n getMany(ids: [String]!): [Component]\n\n # get serialized legacy component ids with versions. deprecated. PLEASE DO NOT USE THIS API.\n _legacyLatestVersions(ids: [String]!): [String]\n\n # get serialized list component of components. deprecated. PLEASE DO NOT USE THIS API.\n _legacyList(namespaces: String): [LegacyMeta] @deprecated(reason: \"Use the component query on Scope\")\n }\n\n type Log {\n message: String\n username: String\n email: String\n date: String\n hash: String!\n tag: String\n }\n\n type LegacyMeta {\n id: String\n deprecated: Boolean\n }\n\n type Query {\n scope: Scope\n }\n `,\n resolvers: {\n Scope: {\n name: (scope: ScopeMain) => {\n return scope.name;\n },\n description: (scope: ScopeMain) => {\n return scope.description;\n },\n icon: (scope: ScopeMain) => {\n return scope.icon;\n },\n backgroundIconColor: (scope: ScopeMain) => {\n return scope.backgroundIconColor;\n },\n components: (\n scope: ScopeMain,\n props?: { offset: number; limit: number; includeCache?: boolean; namespaces?: string[] }\n ) => {\n if (!props) return scope.list();\n return scope.list({ ...props }, props.includeCache);\n },\n\n get: async (scope: ScopeMain, { id }: { id: string }) => {\n return scope.get(ComponentID.fromString(id));\n },\n\n _getLegacy: async (scope: ScopeMain, { id }: { id: string }) => {\n const resolvedId = await scope.resolveId(id);\n const component = await scope.get(resolvedId);\n if (!component) return null;\n return component.state._consumer.toString();\n },\n\n _legacyLatestVersions: async (scope: ScopeMain, { ids }: { ids: string[] }) => {\n return latestVersions(scope.path, ids);\n },\n\n _legacyList: async (scope: ScopeMain, { namespaces }: { namespaces: string }) => {\n const listData: any = await list(scope.path, namespaces);\n listData.forEach((data) => {\n data.id = data.id.toString();\n });\n return listData;\n },\n\n getLogs: async (scope: ScopeMain, { id }: { id: string }) => {\n return scope.getLogs(ComponentID.fromString(id));\n },\n\n getMany: async (scope: ScopeMain, { ids }: { ids: string[] }) => {\n return scope.getMany(ids.map((str) => ComponentID.fromString(str)));\n },\n // delete: async (scope: ScopeMain, props: { }) => {\n\n // }\n },\n Query: {\n scope: () => scopeMain,\n },\n },\n };\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["scopeSchema","scopeMain","typeDefs","gql","resolvers","Scope","name","scope","description","icon","backgroundIconColor","components","props","list","includeCache","get","id","ComponentID","fromString","_getLegacy","resolvedId","resolveId","component","state","_consumer","toString","_legacyLatestVersions","ids","latestVersions","path","_legacyList","namespaces","listData","forEach","data","getLogs","getMany","map","str","Query"],"sources":["scope.graphql.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component';\nimport gql from 'graphql-tag';\nimport { latestVersions } from '@teambit/legacy/dist/api/scope';\nimport list from '@teambit/legacy/dist/api/scope/lib/scope-list';\nimport { ScopeMain } from './scope.main.runtime';\n\nexport function scopeSchema(scopeMain: ScopeMain) {\n return {\n typeDefs: gql`\n type Scope {\n # name of the scope.\n name: String\n\n # description of the scope.\n description: String\n\n # icon of the scope.\n icon: String\n\n # background color of the icon.\n backgroundIconColor: String\n\n # path of the scope.\n path: String\n\n # list of components contained in the scope.\n components(offset: Int, limit: Int, includeCache: Boolean, namespaces: [String!]): [Component]\n\n # get a specific component.\n get(id: String!): Component\n\n # get serialized legacy component. deprecated. PLEASE DO NOT USE THIS API.\n _getLegacy(id: String!): String\n\n # get logs.\n getLogs(id: String!): [Log]\n\n # get many components by ID.\n getMany(ids: [String]!): [Component]\n\n # get serialized legacy component ids with versions. deprecated. PLEASE DO NOT USE THIS API.\n _legacyLatestVersions(ids: [String]!): [String]\n\n # get serialized list component of components. deprecated. PLEASE DO NOT USE THIS API.\n _legacyList(namespaces: String): [LegacyMeta] @deprecated(reason: \"Use the component query on Scope\")\n }\n\n type Log {\n message: String\n username: String\n email: String\n date: String\n hash: String!\n tag: String\n }\n\n type LegacyMeta {\n id: String\n deprecated: Boolean\n }\n\n type Query {\n scope: Scope\n }\n `,\n resolvers: {\n Scope: {\n name: (scope: ScopeMain) => {\n return scope.name;\n },\n description: (scope: ScopeMain) => {\n return scope.description;\n },\n icon: (scope: ScopeMain) => {\n return scope.icon;\n },\n backgroundIconColor: (scope: ScopeMain) => {\n return scope.backgroundIconColor;\n },\n components: (\n scope: ScopeMain,\n props?: { offset: number; limit: number; includeCache?: boolean; namespaces?: string[] }\n ) => {\n if (!props) return scope.list();\n return scope.list({ ...props }, props.includeCache);\n },\n\n get: async (scope: ScopeMain, { id }: { id: string }) => {\n return scope.get(ComponentID.fromString(id));\n },\n\n _getLegacy: async (scope: ScopeMain, { id }: { id: string }) => {\n const resolvedId = await scope.resolveId(id);\n const component = await scope.get(resolvedId);\n if (!component) return null;\n return component.state._consumer.toString();\n },\n\n _legacyLatestVersions: async (scope: ScopeMain, { ids }: { ids: string[] }) => {\n return latestVersions(scope.path, ids);\n },\n\n _legacyList: async (scope: ScopeMain, { namespaces }: { namespaces: string }) => {\n const listData: any = await list(scope.path, namespaces);\n listData.forEach((data) => {\n data.id = data.id.toString();\n });\n return listData;\n },\n\n getLogs: async (scope: ScopeMain, { id }: { id: string }) => {\n return scope.getLogs(ComponentID.fromString(id));\n },\n\n getMany: async (scope: ScopeMain, { ids }: { ids: string[] }) => {\n return scope.getMany(ids.map((str) => ComponentID.fromString(str)));\n },\n // delete: async (scope: ScopeMain, props: { }) => {\n\n // }\n },\n Query: {\n scope: () => scopeMain,\n },\n },\n };\n}\n"],"mappings":"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"}
|