@commitspark/graphql-api 0.9.4 → 0.10.0

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.
Files changed (89) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/container.js +21 -13
  3. package/dist/container.js.map +1 -1
  4. package/dist/graphql/field-resolver/entry-reference-resolver.d.ts +9 -0
  5. package/dist/graphql/field-resolver/entry-reference-resolver.js +15 -0
  6. package/dist/graphql/field-resolver/entry-reference-resolver.js.map +1 -0
  7. package/dist/graphql/field-resolver/field-default-value-resolver.d.ts +14 -0
  8. package/dist/graphql/field-resolver/field-default-value-resolver.js +73 -0
  9. package/dist/graphql/field-resolver/field-default-value-resolver.js.map +1 -0
  10. package/dist/graphql/field-resolver/fieldResolver.d.ts +11 -0
  11. package/dist/graphql/field-resolver/fieldResolver.js +3 -0
  12. package/dist/graphql/field-resolver/fieldResolver.js.map +1 -0
  13. package/dist/graphql/field-resolver/union-value-resolver.d.ts +10 -0
  14. package/dist/graphql/field-resolver/union-value-resolver.js +17 -0
  15. package/dist/graphql/field-resolver/union-value-resolver.js.map +1 -0
  16. package/dist/graphql/input-type-generator.service.d.ts +3 -3
  17. package/dist/graphql/input-type-generator.service.js +18 -7
  18. package/dist/graphql/input-type-generator.service.js.map +1 -1
  19. package/dist/graphql/queries-mutations-generator.service.d.ts +1 -1
  20. package/dist/graphql/resolver-generators/mutation-create-resolver-generator.d.ts +3 -1
  21. package/dist/graphql/resolver-generators/mutation-create-resolver-generator.js +46 -4
  22. package/dist/graphql/resolver-generators/mutation-create-resolver-generator.js.map +1 -1
  23. package/dist/graphql/resolver-generators/mutation-delete-resolver-generator.d.ts +3 -1
  24. package/dist/graphql/resolver-generators/mutation-delete-resolver-generator.js +32 -9
  25. package/dist/graphql/resolver-generators/mutation-delete-resolver-generator.js.map +1 -1
  26. package/dist/graphql/resolver-generators/{mutation-update.resolver-generator.d.ts → mutation-update-resolver-generator.d.ts} +4 -1
  27. package/dist/graphql/resolver-generators/mutation-update-resolver-generator.js +53 -0
  28. package/dist/graphql/resolver-generators/mutation-update-resolver-generator.js.map +1 -0
  29. package/dist/graphql/resolver-generators/object-type-field-default-value-resolver-generator.d.ts +13 -0
  30. package/dist/graphql/resolver-generators/object-type-field-default-value-resolver-generator.js +58 -0
  31. package/dist/graphql/resolver-generators/object-type-field-default-value-resolver-generator.js.map +1 -0
  32. package/dist/graphql/resolver-generators/query-all-resolver-generator.js +4 -1
  33. package/dist/graphql/resolver-generators/query-all-resolver-generator.js.map +1 -1
  34. package/dist/graphql/resolver-generators/query-by-id-resolver-generator.js +2 -1
  35. package/dist/graphql/resolver-generators/query-by-id-resolver-generator.js.map +1 -1
  36. package/dist/graphql/resolver-generators/union-type-resolver-generator.d.ts +4 -4
  37. package/dist/graphql/resolver-generators/union-type-resolver-generator.js +3 -3
  38. package/dist/graphql/resolver-generators/union-type-resolver-generator.js.map +1 -1
  39. package/dist/graphql/schema-analyzer.service.d.ts +1 -9
  40. package/dist/graphql/schema-analyzer.service.js +6 -17
  41. package/dist/graphql/schema-analyzer.service.js.map +1 -1
  42. package/dist/graphql/schema-generator.service.d.ts +3 -5
  43. package/dist/graphql/schema-generator.service.js +7 -12
  44. package/dist/graphql/schema-generator.service.js.map +1 -1
  45. package/dist/graphql/schema-utils/entry-reference-util.d.ts +12 -4
  46. package/dist/graphql/schema-utils/entry-reference-util.js +105 -21
  47. package/dist/graphql/schema-utils/entry-reference-util.js.map +1 -1
  48. package/dist/graphql/schema-utils/entry-type-util.d.ts +6 -0
  49. package/dist/graphql/schema-utils/entry-type-util.js +34 -0
  50. package/dist/graphql/schema-utils/entry-type-util.js.map +1 -0
  51. package/dist/graphql/schema-utils/union-type-util.d.ts +5 -0
  52. package/dist/graphql/schema-utils/union-type-util.js +21 -0
  53. package/dist/graphql/schema-utils/union-type-util.js.map +1 -0
  54. package/dist/persistence/persistence.service.d.ts +4 -7
  55. package/dist/persistence/persistence.service.js +18 -83
  56. package/dist/persistence/persistence.service.js.map +1 -1
  57. package/dist/tsconfig.build.tsbuildinfo +1 -1
  58. package/package.json +2 -2
  59. package/src/container.ts +29 -15
  60. package/src/graphql/field-resolver/entry-reference-resolver.ts +49 -0
  61. package/src/graphql/field-resolver/field-default-value-resolver.ts +154 -0
  62. package/src/graphql/field-resolver/fieldResolver.ts +19 -0
  63. package/src/graphql/field-resolver/union-value-resolver.ts +46 -0
  64. package/src/graphql/input-type-generator.service.ts +22 -8
  65. package/src/graphql/queries-mutations-generator.service.ts +1 -1
  66. package/src/graphql/resolver-generators/mutation-create-resolver-generator.ts +78 -13
  67. package/src/graphql/resolver-generators/mutation-delete-resolver-generator.ts +69 -21
  68. package/src/graphql/resolver-generators/mutation-update-resolver-generator.ts +131 -0
  69. package/src/graphql/resolver-generators/object-type-field-default-value-resolver-generator.ts +119 -0
  70. package/src/graphql/resolver-generators/query-all-resolver-generator.ts +5 -1
  71. package/src/graphql/resolver-generators/query-by-id-resolver-generator.ts +3 -1
  72. package/src/graphql/resolver-generators/union-type-resolver-generator.ts +5 -7
  73. package/src/graphql/schema-analyzer.service.ts +10 -24
  74. package/src/graphql/schema-generator.service.ts +11 -20
  75. package/src/graphql/schema-utils/entry-reference-util.ts +170 -30
  76. package/src/graphql/schema-utils/entry-type-util.ts +42 -0
  77. package/src/graphql/schema-utils/union-type-util.ts +23 -0
  78. package/src/persistence/persistence.service.ts +33 -132
  79. package/dist/graphql/resolver-generators/entry-reference-resolver.generator.d.ts +0 -12
  80. package/dist/graphql/resolver-generators/entry-reference-resolver.generator.js +0 -29
  81. package/dist/graphql/resolver-generators/entry-reference-resolver.generator.js.map +0 -1
  82. package/dist/graphql/resolver-generators/mutation-update.resolver-generator.js +0 -29
  83. package/dist/graphql/resolver-generators/mutation-update.resolver-generator.js.map +0 -1
  84. package/dist/graphql/resolver-generators/union-value-resolver-generator.d.ts +0 -13
  85. package/dist/graphql/resolver-generators/union-value-resolver-generator.js +0 -80
  86. package/dist/graphql/resolver-generators/union-value-resolver-generator.js.map +0 -1
  87. package/src/graphql/resolver-generators/entry-reference-resolver.generator.ts +0 -71
  88. package/src/graphql/resolver-generators/mutation-update.resolver-generator.ts +0 -59
  89. package/src/graphql/resolver-generators/union-value-resolver-generator.ts +0 -125
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EntryTypeUtil = void 0;
4
+ const graphql_1 = require("graphql");
5
+ class EntryTypeUtil {
6
+ buildsOnTypeWithEntryDirective(type) {
7
+ if ((0, graphql_1.isNonNullType)(type)) {
8
+ return this.buildsOnTypeWithEntryDirective(type.ofType);
9
+ }
10
+ else if ((0, graphql_1.isListType)(type)) {
11
+ return this.buildsOnTypeWithEntryDirective(type.ofType);
12
+ }
13
+ else if ((0, graphql_1.isUnionType)(type)) {
14
+ return this.isUnionOfEntryTypes(type);
15
+ }
16
+ else if ((0, graphql_1.isObjectType)(type)) {
17
+ return this.hasEntryDirective(type);
18
+ }
19
+ return false;
20
+ }
21
+ hasEntryDirective(type) {
22
+ var _a;
23
+ return (!!type.astNode &&
24
+ ((_a = type.astNode.directives) === null || _a === void 0 ? void 0 : _a.find((directive) => directive.name.value === 'Entry')) !== undefined);
25
+ }
26
+ isUnionOfEntryTypes(type) {
27
+ return (type
28
+ .getTypes()
29
+ .filter((unionType) => this.buildsOnTypeWithEntryDirective(unionType))
30
+ .length > 0);
31
+ }
32
+ }
33
+ exports.EntryTypeUtil = EntryTypeUtil;
34
+ //# sourceMappingURL=entry-type-util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entry-type-util.js","sourceRoot":"","sources":["../../../src/graphql/schema-utils/entry-type-util.ts"],"names":[],"mappings":";;;AAAA,qCAQgB;AAEhB,MAAa,aAAa;IACjB,8BAA8B,CAAC,IAAyB;QAC7D,IAAI,IAAA,uBAAa,EAAC,IAAI,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;SACxD;aAAM,IAAI,IAAA,oBAAU,EAAC,IAAI,CAAC,EAAE;YAC3B,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;SACxD;aAAM,IAAI,IAAA,qBAAW,EAAC,IAAI,CAAC,EAAE;YAC5B,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;SACtC;aAAM,IAAI,IAAA,sBAAY,EAAC,IAAI,CAAC,EAAE;YAC7B,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;SACpC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEM,iBAAiB,CAAC,IAAuB;;QAC9C,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,OAAO;YACd,CAAA,MAAA,IAAI,CAAC,OAAO,CAAC,UAAU,0CAAE,IAAI,CAC3B,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,CAChD,MAAK,SAAS,CAChB,CAAA;IACH,CAAC;IAEM,mBAAmB,CAAC,IAAsB;QAC/C,OAAO,CACL,IAAI;aACD,QAAQ,EAAE;aACV,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC;aACrE,MAAM,GAAG,CAAC,CACd,CAAA;IACH,CAAC;CACF;AA/BD,sCA+BC"}
@@ -0,0 +1,5 @@
1
+ import { Entry } from '../../persistence/persistence.service';
2
+ export declare class UnionTypeUtil {
3
+ getUnionTypeNameFromFieldValue(fieldValue: any): string;
4
+ getUnionValue(fieldValue: any): Entry;
5
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UnionTypeUtil = void 0;
4
+ class UnionTypeUtil {
5
+ getUnionTypeNameFromFieldValue(fieldValue) {
6
+ if (typeof fieldValue !== 'object') {
7
+ throw new Error('Expected object as union value');
8
+ }
9
+ const firstKey = Object.keys(fieldValue)[0];
10
+ return firstKey.slice(0, 1).toUpperCase() + firstKey.slice(1);
11
+ }
12
+ getUnionValue(fieldValue) {
13
+ if (typeof fieldValue !== 'object') {
14
+ throw new Error('Expected object as union value');
15
+ }
16
+ const firstKey = Object.keys(fieldValue)[0];
17
+ return fieldValue[firstKey];
18
+ }
19
+ }
20
+ exports.UnionTypeUtil = UnionTypeUtil;
21
+ //# sourceMappingURL=union-type-util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"union-type-util.js","sourceRoot":"","sources":["../../../src/graphql/schema-utils/union-type-util.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IACjB,8BAA8B,CAAC,UAAe;QACnD,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAClC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;SAClD;QAID,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3C,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC/D,CAAC;IAEM,aAAa,CAAC,UAAe;QAClC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;YAClC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;SAClD;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC;CACF;AApBD,sCAoBC"}
@@ -1,12 +1,9 @@
1
- import { GitAdapter } from '@commitspark/git-adapter';
1
+ import { ContentEntry, GitAdapter } from '@commitspark/git-adapter';
2
2
  export declare class PersistenceService {
3
3
  getTypeById(gitAdapter: GitAdapter, commitHash: string, id: string): Promise<string>;
4
- findById(gitAdapter: GitAdapter, commitHash: string, id: string): Promise<Entry>;
5
- findByType(gitAdapter: GitAdapter, commitHash: string, type: string): Promise<Entry[]>;
6
- findByTypeId(gitAdapter: GitAdapter, commitHash: string, type: string, id: string): Promise<Entry>;
7
- createType(gitAdapter: GitAdapter, branch: string, commitHash: string, typeName: string, id: string, data: Entry, message: string): Promise<CommitResult>;
8
- updateByTypeId(gitAdapter: GitAdapter, branch: string, commitHash: string, type: string, id: string, data: Entry, message: string): Promise<CommitResult>;
9
- deleteByTypeId(gitAdapter: GitAdapter, branch: string, commitHash: string, type: string, id: string, message: string): Promise<CommitResult>;
4
+ findById(gitAdapter: GitAdapter, commitHash: string, id: string): Promise<ContentEntry>;
5
+ findByType(gitAdapter: GitAdapter, commitHash: string, type: string): Promise<ContentEntry[]>;
6
+ findByTypeId(gitAdapter: GitAdapter, commitHash: string, type: string, id: string): Promise<ContentEntry>;
10
7
  }
11
8
  export interface CommitResult {
12
9
  ref: string;
@@ -5,109 +5,44 @@ const GraphQLError_1 = require("graphql/error/GraphQLError");
5
5
  class PersistenceService {
6
6
  async getTypeById(gitAdapter, commitHash, id) {
7
7
  const allEntries = await gitAdapter.getContentEntries(commitHash);
8
- const requestedEntry = allEntries.filter((contentEntry) => contentEntry.id === id)[0];
8
+ const requestedEntry = allEntries.find((contentEntry) => contentEntry.id === id);
9
9
  if (requestedEntry === undefined) {
10
- throw new Error(`Not found: ${id}`);
10
+ throw new GraphQLError_1.GraphQLError(`Not found: ${id}`, {
11
+ extensions: {
12
+ code: 'NOT_FOUND',
13
+ },
14
+ });
11
15
  }
12
16
  return requestedEntry.metadata.type;
13
17
  }
14
18
  async findById(gitAdapter, commitHash, id) {
15
19
  const allEntries = await gitAdapter.getContentEntries(commitHash);
16
- const requestedEntry = allEntries.filter((contentEntry) => contentEntry.id === id)[0];
20
+ const requestedEntry = allEntries.find((contentEntry) => contentEntry.id === id);
17
21
  if (requestedEntry === undefined) {
18
- throw new Error(`Not found: ${id}`);
22
+ throw new GraphQLError_1.GraphQLError(`Not found: ${id}`, {
23
+ extensions: {
24
+ code: 'NOT_FOUND',
25
+ },
26
+ });
19
27
  }
20
- return Object.assign(Object.assign({}, requestedEntry.data), { id: id });
28
+ return requestedEntry;
21
29
  }
22
30
  async findByType(gitAdapter, commitHash, type) {
23
31
  const allEntries = await gitAdapter.getContentEntries(commitHash);
24
- return allEntries
25
- .filter((contentEntry) => contentEntry.metadata.type === type)
26
- .map((value) => (Object.assign(Object.assign({}, value.data), { id: value.id })));
32
+ return allEntries.filter((contentEntry) => contentEntry.metadata.type === type);
27
33
  }
28
34
  async findByTypeId(gitAdapter, commitHash, type, id) {
29
35
  const allEntries = await gitAdapter.getContentEntries(commitHash);
30
- const requestedEntry = allEntries.filter((contentEntry) => contentEntry.id === id)[0];
31
- if (requestedEntry === undefined || requestedEntry.metadata.type !== type) {
32
- throw new Error(`Not found: ${type}, ${id}`);
33
- }
34
- return Object.assign(Object.assign({}, requestedEntry.data), { id: id });
35
- }
36
- async createType(gitAdapter, branch, commitHash, typeName, id, data, message) {
37
- const regex = /^[a-zA-Z0-9\-_]{1,250}$/;
38
- if (!id.match(regex)) {
39
- throw new GraphQLError_1.GraphQLError(`"id" does not match regex "${regex}"`, {
36
+ const requestedEntry = allEntries.find((contentEntry) => contentEntry.id === id && contentEntry.metadata.type === type);
37
+ if (requestedEntry === undefined) {
38
+ throw new GraphQLError_1.GraphQLError(`No entry of type "${type}" with id "${id}" exists`, {
40
39
  extensions: {
41
40
  code: 'BAD_USER_INPUT',
42
41
  argumentName: 'id',
43
42
  },
44
43
  });
45
44
  }
46
- const commit = await gitAdapter.createCommit({
47
- ref: branch,
48
- parentSha: commitHash,
49
- contentEntries: [
50
- {
51
- id: id,
52
- metadata: {
53
- type: typeName,
54
- },
55
- data: data,
56
- deletion: false,
57
- },
58
- ],
59
- message: message,
60
- });
61
- return {
62
- ref: commit.ref,
63
- };
64
- }
65
- async updateByTypeId(gitAdapter, branch, commitHash, type, id, data, message) {
66
- const allEntries = await gitAdapter.getContentEntries(commitHash);
67
- const requestedEntry = allEntries.filter((contentEntry) => contentEntry.id === id)[0];
68
- if (requestedEntry === undefined || requestedEntry.metadata.type !== type) {
69
- throw new Error(`Not found: ${type}, ${id}`);
70
- }
71
- const newData = Object.assign(Object.assign({}, requestedEntry.data), data);
72
- const commit = await gitAdapter.createCommit({
73
- ref: branch,
74
- parentSha: commitHash,
75
- contentEntries: [
76
- {
77
- id: id,
78
- metadata: requestedEntry.metadata,
79
- data: newData,
80
- deletion: false,
81
- },
82
- ],
83
- message: message,
84
- });
85
- return {
86
- ref: commit.ref,
87
- };
88
- }
89
- async deleteByTypeId(gitAdapter, branch, commitHash, type, id, message) {
90
- const allEntries = await gitAdapter.getContentEntries(commitHash);
91
- const requestedEntry = allEntries.filter((contentEntry) => contentEntry.id === id)[0];
92
- if (requestedEntry === undefined || requestedEntry.metadata.type !== type) {
93
- throw new Error(`Not found: ${type}, ${id}`);
94
- }
95
- const commit = await gitAdapter.createCommit({
96
- ref: branch,
97
- parentSha: commitHash,
98
- contentEntries: [
99
- {
100
- id: id,
101
- metadata: requestedEntry.metadata,
102
- data: {},
103
- deletion: true,
104
- },
105
- ],
106
- message: message,
107
- });
108
- return {
109
- ref: commit.ref,
110
- };
45
+ return requestedEntry;
111
46
  }
112
47
  }
113
48
  exports.PersistenceService = PersistenceService;
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.service.js","sourceRoot":"","sources":["../../src/persistence/persistence.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistence.service.js","sourceRoot":"","sources":["../../src/persistence/persistence.service.ts"],"names":[],"mappings":";;;AACA,6DAAyD;AAEzD,MAAa,kBAAkB;IACtB,KAAK,CAAC,WAAW,CACtB,UAAsB,EACtB,UAAkB,EAClB,EAAU;QAEV,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACjE,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CACpC,CAAC,YAA0B,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,CACvD,CAAA;QACD,IAAI,cAAc,KAAK,SAAS,EAAE;YAChC,MAAM,IAAI,2BAAY,CAAC,cAAc,EAAE,EAAE,EAAE;gBACzC,UAAU,EAAE;oBACV,IAAI,EAAE,WAAW;iBAClB;aACF,CAAC,CAAA;SACH;QAED,OAAO,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAA;IACrC,CAAC;IAEM,KAAK,CAAC,QAAQ,CACnB,UAAsB,EACtB,UAAkB,EAClB,EAAU;QAEV,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACjE,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CACpC,CAAC,YAA0B,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,CACvD,CAAA;QACD,IAAI,cAAc,KAAK,SAAS,EAAE;YAChC,MAAM,IAAI,2BAAY,CAAC,cAAc,EAAE,EAAE,EAAE;gBACzC,UAAU,EAAE;oBACV,IAAI,EAAE,WAAW;iBAClB;aACF,CAAC,CAAA;SACH;QAED,OAAO,cAAc,CAAA;IACvB,CAAC;IAEM,KAAK,CAAC,UAAU,CACrB,UAAsB,EACtB,UAAkB,EAClB,IAAY;QAEZ,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACjE,OAAO,UAAU,CAAC,MAAM,CACtB,CAAC,YAA0B,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CACpE,CAAA;IACH,CAAC;IAEM,KAAK,CAAC,YAAY,CACvB,UAAsB,EACtB,UAAkB,EAClB,IAAY,EACZ,EAAU;QAEV,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;QACjE,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CACpC,CAAC,YAA0B,EAAE,EAAE,CAC7B,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAChE,CAAA;QACD,IAAI,cAAc,KAAK,SAAS,EAAE;YAChC,MAAM,IAAI,2BAAY,CACpB,qBAAqB,IAAI,cAAc,EAAE,UAAU,EACnD;gBACE,UAAU,EAAE;oBACV,IAAI,EAAE,gBAAgB;oBACtB,YAAY,EAAE,IAAI;iBACnB;aACF,CACF,CAAA;SACF;QAED,OAAO,cAAc,CAAA;IACvB,CAAC;CACF;AA7ED,gDA6EC"}