@withpica/mcp-server 2.6.2 → 2.7.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 (256) hide show
  1. package/dist/config.d.ts +25 -4
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +12 -36
  4. package/dist/config.js.map +1 -1
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.js +3 -3
  7. package/dist/index.js.map +1 -1
  8. package/dist/pica-sdk.d.ts +1231 -0
  9. package/dist/pica-sdk.d.ts.map +1 -0
  10. package/dist/pica-sdk.js +1403 -0
  11. package/dist/pica-sdk.js.map +1 -0
  12. package/dist/prompts/index.d.ts +64 -64
  13. package/dist/prompts/index.js +24 -24
  14. package/dist/prompts/index.js.map +1 -1
  15. package/dist/resources/index.d.ts +53 -55
  16. package/dist/resources/index.d.ts.map +1 -1
  17. package/dist/resources/index.js +54 -133
  18. package/dist/resources/index.js.map +1 -1
  19. package/dist/server.d.ts +32 -49
  20. package/dist/server.d.ts.map +1 -1
  21. package/dist/server.js +14 -103
  22. package/dist/server.js.map +1 -1
  23. package/dist/tools/index.d.ts +37 -83
  24. package/dist/tools/index.d.ts.map +1 -1
  25. package/dist/tools/index.js +84 -442
  26. package/dist/tools/index.js.map +1 -1
  27. package/dist/tools/people.d.ts +47 -39
  28. package/dist/tools/people.d.ts.map +1 -1
  29. package/dist/tools/people.js +109 -148
  30. package/dist/tools/people.js.map +1 -1
  31. package/dist/tools/recordings.d.ts +9 -9
  32. package/dist/tools/recordings.d.ts.map +1 -1
  33. package/dist/tools/recordings.js +48 -121
  34. package/dist/tools/recordings.js.map +1 -1
  35. package/dist/tools/search.d.ts +21 -21
  36. package/dist/tools/search.d.ts.map +1 -1
  37. package/dist/tools/search.js +3 -3
  38. package/dist/tools/search.js.map +1 -1
  39. package/dist/tools/works.d.ts +47 -39
  40. package/dist/tools/works.d.ts.map +1 -1
  41. package/dist/tools/works.js +116 -201
  42. package/dist/tools/works.js.map +1 -1
  43. package/dist/utils/errors.d.ts +29 -0
  44. package/dist/utils/errors.d.ts.map +1 -0
  45. package/dist/utils/errors.js +115 -0
  46. package/dist/utils/errors.js.map +1 -0
  47. package/dist/utils/formatting.d.ts +82 -0
  48. package/dist/utils/formatting.d.ts.map +1 -0
  49. package/dist/utils/formatting.js +125 -0
  50. package/dist/utils/formatting.js.map +1 -0
  51. package/package.json +1 -1
  52. package/server.json +1 -1
  53. package/dist/__mocks__/mppx-mcp-sdk-server.d.ts +0 -6
  54. package/dist/__mocks__/mppx-mcp-sdk-server.d.ts.map +0 -1
  55. package/dist/__mocks__/mppx-mcp-sdk-server.js +0 -6
  56. package/dist/__mocks__/mppx-mcp-sdk-server.js.map +0 -1
  57. package/dist/__mocks__/mppx-server.d.ts +0 -12
  58. package/dist/__mocks__/mppx-server.d.ts.map +0 -1
  59. package/dist/__mocks__/mppx-server.js +0 -12
  60. package/dist/__mocks__/mppx-server.js.map +0 -1
  61. package/dist/apps/download.d.ts +0 -2
  62. package/dist/apps/download.d.ts.map +0 -1
  63. package/dist/apps/download.js +0 -125
  64. package/dist/apps/download.js.map +0 -1
  65. package/dist/apps/generated/shared-bundle.d.ts +0 -5
  66. package/dist/apps/generated/shared-bundle.d.ts.map +0 -1
  67. package/dist/apps/generated/shared-bundle.js +0 -7
  68. package/dist/apps/generated/shared-bundle.js.map +0 -1
  69. package/dist/apps/shared.d.ts +0 -15
  70. package/dist/apps/shared.d.ts.map +0 -1
  71. package/dist/apps/shared.js +0 -480
  72. package/dist/apps/shared.js.map +0 -1
  73. package/dist/apps/upload.d.ts +0 -2
  74. package/dist/apps/upload.d.ts.map +0 -1
  75. package/dist/apps/upload.js +0 -280
  76. package/dist/apps/upload.js.map +0 -1
  77. package/dist/resources/llms-primer.d.ts +0 -2
  78. package/dist/resources/llms-primer.d.ts.map +0 -1
  79. package/dist/resources/llms-primer.js +0 -68
  80. package/dist/resources/llms-primer.js.map +0 -1
  81. package/dist/server-instructions.d.ts +0 -9
  82. package/dist/server-instructions.d.ts.map +0 -1
  83. package/dist/server-instructions.js +0 -34
  84. package/dist/server-instructions.js.map +0 -1
  85. package/dist/tools/agreement-types.d.ts +0 -27
  86. package/dist/tools/agreement-types.d.ts.map +0 -1
  87. package/dist/tools/agreement-types.js +0 -387
  88. package/dist/tools/agreement-types.js.map +0 -1
  89. package/dist/tools/agreements.d.ts +0 -20
  90. package/dist/tools/agreements.d.ts.map +0 -1
  91. package/dist/tools/agreements.js +0 -363
  92. package/dist/tools/agreements.js.map +0 -1
  93. package/dist/tools/analytics.d.ts +0 -20
  94. package/dist/tools/analytics.d.ts.map +0 -1
  95. package/dist/tools/analytics.js +0 -124
  96. package/dist/tools/analytics.js.map +0 -1
  97. package/dist/tools/app-tools.d.ts +0 -21
  98. package/dist/tools/app-tools.d.ts.map +0 -1
  99. package/dist/tools/app-tools.js +0 -248
  100. package/dist/tools/app-tools.js.map +0 -1
  101. package/dist/tools/assets.d.ts +0 -21
  102. package/dist/tools/assets.d.ts.map +0 -1
  103. package/dist/tools/assets.js +0 -441
  104. package/dist/tools/assets.js.map +0 -1
  105. package/dist/tools/audio-files.d.ts +0 -20
  106. package/dist/tools/audio-files.d.ts.map +0 -1
  107. package/dist/tools/audio-files.js +0 -384
  108. package/dist/tools/audio-files.js.map +0 -1
  109. package/dist/tools/auth.d.ts +0 -22
  110. package/dist/tools/auth.d.ts.map +0 -1
  111. package/dist/tools/auth.js +0 -210
  112. package/dist/tools/auth.js.map +0 -1
  113. package/dist/tools/bulk.d.ts +0 -16
  114. package/dist/tools/bulk.d.ts.map +0 -1
  115. package/dist/tools/bulk.js +0 -85
  116. package/dist/tools/bulk.js.map +0 -1
  117. package/dist/tools/calendar.d.ts +0 -15
  118. package/dist/tools/calendar.d.ts.map +0 -1
  119. package/dist/tools/calendar.js +0 -67
  120. package/dist/tools/calendar.js.map +0 -1
  121. package/dist/tools/collaborators.d.ts +0 -17
  122. package/dist/tools/collaborators.d.ts.map +0 -1
  123. package/dist/tools/collaborators.js +0 -131
  124. package/dist/tools/collaborators.js.map +0 -1
  125. package/dist/tools/comparisons.d.ts +0 -22
  126. package/dist/tools/comparisons.d.ts.map +0 -1
  127. package/dist/tools/comparisons.js +0 -78
  128. package/dist/tools/comparisons.js.map +0 -1
  129. package/dist/tools/credits.d.ts +0 -17
  130. package/dist/tools/credits.d.ts.map +0 -1
  131. package/dist/tools/credits.js +0 -312
  132. package/dist/tools/credits.js.map +0 -1
  133. package/dist/tools/dashboard.d.ts +0 -19
  134. package/dist/tools/dashboard.d.ts.map +0 -1
  135. package/dist/tools/dashboard.js +0 -146
  136. package/dist/tools/dashboard.js.map +0 -1
  137. package/dist/tools/directory.d.ts +0 -15
  138. package/dist/tools/directory.d.ts.map +0 -1
  139. package/dist/tools/directory.js +0 -106
  140. package/dist/tools/directory.js.map +0 -1
  141. package/dist/tools/discovery.d.ts +0 -28
  142. package/dist/tools/discovery.d.ts.map +0 -1
  143. package/dist/tools/discovery.js +0 -560
  144. package/dist/tools/discovery.js.map +0 -1
  145. package/dist/tools/disputes.d.ts +0 -18
  146. package/dist/tools/disputes.d.ts.map +0 -1
  147. package/dist/tools/disputes.js +0 -61
  148. package/dist/tools/disputes.js.map +0 -1
  149. package/dist/tools/documents.d.ts +0 -15
  150. package/dist/tools/documents.d.ts.map +0 -1
  151. package/dist/tools/documents.js +0 -36
  152. package/dist/tools/documents.js.map +0 -1
  153. package/dist/tools/duplicates.d.ts +0 -16
  154. package/dist/tools/duplicates.d.ts.map +0 -1
  155. package/dist/tools/duplicates.js +0 -87
  156. package/dist/tools/duplicates.js.map +0 -1
  157. package/dist/tools/enrichment.d.ts +0 -20
  158. package/dist/tools/enrichment.d.ts.map +0 -1
  159. package/dist/tools/enrichment.js +0 -154
  160. package/dist/tools/enrichment.js.map +0 -1
  161. package/dist/tools/exports.d.ts +0 -19
  162. package/dist/tools/exports.d.ts.map +0 -1
  163. package/dist/tools/exports.js +0 -175
  164. package/dist/tools/exports.js.map +0 -1
  165. package/dist/tools/import-documents.d.ts +0 -21
  166. package/dist/tools/import-documents.d.ts.map +0 -1
  167. package/dist/tools/import-documents.js +0 -203
  168. package/dist/tools/import-documents.js.map +0 -1
  169. package/dist/tools/import.d.ts +0 -30
  170. package/dist/tools/import.d.ts.map +0 -1
  171. package/dist/tools/import.js +0 -455
  172. package/dist/tools/import.js.map +0 -1
  173. package/dist/tools/integrations.d.ts +0 -15
  174. package/dist/tools/integrations.d.ts.map +0 -1
  175. package/dist/tools/integrations.js +0 -100
  176. package/dist/tools/integrations.js.map +0 -1
  177. package/dist/tools/licensing.d.ts +0 -40
  178. package/dist/tools/licensing.d.ts.map +0 -1
  179. package/dist/tools/licensing.js +0 -431
  180. package/dist/tools/licensing.js.map +0 -1
  181. package/dist/tools/memory.d.ts +0 -21
  182. package/dist/tools/memory.d.ts.map +0 -1
  183. package/dist/tools/memory.js +0 -116
  184. package/dist/tools/memory.js.map +0 -1
  185. package/dist/tools/metadata.d.ts +0 -15
  186. package/dist/tools/metadata.d.ts.map +0 -1
  187. package/dist/tools/metadata.js +0 -1069
  188. package/dist/tools/metadata.js.map +0 -1
  189. package/dist/tools/multimedia.d.ts +0 -19
  190. package/dist/tools/multimedia.d.ts.map +0 -1
  191. package/dist/tools/multimedia.js +0 -291
  192. package/dist/tools/multimedia.js.map +0 -1
  193. package/dist/tools/notes.d.ts +0 -21
  194. package/dist/tools/notes.d.ts.map +0 -1
  195. package/dist/tools/notes.js +0 -108
  196. package/dist/tools/notes.js.map +0 -1
  197. package/dist/tools/notifications.d.ts +0 -17
  198. package/dist/tools/notifications.d.ts.map +0 -1
  199. package/dist/tools/notifications.js +0 -117
  200. package/dist/tools/notifications.js.map +0 -1
  201. package/dist/tools/projects.d.ts +0 -19
  202. package/dist/tools/projects.d.ts.map +0 -1
  203. package/dist/tools/projects.js +0 -140
  204. package/dist/tools/projects.js.map +0 -1
  205. package/dist/tools/publishers.d.ts +0 -16
  206. package/dist/tools/publishers.d.ts.map +0 -1
  207. package/dist/tools/publishers.js +0 -69
  208. package/dist/tools/publishers.js.map +0 -1
  209. package/dist/tools/purchases.d.ts +0 -15
  210. package/dist/tools/purchases.d.ts.map +0 -1
  211. package/dist/tools/purchases.js +0 -63
  212. package/dist/tools/purchases.js.map +0 -1
  213. package/dist/tools/recovery-hints.d.ts +0 -14
  214. package/dist/tools/recovery-hints.d.ts.map +0 -1
  215. package/dist/tools/recovery-hints.js +0 -277
  216. package/dist/tools/recovery-hints.js.map +0 -1
  217. package/dist/tools/releases.d.ts +0 -18
  218. package/dist/tools/releases.d.ts.map +0 -1
  219. package/dist/tools/releases.js +0 -128
  220. package/dist/tools/releases.js.map +0 -1
  221. package/dist/tools/royalties.d.ts +0 -23
  222. package/dist/tools/royalties.d.ts.map +0 -1
  223. package/dist/tools/royalties.js +0 -257
  224. package/dist/tools/royalties.js.map +0 -1
  225. package/dist/tools/send.d.ts +0 -17
  226. package/dist/tools/send.d.ts.map +0 -1
  227. package/dist/tools/send.js +0 -185
  228. package/dist/tools/send.js.map +0 -1
  229. package/dist/tools/sessions.d.ts +0 -18
  230. package/dist/tools/sessions.d.ts.map +0 -1
  231. package/dist/tools/sessions.js +0 -115
  232. package/dist/tools/sessions.js.map +0 -1
  233. package/dist/tools/settings.d.ts +0 -18
  234. package/dist/tools/settings.d.ts.map +0 -1
  235. package/dist/tools/settings.js +0 -96
  236. package/dist/tools/settings.js.map +0 -1
  237. package/dist/tools/share-links.d.ts +0 -19
  238. package/dist/tools/share-links.d.ts.map +0 -1
  239. package/dist/tools/share-links.js +0 -121
  240. package/dist/tools/share-links.js.map +0 -1
  241. package/dist/tools/split-sheets.d.ts +0 -25
  242. package/dist/tools/split-sheets.d.ts.map +0 -1
  243. package/dist/tools/split-sheets.js +0 -307
  244. package/dist/tools/split-sheets.js.map +0 -1
  245. package/dist/tools/team.d.ts +0 -22
  246. package/dist/tools/team.d.ts.map +0 -1
  247. package/dist/tools/team.js +0 -134
  248. package/dist/tools/team.js.map +0 -1
  249. package/dist/tools/telegram.d.ts +0 -20
  250. package/dist/tools/telegram.d.ts.map +0 -1
  251. package/dist/tools/telegram.js +0 -88
  252. package/dist/tools/telegram.js.map +0 -1
  253. package/dist/tools/uploads.d.ts +0 -17
  254. package/dist/tools/uploads.d.ts.map +0 -1
  255. package/dist/tools/uploads.js +0 -156
  256. package/dist/tools/uploads.js.map +0 -1
