@rubytech/create-maxy 1.0.704 → 1.0.706
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.
- package/dist/__tests__/apt-resolve.test.js +179 -0
- package/dist/apt-resolve.js +73 -0
- package/dist/index.js +48 -46
- package/package.json +3 -3
- package/payload/platform/lib/graph-mcp/dist/__tests__/schema-cypher-parser.test.d.ts +2 -0
- package/payload/platform/lib/graph-mcp/dist/__tests__/schema-cypher-parser.test.d.ts.map +1 -0
- package/payload/platform/lib/graph-mcp/dist/__tests__/schema-cypher-parser.test.js +89 -0
- package/payload/platform/lib/graph-mcp/dist/__tests__/schema-cypher-parser.test.js.map +1 -0
- package/payload/platform/lib/graph-mcp/dist/schema-cypher-parser.d.ts +42 -0
- package/payload/platform/lib/graph-mcp/dist/schema-cypher-parser.d.ts.map +1 -0
- package/payload/platform/lib/graph-mcp/dist/schema-cypher-parser.js +87 -0
- package/payload/platform/lib/graph-mcp/dist/schema-cypher-parser.js.map +1 -0
- package/payload/platform/lib/graph-mcp/src/__tests__/schema-cypher-parser.test.ts +99 -0
- package/payload/platform/lib/graph-mcp/src/schema-cypher-parser.ts +84 -0
- package/payload/platform/neo4j/edge-annotations.json +134 -0
- package/payload/platform/package-lock.json +249 -67
- package/payload/platform/plugins/admin/PLUGIN.md +1 -0
- package/payload/platform/plugins/admin/mcp/dist/index.js +30 -0
- package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/admin/skills/business-profile/SKILL.md +2 -2
- package/payload/platform/plugins/admin/skills/onboarding/SKILL.md +46 -5
- package/payload/platform/plugins/memory/PLUGIN.md +3 -1
- package/payload/platform/plugins/memory/mcp/dist/index.js +56 -6
- package/payload/platform/plugins/memory/mcp/dist/index.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/live-schema-source.test.d.ts +2 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/live-schema-source.test.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/live-schema-source.test.js +92 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/live-schema-source.test.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-loader.test.d.ts +2 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-loader.test.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-loader.test.js +51 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-loader.test.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-validator.test.d.ts +2 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-validator.test.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-validator.test.js +222 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/schema-validator.test.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.d.ts +16 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.js +38 -11
- package/payload/platform/plugins/memory/mcp/dist/lib/graph-write-gate.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.d.ts +136 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.d.ts.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.js +180 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/live-schema-source.js.map +1 -0
- package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.d.ts +11 -2
- package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.js +6 -3
- package/payload/platform/plugins/memory/mcp/dist/lib/schema-loader.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.d.ts +44 -22
- package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.js +94 -57
- package/payload/platform/plugins/memory/mcp/dist/lib/schema-validator.js.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.d.ts +7 -5
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.d.ts.map +1 -1
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.js +2 -2
- package/payload/platform/plugins/memory/mcp/dist/tools/memory-write.js.map +1 -1
- package/payload/platform/plugins/memory/references/schema-base.md +4 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/index.d.ts +2 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/index.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/index.js +293 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/index.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/crypto.d.ts +10 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/crypto.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/crypto.js +88 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/crypto.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/loop-api.d.ts +80 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/loop-api.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/loop-api.js +355 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/loop-api.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/neo4j.d.ts +5 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/neo4j.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/neo4j.js +34 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/lib/neo4j.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/customer-preferences.d.ts +10 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/customer-preferences.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/customer-preferences.js +24 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/customer-preferences.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/feedback-list.d.ts +6 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/feedback-list.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/feedback-list.js +18 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/feedback-list.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/feedback.d.ts +16 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/feedback.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/feedback.js +35 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/feedback.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-deregister.d.ts +5 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-deregister.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-deregister.js +19 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-deregister.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-list.d.ts +4 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-list.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-list.js +14 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-list.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-register.d.ts +9 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-register.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-register.js +60 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/key-register.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-enquiry.d.ts +13 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-enquiry.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-enquiry.js +41 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-enquiry.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match-batch.d.ts +9 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match-batch.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match-batch.js +16 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match-batch.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match-request.d.ts +15 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match-request.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match-request.js +11 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match-request.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match.d.ts +10 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match.js +39 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/marketing-match.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-detail.d.ts +9 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-detail.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-detail.js +125 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-detail.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-list.d.ts +7 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-list.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-list.js +16 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-list.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-search.d.ts +18 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-search.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-search.js +87 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/people-search.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/properties-list.d.ts +7 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/properties-list.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/properties-list.js +19 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/properties-list.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-detail.d.ts +10 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-detail.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-detail.js +82 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-detail.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-listed.d.ts +12 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-listed.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-listed.js +32 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-listed.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-request.d.ts +15 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-request.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-request.js +11 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-request.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-search.d.ts +16 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-search.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-search.js +41 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/property-search.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/supplier.d.ts +13 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/supplier.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/supplier.js +49 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/supplier.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/team-availability.d.ts +7 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/team-availability.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/team-availability.js +19 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/team-availability.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/team-info.d.ts +5 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/team-info.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/team-info.js +32 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/team-info.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-create.d.ts +14 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-create.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-create.js +11 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-create.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-detail.d.ts +9 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-detail.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-detail.js +85 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-detail.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-search.d.ts +13 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-search.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-search.js +44 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-search.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-update.d.ts +14 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-update.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-update.js +18 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewing-update.js.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewings-list.d.ts +9 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewings-list.d.ts.map +1 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewings-list.js +25 -0
- package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewings-list.js.map +1 -0
- package/payload/server/chunk-32ZHQJNX.js +11395 -0
- package/payload/server/chunk-3RBKKDHC.js +783 -0
- package/payload/server/chunk-3VVHVJK2.js +11405 -0
- package/payload/server/chunk-5YIXIF6C.js +726 -0
- package/payload/server/chunk-B54KBAK4.js +72 -0
- package/payload/server/chunk-IAIGB5WN.js +11406 -0
- package/payload/server/chunk-LQ5GSMEW.js +12036 -0
- package/payload/server/chunk-O2FWENOD.js +11530 -0
- package/payload/server/chunk-PE76FPYP.js +12040 -0
- package/payload/server/chunk-Q6NDXCM6.js +11448 -0
- package/payload/server/chunk-U3W5YIXU.js +11450 -0
- package/payload/server/chunk-ZL2A4ROK.js +11416 -0
- package/payload/server/maxy-edge.js +1 -1
- package/payload/server/public/assets/{Checkbox-CDUmQ1Bu.js → Checkbox-CjbS9JcG.js} +1 -1
- package/payload/server/public/assets/{admin-picYWZfn.js → admin-Ce9DbUuu.js} +30 -30
- package/payload/server/public/assets/{data-yYbcrFrc.js → data-C-SxjLC9.js} +1 -1
- package/payload/server/public/assets/{file-CzLc4Rvq.js → file-D4cbAAuo.js} +1 -1
- package/payload/server/public/assets/{graph-BRzC0ZtS.js → graph-D-Rqh0Md.js} +1 -1
- package/payload/server/public/assets/{house-lM4gLKkH.js → house-CYsVygEQ.js} +1 -1
- package/payload/server/public/assets/jsx-runtime-DPXE45W9.css +1 -0
- package/payload/server/public/assets/{public-scZadgzt.js → public-BTOF98iO.js} +1 -1
- package/payload/server/public/assets/{share-2-CNdrRWue.js → share-2-B-sbkB36.js} +1 -1
- package/payload/server/public/assets/{useVoiceRecorder-D2kfoqVB.js → useVoiceRecorder-DLVFx3ms.js} +1 -1
- package/payload/server/public/assets/{x-CsDhB6Vr.js → x-BNidzSAn.js} +1 -1
- package/payload/server/public/data.html +6 -6
- package/payload/server/public/graph.html +7 -7
- package/payload/server/public/index.html +8 -8
- package/payload/server/public/public.html +5 -5
- package/payload/server/server.js +114 -54
- package/payload/server/upgrade-progress-server.js +83 -0
- package/payload/server/public/assets/jsx-runtime-I6ZqIGn8.css +0 -1
- /package/payload/server/public/assets/{jsx-runtime-BK2hplUC.js → jsx-runtime-BUs3sHtV.js} +0 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { loopPost, withTeamKey } from "../lib/loop-api.js";
|
|
2
|
+
export async function viewingCreate(params) {
|
|
3
|
+
const { accountId, teamName, department, ...body } = params;
|
|
4
|
+
const result = await withTeamKey(accountId, teamName, "viewings", "loop-viewing-create", async (apiKey) => {
|
|
5
|
+
const path = `/residential/${department}/viewings`;
|
|
6
|
+
return loopPost(apiKey, path, body, "loop-viewing-create", teamName);
|
|
7
|
+
});
|
|
8
|
+
const viewingId = result.result ?? "unknown";
|
|
9
|
+
return `Viewing created (ID: ${viewingId}) for property ${params.propertyId} on ${params.date} at ${params.time} via team "${teamName}".`;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=viewing-create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewing-create.js","sourceRoot":"","sources":["../../src/tools/viewing-create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAc3D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAUnC;IACC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;IAE5D,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,SAAS,EACT,QAAQ,EACR,UAAU,EACV,qBAAqB,EACrB,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,IAAI,GAAG,gBAAgB,UAAU,WAAW,CAAC;QACnD,OAAO,QAAQ,CAAqB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IAC3F,CAAC,CACF,CAAC;IAEF,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC;IAC7C,OAAO,wBAAwB,SAAS,kBAAkB,MAAM,CAAC,UAAU,OAAO,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,IAAI,cAAc,QAAQ,IAAI,CAAC;AAC5I,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewing-detail.d.ts","sourceRoot":"","sources":["../../src/tools/viewing-detail.ts"],"names":[],"mappings":"AA4EA,KAAK,UAAU,GAAG,OAAO,GAAG,UAAU,CAAC;AAEvC,wBAAsB,aAAa,CAAC,MAAM,EAAE;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,MAAM,CAAC,CAiFlB"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { aggregateAcrossTeams, formatAggregationResult, loopGet, } from "../lib/loop-api.js";
|
|
2
|
+
export async function viewingDetail(params) {
|
|
3
|
+
const { accountId, viewingId, department, teamName } = params;
|
|
4
|
+
const result = await aggregateAcrossTeams(accountId, "viewings", "loop-viewing-detail", async (apiKey, team) => {
|
|
5
|
+
const path = `/residential/${department}/viewings/${viewingId}`;
|
|
6
|
+
const data = await loopGet(apiKey, path, "loop-viewing-detail", team);
|
|
7
|
+
if (data && typeof data === "object" && !Array.isArray(data)) {
|
|
8
|
+
return [data];
|
|
9
|
+
}
|
|
10
|
+
return [];
|
|
11
|
+
}, { teamName });
|
|
12
|
+
return formatAggregationResult(result, (v) => {
|
|
13
|
+
const propAddr = v.property?.propertyAddress ?? "Unknown property";
|
|
14
|
+
const lines = [`**${propAddr}** [Viewing ID: ${v.id}]`];
|
|
15
|
+
// Appointment time
|
|
16
|
+
if (v.dateOfAppointment) {
|
|
17
|
+
const start = formatDateTime(v.dateOfAppointment);
|
|
18
|
+
const end = v.dateOfAppointmentEnd ? formatDateTime(v.dateOfAppointmentEnd) : "";
|
|
19
|
+
lines.push(`Date/Time: ${start}${end ? ` — ${end}` : ""}`);
|
|
20
|
+
}
|
|
21
|
+
if (v.status)
|
|
22
|
+
lines.push(`Status: ${v.status}`);
|
|
23
|
+
if (v.type)
|
|
24
|
+
lines.push(`Type: ${v.type}`);
|
|
25
|
+
// Confirmation status
|
|
26
|
+
const confirmParts = [];
|
|
27
|
+
if (v.buyerConfirmed != null)
|
|
28
|
+
confirmParts.push(`Buyer: ${v.buyerConfirmed ? "yes" : "no"}`);
|
|
29
|
+
if (v.sellerConfirmed != null)
|
|
30
|
+
confirmParts.push(`Seller: ${v.sellerConfirmed ? "yes" : "no"}`);
|
|
31
|
+
if (v.agentConfirmed != null)
|
|
32
|
+
confirmParts.push(`Agent: ${v.agentConfirmed ? "yes" : "no"}`);
|
|
33
|
+
if (confirmParts.length)
|
|
34
|
+
lines.push(`Confirmed — ${confirmParts.join(", ")}`);
|
|
35
|
+
// Property details
|
|
36
|
+
if (v.property) {
|
|
37
|
+
const prop = v.property;
|
|
38
|
+
if (prop.price != null)
|
|
39
|
+
lines.push(`Property price: £${prop.price.toLocaleString("en-GB")}`);
|
|
40
|
+
if (prop.propertyType)
|
|
41
|
+
lines.push(`Property type: ${prop.propertyType}`);
|
|
42
|
+
if (prop.bedrooms != null)
|
|
43
|
+
lines.push(`Bedrooms: ${prop.bedrooms}`);
|
|
44
|
+
if (prop.id)
|
|
45
|
+
lines.push(`Property ID: ${prop.id}`);
|
|
46
|
+
}
|
|
47
|
+
// Buyer
|
|
48
|
+
if (v.buyer) {
|
|
49
|
+
const b = v.buyer;
|
|
50
|
+
lines.push(`\n**Buyer:** ${b.buyerGroupName ?? "Unknown"} [ID: ${b.id}]`);
|
|
51
|
+
if (b.maxPrice != null)
|
|
52
|
+
lines.push(` Max price: £${b.maxPrice.toLocaleString("en-GB")}`);
|
|
53
|
+
if (b.position && b.position !== "none")
|
|
54
|
+
lines.push(` Position: ${b.position}`);
|
|
55
|
+
}
|
|
56
|
+
// Seller
|
|
57
|
+
if (v.seller) {
|
|
58
|
+
const s = v.seller;
|
|
59
|
+
lines.push(`\n**Seller:** ${s.sellerGroupName ?? "Unknown"} [ID: ${s.id}]`);
|
|
60
|
+
}
|
|
61
|
+
// Attending agent
|
|
62
|
+
if (v.attendingAgent) {
|
|
63
|
+
const a = v.attendingAgent;
|
|
64
|
+
const agentName = [a.firstName, a.lastName].filter(Boolean).join(" ");
|
|
65
|
+
const title = a.jobTitle ? ` (${a.jobTitle})` : "";
|
|
66
|
+
const contact = a.email ?? a.mobilePhone ?? "";
|
|
67
|
+
lines.push(`\n**Attending agent:** ${agentName}${title}${contact ? ` — ${contact}` : ""}`);
|
|
68
|
+
}
|
|
69
|
+
// Feedback
|
|
70
|
+
if (v.buyerFeedback)
|
|
71
|
+
lines.push(`\nBuyer feedback: ${v.buyerFeedback}`);
|
|
72
|
+
if (v.sellerFeedback)
|
|
73
|
+
lines.push(`Seller feedback: ${v.sellerFeedback}`);
|
|
74
|
+
if (v.comment)
|
|
75
|
+
lines.push(`Notes: ${v.comment}`);
|
|
76
|
+
return lines.join("\n");
|
|
77
|
+
}, "viewing details");
|
|
78
|
+
}
|
|
79
|
+
function formatDateTime(iso) {
|
|
80
|
+
const [datePart, timePart] = iso.split("T");
|
|
81
|
+
if (!timePart)
|
|
82
|
+
return datePart;
|
|
83
|
+
return `${datePart} ${timePart.slice(0, 5)}`;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=viewing-detail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewing-detail.js","sourceRoot":"","sources":["../../src/tools/viewing-detail.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
type Department = "sales" | "lettings" | "both";
|
|
2
|
+
export declare function viewingSearch(params: {
|
|
3
|
+
accountId: string;
|
|
4
|
+
department?: Department;
|
|
5
|
+
searchTerm?: string;
|
|
6
|
+
appointmentStartDate?: string;
|
|
7
|
+
appointmentEndDate?: string;
|
|
8
|
+
status?: string;
|
|
9
|
+
teamName?: string;
|
|
10
|
+
limit?: number;
|
|
11
|
+
}): Promise<string>;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=viewing-search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewing-search.d.ts","sourceRoot":"","sources":["../../src/tools/viewing-search.ts"],"names":[],"mappings":"AAyBA,KAAK,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAEhD,wBAAsB,aAAa,CAAC,MAAM,EAAE;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,MAAM,CAAC,CAiDlB"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { aggregateAcrossTeams, formatAggregationResult, loopGet, } from "../lib/loop-api.js";
|
|
2
|
+
export async function viewingSearch(params) {
|
|
3
|
+
const { accountId, department = "both", searchTerm, appointmentStartDate, appointmentEndDate, status, teamName, limit, } = params;
|
|
4
|
+
const result = await aggregateAcrossTeams(accountId, "viewings", "loop-viewing-search", async (apiKey, team) => {
|
|
5
|
+
const depts = department === "both" ? ["sales", "lettings"] : [department];
|
|
6
|
+
const all = [];
|
|
7
|
+
for (const dept of depts) {
|
|
8
|
+
const qp = [];
|
|
9
|
+
if (searchTerm)
|
|
10
|
+
qp.push(`SearchTerm=${encodeURIComponent(searchTerm)}`);
|
|
11
|
+
if (appointmentStartDate)
|
|
12
|
+
qp.push(`AppointmentStartDate=${encodeURIComponent(appointmentStartDate)}`);
|
|
13
|
+
if (appointmentEndDate)
|
|
14
|
+
qp.push(`AppointmentEndDate=${encodeURIComponent(appointmentEndDate)}`);
|
|
15
|
+
if (status)
|
|
16
|
+
qp.push(`Status=${encodeURIComponent(status)}`);
|
|
17
|
+
const query = qp.length > 0 ? `?${qp.join("&")}` : "";
|
|
18
|
+
const path = `/residential/${dept}/viewings${query}`;
|
|
19
|
+
const data = await loopGet(apiKey, path, "loop-viewing-search", team);
|
|
20
|
+
if (Array.isArray(data))
|
|
21
|
+
all.push(...data);
|
|
22
|
+
}
|
|
23
|
+
return all;
|
|
24
|
+
}, { teamName, limitPerTeam: limit ?? 50, limitTotal: limit ?? 200 });
|
|
25
|
+
return formatAggregationResult(result, (v) => {
|
|
26
|
+
const addr = v.propertyAddress ?? "Unknown property";
|
|
27
|
+
const id = v.id != null ? ` [ID: ${v.id}]` : "";
|
|
28
|
+
// dateOfAppointment is ISO datetime e.g. "2026-04-10T15:30:00"
|
|
29
|
+
const when = v.dateOfAppointment
|
|
30
|
+
? formatDateTime(v.dateOfAppointment)
|
|
31
|
+
: "No date";
|
|
32
|
+
const viewStatus = v.status ? ` [${v.status}]` : "";
|
|
33
|
+
const buyer = v.buyerName ? ` — ${v.buyerName}` : "";
|
|
34
|
+
const viewType = v.type ? ` (${v.type})` : "";
|
|
35
|
+
return `- ${addr}${id} — ${when}${viewType}${buyer}${viewStatus}`;
|
|
36
|
+
}, "viewings");
|
|
37
|
+
}
|
|
38
|
+
function formatDateTime(iso) {
|
|
39
|
+
const [datePart, timePart] = iso.split("T");
|
|
40
|
+
if (!timePart)
|
|
41
|
+
return datePart;
|
|
42
|
+
return `${datePart} ${timePart.slice(0, 5)}`;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=viewing-search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewing-search.js","sourceRoot":"","sources":["../../src/tools/viewing-search.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
type Department = "sales" | "lettings";
|
|
2
|
+
type FeedbackParty = "buyer" | "seller" | "renter" | "landlord";
|
|
3
|
+
type Action = "note" | "feedback";
|
|
4
|
+
export declare function viewingUpdate(params: {
|
|
5
|
+
accountId: string;
|
|
6
|
+
teamName: string;
|
|
7
|
+
viewingId: number;
|
|
8
|
+
department: Department;
|
|
9
|
+
action: Action;
|
|
10
|
+
text: string;
|
|
11
|
+
feedbackParty?: FeedbackParty;
|
|
12
|
+
}): Promise<string>;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=viewing-update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewing-update.d.ts","sourceRoot":"","sources":["../../src/tools/viewing-update.ts"],"names":[],"mappings":"AAEA,KAAK,UAAU,GAAG,OAAO,GAAG,UAAU,CAAC;AAKvC,KAAK,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAC;AAChE,KAAK,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;AAYlC,wBAAsB,aAAa,CAAC,MAAM,EAAE;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,GAAG,OAAO,CAAC,MAAM,CAAC,CAwBlB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { loopPost, withTeamKey } from "../lib/loop-api.js";
|
|
2
|
+
export async function viewingUpdate(params) {
|
|
3
|
+
const { accountId, teamName, viewingId, department, action, text, feedbackParty } = params;
|
|
4
|
+
if (action === "feedback" && !feedbackParty) {
|
|
5
|
+
throw new Error("feedbackParty is required when action is 'feedback'. Use: buyer, seller, renter, or landlord.");
|
|
6
|
+
}
|
|
7
|
+
await withTeamKey(accountId, teamName, "viewings", "loop-viewing-update", async (apiKey) => {
|
|
8
|
+
const suffix = action === "note"
|
|
9
|
+
? "note"
|
|
10
|
+
: `${feedbackParty}-feedback`;
|
|
11
|
+
const path = `/residential/${department}/viewings/${viewingId}/${suffix}`;
|
|
12
|
+
// Loop expects the text as a StringResponse body
|
|
13
|
+
return loopPost(apiKey, path, { result: text }, "loop-viewing-update", teamName);
|
|
14
|
+
});
|
|
15
|
+
const actionLabel = action === "note" ? "Note added" : `${feedbackParty} feedback recorded`;
|
|
16
|
+
return `${actionLabel} for viewing ${viewingId} (${department}) via team "${teamName}".`;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=viewing-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewing-update.js","sourceRoot":"","sources":["../../src/tools/viewing-update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAoB3D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAQnC;IACC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAE3F,IAAI,MAAM,KAAK,UAAU,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAC;IACnH,CAAC;IAED,MAAM,WAAW,CACf,SAAS,EACT,QAAQ,EACR,UAAU,EACV,qBAAqB,EACrB,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,KAAK,MAAM;YAC9B,CAAC,CAAC,MAAM;YACR,CAAC,CAAC,GAAG,aAAa,WAAW,CAAC;QAChC,MAAM,IAAI,GAAG,gBAAgB,UAAU,aAAa,SAAS,IAAI,MAAM,EAAE,CAAC;QAC1E,iDAAiD;QACjD,OAAO,QAAQ,CAAsB,MAAM,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IACxG,CAAC,CACF,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,aAAa,oBAAoB,CAAC;IAC5F,OAAO,GAAG,WAAW,gBAAgB,SAAS,KAAK,UAAU,eAAe,QAAQ,IAAI,CAAC;AAC3F,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewings-list.d.ts","sourceRoot":"","sources":["../../src/tools/viewings-list.ts"],"names":[],"mappings":"AAiBA,wBAAsB,YAAY,CAAC,MAAM,EAAE;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,MAAM,CAAC,CAqClB"}
|
package/payload/premium-plugins/real-agency/plugins/real-agency-loop/mcp/dist/tools/viewings-list.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { aggregateAcrossTeams, formatAggregationResult, loopGet, } from "../lib/loop-api.js";
|
|
2
|
+
export async function viewingsList(params) {
|
|
3
|
+
const { accountId, type, teamName, dateFrom, dateTo, limit } = params;
|
|
4
|
+
const result = await aggregateAcrossTeams(accountId, "viewings", "loop-viewings-list", async (apiKey, team) => {
|
|
5
|
+
const queryParts = [];
|
|
6
|
+
if (type && type !== "both")
|
|
7
|
+
queryParts.push(`type=${encodeURIComponent(type)}`);
|
|
8
|
+
if (dateFrom)
|
|
9
|
+
queryParts.push(`dateFrom=${encodeURIComponent(dateFrom)}`);
|
|
10
|
+
if (dateTo)
|
|
11
|
+
queryParts.push(`dateTo=${encodeURIComponent(dateTo)}`);
|
|
12
|
+
const query = queryParts.length > 0 ? `?${queryParts.join("&")}` : "";
|
|
13
|
+
const data = await loopGet(apiKey, `/viewings${query}`, "loop-viewings-list", team);
|
|
14
|
+
return Array.isArray(data) ? data : [];
|
|
15
|
+
}, { teamName, limitPerTeam: limit ?? 50, limitTotal: limit ?? 200 });
|
|
16
|
+
return formatAggregationResult(result, (v) => {
|
|
17
|
+
const addr = v.propertyAddress ?? "Unknown property";
|
|
18
|
+
const when = [v.date, v.time].filter(Boolean).join(" ");
|
|
19
|
+
const status = v.status ? ` [${v.status}]` : "";
|
|
20
|
+
const attendee = v.attendeeName ? ` — ${v.attendeeName}` : "";
|
|
21
|
+
const viewType = v.type ? ` (${v.type})` : "";
|
|
22
|
+
return `- ${addr} — ${when || "No date"}${viewType}${attendee}${status}`;
|
|
23
|
+
}, "viewings");
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=viewings-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewings-list.js","sourceRoot":"","sources":["../../src/tools/viewings-list.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,OAAO,GACR,MAAM,oBAAoB,CAAC;AAa5B,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAOlC;IACC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAEtE,MAAM,MAAM,GAAG,MAAM,oBAAoB,CACvC,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;QACrB,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,IAAI,IAAI,IAAI,IAAI,KAAK,MAAM;YAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjF,IAAI,QAAQ;YAAE,UAAU,CAAC,IAAI,CAAC,YAAY,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC1E,IAAI,MAAM;YAAE,UAAU,CAAC,IAAI,CAAC,UAAU,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpE,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEtE,MAAM,IAAI,GAAG,MAAM,OAAO,CACxB,MAAM,EACN,YAAY,KAAK,EAAE,EACnB,oBAAoB,EACpB,IAAI,CACL,CAAC;QACF,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACzC,CAAC,EACD,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,IAAI,GAAG,EAAE,CAClE,CAAC;IAEF,OAAO,uBAAuB,CAC5B,MAAM,EACN,CAAC,CAAC,EAAE,EAAE;QACJ,MAAM,IAAI,GAAG,CAAC,CAAC,eAAe,IAAI,kBAAkB,CAAC;QACrD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,MAAM,QAAQ,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,OAAO,KAAK,IAAI,MAAM,IAAI,IAAI,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,EAAE,CAAC;IAC3E,CAAC,EACD,UAAU,CACX,CAAC;AACJ,CAAC"}
|