@teambit/lanes 1.0.167 → 1.0.168

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.
@@ -11,6 +11,13 @@ function _laneId() {
11
11
  };
12
12
  return data;
13
13
  }
14
+ function _componentId() {
15
+ const data = require("@teambit/component-id");
16
+ _componentId = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
14
21
  function _fuse() {
15
22
  const data = _interopRequireDefault(require("fuse.js"));
16
23
  _fuse = function () {
@@ -145,6 +152,7 @@ function lanesSchema(lanesMainRuntime) {
145
152
  default: Lane
146
153
  diff(from: String!, to: String!, options: DiffOptions): GetDiffResult
147
154
  diffStatus(source: String!, target: String, options: DiffStatusOptions): LaneDiffStatus!
155
+ removeUpdateDependents(laneId: String!, ids: [String!]): Boolean
148
156
  current: Lane
149
157
  }
150
158
 
@@ -271,6 +279,14 @@ function lanesSchema(lanesMainRuntime) {
271
279
  const sourceLaneId = _laneId().LaneId.parse(source);
272
280
  const targetLaneId = target ? _laneId().LaneId.parse(target) : undefined;
273
281
  return lanesMain.diffStatus(sourceLaneId, targetLaneId, options);
282
+ },
283
+ removeUpdateDependents: async (lanesMain, {
284
+ laneId,
285
+ ids
286
+ }) => {
287
+ const laneIdParsed = _laneId().LaneId.parse(laneId);
288
+ const compIds = ids?.map(id => _componentId().ComponentID.fromString(id));
289
+ return lanesMain.removeUpdateDependents(laneIdParsed, compIds);
274
290
  }
275
291
  },
276
292
  LaneDiffStatus: {
@@ -1 +1 @@
1
- {"version":3,"names":["_laneId","data","require","_fuse","_interopRequireDefault","_graphqlTag","_lodash","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","String","Symbol","toPrimitive","call","TypeError","Number","lanesSchema","lanesMainRuntime","typeDefs","gql","resolvers","Lanes","id","list","lanesMain","ids","limit","offset","sort","by","direction","search","lanes","getLanes","showDefaultLane","flatten","Promise","all","map","getDefaultLaneId","name","LaneId","parse","fuseOptions","threshold","findAllMatches","location","distance","minMatchCharLength","ignoreLocation","shouldSort","includeScore","fuse","Fuse","result","item","a","b","aDate","log","date","bDate","aId","toString","bId","slice","defaultLane","current","currentLaneName","getCurrentLaneName","undefined","currentLane","diff","from","to","options","getDiffResults","getDiff","compsWithDiff","diffStatus","source","target","sourceLaneId","targetLaneId","LaneDiffStatus","LaneComponentDiffStatus","diffCompStatus","componentId","toStringWithoutVersion","sourceHead","targetHead","toObject","Lane","lane","laneComponentIds","componentIds","getLaneComponentIds","components","laneComponents","getLaneComponentModels","readmeComponent","laneReadmeComponent","getLaneReadmeComponent","createdAt","createdBy","username","email","profileImage","displayName","Query"],"sources":["lanes.graphql.ts"],"sourcesContent":["import { Schema } from '@teambit/graphql';\nimport { LaneId } from '@teambit/lane-id';\nimport Fuse from 'fuse.js';\nimport { LaneData } from '@teambit/legacy/dist/scope/lanes/lanes';\nimport gql from 'graphql-tag';\nimport { flatten, slice } from 'lodash';\nimport { LaneComponentDiffStatus, LaneDiffStatus, LaneDiffStatusOptions, LanesMain } from './lanes.main.runtime';\n\nexport function lanesSchema(lanesMainRuntime: LanesMain): Schema {\n return {\n typeDefs: gql`\n type FileDiff {\n filePath: String!\n diffOutput: String\n }\n\n type SnapDistance {\n onSource: [String!]!\n onTarget: [String!]!\n common: String\n }\n\n type FieldsDiff {\n fieldName: String!\n diffOutput: String\n }\n\n type DiffResults {\n id: String\n hasDiff: Boolean\n filesDiff: [FileDiff]\n fieldsDiff: [FieldsDiff]\n }\n\n type GetDiffResult {\n newComps: [String]\n compsWithNoChanges: [String]\n toLaneName: String\n compsWithDiff: [DiffResults]\n }\n\n input DiffOptions {\n color: Boolean\n }\n\n input DiffStatusOptions {\n skipChanges: Boolean\n skipUpToDate: Boolean\n }\n\n type LaneId {\n name: String!\n scope: String!\n }\n\n type LaneComponentDiffStatus {\n \"\"\"\n for apollo caching - component id\n \"\"\"\n id: String!\n sourceHead: String!\n targetHead: String\n componentId: ComponentID!\n changeType: String @deprecated(reason: \"Use changes\")\n \"\"\"\n list of all change types - Source Code, Dependency, Aspects, etc\n \"\"\"\n changes: [String!]\n upToDate: Boolean\n snapsDistance: SnapDistance\n unrelated: Boolean\n }\n\n type LaneDiffStatus {\n \"\"\"\n for apollo caching - source + target\n \"\"\"\n id: String!\n source: LaneId!\n target: LaneId!\n componentsStatus: [LaneComponentDiffStatus!]!\n }\n\n type LaneOwner {\n name: String\n username: String\n displayName: String\n email: String\n profileImage: String\n }\n\n type Lane {\n id: LaneId!\n hash: String\n laneComponentIds: [ComponentID!]!\n components(offset: Int, limit: Int): [Component!]!\n readmeComponent: Component\n createdBy: LaneOwner\n createdAt: String\n updatedBy: LaneOwner\n updatedAt: String\n }\n\n input LaneSort {\n by: String\n direction: String\n }\n\n # Lane API\n type Lanes {\n id: String!\n list(ids: [String!], offset: Int, limit: Int, sort: LaneSort, search: String): [Lane!]!\n default: Lane\n diff(from: String!, to: String!, options: DiffOptions): GetDiffResult\n diffStatus(source: String!, target: String, options: DiffStatusOptions): LaneDiffStatus!\n current: Lane\n }\n\n type Query {\n lanes: Lanes\n }\n `,\n resolvers: {\n Lanes: {\n // need this for Apollo InMemory Caching\n id: () => 'lanes',\n list: async (\n lanesMain: LanesMain,\n {\n ids,\n limit,\n offset,\n sort: { by = 'createdAt', direction = 'desc' } = { by: 'createdAt', direction: 'desc' },\n search,\n }: {\n ids?: string[];\n offset?: number;\n limit?: number;\n sort?: {\n by?: string;\n direction?: string;\n };\n search?: string;\n }\n ) => {\n let lanes: LaneData[] = [];\n\n if (!ids || ids.length === 0) {\n lanes = await lanesMain.getLanes({ showDefaultLane: true });\n } else {\n lanes = flatten(\n await Promise.all(\n ids.map((id) => {\n if (id === lanesMain.getDefaultLaneId().name) {\n return lanesMain.getLanes({ showDefaultLane: true, name: id });\n }\n return lanesMain.getLanes({ name: LaneId.parse(id).name });\n })\n )\n );\n }\n\n if (search) {\n const fuseOptions = {\n keys: ['id.name', 'id.scope', 'log.username', 'log.email', 'log.displayName'],\n threshold: search.length === 1 ? 0 : 0.3,\n findAllMatches: true,\n location: 0,\n distance: search.length === 1 ? 0 : 100,\n minMatchCharLength: 1,\n ignoreLocation: true,\n shouldSort: false,\n includeScore: true,\n };\n const fuse = new Fuse(lanes, fuseOptions);\n lanes = fuse.search(search).map((result) => result.item);\n }\n\n lanes = lanes.sort((a, b) => {\n switch (by) {\n default: {\n if (!a[by] || !b[by]) return 0;\n\n if (a[by] < b[by]) return direction === 'asc' ? -1 : 1;\n if (a[by] > b[by]) return direction === 'asc' ? -1 : 1;\n return 0;\n }\n case 'createdAt':\n case 'updatedAt': {\n const aDate = a.log?.date;\n const bDate = b.log?.date;\n\n if (!aDate || !bDate) return 0;\n\n if (+aDate < +bDate) return direction === 'asc' ? -1 : 1;\n if (+aDate > +bDate) return direction === 'asc' ? 1 : -1;\n return 0;\n }\n case 'id': {\n const aId = a[by].toString();\n const bId = b[by].toString();\n\n if (aId < bId) return direction === 'asc' ? -1 : 1;\n if (aId > bId) return direction === 'asc' ? -1 : 1;\n return 0;\n }\n }\n });\n\n if (limit || offset) {\n lanes = slice(lanes, offset, limit && limit + (offset || 0));\n }\n\n return lanes;\n },\n default: async (lanesMain: LanesMain) => {\n const [defaultLane] = await lanesMain.getLanes({\n showDefaultLane: true,\n name: lanesMain.getDefaultLaneId().name,\n });\n return defaultLane;\n },\n current: async (lanesMain: LanesMain) => {\n const currentLaneName = lanesMain.getCurrentLaneName();\n if (!currentLaneName) return undefined;\n const [currentLane] = await lanesMain.getLanes({ name: currentLaneName });\n return currentLane;\n },\n diff: async (\n lanesMain: LanesMain,\n { from, to, options }: { to: string; from: string; options: { color?: boolean } }\n ) => {\n const getDiffResults = await lanesMain.getDiff([from, to], options);\n return {\n ...getDiffResults,\n compsWithDiff: getDiffResults.compsWithDiff.map((item) => ({ ...item, id: item.id.toString() })),\n };\n },\n diffStatus: async (\n lanesMain: LanesMain,\n { source, target, options }: { source: string; target?: string; options?: LaneDiffStatusOptions }\n ) => {\n const sourceLaneId = LaneId.parse(source);\n const targetLaneId = target ? LaneId.parse(target) : undefined;\n return lanesMain.diffStatus(sourceLaneId, targetLaneId, options);\n },\n },\n LaneDiffStatus: {\n id: (diffStatus: LaneDiffStatus) => `${diffStatus.source.toString()}-${diffStatus.target.toString()}`,\n },\n LaneComponentDiffStatus: {\n id: (diffCompStatus: LaneComponentDiffStatus) =>\n `${diffCompStatus.componentId.toStringWithoutVersion()}-${diffCompStatus.sourceHead}-${\n diffCompStatus.targetHead\n }`,\n componentId: (diffCompStatus: LaneComponentDiffStatus) => diffCompStatus.componentId.toObject(),\n },\n Lane: {\n id: (lane: LaneData) => lane.id.toObject(),\n laneComponentIds: async (lane: LaneData) => {\n const componentIds = await lanesMainRuntime.getLaneComponentIds(lane);\n return componentIds.map((componentId) => componentId.toObject());\n },\n components: async (lane: LaneData) => {\n const laneComponents = await lanesMainRuntime.getLaneComponentModels(lane);\n return laneComponents;\n },\n readmeComponent: async (lane: LaneData) => {\n const laneReadmeComponent = await lanesMainRuntime.getLaneReadmeComponent(lane);\n return laneReadmeComponent;\n },\n createdAt: async (lane: LaneData) => {\n return lane.log?.date;\n },\n createdBy: async (lane: LaneData) => {\n return {\n name: lane.log?.username,\n email: lane.log?.email,\n profileImage: lane.log?.profileImage,\n displayName: lane.log?.username,\n username: lane.log?.username,\n };\n },\n },\n Query: {\n lanes: () => lanesMainRuntime,\n },\n },\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_laneId","data","require","_componentId","_fuse","_interopRequireDefault","_graphqlTag","_lodash","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","String","Symbol","toPrimitive","call","TypeError","Number","lanesSchema","lanesMainRuntime","typeDefs","gql","resolvers","Lanes","id","list","lanesMain","ids","limit","offset","sort","by","direction","search","lanes","getLanes","showDefaultLane","flatten","Promise","all","map","getDefaultLaneId","name","LaneId","parse","fuseOptions","threshold","findAllMatches","location","distance","minMatchCharLength","ignoreLocation","shouldSort","includeScore","fuse","Fuse","result","item","a","b","aDate","log","date","bDate","aId","toString","bId","slice","defaultLane","current","currentLaneName","getCurrentLaneName","undefined","currentLane","diff","from","to","options","getDiffResults","getDiff","compsWithDiff","diffStatus","source","target","sourceLaneId","targetLaneId","removeUpdateDependents","laneId","laneIdParsed","compIds","ComponentID","fromString","LaneDiffStatus","LaneComponentDiffStatus","diffCompStatus","componentId","toStringWithoutVersion","sourceHead","targetHead","toObject","Lane","lane","laneComponentIds","componentIds","getLaneComponentIds","components","laneComponents","getLaneComponentModels","readmeComponent","laneReadmeComponent","getLaneReadmeComponent","createdAt","createdBy","username","email","profileImage","displayName","Query"],"sources":["lanes.graphql.ts"],"sourcesContent":["import { Schema } from '@teambit/graphql';\nimport { LaneId } from '@teambit/lane-id';\nimport { ComponentID } from '@teambit/component-id';\nimport Fuse from 'fuse.js';\nimport { LaneData } from '@teambit/legacy/dist/scope/lanes/lanes';\nimport gql from 'graphql-tag';\nimport { flatten, slice } from 'lodash';\nimport { LaneComponentDiffStatus, LaneDiffStatus, LaneDiffStatusOptions, LanesMain } from './lanes.main.runtime';\n\nexport function lanesSchema(lanesMainRuntime: LanesMain): Schema {\n return {\n typeDefs: gql`\n type FileDiff {\n filePath: String!\n diffOutput: String\n }\n\n type SnapDistance {\n onSource: [String!]!\n onTarget: [String!]!\n common: String\n }\n\n type FieldsDiff {\n fieldName: String!\n diffOutput: String\n }\n\n type DiffResults {\n id: String\n hasDiff: Boolean\n filesDiff: [FileDiff]\n fieldsDiff: [FieldsDiff]\n }\n\n type GetDiffResult {\n newComps: [String]\n compsWithNoChanges: [String]\n toLaneName: String\n compsWithDiff: [DiffResults]\n }\n\n input DiffOptions {\n color: Boolean\n }\n\n input DiffStatusOptions {\n skipChanges: Boolean\n skipUpToDate: Boolean\n }\n\n type LaneId {\n name: String!\n scope: String!\n }\n\n type LaneComponentDiffStatus {\n \"\"\"\n for apollo caching - component id\n \"\"\"\n id: String!\n sourceHead: String!\n targetHead: String\n componentId: ComponentID!\n changeType: String @deprecated(reason: \"Use changes\")\n \"\"\"\n list of all change types - Source Code, Dependency, Aspects, etc\n \"\"\"\n changes: [String!]\n upToDate: Boolean\n snapsDistance: SnapDistance\n unrelated: Boolean\n }\n\n type LaneDiffStatus {\n \"\"\"\n for apollo caching - source + target\n \"\"\"\n id: String!\n source: LaneId!\n target: LaneId!\n componentsStatus: [LaneComponentDiffStatus!]!\n }\n\n type LaneOwner {\n name: String\n username: String\n displayName: String\n email: String\n profileImage: String\n }\n\n type Lane {\n id: LaneId!\n hash: String\n laneComponentIds: [ComponentID!]!\n components(offset: Int, limit: Int): [Component!]!\n readmeComponent: Component\n createdBy: LaneOwner\n createdAt: String\n updatedBy: LaneOwner\n updatedAt: String\n }\n\n input LaneSort {\n by: String\n direction: String\n }\n\n # Lane API\n type Lanes {\n id: String!\n list(ids: [String!], offset: Int, limit: Int, sort: LaneSort, search: String): [Lane!]!\n default: Lane\n diff(from: String!, to: String!, options: DiffOptions): GetDiffResult\n diffStatus(source: String!, target: String, options: DiffStatusOptions): LaneDiffStatus!\n removeUpdateDependents(laneId: String!, ids: [String!]): Boolean\n current: Lane\n }\n\n type Query {\n lanes: Lanes\n }\n `,\n resolvers: {\n Lanes: {\n // need this for Apollo InMemory Caching\n id: () => 'lanes',\n list: async (\n lanesMain: LanesMain,\n {\n ids,\n limit,\n offset,\n sort: { by = 'createdAt', direction = 'desc' } = { by: 'createdAt', direction: 'desc' },\n search,\n }: {\n ids?: string[];\n offset?: number;\n limit?: number;\n sort?: {\n by?: string;\n direction?: string;\n };\n search?: string;\n }\n ) => {\n let lanes: LaneData[] = [];\n\n if (!ids || ids.length === 0) {\n lanes = await lanesMain.getLanes({ showDefaultLane: true });\n } else {\n lanes = flatten(\n await Promise.all(\n ids.map((id) => {\n if (id === lanesMain.getDefaultLaneId().name) {\n return lanesMain.getLanes({ showDefaultLane: true, name: id });\n }\n return lanesMain.getLanes({ name: LaneId.parse(id).name });\n })\n )\n );\n }\n\n if (search) {\n const fuseOptions = {\n keys: ['id.name', 'id.scope', 'log.username', 'log.email', 'log.displayName'],\n threshold: search.length === 1 ? 0 : 0.3,\n findAllMatches: true,\n location: 0,\n distance: search.length === 1 ? 0 : 100,\n minMatchCharLength: 1,\n ignoreLocation: true,\n shouldSort: false,\n includeScore: true,\n };\n const fuse = new Fuse(lanes, fuseOptions);\n lanes = fuse.search(search).map((result) => result.item);\n }\n\n lanes = lanes.sort((a, b) => {\n switch (by) {\n default: {\n if (!a[by] || !b[by]) return 0;\n\n if (a[by] < b[by]) return direction === 'asc' ? -1 : 1;\n if (a[by] > b[by]) return direction === 'asc' ? -1 : 1;\n return 0;\n }\n case 'createdAt':\n case 'updatedAt': {\n const aDate = a.log?.date;\n const bDate = b.log?.date;\n\n if (!aDate || !bDate) return 0;\n\n if (+aDate < +bDate) return direction === 'asc' ? -1 : 1;\n if (+aDate > +bDate) return direction === 'asc' ? 1 : -1;\n return 0;\n }\n case 'id': {\n const aId = a[by].toString();\n const bId = b[by].toString();\n\n if (aId < bId) return direction === 'asc' ? -1 : 1;\n if (aId > bId) return direction === 'asc' ? -1 : 1;\n return 0;\n }\n }\n });\n\n if (limit || offset) {\n lanes = slice(lanes, offset, limit && limit + (offset || 0));\n }\n\n return lanes;\n },\n default: async (lanesMain: LanesMain) => {\n const [defaultLane] = await lanesMain.getLanes({\n showDefaultLane: true,\n name: lanesMain.getDefaultLaneId().name,\n });\n return defaultLane;\n },\n current: async (lanesMain: LanesMain) => {\n const currentLaneName = lanesMain.getCurrentLaneName();\n if (!currentLaneName) return undefined;\n const [currentLane] = await lanesMain.getLanes({ name: currentLaneName });\n return currentLane;\n },\n diff: async (\n lanesMain: LanesMain,\n { from, to, options }: { to: string; from: string; options: { color?: boolean } }\n ) => {\n const getDiffResults = await lanesMain.getDiff([from, to], options);\n return {\n ...getDiffResults,\n compsWithDiff: getDiffResults.compsWithDiff.map((item) => ({ ...item, id: item.id.toString() })),\n };\n },\n diffStatus: async (\n lanesMain: LanesMain,\n { source, target, options }: { source: string; target?: string; options?: LaneDiffStatusOptions }\n ) => {\n const sourceLaneId = LaneId.parse(source);\n const targetLaneId = target ? LaneId.parse(target) : undefined;\n return lanesMain.diffStatus(sourceLaneId, targetLaneId, options);\n },\n removeUpdateDependents: async (lanesMain: LanesMain, { laneId, ids }: { laneId: string; ids?: string[] }) => {\n const laneIdParsed = LaneId.parse(laneId);\n const compIds = ids?.map((id) => ComponentID.fromString(id));\n return lanesMain.removeUpdateDependents(laneIdParsed, compIds);\n },\n },\n LaneDiffStatus: {\n id: (diffStatus: LaneDiffStatus) => `${diffStatus.source.toString()}-${diffStatus.target.toString()}`,\n },\n LaneComponentDiffStatus: {\n id: (diffCompStatus: LaneComponentDiffStatus) =>\n `${diffCompStatus.componentId.toStringWithoutVersion()}-${diffCompStatus.sourceHead}-${\n diffCompStatus.targetHead\n }`,\n componentId: (diffCompStatus: LaneComponentDiffStatus) => diffCompStatus.componentId.toObject(),\n },\n Lane: {\n id: (lane: LaneData) => lane.id.toObject(),\n laneComponentIds: async (lane: LaneData) => {\n const componentIds = await lanesMainRuntime.getLaneComponentIds(lane);\n return componentIds.map((componentId) => componentId.toObject());\n },\n components: async (lane: LaneData) => {\n const laneComponents = await lanesMainRuntime.getLaneComponentModels(lane);\n return laneComponents;\n },\n readmeComponent: async (lane: LaneData) => {\n const laneReadmeComponent = await lanesMainRuntime.getLaneReadmeComponent(lane);\n return laneReadmeComponent;\n },\n createdAt: async (lane: LaneData) => {\n return lane.log?.date;\n },\n createdBy: async (lane: LaneData) => {\n return {\n name: lane.log?.username,\n email: lane.log?.email,\n profileImage: lane.log?.profileImage,\n displayName: lane.log?.username,\n username: lane.log?.username,\n };\n },\n },\n Query: {\n lanes: () => lanesMainRuntime,\n },\n },\n };\n}\n"],"mappings":"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"}
@@ -193,6 +193,11 @@ export declare class LanesMain {
193
193
  * it also fetches the original lane from the remote to make sure the data is up to date.
194
194
  */
195
195
  listUpdatesFromForked(componentsList: ComponentsList): Promise<DivergeDataPerId[]>;
196
+ /**
197
+ * default to remove all of them.
198
+ * returns true if the lane has changed
199
+ */
200
+ removeUpdateDependents(laneId: LaneId, ids?: ComponentID[]): Promise<Boolean>;
196
201
  private getLaneDataOfDefaultLane;
197
202
  get createRoutePath(): string;
198
203
  get deleteRoutePath(): string;
@@ -1069,6 +1069,27 @@ please create a new lane instead, which will include all components of this lane
1069
1069
  }));
1070
1070
  return (0, _lodash().compact)(results);
1071
1071
  }
1072
+
1073
+ /**
1074
+ * default to remove all of them.
1075
+ * returns true if the lane has changed
1076
+ */
1077
+ async removeUpdateDependents(laneId, ids) {
1078
+ const lane = await this.loadLane(laneId);
1079
+ if (!lane) throw new (_bitError().BitError)(`unable to find a lane ${laneId.toString()}`);
1080
+ if (ids?.length) {
1081
+ ids.forEach(id => lane.removeComponentFromUpdateDependentsIfExist(id));
1082
+ } else {
1083
+ lane.removeAllUpdateDependents();
1084
+ }
1085
+ if (lane.hasChanged) {
1086
+ await this.scope.legacyScope.lanes.saveLane(lane, {
1087
+ laneHistoryMsg: 'remove update-dependents'
1088
+ });
1089
+ return true;
1090
+ }
1091
+ return false;
1092
+ }
1072
1093
  async getLaneDataOfDefaultLane() {
1073
1094
  const consumer = this.workspace?.consumer;
1074
1095
  let bitIds = [];