@teambit/lanes.ui.models.lanes-model 0.0.108 → 0.0.110

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.
@@ -9,6 +9,15 @@ export declare type LaneComponentQueryResult = {
9
9
  id: ComponentIdObj;
10
10
  head: string;
11
11
  };
12
+ /**
13
+ * GQL
14
+ * LaneOwner
15
+ */
16
+ export declare type LaneQueryLaneOwner = {
17
+ name: string;
18
+ email: string;
19
+ profileImage?: string;
20
+ };
12
21
  /**
13
22
  * GQL
14
23
  * lanes/list
@@ -22,9 +31,14 @@ export declare type LaneQueryResult = {
22
31
  };
23
32
  remote?: string;
24
33
  isMerged: boolean;
34
+ displayName?: string;
25
35
  laneComponentIds: Array<ComponentIdObj>;
26
36
  readmeComponent?: ComponentModelProps;
27
37
  hash: string;
38
+ createdAt?: string;
39
+ createdBy?: LaneQueryLaneOwner;
40
+ updatedAt?: Date;
41
+ updatedBy?: LaneQueryLaneOwner;
28
42
  };
29
43
  /**
30
44
  * GQL
@@ -51,6 +65,11 @@ export declare type LaneModel = {
51
65
  hash: string;
52
66
  components: ComponentID[];
53
67
  readmeComponent?: ComponentModel;
68
+ displayName?: string;
69
+ createdAt?: Date;
70
+ createdBy?: LaneQueryLaneOwner;
71
+ updatedAt?: Date;
72
+ updatedBy?: LaneQueryLaneOwner;
54
73
  };
55
74
  /**
56
75
  * Props to instantiate a LanesModel
@@ -76,7 +95,8 @@ export declare class LanesModel {
76
95
  static getLaneComponentUrl: (componentId: ComponentID, laneId: LaneId) => string;
77
96
  static getMainComponentUrl: (componentId: ComponentID, laneId?: LaneId) => string;
78
97
  static mapToLaneModel(laneData: LaneQueryResult, host: string): LaneModel;
79
- static groupByScope(laneIds: LaneId[]): Map<string, LaneId[]>;
98
+ static groupLaneIdsByScope(laneIds: LaneId[]): Map<string, LaneId[]>;
99
+ static groupLanesByScope(lanes: LaneModel[]): Map<string, LaneModel[]>;
80
100
  static groupByComponentNameAndId(lanes: LaneModel[]): {
81
101
  byName: Map<string, LaneModel[]>;
82
102
  byId: Map<string, LaneModel[]>;
@@ -87,26 +87,48 @@ class LanesModel {
87
87
  this.viewedLane = viewedLane;
88
88
  this.currentLane = currentLane;
89
89
  this.lanes = lanes || [];
90
- this.laneIdsByScope = LanesModel.groupByScope(this.lanes.map((lane) => lane.id));
90
+ this.laneIdsByScope = LanesModel.groupLaneIdsByScope(this.lanes.map((lane) => lane.id));
91
91
  const { byId, byName } = LanesModel.groupByComponentNameAndId(this.lanes);
92
92
  this.lanesByComponentId = byId;
93
93
  this.lanesByComponentName = byName;
94
94
  }
95
95
  static mapToLaneModel(laneData, host) {
96
- const { id, laneComponentIds, readmeComponent, hash } = laneData;
96
+ var _a, _b, _c, _d, _e, _f;
97
+ const { id, laneComponentIds, readmeComponent, hash, createdAt, displayName, updatedAt, createdBy: createdByData, updatedBy: updatedByData, } = laneData;
97
98
  const componentIds = (laneComponentIds === null || laneComponentIds === void 0 ? void 0 : laneComponentIds.map((laneComponentId) => {
98
99
  const componentId = component_id_1.ComponentID.fromObject(laneComponentId);
99
100
  return componentId;
100
101
  })) || [];
101
102
  const readmeComponentModel = readmeComponent && component_1.ComponentModel.from(Object.assign(Object.assign({}, readmeComponent), { host }));
103
+ const createdAtDate = (createdAt && new Date(+createdAt)) || undefined;
104
+ const createdBy = createdByData
105
+ ? {
106
+ name: (_a = createdByData === null || createdByData === void 0 ? void 0 : createdByData.name) !== null && _a !== void 0 ? _a : undefined,
107
+ email: (_b = createdByData.email) !== null && _b !== void 0 ? _b : undefined,
108
+ profileImage: (_c = createdByData.profileImage) !== null && _c !== void 0 ? _c : undefined,
109
+ }
110
+ : undefined;
111
+ const updatedAtDate = (updatedAt && new Date(+updatedAt)) || undefined;
112
+ const updatedBy = (updatedByData === null || updatedByData === void 0 ? void 0 : updatedByData.name)
113
+ ? {
114
+ name: (_d = updatedByData === null || updatedByData === void 0 ? void 0 : updatedByData.name) !== null && _d !== void 0 ? _d : undefined,
115
+ email: (_e = updatedByData.email) !== null && _e !== void 0 ? _e : undefined,
116
+ profileImage: (_f = updatedByData.profileImage) !== null && _f !== void 0 ? _f : undefined,
117
+ }
118
+ : undefined;
102
119
  return {
103
120
  id: lane_id_1.LaneId.from(id.name, id.scope),
104
121
  components: componentIds,
105
122
  readmeComponent: readmeComponentModel,
123
+ createdAt: createdAtDate,
124
+ updatedAt: updatedAtDate,
125
+ displayName,
106
126
  hash,
127
+ updatedBy,
128
+ createdBy,
107
129
  };
108
130
  }
109
- static groupByScope(laneIds) {
131
+ static groupLaneIdsByScope(laneIds) {
110
132
  const grouped = new Map();
111
133
  laneIds.forEach((laneId) => {
112
134
  const { scope } = laneId;
@@ -120,6 +142,20 @@ class LanesModel {
120
142
  });
121
143
  return grouped;
122
144
  }
145
+ static groupLanesByScope(lanes) {
146
+ const grouped = new Map();
147
+ lanes.forEach((lane) => {
148
+ const { scope } = lane.id;
149
+ if (!grouped.has(scope)) {
150
+ grouped.set(scope, [lane]);
151
+ }
152
+ else {
153
+ const existing = grouped.get(scope);
154
+ grouped.set(scope, [...existing, lane]);
155
+ }
156
+ });
157
+ return grouped;
158
+ }
123
159
  static groupByComponentNameAndId(lanes) {
124
160
  const byName = new Map();
125
161
  const byId = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"lanes-model.js","sourceRoot":"","sources":["../lanes-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lanes-model.js","sourceRoot":"","sources":["../lanes-model.ts"],"names":[],"mappings":"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"}
package/lanes-model.ts CHANGED
@@ -3,6 +3,7 @@ import { LaneId } from '@teambit/lane-id';
3
3
  import { ComponentID, ComponentIdObj } from '@teambit/component-id';
4
4
  import { affix } from '@teambit/base-ui.utils.string.affix';
5
5
  import { pathToRegexp } from 'path-to-regexp';
6
+
6
7
  /**
7
8
  * GQL (lanes/getLanes/components)
8
9
  * Return type of each Component in a Lane
@@ -11,6 +12,15 @@ export type LaneComponentQueryResult = {
11
12
  id: ComponentIdObj;
12
13
  head: string;
13
14
  };
15
+ /**
16
+ * GQL
17
+ * LaneOwner
18
+ */
19
+ export type LaneQueryLaneOwner = {
20
+ name: string;
21
+ email: string;
22
+ profileImage?: string;
23
+ };
14
24
  /**
15
25
  * GQL
16
26
  * lanes/list
@@ -21,9 +31,14 @@ export type LaneQueryResult = {
21
31
  id: { name: string; scope: string };
22
32
  remote?: string;
23
33
  isMerged: boolean;
34
+ displayName?: string;
24
35
  laneComponentIds: Array<ComponentIdObj>;
25
36
  readmeComponent?: ComponentModelProps;
26
37
  hash: string;
38
+ createdAt?: string;
39
+ createdBy?: LaneQueryLaneOwner;
40
+ updatedAt?: Date;
41
+ updatedBy?: LaneQueryLaneOwner;
27
42
  };
28
43
  /**
29
44
  * GQL
@@ -43,7 +58,6 @@ export type LanesQuery = {
43
58
  };
44
59
 
45
60
  export type LanesHost = 'workspace' | 'scope';
46
- // export type LaneComponentModel = { model: ComponentModel; url: string };
47
61
  /**
48
62
  * Represents a single Lane in a Workspace/Scope
49
63
  */