@@ -1,156 +0,0 @@
1
- // Copyright (c) 2024-2026 Withpica Ltd. All rights reserved.
2
- import { formatSuccess } from "@withpica/mcp-utils";
3
- export class UploadTools {
4
- pica;
5
- constructor(pica) {
6
- this.pica = pica;
7
- }
8
- getTools() {
9
- return [
10
- {
11
- definition: {
12
- name: "pica_upload_file",
13
- description: "Generate a signed URL for uploading ANY file type — images, videos, documents, or audio. " +
14
- "The storage category is auto-detected from the MIME type. After uploading the file via HTTP PUT " +
15
- "to the returned URL, call pica_upload_complete to finalize. " +
16
- "Supported: images (JPEG, PNG, GIF, WebP, HEIC, AVIF, TIFF), " +
17
- "videos (MP4, QuickTime, WebM, MKV), " +
18
- "documents (PDF, Word, Excel), " +
19
- "audio (WAV, MP3, FLAC, AIFF, OGG, WebM). " +
20
- "For audio files that need BPM/key analysis, use pica_audio_presigned_upload instead.",
21
- inputSchema: {
22
- type: "object",
23
- properties: {
24
- filename: {
25
- type: "string",
26
- description: "Original filename with extension (e.g. 'promo-photo.jpg', 'contract.pdf')",
27
- },
28
- content_type: {
29
- type: "string",
30
- description: "MIME type of the file (e.g. 'image/jpeg', 'video/mp4', 'application/pdf')",
31
- },
32
- file_size: {
33
- type: "number",
34
- description: "File size in bytes",
35
- },
36
- },
37
- required: ["filename", "content_type", "file_size"],
38
- },
39
- },
40
- executor: this.presignedUpload.bind(this),
41
- },
42
- {
43
- definition: {
44
- name: "pica_upload_complete",
45
- description: "Finalize a file upload after the file has been PUT to the signed URL from pica_upload_file. " +
46
- "Creates the appropriate database record (multimedia item for images/video, document for PDFs, " +
47
- "audio file for audio). Use the uploadId, key, bucket, and storageCategory from pica_upload_file.",
48
- inputSchema: {
49
- type: "object",
50
- properties: {
51
- upload_id: {
52
- type: "string",
53
- description: "The uploadId returned from pica_upload_file",
54
- },
55
- key: {
56
- type: "string",
57
- description: "The storage key returned from pica_upload_file",
58
- },
59
- bucket: {
60
- type: "string",
61
- description: "The bucket returned from pica_upload_file",
62
- },
63
- storage_category: {
64
- type: "string",
65
- description: "The storageCategory returned from pica_upload_file",
66
- enum: ["audio", "media", "documents"],
67
- },
68
- filename: {
69
- type: "string",
70
- description: "Original filename",
71
- },
72
- content_type: {
73
- type: "string",
74
- description: "MIME type of the uploaded file",
75
- },
76
- file_size: {
77
- type: "number",
78
- description: "File size in bytes",
79
- },
80
- title: {
81
- type: "string",
82
- description: "Optional title. Defaults to filename without extension.",
83
- },
84
- work_id: {
85
- type: "string",
86
- description: "Optional work ID to link the file to (audio only). For images/videos, use pica_multimedia_link_work after upload.",
87
- },
88
- classification: {
89
- type: "string",
90
- description: "For media: classification type (e.g. 'press_photo', 'album_artwork', 'music_video'). " +
91
- "For documents: category (e.g. 'agreement', 'statement', 'other').",
92
- },
93
- linked_to_type: {
94
- type: "string",
95
- description: "For documents: entity type to link to (e.g. 'work', 'person', 'agreement')",
96
- },
97
- linked_to_id: {
98
- type: "string",
99
- description: "For documents: entity ID to link to",
100
- },
101
- },
102
- required: [
103
- "upload_id",
104
- "key",
105
- "bucket",
106
- "storage_category",
107
- "filename",
108
- "content_type",
109
- "file_size",
110
- ],
111
- },
112
- },
113
- executor: this.completeUpload.bind(this),
114
- },
115
- ];
116
- }
117
- async presignedUpload(args) {
118
- const result = await this.pica.storage.presignedUpload({
119
- filename: args.filename,
120
- contentType: args.content_type,
121
- fileSize: args.file_size,
122
- });
123
- return formatSuccess(`Upload URL generated for "${args.filename}" (category: ${result.storageCategory}). ` +
124
- `PUT the file to the uploadUrl, then call pica_upload_complete with uploadId, key, bucket, ` +
125
- `storageCategory, and metadata to finalize.`, {
126
- uploadUrl: result.uploadUrl,
127
- uploadId: result.uploadId,
128
- key: result.key,
129
- bucket: result.bucket,
130
- storageCategory: result.storageCategory,
131
- expiresAt: result.expiresAt,
132
- metadata: result.metadata,
133
- });
134
- }
135
- async completeUpload(args) {
136
- const result = await this.pica.storage.completeUpload({
137
- uploadId: args.upload_id,
138
- key: args.key,
139
- bucket: args.bucket,
140
- metadata: {
141
- filename: args.filename,
142
- contentType: args.content_type,
143
- fileSize: args.file_size,
144
- storageCategory: args.storage_category,
145
- title: args.title,
146
- workId: args.work_id,
147
- classification: args.classification,
148
- documentCategory: args.classification,
149
- linkedToType: args.linked_to_type,
150
- linkedToId: args.linked_to_id,
151
- },
152
- });
153
- return formatSuccess(`Upload finalized. Created ${result.recordType} record with ID: ${result.recordId}.`, result);
154
- }
155
- }
156
- //# sourceMappingURL=uploads.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uploads.js","sourceRoot":"","sources":["../../src/tools/uploads.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAS7D,OAAO,EAAE,aAAa,EAAgB,MAAM,qBAAqB,CAAC;AAElE,MAAM,OAAO,WAAW;IACd,IAAI,CAAa;IAEzB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO;YACL;gBACE,UAAU,EAAE;oBACV,IAAI,EAAE,kBAAkB;oBACxB,WAAW,EACT,2FAA2F;wBAC3F,kGAAkG;wBAClG,8DAA8D;wBAC9D,8DAA8D;wBAC9D,sCAAsC;wBACtC,gCAAgC;wBAChC,2CAA2C;wBAC3C,sFAAsF;oBACxF,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,2EAA2E;6BAC9E;4BACD,YAAY,EAAE;gCACZ,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,2EAA2E;6BAC9E;4BACD,SAAS,EAAE;gCACT,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oBAAoB;6BAClC;yBACF;wBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,WAAW,CAAC;qBACpD;iBACF;gBACD,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;aAC1C;YACD;gBACE,UAAU,EAAE;oBACV,IAAI,EAAE,sBAAsB;oBAC5B,WAAW,EACT,8FAA8F;wBAC9F,gGAAgG;wBAChG,kGAAkG;oBACpG,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,SAAS,EAAE;gCACT,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,6CAA6C;6BAC3D;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,gDAAgD;6BAC9D;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,2CAA2C;6BACzD;4BACD,gBAAgB,EAAE;gCAChB,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,oDAAoD;gCACtD,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC;6BACtC;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,mBAAmB;6BACjC;4BACD,YAAY,EAAE;gCACZ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,gCAAgC;6BAC9C;4BACD,SAAS,EAAE;gCACT,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oBAAoB;6BAClC;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,yDAAyD;6BAC5D;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,mHAAmH;6BACtH;4BACD,cAAc,EAAE;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,uFAAuF;oCACvF,mEAAmE;6BACtE;4BACD,cAAc,EAAE;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,4EAA4E;6BAC/E;4BACD,YAAY,EAAE;gCACZ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,qCAAqC;6BACnD;yBACF;wBACD,QAAQ,EAAE;4BACR,WAAW;4BACX,KAAK;4BACL,QAAQ;4BACR,kBAAkB;4BAClB,UAAU;4BACV,cAAc;4BACd,WAAW;yBACZ;qBACF;iBACF;gBACD,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;aACzC;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,IAAyB;QAEzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;YACrD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,QAAQ,EAAE,IAAI,CAAC,SAAS;SACzB,CAAC,CAAC;QAEH,OAAO,aAAa,CAClB,6BAA6B,IAAI,CAAC,QAAQ,gBAAgB,MAAM,CAAC,eAAe,KAAK;YACnF,4FAA4F;YAC5F,4CAA4C,EAC9C;YACE,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,IAAyB;QACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;YACpD,QAAQ,EAAE,IAAI,CAAC,SAAS;YACxB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE;gBACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,WAAW,EAAE,IAAI,CAAC,YAAY;gBAC9B,QAAQ,EAAE,IAAI,CAAC,SAAS;gBACxB,eAAe,EAAE,IAAI,CAAC,gBAAgB;gBACtC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,MAAM,EAAE,IAAI,CAAC,OAAO;gBACpB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,gBAAgB,EAAE,IAAI,CAAC,cAAc;gBACrC,YAAY,EAAE,IAAI,CAAC,cAAc;gBACjC,UAAU,EAAE,IAAI,CAAC,YAAY;aAC9B;SACF,CAAC,CAAC;QAEH,OAAO,aAAa,CAClB,6BAA6B,MAAM,CAAC,UAAU,oBAAoB,MAAM,CAAC,QAAQ,GAAG,EACpF,MAAM,CACP,CAAC;IACJ,CAAC;CACF"}