airbyte-faros-destination 0.6.27 → 0.6.29

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.
@@ -2,6 +2,14 @@ import { AirbyteRecord } from 'faros-airbyte-cdk';
2
2
  import { Converter, DestinationRecord } from '../converter';
3
3
  export interface AsanaProject {
4
4
  gid: string;
5
+ created_at: string;
6
+ modified_at: string;
7
+ name: string;
8
+ notes: string;
9
+ workspace: {
10
+ gid: string;
11
+ resource_type: string;
12
+ };
5
13
  }
6
14
  export interface AsanaSection {
7
15
  gid: string;
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/converters/asana/common.ts"],"names":[],"mappings":";;;AAEA,4CAA0D;AAuB1D,IAAK,eAKJ;AALD,WAAK,eAAe;IAClB,8BAAW,CAAA;IACX,oCAAiB,CAAA;IACjB,kCAAe,CAAA;IACf,gCAAa,CAAA;AACf,CAAC,EALI,eAAe,KAAf,eAAe,QAKnB;AAED,sDAAsD;AACtD,MAAa,WAAW;IAItB,MAAM,CAAC,SAAS,CAAC,GAAW;QAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,aAAqB;QACxC,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAC,CAAC;SAChE;QACD,QAAQ,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE;YACrC,KAAK,KAAK;gBACR,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;YAChE,KAAK,OAAO;gBACV,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;YAClE,KAAK,MAAM;gBACT,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;YACjE;gBACE,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;SACpE;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAe,EAAE,MAAc;QAC7C,OAAO;YACL,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;gBACvB,YAAY,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;gBAChC,MAAM;aACP;SACF,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,aAAa,CAClB,OAAqB,EACrB,MAAc;QAEd,OAAO;YACL,KAAK,EAAE,eAAe;YACtB,MAAM,EAAE;gBACN,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM;aACP;SACF,CAAC;IACJ,CAAC;;AAhDH,kCAiDC;AAhDC,sEAAsE;AACtD,kCAAsB,GAAG,IAAI,CAAC;AAiDhD,2BAA2B;AAC3B,MAAsB,cAAe,SAAQ,qBAAS;IAAtD;;QACE,WAAM,GAAG,OAAO,CAAC;IAMnB,CAAC;IAJC,gDAAgD;IAChD,EAAE,CAAC,MAAqB;;QACtB,OAAO,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,IAAI,0CAAE,GAAG,CAAC;IACnC,CAAC;CACF;AAPD,wCAOC"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/converters/asana/common.ts"],"names":[],"mappings":";;;AAEA,4CAA0D;AA+B1D,IAAK,eAKJ;AALD,WAAK,eAAe;IAClB,8BAAW,CAAA;IACX,oCAAiB,CAAA;IACjB,kCAAe,CAAA;IACf,gCAAa,CAAA;AACf,CAAC,EALI,eAAe,KAAf,eAAe,QAKnB;AAED,sDAAsD;AACtD,MAAa,WAAW;IAItB,MAAM,CAAC,SAAS,CAAC,GAAW;QAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,aAAqB;QACxC,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAC,CAAC;SAChE;QACD,QAAQ,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE;YACrC,KAAK,KAAK;gBACR,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;YAChE,KAAK,OAAO;gBACV,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;YAClE,KAAK,MAAM;gBACT,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;YACjE;gBACE,OAAO,EAAC,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;SACpE;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAe,EAAE,MAAc;QAC7C,OAAO;YACL,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;gBACvB,YAAY,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;gBAChC,MAAM;aACP;SACF,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,aAAa,CAClB,OAAqB,EACrB,MAAc;QAEd,OAAO;YACL,KAAK,EAAE,eAAe;YACtB,MAAM,EAAE;gBACN,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM;aACP;SACF,CAAC;IACJ,CAAC;;AAhDH,kCAiDC;AAhDC,sEAAsE;AACtD,kCAAsB,GAAG,IAAI,CAAC;AAiDhD,2BAA2B;AAC3B,MAAsB,cAAe,SAAQ,qBAAS;IAAtD;;QACE,WAAM,GAAG,OAAO,CAAC;IAMnB,CAAC;IAJC,gDAAgD;IAChD,EAAE,CAAC,MAAqB;;QACtB,OAAO,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,IAAI,0CAAE,GAAG,CAAC;IACnC,CAAC;CACF;AAPD,wCAOC"}
@@ -1,29 +1,41 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Projects = void 0;
4
- const faros_js_client_1 = require("faros-js-client");
5
4
  const common_1 = require("./common");
