airbyte-faros-destination 0.10.84 → 0.10.85

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.
@@ -14,8 +14,13 @@ export interface WorkItem {
14
14
  states: any[];
15
15
  assignees: any[];
16
16
  };
17
+ additionalFields: ReadonlyArray<AdditionalField>;
17
18
  projectId: string;
18
19
  }
20
+ export interface AdditionalField {
21
+ name: string;
22
+ value: string;
23
+ }
19
24
  export interface System {
20
25
  AreaPath: string;
21
26
  AssignedTo: user;
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/converters/azure-workitems/models.ts"],"names":[],"mappings":";;;AAoFA,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,iDAA6B,CAAA;IAC7B,iCAAa,CAAA;IACb,qCAAiB,CAAA;AACnB,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/converters/azure-workitems/models.ts"],"names":[],"mappings":";;;AA0FA,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,iDAA6B,CAAA;IAC7B,iCAAa,CAAA;IACb,qCAAiB,CAAA;AACnB,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B"}
@@ -2,10 +2,14 @@ import { AirbyteRecord } from 'faros-airbyte-cdk';
2
2
  import { DestinationModel, DestinationRecord } from '../converter';
3
3
  import { AzureWorkitemsConverter } from './common';
4
4
  export declare class Workitems extends AzureWorkitemsConverter {
5
+ private readonly collectedAreaPaths;
5
6
  readonly destinationModels: ReadonlyArray<DestinationModel>;
6
7
  convert(record: AirbyteRecord): Promise<ReadonlyArray<DestinationRecord>>;
8
+ private collectAreaPath;
9
+ private getTags;
7
10
  private getTaskType;
8
11
  private getStatusMapping;
9
12
  private convertAssigneeRevisions;
10
13
  private convertStateRevisions;
14
+ onProcessingComplete(): Promise<ReadonlyArray<DestinationRecord>>;
11
15
  }
@@ -6,9 +6,13 @@ const common_1 = require("./common");
6
6
  class Workitems extends common_1.AzureWorkitemsConverter {
7
7
  constructor() {
8
8
  super(...arguments);
9
+ this.collectedAreaPaths = new Map();
9
10
  this.destinationModels = [
10
11
  'tms_Task',
11
12
  'tms_TaskAssignment',
13
+ 'tms_TaskProjectRelationship',
14
+ 'tms_TaskTag',
15
+ 'tms_TaskBoard',
12
16
  ];
13
17
  }
14
18
  async convert(record) {
@@ -16,15 +20,11 @@ class Workitems extends common_1.AzureWorkitemsConverter {
16
20
  const source = this.streamName.source;
17
21
  const WorkItem = record.record.data;
18
22
  const taskKey = { uid: String(WorkItem.id), source };
23
+ const areaPath = this.collectAreaPath(WorkItem.fields['System.AreaPath'], WorkItem.projectId);
19
24
  const statusChangelog = this.convertStateRevisions(WorkItem.revisions.states);
20
25
  const assignees = this.convertAssigneeRevisions(WorkItem.revisions.assignees);
21
26
  const { name: stateName, category: stateCategory } = WorkItem.fields['Faros']['WorkItemStateCategory'];
22
- const additionalFields = [
23
- {
24
- name: 'Severity',
25
- value: WorkItem.fields['Microsoft.VSTS.Common.Severity'],
26
- },
27
- ];
27
+ const tags = this.getTags(WorkItem.fields['System.Tags']);
28
28
  return [
29
29
  {
30
30
  model: 'tms_Task',
@@ -49,10 +49,9 @@ class Workitems extends common_1.AzureWorkitemsConverter {
49
49
  priority: String(WorkItem.fields['Microsoft.VSTS.Common.Priority']),
50
50
  resolvedAt: faros_js_client_1.Utils.toDate(WorkItem.fields['Microsoft.VSTS.Common.ResolvedDate']),
51
51
  statusChangelog,
52
- additionalFields,
53
- // TODO - Add
54
- // Microsoft.VSTS.Common.ResolvedReason
55
- // Microsoft.VSTS.Scheduling.Effort
52
+ additionalFields: WorkItem.additionalFields,
53
+ resolutionStatus: WorkItem.fields['Microsoft.VSTS.Common.ResolvedReason'],
54
+ points: WorkItem.fields['Microsoft.VSTS.Scheduling.StoryPoints'],
56
55
  },
57
56
  },
58
57
  ...assignees.map((assignee) => ({
@@ -70,9 +69,38 @@ class Workitems extends common_1.AzureWorkitemsConverter {
70
69
  project: { uid: String(WorkItem.projectId), source },
71
70
  },
72
71
  },
72
+ ...tags.map((tag) => ({
73
+ model: 'tms_TaskTag',
74
+ record: { task: taskKey, label: { name: tag } },
75
+ })),
76
+ ...(areaPath
77
+ ? [
78
+ {
79
+ model: 'tms_TaskBoardRelationship',
80
+ record: {
81
+ task: taskKey,
82
+ board: { uid: areaPath, source },
83
+ },
84
+ },
85
+ ]
86
+ : []),
73
87
  // TODO - Add sprintHistory
74
88
  ];
75
89
  }
90
+ collectAreaPath(areaPath, projectId) {
91
+ var _a;
92
+ if (!areaPath || !projectId) {
93
+ return;
94
+ }
95
+ const projectAreaPaths = (_a = this.collectedAreaPaths.get(projectId)) !== null && _a !== void 0 ? _a : new Set();
96
+ projectAreaPaths.add(areaPath.trim());
97
+ this.collectedAreaPaths.set(projectId, projectAreaPaths);
98
+ return areaPath.trim();
99
+ }
100
+ getTags(tags) {
101
+ var _a;
102
+ return (_a = tags === null || tags === void 0 ? void 0 : tags.split(';').map((tag) => tag.trim())) !== null && _a !== void 0 ? _a : [];
103
+ }
76
104
  getTaskType(type) {
77
105
  var _a;
78
106
  const mapping = {
@@ -114,6 +142,39 @@ class Workitems extends common_1.AzureWorkitemsConverter {
114
142
  changedAt: faros_js_client_1.Utils.toDate(revision.changedDate),
115
143
  }));
116
144
  }
145
+ async onProcessingComplete() {
146
+ var _a;
147
+ const records = [];
148
+ const source = this.streamName.source;
149
+ for (const [projectId, areaPaths] of this.collectedAreaPaths.entries()) {
150
+ for (const areaPath of areaPaths) {
151
+ // Extract board name from Azure DevOps area path (format: "AreaLevel1\\AreaLevel2\\AreaLevel3")
152
+ const pathParts = areaPath.split('\\');
153
+ const boardName = (_a = pathParts.at(-1)) !== null && _a !== void 0 ? _a : areaPath;
154
+ const boardKey = {
155
+ uid: areaPath,
156
+ source,
157
+ };
158
+ // Create board record
159
+ records.push({
160
+ model: 'tms_TaskBoard',
161
+ record: {
162
+ ...boardKey,
163
+ name: boardName,
164
+ },
165
+ });
166
+ // Create board-project relationship record
167
+ records.push({
168
+ model: 'tms_TaskBoardProjectRelationship',
169
+ record: {
170
+ board: boardKey,
171
+ project: { uid: projectId, source },
172
+ },
173
+ });
174
+ }
175
+ }
176
+ return records;
177
+ }
117
178
  }
118
179
  exports.Workitems = Workitems;
119
180
  //# sourceMappingURL=workitems.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workitems.js","sourceRoot":"","sources":["../../../src/converters/azure-workitems/workitems.ts"],"names":[],"mappings":";;;AACA,qDAAsC;AAGtC,qCAAiD;AAQjD,MAAa,SAAU,SAAQ,gCAAuB;IAAtD;;QACW,sBAAiB,GAAoC;YAC5D,UAAU;YACV,oBAAoB;SACrB,CAAC;IAwHJ,CAAC;IAtHC,KAAK,CAAC,OAAO,CACX,MAAqB;;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAgB,CAAC;QAChD,MAAM,OAAO,GAAG,EAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,EAAC,CAAC;QAEnD,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAChD,QAAQ,CAAC,SAAS,CAAC,MAAM,CAC1B,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,CAAC,wBAAwB,CAC7C,QAAQ,CAAC,SAAS,CAAC,SAAS,CAC7B,CAAC;QACF,MAAM,EAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAC,GAC9C,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,uBAAuB,CAAC,CAAC;QACpD,MAAM,gBAAgB,GAAG;YACvB;gBACE,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,gCAAgC,CAAC;aACzD;SACF,CAAC;QACF,OAAO;YACL;gBACE,KAAK,EAAE,UAAU;gBACjB,MAAM,EAAE;oBACN,GAAG,OAAO;oBACV,GAAG,EAAE,CAAA,MAAA,MAAA,QAAQ,CAAC,MAAM,0CAAE,IAAI,0CAAE,IAAI,KAAI,QAAQ,CAAC,GAAG;oBAChD,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;oBAC9D,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC;oBACrC,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;oBAC9D,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC;wBACtC,CAAC,CAAC,EAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,EAAC;wBACzD,CAAC,CAAC,IAAI;oBACR,WAAW,EAAE,uBAAK,CAAC,gBAAgB,CACjC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CACtC;oBACD,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC;oBACvD,eAAe,EAAE,uBAAK,CAAC,MAAM,CAC3B,QAAQ,CAAC,MAAM,CAAC,uCAAuC,CAAC,CACzD;oBACD,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;oBAC9D,OAAO,EAAE;wBACP,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC;wBACtD,MAAM;qBACP;oBACD,MAAM,EAAE,EAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAC;oBACpE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC;oBACnE,UAAU,EAAE,uBAAK,CAAC,MAAM,CACtB,QAAQ,CAAC,MAAM,CAAC,oCAAoC,CAAC,CACtD;oBACD,eAAe;oBACf,gBAAgB;oBAChB,aAAa;oBACb,uCAAuC;oBACvC,mCAAmC;iBACpC;aACF;YACD,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAC9B,KAAK,EAAE,oBAAoB;gBAC3B,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,EAAC,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAC;oBAC1C,UAAU,EAAE,QAAQ,CAAC,SAAS;iBAC/B;aACF,CAAC,CAAC;YACH;gBACE,KAAK,EAAE,6BAA6B;gBACpC,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,EAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,EAAC;iBACnD;aACF;YACD,2BAA2B;SAC5B,CAAC;IACJ,CAAC;IAEO,WAAW,CAAC,IAAY;;QAC9B,MAAM,OAAO,GAAG;YACd,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,KAAK;YACV,YAAY,EAAE,OAAO;SACtB,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,MAAA,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,mCAAI,QAAQ;YACjD,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,IAAY,EAAE,QAAgB;;QACrD,MAAM,aAAa,GAAG;YACpB,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,YAAY;YACxB,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,MAAM;SAChB,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,MAAA,aAAa,CAAC,QAAQ,CAAC,mCAAI,QAAQ;YAC7C,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAAC,iBAAwB;QACvD,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;;YAAC,OAAA,CAAC;gBAC1C,QAAQ,EAAE,MAAA,QAAQ,CAAC,QAAQ,0CAAE,UAAU;gBACvC,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;aAC9C,CAAC,CAAA;SAAA,CAAC,CAAC;IACN,CAAC;IAEO,qBAAqB,CAAC,cAAqB;QACjD,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACvC,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAC3B,QAAQ,CAAC,KAAK,CAAC,IAAI,EACnB,QAAQ,CAAC,KAAK,CAAC,QAAQ,CACxB;YACD,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;SAC9C,CAAC,CAAC,CAAC;IACN,CAAC;CACF;AA5HD,8BA4HC"}
1
+ {"version":3,"file":"workitems.js","sourceRoot":"","sources":["../../../src/converters/azure-workitems/workitems.ts"],"names":[],"mappings":";;;AACA,qDAAsC;AAGtC,qCAAiD;AAQjD,MAAa,SAAU,SAAQ,gCAAuB;IAAtD;;QACmB,uBAAkB,GAAG,IAAI,GAAG,EAAuB,CAAC;QAE5D,sBAAiB,GAAoC;YAC5D,UAAU;YACV,oBAAoB;YACpB,6BAA6B;YAC7B,aAAa;YACb,eAAe;SAChB,CAAC;IA8LJ,CAAC;IA5LC,KAAK,CAAC,OAAO,CACX,MAAqB;;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAgB,CAAC;QAChD,MAAM,OAAO,GAAG,EAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,EAAC,CAAC;QAEnD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CACnC,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAClC,QAAQ,CAAC,SAAS,CACnB,CAAC;QAEF,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAChD,QAAQ,CAAC,SAAS,CAAC,MAAM,CAC1B,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,CAAC,wBAAwB,CAC7C,QAAQ,CAAC,SAAS,CAAC,SAAS,CAC7B,CAAC;QACF,MAAM,EAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAC,GAC9C,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,uBAAuB,CAAC,CAAC;QAEpD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QAC1D,OAAO;YACL;gBACE,KAAK,EAAE,UAAU;gBACjB,MAAM,EAAE;oBACN,GAAG,OAAO;oBACV,GAAG,EAAE,CAAA,MAAA,MAAA,QAAQ,CAAC,MAAM,0CAAE,IAAI,0CAAE,IAAI,KAAI,QAAQ,CAAC,GAAG;oBAChD,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;oBAC9D,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC;oBACrC,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;oBAC9D,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC;wBACtC,CAAC,CAAC,EAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,EAAC;wBACzD,CAAC,CAAC,IAAI;oBACR,WAAW,EAAE,uBAAK,CAAC,gBAAgB,CACjC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CACtC;oBACD,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC;oBACvD,eAAe,EAAE,uBAAK,CAAC,MAAM,CAC3B,QAAQ,CAAC,MAAM,CAAC,uCAAuC,CAAC,CACzD;oBACD,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;oBAC9D,OAAO,EAAE;wBACP,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC;wBACtD,MAAM;qBACP;oBACD,MAAM,EAAE,EAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAC;oBACpE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC;oBACnE,UAAU,EAAE,uBAAK,CAAC,MAAM,CACtB,QAAQ,CAAC,MAAM,CAAC,oCAAoC,CAAC,CACtD;oBACD,eAAe;oBACf,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;oBAC3C,gBAAgB,EACd,QAAQ,CAAC,MAAM,CAAC,sCAAsC,CAAC;oBACzD,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,uCAAuC,CAAC;iBACjE;aACF;YACD,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAC9B,KAAK,EAAE,oBAAoB;gBAC3B,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,EAAC,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAC;oBAC1C,UAAU,EAAE,QAAQ,CAAC,SAAS;iBAC/B;aACF,CAAC,CAAC;YACH;gBACE,KAAK,EAAE,6BAA6B;gBACpC,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,EAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,EAAC;iBACnD;aACF;YACD,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACpB,KAAK,EAAE,aAAa;gBACpB,MAAM,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAC,IAAI,EAAE,GAAG,EAAC,EAAC;aAC5C,CAAC,CAAC;YACH,GAAG,CAAC,QAAQ;gBACV,CAAC,CAAC;oBACE;wBACE,KAAK,EAAE,2BAA2B;wBAClC,MAAM,EAAE;4BACN,IAAI,EAAE,OAAO;4BACb,KAAK,EAAE,EAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAC;yBAC/B;qBACF;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,2BAA2B;SAC5B,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,QAAgB,EAAE,SAAiB;;QACzD,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,gBAAgB,GACpB,MAAA,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,mCAAI,IAAI,GAAG,EAAU,CAAC;QAC9D,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QACzD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAEO,OAAO,CAAC,IAAa;;QAC3B,OAAO,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,mCAAI,EAAE,CAAC;IACzD,CAAC;IAEO,WAAW,CAAC,IAAY;;QAC9B,MAAM,OAAO,GAAG;YACd,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,KAAK;YACV,YAAY,EAAE,OAAO;SACtB,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,MAAA,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,mCAAI,QAAQ;YACjD,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,IAAY,EAAE,QAAgB;;QACrD,MAAM,aAAa,GAAG;YACpB,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,YAAY;YACxB,QAAQ,EAAE,MAAM;YAChB,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,MAAM;SAChB,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,MAAA,aAAa,CAAC,QAAQ,CAAC,mCAAI,QAAQ;YAC7C,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;IAEO,wBAAwB,CAAC,iBAAwB;QACvD,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;;YAAC,OAAA,CAAC;gBAC1C,QAAQ,EAAE,MAAA,QAAQ,CAAC,QAAQ,0CAAE,UAAU;gBACvC,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;aAC9C,CAAC,CAAA;SAAA,CAAC,CAAC;IACN,CAAC;IAEO,qBAAqB,CAAC,cAAqB;QACjD,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACvC,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAC3B,QAAQ,CAAC,KAAK,CAAC,IAAI,EACnB,QAAQ,CAAC,KAAK,CAAC,QAAQ,CACxB;YACD,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;SAC9C,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,oBAAoB;;QACxB,MAAM,OAAO,GAAwB,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QAEtC,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC;YACvE,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,gGAAgG;gBAChG,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACvC,MAAM,SAAS,GAAG,MAAA,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,mCAAI,QAAQ,CAAC;gBAE/C,MAAM,QAAQ,GAAG;oBACf,GAAG,EAAE,QAAQ;oBACb,MAAM;iBACP,CAAC;gBAEF,sBAAsB;gBACtB,OAAO,CAAC,IAAI,CAAC;oBACX,KAAK,EAAE,eAAe;oBACtB,MAAM,EAAE;wBACN,GAAG,QAAQ;wBACX,IAAI,EAAE,SAAS;qBAChB;iBACF,CAAC,CAAC;gBAEH,2CAA2C;gBAC3C,OAAO,CAAC,IAAI,CAAC;oBACX,KAAK,EAAE,kCAAkC;oBACzC,MAAM,EAAE;wBACN,KAAK,EAAE,QAAQ;wBACf,OAAO,EAAE,EAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAC;qBAClC;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAvMD,8BAuMC"}