@@ -52,6 +66,11 @@ export type LaneModel = {
52
66
  hash: string;
53
67
  components: ComponentID[];
54
68
  readmeComponent?: ComponentModel;
69
+ displayName?: string;
70
+ createdAt?: Date;
71
+ createdBy?: LaneQueryLaneOwner;
72
+ updatedAt?: Date;
73
+ updatedBy?: LaneQueryLaneOwner;
55
74
  };
56
75
  /**
57
76
  * Props to instantiate a LanesModel
@@ -115,7 +134,17 @@ export class LanesModel {
115
134
  };
116
135
 
117
136
  static mapToLaneModel(laneData: LaneQueryResult, host: string): LaneModel {
118
- const { id, laneComponentIds, readmeComponent, hash } = laneData;
137
+ const {
138
+ id,
139
+ laneComponentIds,
140
+ readmeComponent,
141
+ hash,
142
+ createdAt,
143
+ displayName,
144
+ updatedAt,
145
+ createdBy: createdByData,
146
+ updatedBy: updatedByData,
147
+ } = laneData;
119
148
 
120
149
  const componentIds =
121
150
  laneComponentIds?.map((laneComponentId) => {
@@ -125,15 +154,38 @@ export class LanesModel {
125
154
 
126
155
  const readmeComponentModel = readmeComponent && ComponentModel.from({ ...readmeComponent, host });
127
156
 
157
+ const createdAtDate = (createdAt && new Date(+createdAt)) || undefined;
158
+ const createdBy = createdByData
159
+ ? {
160
+ name: createdByData?.name ?? undefined,
161
+ email: createdByData.email ?? undefined,
162
+ profileImage: createdByData.profileImage ?? undefined,
163
+ }
164
+ : undefined;
165
+
166
+ const updatedAtDate = (updatedAt && new Date(+updatedAt)) || undefined;
167
+ const updatedBy = updatedByData?.name
168
+ ? {
169
+ name: updatedByData?.name ?? undefined,
170
+ email: updatedByData.email ?? undefined,
171
+ profileImage: updatedByData.profileImage ?? undefined,
172
+ }
173
+ : undefined;
174
+
128
175
  return {
129
176
  id: LaneId.from(id.name, id.scope),
130
177
  components: componentIds,
131
178
  readmeComponent: readmeComponentModel,
179
+ createdAt: createdAtDate,
180
+ updatedAt: updatedAtDate,
181
+ displayName,
132
182
  hash,
183
+ updatedBy,
184
+ createdBy,
133
185
  };
134
186
  }
135
187
 
136
- static groupByScope(laneIds: LaneId[]): Map<string, LaneId[]> {
188
+ static groupLaneIdsByScope(laneIds: LaneId[]): Map<string, LaneId[]> {
137
189
  const grouped = new Map<string, LaneId[]>();
138
190
  laneIds.forEach((laneId) => {
139
191
  const { scope } = laneId;
@@ -147,6 +199,20 @@ export class LanesModel {
147
199
  return grouped;
148
200
  }
149
201
 
202
+ static groupLanesByScope(lanes: LaneModel[]): Map<string, LaneModel[]> {
203
+ const grouped = new Map<string, LaneModel[]>();
204
+ lanes.forEach((lane) => {
205
+ const { scope } = lane.id;
206
+ if (!grouped.has(scope)) {
207
+ grouped.set(scope, [lane]);
208
+ } else {
209
+ const existing = grouped.get(scope) as LaneModel[];
210
+ grouped.set(scope, [...existing, lane]);
211
+ }
212
+ });
213
+ return grouped;
214
+ }
215
+
150
216
  static groupByComponentNameAndId(lanes: LaneModel[]): {
151
217
  byName: Map<string, LaneModel[]>;
152
218
  byId: Map<string, LaneModel[]>;
@@ -184,7 +250,7 @@ export class LanesModel {
184
250
  this.viewedLane = viewedLane;
185
251
  this.currentLane = currentLane;
186
252
  this.lanes = lanes || [];
187
- this.laneIdsByScope = LanesModel.groupByScope(this.lanes.map((lane) => lane.id));
253
+ this.laneIdsByScope = LanesModel.groupLaneIdsByScope(this.lanes.map((lane) => lane.id));
188
254
  const { byId, byName } = LanesModel.groupByComponentNameAndId(this.lanes);
189
255
  this.lanesByComponentId = byId;
190
256
  this.lanesByComponentName = byName;
package/package.json CHANGED
@@ -1,19 +1,19 @@
1
1
  {
2
2
  "name": "@teambit/lanes.ui.models.lanes-model",
3
- "version": "0.0.108",
3
+ "version": "0.0.110",
4
4
  "homepage": "https://bit.dev/teambit/lanes/ui/models/lanes-model",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.lanes",
8
8
  "name": "ui/models/lanes-model",
9
- "version": "0.0.108"
9
+ "version": "0.0.110"
10
10
  },
11
11
  "dependencies": {
12
12
  "path-to-regexp": "6.2.0",
13
13
  "core-js": "^3.0.0",
14
14
  "@teambit/base-ui.utils.string.affix": "1.0.0",
15
15
  "@teambit/component-id": "0.0.427",
16
- "@teambit/lane-id": "0.0.200"
16
+ "@teambit/lane-id": "0.0.202"
17
17
  },
18
18
  "devDependencies": {
19
19
  "@types/mocha": "9.1.0",