6
5
  class Projects extends common_1.AsanaConverter {
7
6
  constructor() {
8
7
  super(...arguments);
9
- this.destinationModels = ['tms_Project'];
8
+ this.destinationModels = [
9
+ 'tms_TaskBoard',
10
+ 'tms_Project',
11
+ 'tms_TaskBoardProjectRelationship',
12
+ ];
10
13
  }
11
14
  async convert(record) {
12
- var _a;
13
15
  const source = this.streamName.source;
14
16
  const project = record.record.data;
15
- const tmsProject = {
16
- model: 'tms_Project',
17
+ // Since Asana doesn't have a concept of a board, we create a board and a project from the same Asana project.
18
+ // This is the same behavior as the Jira connector when using project ownership.
19
+ const board = {
20
+ model: 'tms_TaskBoard',
17
21
  record: {
18
22
  uid: project.gid,
19
23
  name: project.name,
20
- description: (_a = project.notes) === null || _a === void 0 ? void 0 : _a.substring(0, common_1.AsanaCommon.MAX_DESCRIPTION_LENGTH),
21
- createdAt: faros_js_client_1.Utils.toDate(project.created_at),
22
- updatedAt: faros_js_client_1.Utils.toDate(project.modified_at),
23
24
  source,
24
25
  },
25
26
  };
26
- return [tmsProject];
27
+ const tmsProject = {
28
+ model: 'tms_Project',
29
+ ...board,
30
+ };
31
+ const boardProjectRelationship = {
32
+ model: 'tms_TaskBoardProjectRelationship',
33
+ record: {
34
+ board: { uid: project.gid, source },
35
+ project: { uid: project.gid, source },
36
+ },
37
+ };
38
+ return [board, tmsProject, boardProjectRelationship];
27
39
  }
28
40
  }
29
41
  exports.Projects = Projects;
@@ -1 +1 @@
1
- {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/converters/asana/projects.ts"],"names":[],"mappings":";;;AACA,qDAAsC;AAGtC,qCAAqD;AAErD,MAAa,QAAS,SAAQ,uBAAc;IAA5C;;QACW,sBAAiB,GAAoC,CAAC,aAAa,CAAC,CAAC;IAyBhF,CAAC;IAvBC,KAAK,CAAC,OAAO,CACX,MAAqB;;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QAEnC,MAAM,UAAU,GAAsB;YACpC,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE;gBACN,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,WAAW,EAAE,MAAA,OAAO,CAAC,KAAK,0CAAE,SAAS,CACnC,CAAC,EACD,oBAAW,CAAC,sBAAsB,CACnC;gBACD,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;gBAC3C,SAAS,EAAE,uBAAK,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;gBAC5C,MAAM;aACP;SACF,CAAC;QAEF,OAAO,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;CACF;AA1BD,4BA0BC"}
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../../src/converters/asana/projects.ts"],"names":[],"mappings":";;;AAGA,qCAAsD;AAEtD,MAAa,QAAS,SAAQ,uBAAc;IAA5C;;QACW,sBAAiB,GAAoC;YAC5D,eAAe;YACf,aAAa;YACb,kCAAkC;SACnC,CAAC;IAmCJ,CAAC;IAjCC,KAAK,CAAC,OAAO,CACX,MAAqB;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,MAAM,OAAO,GAAiB,MAAM,CAAC,MAAM,CAAC,IAAoB,CAAC;QAEjE,8GAA8G;QAC9G,gFAAgF;QAEhF,MAAM,KAAK,GAAsB;YAC/B,KAAK,EAAE,eAAe;YACtB,MAAM,EAAE;gBACN,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM;aACP;SACF,CAAC;QAEF,MAAM,UAAU,GAAsB;YACpC,KAAK,EAAE,aAAa;YACpB,GAAG,KAAK;SACT,CAAC;QAEF,MAAM,wBAAwB,GAAsB;YAClD,KAAK,EAAE,kCAAkC;YACzC,MAAM,EAAE;gBACN,KAAK,EAAE,EAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAC;gBACjC,OAAO,EAAE,EAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAC;aACpC;SACF,CAAC;QAEF,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,wBAAwB,CAAC,CAAC;IACvD,CAAC;CACF;AAxCD,4BAwCC"}
@@ -11,5 +11,4 @@ export declare class Tasks extends AsanaConverter {
11
11
  private getStatus;
12
12
  private findFieldByName;
13
13
  private toTaskField;
14
- private toTmsTaskStatus;
15
14
  }
@@ -55,16 +55,45 @@ class Tasks extends common_1.AsanaConverter {
55
55
  }),
56
56
  });
57
57
  }
58
+ const additionalFields = taskCustomFields.map((f) => this.toTaskField(f));
59
+ for (const membership of (_c = task.memberships) !== null && _c !== void 0 ? _c : []) {
60
+ if (membership.project) {
61
+ res.push({
62
+ model: 'tms_TaskBoardRelationship',
63
+ record: {
64
+ task: taskKey,
65
+ board: { uid: membership.project.gid, source },
66
+ },
67
+ });
68
+ res.push({
69
+ model: 'tms_TaskProjectRelationship',
70
+ record: {
71
+ task: taskKey,
72
+ project: { uid: membership.project.gid, source },
73
+ },
74
+ });
75
+ }
76
+ if (membership.section) {
77
+ additionalFields.push({
78
+ name: 'section_gid',
79
+ value: membership.section.gid,
80
+ });
81
+ additionalFields.push({
82
+ name: 'section_name',
83
+ value: membership.section.name,
84
+ });
85
+ }
86
+ }
58
87
  res.push({
59
88
  model: 'tms_Task',
60
89
  record: {
61
90
  ...taskKey,
62
91
  name: task.name,
63
- description: (_c = task.notes) === null || _c === void 0 ? void 0 : _c.substring(0, common_1.AsanaCommon.MAX_DESCRIPTION_LENGTH),
64
- url: (_d = task.permalink_url) !== null && _d !== void 0 ? _d : null,
92
+ description: (_d = task.notes) === null || _d === void 0 ? void 0 : _d.substring(0, common_1.AsanaCommon.MAX_DESCRIPTION_LENGTH),
93
+ url: (_e = task.permalink_url) !== null && _e !== void 0 ? _e : null,
65
94
  type: common_1.AsanaCommon.toTmsTaskType(task.resource_type),
66
95
  status: this.getStatus(task),
67
- additionalFields: taskCustomFields.map((f) => this.toTaskField(f)),
96
+ additionalFields,
68
97
  createdAt: faros_js_client_1.Utils.toDate(task.created_at),
69
98
  updatedAt: faros_js_client_1.Utils.toDate(task.modified_at),
70
99
  statusChangedAt: faros_js_client_1.Utils.toDate(task.modified_at),
@@ -72,26 +101,6 @@ class Tasks extends common_1.AsanaConverter {
72
101
  statusChangelog: statusChangelog !== null && statusChangelog !== void 0 ? statusChangelog : null,
73
102
  },
74
103
  });
75
- for (const membership of (_e = task.memberships) !== null && _e !== void 0 ? _e : []) {
76
- if (membership.project) {
77
- res.push({
78
- model: 'tms_TaskProjectRelationship',
79
- record: {
80
- task: taskKey,
81
- project: { uid: membership.project.gid, source },
82
- },
83
- });
84
- }
85
- if (membership.section) {
86
- res.push({
87
- model: 'tms_TaskBoardRelationship',
88
- record: {
89
- task: taskKey,
90
- board: { uid: membership.section.gid, source },
91
- },
92
- });
93
- }
94
- }
95
104
  if (task.assignee) {
96
105
  res.push({
97
106
  model: 'tms_TaskAssignment',
@@ -154,20 +163,6 @@ class Tasks extends common_1.AsanaConverter {
154
163
  value: (_f = (_d = (_b = (_a = customField.text_value) !== null && _a !== void 0 ? _a : customField.number_value) !== null && _b !== void 0 ? _b : (_c = customField.enum_value) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : (_e = customField.multi_enum_values) === null || _e === void 0 ? void 0 : _e.name) !== null && _f !== void 0 ? _f : customField.display_value,
155
164
  };
156
165
  }
157
- toTmsTaskStatus(status) {
158
- if (!status)
159
- return { category: Tms_TaskStatusCategory.Custom, detail: 'undefined' };
160
- switch (common_1.AsanaCommon.normalize(status)) {
161
- case 'done':
162
- return { category: Tms_TaskStatusCategory.Done, detail: status };
163
- case 'inprogress':
164
- return { category: Tms_TaskStatusCategory.InProgress, detail: status };
165
- case 'todo':
166
- return { category: Tms_TaskStatusCategory.Todo, detail: status };
167
- default:
168
- return { category: Tms_TaskStatusCategory.Custom, detail: status };
169
- }
170
- }
171
166
  }
172
167
  exports.Tasks = Tasks;
173
168
  Tasks.tagsStream = new converter_1.StreamName('asana', 'tags');
@@ -1 +1 @@
1
- {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../../src/converters/asana/tasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../../src/converters/asana/tasks.ts"],"names":[],"mappings":"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"}
@@ -171,7 +171,7 @@ interface UserLink {
171
171
  export interface User {
172
172
  subjectKind: string;
173
173
  domain: string;
174
- principalName: string;
174
+ principalName?: string;
175
175
  mailAddress: string;
176
176
  origin: string;
177
177
  originId: string;
@@ -3,5 +3,6 @@ import { DestinationModel, DestinationRecord } from '../converter';
3
3
  import { AzureReposConverter } from './common';
4
4
  export declare class Users extends AzureReposConverter {
5
5
  readonly destinationModels: ReadonlyArray<DestinationModel>;
6
+ private checkUserItemValidity;
6
7
  convert(record: AirbyteRecord): Promise<ReadonlyArray<DestinationRecord>>;
7
8
  }
@@ -11,10 +11,17 @@ class Users extends common_1.AzureReposConverter {
11
11
  'vcs_User',
12
12
  ];
13
13
  }
14
+ checkUserItemValidity(userItem) {
15
+ // Add checks to record in this function
16
+ return !!userItem.principalName;
17
+ }
14
18
  async convert(record) {
15
19
  const source = this.streamName.source;
16
20
  const userItem = record.record.data;
17
21
  const res = [];
22
+ if (!this.checkUserItemValidity(userItem)) {
23
+ return res;
24
+ }
18
25
  const organizationName = this.getOrganizationFromUrl(userItem._links.self.href);
19
26
  const organization = { uid: organizationName, source };
20
27
  const type = {
@@ -1 +1 @@
1
- {"version":3,"file":"users.js","sourceRoot":"","sources":["../../../src/converters/azure-repos/users.ts"],"names":[],"mappings":";;;AAGA,qCAA6C;AAC7C,qCAA0D;AAE1D,MAAa,KAAM,SAAQ,4BAAmB;IAA9C;;QACW,sBAAiB,GAAoC;YAC5D,gBAAgB;YAChB,UAAU;SACX,CAAC;IAoCJ,CAAC;IAlCC,KAAK,CAAC,OAAO,CACX,MAAqB;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAY,CAAC;QAC5C,MAAM,GAAG,GAAwB,EAAE,CAAC;QACpC,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1B,CAAC;QACF,MAAM,YAAY,GAAG,EAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAC,CAAC;QACrD,MAAM,IAAI,GAAa;YACrB,QAAQ,EAAE,yBAAgB,CAAC,IAAI;YAC/B,MAAM,EAAE,QAAQ,CAAC,WAAW;SAC7B,CAAC;QACF,GAAG,CAAC,IAAI,CAAC;YACP,KAAK,EAAE,gBAAgB;YACvB,MAAM,EAAE;gBACN,YAAY;gBACZ,IAAI,EAAE,EAAC,GAAG,EAAE,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAC;aAC5C;SACF,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC;YACP,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE;gBACN,GAAG,EAAE,QAAQ,CAAC,aAAa;gBAC3B,IAAI,EAAE,QAAQ,CAAC,WAAW;gBAC1B,IAAI;gBACJ,OAAO,EAAE,QAAQ,CAAC,GAAG;gBACrB,MAAM;aACP;SACF,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAxCD,sBAwCC"}
1
+ {"version":3,"file":"users.js","sourceRoot":"","sources":["../../../src/converters/azure-repos/users.ts"],"names":[],"mappings":";;;AAGA,qCAA6C;AAC7C,qCAA0D;AAE1D,MAAa,KAAM,SAAQ,4BAAmB;IAA9C;;QACW,sBAAiB,GAAoC;YAC5D,gBAAgB;YAChB,UAAU;SACX,CAAC;IA2CJ,CAAC;IAzCS,qBAAqB,CAAC,QAAc;QAC1C,wCAAwC;QACxC,OAAO,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAqB;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAY,CAAC;QAC5C,MAAM,GAAG,GAAwB,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE;YACzC,OAAO,GAAG,CAAC;SACZ;QACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,sBAAsB,CAClD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAC1B,CAAC;QACF,MAAM,YAAY,GAAG,EAAC,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAC,CAAC;QACrD,MAAM,IAAI,GAAa;YACrB,QAAQ,EAAE,yBAAgB,CAAC,IAAI;YAC/B,MAAM,EAAE,QAAQ,CAAC,WAAW;SAC7B,CAAC;QACF,GAAG,CAAC,IAAI,CAAC;YACP,KAAK,EAAE,gBAAgB;YACvB,MAAM,EAAE;gBACN,YAAY;gBACZ,IAAI,EAAE,EAAC,GAAG,EAAE,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAC;aAC5C;SACF,CAAC,CAAC;QACH,GAAG,CAAC,IAAI,CAAC;YACP,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE;gBACN,GAAG,EAAE,QAAQ,CAAC,aAAa;gBAC3B,IAAI,EAAE,QAAQ,CAAC,WAAW;gBAC1B,IAAI;gBACJ,OAAO,EAAE,QAAQ,CAAC,GAAG;gBACrB,MAAM;aACP;SACF,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AA/CD,sBA+CC"}