@plitzi/sdk-server 0.32.4 → 0.32.6
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/CHANGELOG.md +19 -0
- package/dist/adapters/jsonAdapters.js +6 -1
- package/dist/core/createServer.js +8 -44
- package/dist/core/health.js +15 -0
- package/dist/core/http/dispatcher.js +29 -0
- package/dist/core/http/securityHeaders.js +15 -0
- package/dist/core/http/stages/authRoutes.js +41 -0
- package/dist/core/http/stages/health.js +12 -0
- package/dist/core/http/stages/middlewares.js +16 -0
- package/dist/core/http/stages/pluginAssets.js +20 -0
- package/dist/core/http/stages/static.js +30 -0
- package/dist/core/server/baseServer.js +29 -0
- package/dist/core/server/mcpServer.js +29 -0
- package/dist/core/server/ssrServer.js +54 -0
- package/dist/core/services/mcp.js +22 -0
- package/dist/core/services/preview.js +37 -0
- package/dist/core/services/registry.js +30 -0
- package/dist/core/services/resolve.js +12 -0
- package/dist/core/services/rsc.js +11 -0
- package/dist/core/services/ssr.js +13 -0
- package/dist/core/transports.js +9 -9
- package/dist/helpers/buildServerInfo.js +3 -9
- package/dist/index.js +20 -6
- package/dist/modules/ai/AIEngine.js +4 -4
- package/dist/modules/ai/toolkit.js +58 -0
- package/dist/modules/mcp/catalogs/builtinCallbacks.js +204 -0
- package/dist/modules/mcp/catalogs/builtinComponents.js +170 -0
- package/dist/modules/mcp/catalogs/builtinElementCallbacks.js +50 -0
- package/dist/modules/mcp/catalogs/builtinTransformers.js +148 -0
- package/dist/modules/mcp/catalogs/builtinUtilities.js +90 -0
- package/dist/modules/mcp/catalogs/cssCatalog.js +205 -0
- package/dist/modules/mcp/catalogs/observed.js +90 -0
- package/dist/modules/mcp/catalogs/paramSpec.js +69 -0
- package/dist/modules/mcp/catalogs/registry.js +89 -0
- package/dist/modules/mcp/constants.js +4 -0
- package/dist/modules/mcp/handler.js +24 -20
- package/dist/modules/mcp/helpers/agentPrompt.js +104 -0
- package/dist/modules/mcp/helpers/computeVersion.js +16 -0
- package/dist/modules/mcp/helpers/guide.js +449 -0
- package/dist/modules/mcp/helpers/interactions.js +123 -0
- package/dist/modules/mcp/helpers/log.js +54 -0
- package/dist/modules/mcp/helpers/opResult.js +18 -0
- package/dist/modules/mcp/helpers/space.js +262 -0
- package/dist/modules/mcp/helpers/uris.js +44 -0
- package/dist/modules/mcp/previewClient.js +31 -0
- package/dist/modules/mcp/resources/canonical.js +30 -0
- package/dist/modules/mcp/resources/core.js +15 -0
- package/dist/modules/mcp/resources/envelope.js +14 -0
- package/dist/modules/mcp/resources/primer.js +30 -0
- package/dist/modules/mcp/resources/register.js +174 -0
- package/dist/modules/mcp/resources/router.js +25 -0
- package/dist/modules/mcp/resources/schema.js +43 -0
- package/dist/modules/mcp/resources/style.js +34 -0
- package/dist/modules/mcp/screenshotClient.js +47 -0
- package/dist/modules/mcp/server.js +66 -20
- package/dist/modules/mcp/tools/apply/dispatch.js +103 -0
- package/dist/modules/mcp/tools/apply/index.js +136 -0
- package/dist/modules/mcp/tools/apply/writeResult.js +37 -0
- package/dist/modules/mcp/tools/index.js +20 -148
- package/dist/modules/mcp/tools/operations/index.js +41 -0
- package/dist/modules/mcp/tools/operations/schema/bindings/deleteBinding.js +32 -0
- package/dist/modules/mcp/tools/operations/schema/bindings/patchBinding.js +36 -0
- package/dist/modules/mcp/tools/operations/schema/bindings/upsertBinding.js +47 -0
- package/dist/modules/mcp/tools/operations/schema/elements/deleteElement.js +29 -0
- package/dist/modules/mcp/tools/operations/schema/elements/moveElement.js +41 -0
- package/dist/modules/mcp/tools/operations/schema/elements/patchElement.js +58 -0
- package/dist/modules/mcp/tools/operations/schema/elements/upsertElement.js +65 -0
- package/dist/modules/mcp/tools/operations/schema/folders/deleteFolder.js +30 -0
- package/dist/modules/mcp/tools/operations/schema/folders/upsertFolder.js +49 -0
- package/dist/modules/mcp/tools/operations/schema/interactions/deleteInteraction.js +52 -0
- package/dist/modules/mcp/tools/operations/schema/interactions/patchInteractionNode.js +47 -0
- package/dist/modules/mcp/tools/operations/schema/interactions/upsertInteractionFlow.js +43 -0
- package/dist/modules/mcp/tools/operations/schema/operations.js +39 -0
- package/dist/modules/mcp/tools/operations/schema/pages/deletePage.js +25 -0
- package/dist/modules/mcp/tools/operations/schema/pages/upsertPage.js +75 -0
- package/dist/modules/mcp/tools/operations/schema/settings/patchSettings.js +45 -0
- package/dist/modules/mcp/tools/operations/schema/shared.js +119 -0
- package/dist/modules/mcp/tools/operations/schema/translator.js +215 -0
- package/dist/modules/mcp/tools/operations/schema/variables/deleteVariable.js +18 -0
- package/dist/modules/mcp/tools/operations/schema/variables/upsertVariable.js +42 -0
- package/dist/modules/mcp/tools/operations/schema/write.js +109 -0
- package/dist/modules/mcp/tools/operations/style/definitions/deleteDefinition.js +21 -0
- package/dist/modules/mcp/tools/operations/style/definitions/patchDefinition.js +28 -0
- package/dist/modules/mcp/tools/operations/style/definitions/upsertDefinition.js +24 -0
- package/dist/modules/mcp/tools/operations/style/globalStyles/deleteGlobalStyle.js +21 -0
- package/dist/modules/mcp/tools/operations/style/globalStyles/patchGlobalStyle.js +28 -0
- package/dist/modules/mcp/tools/operations/style/globalStyles/upsertGlobalStyle.js +24 -0
- package/dist/modules/mcp/tools/operations/style/idStyles/deleteIdStyle.js +21 -0
- package/dist/modules/mcp/tools/operations/style/idStyles/patchIdStyle.js +28 -0
- package/dist/modules/mcp/tools/operations/style/idStyles/upsertIdStyle.js +24 -0
- package/dist/modules/mcp/tools/operations/style/operations.js +27 -0
- package/dist/modules/mcp/tools/operations/style/shared.js +59 -0
- package/dist/modules/mcp/tools/operations/style/translator.js +101 -0
- package/dist/modules/mcp/tools/operations/style/variables/deleteStyleVariable.js +21 -0
- package/dist/modules/mcp/tools/operations/style/variables/upsertStyleVariable.js +22 -0
- package/dist/modules/mcp/tools/operations/style/write.js +108 -0
- package/dist/modules/mcp/tools/preview.js +37 -0
- package/dist/modules/mcp/tools/read.js +33 -0
- package/dist/modules/mcp/tools/screenshot.js +83 -0
- package/dist/modules/mcp/tools/search.js +115 -0
- package/dist/modules/mcp/tools/shared/tool.js +26 -0
- package/dist/modules/mcp/tools/shared/validator/audit.js +124 -0
- package/dist/modules/mcp/tools/shared/validator/batch.js +30 -0
- package/dist/modules/mcp/tools/shared/validator/bindings.js +70 -0
- package/dist/modules/mcp/tools/shared/validator/context.js +35 -0
- package/dist/modules/mcp/tools/shared/validator/css.js +47 -0
- package/dist/modules/mcp/tools/shared/validator/elements.js +55 -0
- package/dist/modules/mcp/tools/shared/validator/index.js +226 -0
- package/dist/modules/mcp/tools/shared/validator/interactions.js +106 -0
- package/dist/modules/mcp/tools/shared/validator/refs.js +28 -0
- package/dist/modules/mcp/tools/validate.js +39 -0
- package/dist/modules/ssr/buildBody.js +2 -2
- package/dist/modules/ssr/handler.js +6 -4
- package/dist/modules/ssr/prepareRender.js +5 -5
- package/dist/modules/ssr/preview.js +106 -0
- package/dist/modules/ssr/registerExternalPlugins.js +1 -1
- package/dist/modules/ssr/streamBody.js +3 -3
- package/dist/modules/ssr/template.js +1 -1
- package/dist/modules/ssr/views/template.ejs +2 -0
- package/dist/plugins/compile.js +1 -1
- package/dist/plugins/copy.js +1 -1
- package/dist/plugins/manager.js +1 -1
- package/dist/server.js +34 -9
- package/dist/src/core/createServer.d.ts +5 -1
- package/dist/src/core/health.d.ts +10 -0
- package/dist/src/core/http/dispatcher.d.ts +7 -0
- package/dist/src/core/http/securityHeaders.d.ts +2 -0
- package/dist/src/core/http/stages/authRoutes.d.ts +4 -0
- package/dist/src/core/http/stages/health.d.ts +2 -0
- package/dist/src/core/http/stages/middlewares.d.ts +2 -0
- package/dist/src/core/http/stages/pluginAssets.d.ts +2 -0
- package/dist/src/core/http/stages/static.d.ts +5 -0
- package/dist/src/core/http/types.d.ts +19 -0
- package/dist/src/core/server/baseServer.d.ts +9 -0
- package/dist/src/core/server/mcpServer.d.ts +2 -0
- package/dist/src/core/server/ssrServer.d.ts +2 -0
- package/dist/src/core/services/mcp.d.ts +3 -0
- package/dist/src/core/services/preview.d.ts +2 -0
- package/dist/src/core/services/registry.d.ts +4 -0
- package/dist/src/core/services/resolve.d.ts +3 -0
- package/dist/src/core/services/rsc.d.ts +2 -0
- package/dist/src/core/services/ssr.d.ts +3 -0
- package/dist/src/core/transports.d.ts +2 -2
- package/dist/src/index.d.ts +12 -3
- package/dist/src/modules/ai/index.d.ts +1 -0
- package/dist/src/modules/ai/toolkit.d.ts +17 -0
- package/dist/src/modules/mcp/catalogs/builtinCallbacks.d.ts +23 -0
- package/dist/src/modules/mcp/catalogs/builtinComponents.d.ts +4 -0
- package/dist/src/modules/mcp/catalogs/builtinElementCallbacks.d.ts +20 -0
- package/dist/src/modules/mcp/catalogs/builtinTransformers.d.ts +28 -0
- package/dist/src/modules/mcp/catalogs/builtinUtilities.d.ts +18 -0
- package/dist/src/modules/mcp/catalogs/cssCatalog.d.ts +14 -0
- package/dist/src/modules/mcp/catalogs/index.d.ts +9 -0
- package/dist/src/modules/mcp/catalogs/observed.d.ts +48 -0
- package/dist/src/modules/mcp/catalogs/paramSpec.d.ts +42 -0
- package/dist/src/modules/mcp/catalogs/registry.d.ts +35 -0
- package/dist/src/modules/mcp/constants.d.ts +1 -0
- package/dist/src/modules/mcp/handler.d.ts +6 -3
- package/dist/src/modules/mcp/helpers/agentPrompt.d.ts +4 -0
- package/dist/src/modules/mcp/helpers/computeVersion.d.ts +1 -0
- package/dist/src/modules/mcp/helpers/guide.d.ts +3 -0
- package/dist/src/modules/mcp/helpers/index.d.ts +8 -0
- package/dist/src/modules/mcp/helpers/interactions.d.ts +30 -0
- package/dist/src/modules/mcp/helpers/log.d.ts +8 -0
- package/dist/src/modules/mcp/helpers/opResult.d.ts +13 -0
- package/dist/src/modules/mcp/helpers/space.d.ts +105 -0
- package/dist/src/modules/mcp/helpers/uris.d.ts +28 -0
- package/dist/src/modules/mcp/index.d.ts +12 -5
- package/dist/src/modules/mcp/previewClient.d.ts +13 -0
- package/dist/src/modules/mcp/resources/canonical.d.ts +6 -0
- package/dist/src/modules/mcp/resources/core.d.ts +5 -0
- package/dist/src/modules/mcp/resources/envelope.d.ts +10 -0
- package/dist/src/modules/mcp/resources/index.d.ts +7 -10
- package/dist/src/modules/mcp/resources/primer.d.ts +7 -0
- package/dist/src/modules/mcp/resources/register.d.ts +6 -0
- package/dist/src/modules/mcp/resources/router.d.ts +6 -0
- package/dist/src/modules/mcp/resources/schema.d.ts +5 -0
- package/dist/src/modules/mcp/resources/style.d.ts +5 -0
- package/dist/src/modules/mcp/screenshotClient.d.ts +13 -0
- package/dist/src/modules/mcp/server.d.ts +21 -3
- package/dist/src/modules/mcp/tools/apply/dispatch.d.ts +6 -0
- package/dist/src/modules/mcp/tools/apply/index.d.ts +420 -0
- package/dist/src/modules/mcp/tools/apply/writeResult.d.ts +8 -0
- package/dist/src/modules/mcp/tools/index.d.ts +17 -6
- package/dist/src/modules/mcp/tools/operations/index.d.ts +828 -0
- package/dist/src/modules/mcp/tools/operations/schema/bindings/deleteBinding.d.ts +17 -0
- package/dist/src/modules/mcp/tools/operations/schema/bindings/patchBinding.d.ts +25 -0
- package/dist/src/modules/mcp/tools/operations/schema/bindings/upsertBinding.d.ts +27 -0
- package/dist/src/modules/mcp/tools/operations/schema/elements/deleteElement.d.ts +10 -0
- package/dist/src/modules/mcp/tools/operations/schema/elements/moveElement.d.ts +16 -0
- package/dist/src/modules/mcp/tools/operations/schema/elements/patchElement.d.ts +22 -0
- package/dist/src/modules/mcp/tools/operations/schema/elements/upsertElement.d.ts +16 -0
- package/dist/src/modules/mcp/tools/operations/schema/folders/deleteFolder.d.ts +9 -0
- package/dist/src/modules/mcp/tools/operations/schema/folders/upsertFolder.d.ts +12 -0
- package/dist/src/modules/mcp/tools/operations/schema/index.d.ts +20 -0
- package/dist/src/modules/mcp/tools/operations/schema/interactions/deleteInteraction.d.ts +12 -0
- package/dist/src/modules/mcp/tools/operations/schema/interactions/patchInteractionNode.d.ts +18 -0
- package/dist/src/modules/mcp/tools/operations/schema/interactions/upsertInteractionFlow.d.ts +27 -0
- package/dist/src/modules/mcp/tools/operations/schema/operations.d.ts +210 -0
- package/dist/src/modules/mcp/tools/operations/schema/pages/deletePage.d.ts +9 -0
- package/dist/src/modules/mcp/tools/operations/schema/pages/upsertPage.d.ts +14 -0
- package/dist/src/modules/mcp/tools/operations/schema/settings/patchSettings.d.ts +34 -0
- package/dist/src/modules/mcp/tools/operations/schema/shared.d.ts +77 -0
- package/dist/src/modules/mcp/tools/operations/schema/translator.d.ts +12 -0
- package/dist/src/modules/mcp/tools/operations/schema/variables/deleteVariable.d.ts +9 -0
- package/dist/src/modules/mcp/tools/operations/schema/variables/upsertVariable.d.ts +16 -0
- package/dist/src/modules/mcp/tools/operations/schema/write.d.ts +42 -0
- package/dist/src/modules/mcp/tools/operations/style/definitions/deleteDefinition.d.ts +9 -0
- package/dist/src/modules/mcp/tools/operations/style/definitions/patchDefinition.d.ts +37 -0
- package/dist/src/modules/mcp/tools/operations/style/definitions/upsertDefinition.d.ts +37 -0
- package/dist/src/modules/mcp/tools/operations/style/globalStyles/deleteGlobalStyle.d.ts +9 -0
- package/dist/src/modules/mcp/tools/operations/style/globalStyles/patchGlobalStyle.d.ts +37 -0
- package/dist/src/modules/mcp/tools/operations/style/globalStyles/upsertGlobalStyle.d.ts +37 -0
- package/dist/src/modules/mcp/tools/operations/style/idStyles/deleteIdStyle.d.ts +9 -0
- package/dist/src/modules/mcp/tools/operations/style/idStyles/patchIdStyle.d.ts +37 -0
- package/dist/src/modules/mcp/tools/operations/style/idStyles/upsertIdStyle.d.ts +37 -0
- package/dist/src/modules/mcp/tools/operations/style/index.d.ts +14 -0
- package/dist/src/modules/mcp/tools/operations/style/operations.d.ts +231 -0
- package/dist/src/modules/mcp/tools/operations/style/shared.d.ts +115 -0
- package/dist/src/modules/mcp/tools/operations/style/translator.d.ts +12 -0
- package/dist/src/modules/mcp/tools/operations/style/variables/deleteStyleVariable.d.ts +15 -0
- package/dist/src/modules/mcp/tools/operations/style/variables/upsertStyleVariable.d.ts +20 -0
- package/dist/src/modules/mcp/tools/operations/style/write.d.ts +12 -0
- package/dist/src/modules/mcp/tools/preview.d.ts +415 -0
- package/dist/src/modules/mcp/tools/read.d.ts +8 -0
- package/dist/src/modules/mcp/tools/screenshot.d.ts +420 -0
- package/dist/src/modules/mcp/tools/search.d.ts +15 -0
- package/dist/src/modules/mcp/tools/shared/tool.d.ts +50 -0
- package/dist/src/modules/mcp/tools/shared/validator/audit.d.ts +4 -0
- package/dist/src/modules/mcp/tools/shared/validator/batch.d.ts +5 -0
- package/dist/src/modules/mcp/tools/shared/validator/bindings.d.ts +6 -0
- package/dist/src/modules/mcp/tools/shared/validator/context.d.ts +34 -0
- package/dist/src/modules/mcp/tools/shared/validator/css.d.ts +4 -0
- package/dist/src/modules/mcp/tools/shared/validator/elements.d.ts +6 -0
- package/dist/src/modules/mcp/tools/shared/validator/index.d.ts +8 -0
- package/dist/src/modules/mcp/tools/shared/validator/interactions.d.ts +3 -0
- package/dist/src/modules/mcp/tools/shared/validator/refs.d.ts +4 -0
- package/dist/src/modules/mcp/tools/validate.d.ts +417 -0
- package/dist/src/modules/mcp/types/aiSchema.d.ts +218 -0
- package/dist/src/modules/mcp/types/index.d.ts +4 -0
- package/dist/src/modules/mcp/types/previewTypes.d.ts +25 -0
- package/dist/src/modules/mcp/types/screenshotTypes.d.ts +29 -0
- package/dist/src/modules/mcp/types/toolTypes.d.ts +138 -0
- package/dist/src/modules/ssr/buildBody.d.ts +2 -2
- package/dist/src/modules/ssr/prepareRender.d.ts +2 -2
- package/dist/src/modules/ssr/preview.d.ts +16 -0
- package/dist/src/modules/ssr/streamBody.d.ts +2 -2
- package/package.json +16 -14
- package/dist/_virtual/_rolldown/runtime.js +0 -13
- package/dist/core/requestHandler.js +0 -126
- package/dist/modules/mcp/helpers.js +0 -75
- package/dist/modules/mcp/resources/glossary/binding.js +0 -73
- package/dist/modules/mcp/resources/glossary/collection.js +0 -76
- package/dist/modules/mcp/resources/glossary/displayMode.js +0 -50
- package/dist/modules/mcp/resources/glossary/element.js +0 -68
- package/dist/modules/mcp/resources/glossary/environment.js +0 -48
- package/dist/modules/mcp/resources/glossary/interaction.js +0 -62
- package/dist/modules/mcp/resources/glossary/page.js +0 -70
- package/dist/modules/mcp/resources/glossary/plugin.js +0 -96
- package/dist/modules/mcp/resources/glossary/resource.js +0 -75
- package/dist/modules/mcp/resources/glossary/schema.js +0 -69
- package/dist/modules/mcp/resources/glossary/schemaVariable.js +0 -60
- package/dist/modules/mcp/resources/glossary/segment.js +0 -59
- package/dist/modules/mcp/resources/glossary/space.js +0 -73
- package/dist/modules/mcp/resources/glossary/style.js +0 -81
- package/dist/modules/mcp/resources/glossary/styleSelector.js +0 -77
- package/dist/modules/mcp/resources/glossary/styleVariable.js +0 -72
- package/dist/modules/mcp/resources/index.js +0 -71
- package/dist/modules/mcp/resources/workflows/data.js +0 -49
- package/dist/modules/mcp/resources/workflows/elements.js +0 -53
- package/dist/modules/mcp/resources/workflows/segments.js +0 -55
- package/dist/modules/mcp/resources/workflows/styles.js +0 -91
- package/dist/modules/mcp/tools/collections/createCollection.js +0 -25
- package/dist/modules/mcp/tools/collections/createCollectionRecord.js +0 -27
- package/dist/modules/mcp/tools/collections/deleteCollection.js +0 -16
- package/dist/modules/mcp/tools/collections/deleteCollectionRecord.js +0 -16
- package/dist/modules/mcp/tools/collections/getCollection.js +0 -21
- package/dist/modules/mcp/tools/collections/getCollectionRecord.js +0 -25
- package/dist/modules/mcp/tools/collections/getCollectionRecords.js +0 -29
- package/dist/modules/mcp/tools/collections/getCollections.js +0 -19
- package/dist/modules/mcp/tools/collections/updateCollection.js +0 -28
- package/dist/modules/mcp/tools/collections/updateCollectionRecord.js +0 -31
- package/dist/modules/mcp/tools/docs/listResources.js +0 -16
- package/dist/modules/mcp/tools/docs/readResource.js +0 -23
- package/dist/modules/mcp/tools/plugins/addPlugin.js +0 -24
- package/dist/modules/mcp/tools/plugins/listPlugins.js +0 -20
- package/dist/modules/mcp/tools/plugins/removePlugin.js +0 -16
- package/dist/modules/mcp/tools/plugins/updatePlugin.js +0 -23
- package/dist/modules/mcp/tools/resources/addResource.js +0 -33
- package/dist/modules/mcp/tools/resources/getResource.js +0 -29
- package/dist/modules/mcp/tools/resources/getResources.js +0 -27
- package/dist/modules/mcp/tools/resources/moveResource.js +0 -30
- package/dist/modules/mcp/tools/resources/removeResource.js +0 -19
- package/dist/modules/mcp/tools/segment/createSegment.js +0 -27
- package/dist/modules/mcp/tools/segment/deleteSegment.js +0 -16
- package/dist/modules/mcp/tools/segment/getSegment.js +0 -19
- package/dist/modules/mcp/tools/segment/getSegments.js +0 -27
- package/dist/modules/mcp/tools/segment/schema/elements/createSegmentElement.js +0 -24
- package/dist/modules/mcp/tools/segment/schema/elements/deleteSegmentElement.js +0 -19
- package/dist/modules/mcp/tools/segment/schema/elements/moveSegmentElement.js +0 -28
- package/dist/modules/mcp/tools/segment/schema/elements/updateSegmentElement.js +0 -23
- package/dist/modules/mcp/tools/segment/schema/variables/createSegmentVariable.js +0 -41
- package/dist/modules/mcp/tools/segment/schema/variables/deleteSegmentVariable.js +0 -19
- package/dist/modules/mcp/tools/segment/schema/variables/updateSegmentVariable.js +0 -41
- package/dist/modules/mcp/tools/segment/style/variables/createSegmentStyleVariable.js +0 -34
- package/dist/modules/mcp/tools/segment/style/variables/deleteSegmentStyleVariable.js +0 -21
- package/dist/modules/mcp/tools/segment/style/variables/updateSegmentStyleVariable.js +0 -34
- package/dist/modules/mcp/tools/segment/updateSegment.js +0 -30
- package/dist/modules/mcp/tools/space/schema/applyPreview.js +0 -33
- package/dist/modules/mcp/tools/space/schema/elements/cloneElement.js +0 -34
- package/dist/modules/mcp/tools/space/schema/elements/createElement.js +0 -50
- package/dist/modules/mcp/tools/space/schema/elements/deleteElement.js +0 -16
- package/dist/modules/mcp/tools/space/schema/elements/getElement.js +0 -17
- package/dist/modules/mcp/tools/space/schema/elements/getElements.js +0 -21
- package/dist/modules/mcp/tools/space/schema/elements/listElements.js +0 -28
- package/dist/modules/mcp/tools/space/schema/elements/moveElement.js +0 -27
- package/dist/modules/mcp/tools/space/schema/elements/updateElement.js +0 -49
- package/dist/modules/mcp/tools/space/schema/getSpaceSettings.js +0 -46
- package/dist/modules/mcp/tools/space/schema/pageFolders/createPageFolder.js +0 -24
- package/dist/modules/mcp/tools/space/schema/pageFolders/deletePageFolder.js +0 -16
- package/dist/modules/mcp/tools/space/schema/pageFolders/getPageFolder.js +0 -17
- package/dist/modules/mcp/tools/space/schema/pageFolders/getPageFolders.js +0 -17
- package/dist/modules/mcp/tools/space/schema/pageFolders/updatePageFolder.js +0 -28
- package/dist/modules/mcp/tools/space/schema/pages/createPage.js +0 -37
- package/dist/modules/mcp/tools/space/schema/pages/deletePage.js +0 -16
- package/dist/modules/mcp/tools/space/schema/pages/getPage.js +0 -28
- package/dist/modules/mcp/tools/space/schema/pages/getPageBySlug.js +0 -17
- package/dist/modules/mcp/tools/space/schema/pages/getPages.js +0 -17
- package/dist/modules/mcp/tools/space/schema/pages/updatePage.js +0 -25
- package/dist/modules/mcp/tools/space/schema/schemas.js +0 -53
- package/dist/modules/mcp/tools/space/schema/updateSpaceSettings.js +0 -23
- package/dist/modules/mcp/tools/space/schema/variables/createVariable.js +0 -38
- package/dist/modules/mcp/tools/space/schema/variables/deleteVariable.js +0 -16
- package/dist/modules/mcp/tools/space/schema/variables/getVariable.js +0 -17
- package/dist/modules/mcp/tools/space/schema/variables/getVariables.js +0 -17
- package/dist/modules/mcp/tools/space/schema/variables/updateVariable.js +0 -38
- package/dist/modules/mcp/tools/space/style/selectors/createStyleSelector.js +0 -37
- package/dist/modules/mcp/tools/space/style/selectors/deleteStyleSelector.js +0 -24
- package/dist/modules/mcp/tools/space/style/selectors/getStyleSelectors.js +0 -20
- package/dist/modules/mcp/tools/space/style/selectors/updateStyleSelector.js +0 -37
- package/dist/modules/mcp/tools/space/style/variables/createStyleVariable.js +0 -33
- package/dist/modules/mcp/tools/space/style/variables/deleteStyleVariable.js +0 -20
- package/dist/modules/mcp/tools/space/style/variables/getStyleVariable.js +0 -19
- package/dist/modules/mcp/tools/space/style/variables/getStyleVariables.js +0 -16
- package/dist/modules/mcp/tools/space/style/variables/updateStyleVariable.js +0 -33
- package/dist/package.js +0 -77
- package/dist/package.json.d.ts +0 -67
- package/dist/src/core/requestHandler.d.ts +0 -5
- package/dist/src/modules/mcp/helpers.d.ts +0 -9
- package/dist/src/modules/mcp/resources/glossary/binding.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/collection.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/displayMode.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/element.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/environment.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/interaction.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/page.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/plugin.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/resource.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/schema.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/schemaVariable.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/segment.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/space.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/style.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/styleSelector.d.ts +0 -7
- package/dist/src/modules/mcp/resources/glossary/styleVariable.d.ts +0 -7
- package/dist/src/modules/mcp/resources/workflows/data.d.ts +0 -7
- package/dist/src/modules/mcp/resources/workflows/elements.d.ts +0 -7
- package/dist/src/modules/mcp/resources/workflows/segments.d.ts +0 -7
- package/dist/src/modules/mcp/resources/workflows/styles.d.ts +0 -7
- package/dist/src/modules/mcp/tools/collections/createCollection.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/createCollectionRecord.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/deleteCollection.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/deleteCollectionRecord.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/getCollection.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/getCollectionRecord.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/getCollectionRecords.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/getCollections.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/index.d.ts +0 -10
- package/dist/src/modules/mcp/tools/collections/updateCollection.d.ts +0 -3
- package/dist/src/modules/mcp/tools/collections/updateCollectionRecord.d.ts +0 -3
- package/dist/src/modules/mcp/tools/docs/index.d.ts +0 -2
- package/dist/src/modules/mcp/tools/docs/listResources.d.ts +0 -3
- package/dist/src/modules/mcp/tools/docs/readResource.d.ts +0 -3
- package/dist/src/modules/mcp/tools/plugins/addPlugin.d.ts +0 -3
- package/dist/src/modules/mcp/tools/plugins/index.d.ts +0 -5
- package/dist/src/modules/mcp/tools/plugins/listPlugins.d.ts +0 -3
- package/dist/src/modules/mcp/tools/plugins/removePlugin.d.ts +0 -3
- package/dist/src/modules/mcp/tools/plugins/updatePlugin.d.ts +0 -3
- package/dist/src/modules/mcp/tools/resources/addResource.d.ts +0 -3
- package/dist/src/modules/mcp/tools/resources/getResource.d.ts +0 -3
- package/dist/src/modules/mcp/tools/resources/getResources.d.ts +0 -3
- package/dist/src/modules/mcp/tools/resources/index.d.ts +0 -6
- package/dist/src/modules/mcp/tools/resources/moveResource.d.ts +0 -3
- package/dist/src/modules/mcp/tools/resources/removeResource.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/createSegment.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/deleteSegment.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/getSegment.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/getSegments.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/index.d.ts +0 -8
- package/dist/src/modules/mcp/tools/segment/schema/elements/createSegmentElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/schema/elements/deleteSegmentElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/schema/elements/index.d.ts +0 -5
- package/dist/src/modules/mcp/tools/segment/schema/elements/moveSegmentElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/schema/elements/updateSegmentElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/schema/index.d.ts +0 -2
- package/dist/src/modules/mcp/tools/segment/schema/variables/createSegmentVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/schema/variables/deleteSegmentVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/schema/variables/index.d.ts +0 -4
- package/dist/src/modules/mcp/tools/segment/schema/variables/updateSegmentVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/segment.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/segment/style/index.d.ts +0 -1
- package/dist/src/modules/mcp/tools/segment/style/variables/createSegmentStyleVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/style/variables/deleteSegmentStyleVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/style/variables/index.d.ts +0 -4
- package/dist/src/modules/mcp/tools/segment/style/variables/segmentStyleVariables.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/segment/style/variables/updateSegmentStyleVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/segment/updateSegment.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/index.d.ts +0 -2
- package/dist/src/modules/mcp/tools/space/schema/applyPreview.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/elements/cloneElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/elements/createElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/elements/deleteElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/elements/elements.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/space/schema/elements/getElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/elements/getElements.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/elements/index.d.ts +0 -9
- package/dist/src/modules/mcp/tools/space/schema/elements/listElements.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/elements/moveElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/elements/updateElement.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/getSpaceSettings.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/index.d.ts +0 -8
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/createPageFolder.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/deletePageFolder.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/getPageFolder.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/getPageFolders.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/index.d.ts +0 -6
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/pageFolders.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/space/schema/pageFolders/updatePageFolder.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pages/createPage.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pages/deletePage.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pages/getPage.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pages/getPageBySlug.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pages/getPages.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/pages/index.d.ts +0 -7
- package/dist/src/modules/mcp/tools/space/schema/pages/pages.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/space/schema/pages/updatePage.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/schemas.d.ts +0 -66
- package/dist/src/modules/mcp/tools/space/schema/updateSpaceSettings.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/variables/createVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/variables/deleteVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/variables/getVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/variables/getVariables.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/variables/index.d.ts +0 -6
- package/dist/src/modules/mcp/tools/space/schema/variables/updateVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/schema/variables/variables.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/space/space.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/space/style/index.d.ts +0 -2
- package/dist/src/modules/mcp/tools/space/style/selectors/createStyleSelector.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/style/selectors/deleteStyleSelector.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/style/selectors/getStyleSelectors.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/style/selectors/index.d.ts +0 -5
- package/dist/src/modules/mcp/tools/space/style/selectors/styleSelectors.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/space/style/selectors/updateStyleSelector.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/style/variables/createStyleVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/style/variables/deleteStyleVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/style/variables/getStyleVariable.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/style/variables/getStyleVariables.d.ts +0 -3
- package/dist/src/modules/mcp/tools/space/style/variables/index.d.ts +0 -6
- package/dist/src/modules/mcp/tools/space/style/variables/styleVariables.test.d.ts +0 -1
- package/dist/src/modules/mcp/tools/space/style/variables/updateStyleVariable.d.ts +0 -3
- /package/dist/src/{modules/mcp/helpers.test.d.ts → core/server/mcpServer.test.d.ts} +0 -0
- /package/dist/src/modules/{mcp/tools/collections/collections.test.d.ts → ai/toolkit.test.d.ts} +0 -0
- /package/dist/src/modules/mcp/{tools/plugins/plugins.test.d.ts → catalogs/builtinTransformers.test.d.ts} +0 -0
- /package/dist/src/modules/mcp/{tools/resources/resources.test.d.ts → helpers/log.test.d.ts} +0 -0
- /package/dist/src/modules/mcp/{tools/segment/schema/elements/segmentElements.test.d.ts → mcp.bench.d.ts} +0 -0
- /package/dist/src/modules/mcp/{tools/segment/schema/variables/segmentVariables.test.d.ts → mcp.test.d.ts} +0 -0
|
@@ -1,150 +1,22 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import listElementsTool from "./space/schema/elements/listElements.js";
|
|
11
|
-
import moveElementTool from "./space/schema/elements/moveElement.js";
|
|
12
|
-
import updateElementTool from "./space/schema/elements/updateElement.js";
|
|
13
|
-
import createPageFolderTool from "./space/schema/pageFolders/createPageFolder.js";
|
|
14
|
-
import deletePageFolderTool from "./space/schema/pageFolders/deletePageFolder.js";
|
|
15
|
-
import getPageFolderTool from "./space/schema/pageFolders/getPageFolder.js";
|
|
16
|
-
import getPageFoldersTool from "./space/schema/pageFolders/getPageFolders.js";
|
|
17
|
-
import updatePageFolderTool from "./space/schema/pageFolders/updatePageFolder.js";
|
|
18
|
-
import createPageTool from "./space/schema/pages/createPage.js";
|
|
19
|
-
import deletePageTool from "./space/schema/pages/deletePage.js";
|
|
20
|
-
import getPageTool from "./space/schema/pages/getPage.js";
|
|
21
|
-
import getPageBySlugTool from "./space/schema/pages/getPageBySlug.js";
|
|
22
|
-
import getPagesTool from "./space/schema/pages/getPages.js";
|
|
23
|
-
import updatePageTool from "./space/schema/pages/updatePage.js";
|
|
24
|
-
import createVariableTool from "./space/schema/variables/createVariable.js";
|
|
25
|
-
import deleteVariableTool from "./space/schema/variables/deleteVariable.js";
|
|
26
|
-
import getVariableTool from "./space/schema/variables/getVariable.js";
|
|
27
|
-
import getVariablesTool from "./space/schema/variables/getVariables.js";
|
|
28
|
-
import updateVariableTool from "./space/schema/variables/updateVariable.js";
|
|
29
|
-
import createStyleSelectorTool from "./space/style/selectors/createStyleSelector.js";
|
|
30
|
-
import deleteStyleSelectorTool from "./space/style/selectors/deleteStyleSelector.js";
|
|
31
|
-
import getStyleSelectorsTool from "./space/style/selectors/getStyleSelectors.js";
|
|
32
|
-
import updateStyleSelectorTool from "./space/style/selectors/updateStyleSelector.js";
|
|
33
|
-
import createStyleVariableTool from "./space/style/variables/createStyleVariable.js";
|
|
34
|
-
import deleteStyleVariableTool from "./space/style/variables/deleteStyleVariable.js";
|
|
35
|
-
import getStyleVariableTool from "./space/style/variables/getStyleVariable.js";
|
|
36
|
-
import getStyleVariablesTool from "./space/style/variables/getStyleVariables.js";
|
|
37
|
-
import updateStyleVariableTool from "./space/style/variables/updateStyleVariable.js";
|
|
38
|
-
import addResourceTool from "./resources/addResource.js";
|
|
39
|
-
import getResourceTool from "./resources/getResource.js";
|
|
40
|
-
import getResourcesTool from "./resources/getResources.js";
|
|
41
|
-
import moveResourceTool from "./resources/moveResource.js";
|
|
42
|
-
import removeResourceTool from "./resources/removeResource.js";
|
|
43
|
-
import createSegmentTool from "./segment/createSegment.js";
|
|
44
|
-
import deleteSegmentTool from "./segment/deleteSegment.js";
|
|
45
|
-
import getSegmentTool from "./segment/getSegment.js";
|
|
46
|
-
import getSegmentsTool from "./segment/getSegments.js";
|
|
47
|
-
import updateSegmentTool from "./segment/updateSegment.js";
|
|
48
|
-
import createSegmentElementTool from "./segment/schema/elements/createSegmentElement.js";
|
|
49
|
-
import deleteSegmentElementTool from "./segment/schema/elements/deleteSegmentElement.js";
|
|
50
|
-
import moveSegmentElementTool from "./segment/schema/elements/moveSegmentElement.js";
|
|
51
|
-
import updateSegmentElementTool from "./segment/schema/elements/updateSegmentElement.js";
|
|
52
|
-
import createSegmentVariableTool from "./segment/schema/variables/createSegmentVariable.js";
|
|
53
|
-
import deleteSegmentVariableTool from "./segment/schema/variables/deleteSegmentVariable.js";
|
|
54
|
-
import updateSegmentVariableTool from "./segment/schema/variables/updateSegmentVariable.js";
|
|
55
|
-
import createSegmentStyleVariableTool from "./segment/style/variables/createSegmentStyleVariable.js";
|
|
56
|
-
import deleteSegmentStyleVariableTool from "./segment/style/variables/deleteSegmentStyleVariable.js";
|
|
57
|
-
import updateSegmentStyleVariableTool from "./segment/style/variables/updateSegmentStyleVariable.js";
|
|
58
|
-
import addPluginTool from "./plugins/addPlugin.js";
|
|
59
|
-
import listPluginsTool from "./plugins/listPlugins.js";
|
|
60
|
-
import removePluginTool from "./plugins/removePlugin.js";
|
|
61
|
-
import updatePluginTool from "./plugins/updatePlugin.js";
|
|
62
|
-
import getCollectionsTool from "./collections/getCollections.js";
|
|
63
|
-
import getCollectionTool from "./collections/getCollection.js";
|
|
64
|
-
import createCollectionTool from "./collections/createCollection.js";
|
|
65
|
-
import updateCollectionTool from "./collections/updateCollection.js";
|
|
66
|
-
import deleteCollectionTool from "./collections/deleteCollection.js";
|
|
67
|
-
import getCollectionRecordsTool from "./collections/getCollectionRecords.js";
|
|
68
|
-
import getCollectionRecordTool from "./collections/getCollectionRecord.js";
|
|
69
|
-
import createCollectionRecordTool from "./collections/createCollectionRecord.js";
|
|
70
|
-
import updateCollectionRecordTool from "./collections/updateCollectionRecord.js";
|
|
71
|
-
import deleteCollectionRecordTool from "./collections/deleteCollectionRecord.js";
|
|
72
|
-
import listResourcesTool from "./docs/listResources.js";
|
|
73
|
-
import readResourceTool from "./docs/readResource.js";
|
|
1
|
+
import { operation } from "./operations/index.js";
|
|
2
|
+
import { applyOperations } from "./apply/dispatch.js";
|
|
3
|
+
import { validateOperations } from "./shared/validator/index.js";
|
|
4
|
+
import { apply, applyShape, applyTool } from "./apply/index.js";
|
|
5
|
+
import { previewTool } from "./preview.js";
|
|
6
|
+
import { read, readShape, readTool } from "./read.js";
|
|
7
|
+
import { screenshotTool } from "./screenshot.js";
|
|
8
|
+
import { search, searchShape, searchTool } from "./search.js";
|
|
9
|
+
import { validate, validateShape, validateTool } from "./validate.js";
|
|
74
10
|
//#region src/modules/mcp/tools/index.ts
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
createSegmentElementTool: () => createSegmentElementTool,
|
|
86
|
-
createSegmentStyleVariableTool: () => createSegmentStyleVariableTool,
|
|
87
|
-
createSegmentTool: () => createSegmentTool,
|
|
88
|
-
createSegmentVariableTool: () => createSegmentVariableTool,
|
|
89
|
-
createStyleSelectorTool: () => createStyleSelectorTool,
|
|
90
|
-
createStyleVariableTool: () => createStyleVariableTool,
|
|
91
|
-
createVariableTool: () => createVariableTool,
|
|
92
|
-
deleteCollectionRecordTool: () => deleteCollectionRecordTool,
|
|
93
|
-
deleteCollectionTool: () => deleteCollectionTool,
|
|
94
|
-
deleteElementTool: () => deleteElementTool,
|
|
95
|
-
deletePageFolderTool: () => deletePageFolderTool,
|
|
96
|
-
deletePageTool: () => deletePageTool,
|
|
97
|
-
deleteSegmentElementTool: () => deleteSegmentElementTool,
|
|
98
|
-
deleteSegmentStyleVariableTool: () => deleteSegmentStyleVariableTool,
|
|
99
|
-
deleteSegmentTool: () => deleteSegmentTool,
|
|
100
|
-
deleteSegmentVariableTool: () => deleteSegmentVariableTool,
|
|
101
|
-
deleteStyleSelectorTool: () => deleteStyleSelectorTool,
|
|
102
|
-
deleteStyleVariableTool: () => deleteStyleVariableTool,
|
|
103
|
-
deleteVariableTool: () => deleteVariableTool,
|
|
104
|
-
getCollectionRecordTool: () => getCollectionRecordTool,
|
|
105
|
-
getCollectionRecordsTool: () => getCollectionRecordsTool,
|
|
106
|
-
getCollectionTool: () => getCollectionTool,
|
|
107
|
-
getCollectionsTool: () => getCollectionsTool,
|
|
108
|
-
getElementTool: () => getElementTool,
|
|
109
|
-
getElementsTool: () => getElementsTool,
|
|
110
|
-
getPageBySlugTool: () => getPageBySlugTool,
|
|
111
|
-
getPageFolderTool: () => getPageFolderTool,
|
|
112
|
-
getPageFoldersTool: () => getPageFoldersTool,
|
|
113
|
-
getPageTool: () => getPageTool,
|
|
114
|
-
getPagesTool: () => getPagesTool,
|
|
115
|
-
getResourceTool: () => getResourceTool,
|
|
116
|
-
getResourcesTool: () => getResourcesTool,
|
|
117
|
-
getSegmentTool: () => getSegmentTool,
|
|
118
|
-
getSegmentsTool: () => getSegmentsTool,
|
|
119
|
-
getSpaceSettingsTool: () => getSpaceSettingsTool,
|
|
120
|
-
getStyleSelectorsTool: () => getStyleSelectorsTool,
|
|
121
|
-
getStyleVariableTool: () => getStyleVariableTool,
|
|
122
|
-
getStyleVariablesTool: () => getStyleVariablesTool,
|
|
123
|
-
getVariableTool: () => getVariableTool,
|
|
124
|
-
getVariablesTool: () => getVariablesTool,
|
|
125
|
-
listElementsTool: () => listElementsTool,
|
|
126
|
-
listPluginsTool: () => listPluginsTool,
|
|
127
|
-
listResourcesTool: () => listResourcesTool,
|
|
128
|
-
moveElementTool: () => moveElementTool,
|
|
129
|
-
moveResourceTool: () => moveResourceTool,
|
|
130
|
-
moveSegmentElementTool: () => moveSegmentElementTool,
|
|
131
|
-
readResourceTool: () => readResourceTool,
|
|
132
|
-
removePluginTool: () => removePluginTool,
|
|
133
|
-
removeResourceTool: () => removeResourceTool,
|
|
134
|
-
updateCollectionRecordTool: () => updateCollectionRecordTool,
|
|
135
|
-
updateCollectionTool: () => updateCollectionTool,
|
|
136
|
-
updateElementTool: () => updateElementTool,
|
|
137
|
-
updatePageFolderTool: () => updatePageFolderTool,
|
|
138
|
-
updatePageTool: () => updatePageTool,
|
|
139
|
-
updatePluginTool: () => updatePluginTool,
|
|
140
|
-
updateSegmentElementTool: () => updateSegmentElementTool,
|
|
141
|
-
updateSegmentStyleVariableTool: () => updateSegmentStyleVariableTool,
|
|
142
|
-
updateSegmentTool: () => updateSegmentTool,
|
|
143
|
-
updateSegmentVariableTool: () => updateSegmentVariableTool,
|
|
144
|
-
updateSpaceSettingsTool: () => updateSpaceSettingsTool,
|
|
145
|
-
updateStyleSelectorTool: () => updateStyleSelectorTool,
|
|
146
|
-
updateStyleVariableTool: () => updateStyleVariableTool,
|
|
147
|
-
updateVariableTool: () => updateVariableTool
|
|
148
|
-
});
|
|
11
|
+
/** The MCP tool registry — the single source both hosts (the standalone server and the in-process AI bridge)
|
|
12
|
+
* register from. Adding a tool is: create its file with a ToolDef descriptor and append it here. */
|
|
13
|
+
var tools = [
|
|
14
|
+
applyTool,
|
|
15
|
+
validateTool,
|
|
16
|
+
searchTool,
|
|
17
|
+
readTool,
|
|
18
|
+
previewTool,
|
|
19
|
+
screenshotTool
|
|
20
|
+
];
|
|
149
21
|
//#endregion
|
|
150
|
-
export {
|
|
22
|
+
export { apply, applyOperations, applyShape, operation, read, readShape, search, searchShape, tools, validate, validateOperations, validateShape };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { elementOps } from "./schema/operations.js";
|
|
2
|
+
import { styleOps } from "./style/operations.js";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
//#region src/modules/mcp/tools/operations/index.ts
|
|
5
|
+
var operation = z.discriminatedUnion("type", [
|
|
6
|
+
elementOps.upsertElement,
|
|
7
|
+
elementOps.patchElement,
|
|
8
|
+
elementOps.deleteElement,
|
|
9
|
+
elementOps.moveElement,
|
|
10
|
+
elementOps.upsertPage,
|
|
11
|
+
elementOps.deletePage,
|
|
12
|
+
elementOps.upsertFolder,
|
|
13
|
+
elementOps.deleteFolder,
|
|
14
|
+
elementOps.upsertVariable,
|
|
15
|
+
elementOps.deleteVariable,
|
|
16
|
+
elementOps.upsertBinding,
|
|
17
|
+
elementOps.patchBinding,
|
|
18
|
+
elementOps.deleteBinding,
|
|
19
|
+
elementOps.upsertInteractionFlow,
|
|
20
|
+
elementOps.patchInteractionNode,
|
|
21
|
+
elementOps.deleteInteraction,
|
|
22
|
+
elementOps.patchSettings,
|
|
23
|
+
styleOps.upsertDefinition,
|
|
24
|
+
styleOps.patchDefinition,
|
|
25
|
+
styleOps.deleteDefinition,
|
|
26
|
+
styleOps.upsertGlobalStyle,
|
|
27
|
+
styleOps.patchGlobalStyle,
|
|
28
|
+
styleOps.deleteGlobalStyle,
|
|
29
|
+
styleOps.upsertIdStyle,
|
|
30
|
+
styleOps.patchIdStyle,
|
|
31
|
+
styleOps.deleteIdStyle,
|
|
32
|
+
styleOps.upsertStyleVariable,
|
|
33
|
+
styleOps.deleteStyleVariable
|
|
34
|
+
]);
|
|
35
|
+
var STYLE_OP_TYPES = new Set(Object.keys(styleOps));
|
|
36
|
+
var isStyleOp = (type) => STYLE_OP_TYPES.has(type);
|
|
37
|
+
var MAX_OPS = 1e3;
|
|
38
|
+
var environment = z.string().optional().describe("Environment; default main");
|
|
39
|
+
var operations = z.array(operation).max(MAX_OPS).describe(`Operations applied atomically, in order (max ${MAX_OPS})`);
|
|
40
|
+
//#endregion
|
|
41
|
+
export { MAX_OPS, environment, isStyleOp, operation, operations };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { pageUri } from "../../../../helpers/uris.js";
|
|
2
|
+
import { empty, fail } from "../../../../helpers/opResult.js";
|
|
3
|
+
import { bindingCategory } from "../shared.js";
|
|
4
|
+
import { resolveElement } from "../write.js";
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
//#region src/modules/mcp/tools/operations/schema/bindings/deleteBinding.ts
|
|
7
|
+
var deleteBindingOp = z.object({
|
|
8
|
+
type: z.literal("deleteBinding"),
|
|
9
|
+
pageRef: z.string().describe("Page ref or id"),
|
|
10
|
+
ref: z.string().describe("Element ref or id"),
|
|
11
|
+
category: bindingCategory,
|
|
12
|
+
to: z.string().describe("Target of the binding to remove"),
|
|
13
|
+
id: z.string().optional().describe("Match by id instead of to")
|
|
14
|
+
}).describe("Remove a data binding from an element (matched by id when given, else by to). Fails if none matches.");
|
|
15
|
+
var deleteBinding = (space, env, op) => {
|
|
16
|
+
const found = resolveElement(space, env, op.pageRef, op.ref);
|
|
17
|
+
if ("error" in found) return found.error;
|
|
18
|
+
const bindings = found.el.definition.bindings;
|
|
19
|
+
const list = bindings?.[op.category];
|
|
20
|
+
const index = list ? list.findIndex((b) => op.id ? b.id === op.id : b.to === op.to) : -1;
|
|
21
|
+
if (!bindings || !list || index < 0) return fail("to", `No ${op.category} binding matching "${op.id ?? op.to}" on "${op.ref}"`, "Nothing to delete");
|
|
22
|
+
list.splice(index, 1);
|
|
23
|
+
if (list.length === 0) Reflect.deleteProperty(bindings, op.category);
|
|
24
|
+
return {
|
|
25
|
+
...empty(),
|
|
26
|
+
deleted: 1,
|
|
27
|
+
staleResources: [pageUri(env, op.pageRef)],
|
|
28
|
+
elementRefs: [op.ref]
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
//#endregion
|
|
32
|
+
export { deleteBinding, deleteBindingOp };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { pageUri } from "../../../../helpers/uris.js";
|
|
2
|
+
import { empty, fail } from "../../../../helpers/opResult.js";
|
|
3
|
+
import { bindingCategory, bindingInput } from "../shared.js";
|
|
4
|
+
import { resolveElement } from "../write.js";
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
//#region src/modules/mcp/tools/operations/schema/bindings/patchBinding.ts
|
|
7
|
+
var patchBindingOp = z.object({
|
|
8
|
+
type: z.literal("patchBinding"),
|
|
9
|
+
pageRef: z.string().describe("Page ref or id"),
|
|
10
|
+
ref: z.string().describe("Element ref or id"),
|
|
11
|
+
category: bindingCategory,
|
|
12
|
+
to: z.string().describe("Target of the binding to patch"),
|
|
13
|
+
id: z.string().optional().describe("Match by id instead of to"),
|
|
14
|
+
source: bindingInput.shape.source.optional(),
|
|
15
|
+
transformers: bindingInput.shape.transformers,
|
|
16
|
+
when: bindingInput.shape.when,
|
|
17
|
+
enabled: bindingInput.shape.enabled
|
|
18
|
+
}).describe("Partially update an EXISTING binding (matched by id when given, else by to): only the fields you pass change. Never creates — fails if no binding matches.");
|
|
19
|
+
var patchBinding = (space, env, op) => {
|
|
20
|
+
const found = resolveElement(space, env, op.pageRef, op.ref);
|
|
21
|
+
if ("error" in found) return found.error;
|
|
22
|
+
const binding = (found.el.definition.bindings?.[op.category])?.find((b) => op.id ? b.id === op.id : b.to === op.to);
|
|
23
|
+
if (!binding) return fail("to", `No ${op.category} binding matching "${op.id ?? op.to}" on "${op.ref}"`, "Use upsertBinding to add it");
|
|
24
|
+
if (op.source !== void 0) binding.source = op.source;
|
|
25
|
+
if (op.transformers !== void 0) binding.transformers = op.transformers;
|
|
26
|
+
if (op.when !== void 0) binding.when = op.when;
|
|
27
|
+
if (op.enabled !== void 0) binding.enabled = op.enabled;
|
|
28
|
+
return {
|
|
29
|
+
...empty(),
|
|
30
|
+
updated: 1,
|
|
31
|
+
staleResources: [pageUri(env, op.pageRef)],
|
|
32
|
+
elementRefs: [op.ref]
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
//#endregion
|
|
36
|
+
export { patchBinding, patchBindingOp };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { generateObjectId } from "../../../../helpers/space.js";
|
|
2
|
+
import { pageUri } from "../../../../helpers/uris.js";
|
|
3
|
+
import { empty } from "../../../../helpers/opResult.js";
|
|
4
|
+
import { bindingCategory, bindingInput } from "../shared.js";
|
|
5
|
+
import { resolveElement } from "../write.js";
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
//#region src/modules/mcp/tools/operations/schema/bindings/upsertBinding.ts
|
|
8
|
+
var upsertBindingOp = z.object({
|
|
9
|
+
type: z.literal("upsertBinding"),
|
|
10
|
+
pageRef: z.string().describe("Page ref or id"),
|
|
11
|
+
ref: z.string().describe("Element ref or id"),
|
|
12
|
+
category: bindingCategory,
|
|
13
|
+
binding: bindingInput
|
|
14
|
+
}).describe("Add a data binding to an element, or replace the one already feeding the same target (matched by binding.id when given, else by binding.to). Connects a data source to a prop, style value, or initialState key.");
|
|
15
|
+
var upsertBinding = (space, env, op) => {
|
|
16
|
+
const found = resolveElement(space, env, op.pageRef, op.ref);
|
|
17
|
+
if ("error" in found) return found.error;
|
|
18
|
+
const bindings = found.el.definition.bindings ??= {};
|
|
19
|
+
const list = bindings[op.category] ??= [];
|
|
20
|
+
const index = list.findIndex((b) => op.binding.id ? b.id === op.binding.id : b.to === op.binding.to);
|
|
21
|
+
const binding = {
|
|
22
|
+
id: op.binding.id ?? (index >= 0 ? list[index].id : generateObjectId()),
|
|
23
|
+
to: op.binding.to,
|
|
24
|
+
source: op.binding.source
|
|
25
|
+
};
|
|
26
|
+
if (op.binding.transformers) binding.transformers = op.binding.transformers;
|
|
27
|
+
if (op.binding.when !== void 0) binding.when = op.binding.when;
|
|
28
|
+
if (op.binding.enabled !== void 0) binding.enabled = op.binding.enabled;
|
|
29
|
+
if (index >= 0) {
|
|
30
|
+
list[index] = binding;
|
|
31
|
+
return {
|
|
32
|
+
...empty(),
|
|
33
|
+
updated: 1,
|
|
34
|
+
staleResources: [pageUri(env, op.pageRef)],
|
|
35
|
+
elementRefs: [op.ref]
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
list.push(binding);
|
|
39
|
+
return {
|
|
40
|
+
...empty(),
|
|
41
|
+
created: 1,
|
|
42
|
+
staleResources: [pageUri(env, op.pageRef)],
|
|
43
|
+
elementRefs: [op.ref]
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
//#endregion
|
|
47
|
+
export { upsertBinding, upsertBindingOp };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { descendantIds, findPageByRef, indexRemoveElements, resolveRef } from "../../../../helpers/space.js";
|
|
2
|
+
import { pageUri } from "../../../../helpers/uris.js";
|
|
3
|
+
import { empty, fail } from "../../../../helpers/opResult.js";
|
|
4
|
+
import { removeFromParent } from "../write.js";
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
//#region src/modules/mcp/tools/operations/schema/elements/deleteElement.ts
|
|
7
|
+
var deleteElementOp = z.object({
|
|
8
|
+
type: z.literal("deleteElement"),
|
|
9
|
+
pageRef: z.string().describe("Page ref or id"),
|
|
10
|
+
ref: z.string().describe("Ref or id of the element to delete")
|
|
11
|
+
}).describe("Delete an element and all of its descendants from a page.");
|
|
12
|
+
var deleteElement = (space, env, op) => {
|
|
13
|
+
const page = findPageByRef(space.schema, op.pageRef);
|
|
14
|
+
if (!page) return fail("pageRef", `Page "${op.pageRef}" not found`, "Read the pages resource for valid refs");
|
|
15
|
+
const el = resolveRef(space.schema, page, op.ref);
|
|
16
|
+
if (!el || el.id === page.id) return fail("ref", `Element "${op.ref}" not found in page "${op.pageRef}"`, "Read the page resource for valid refs");
|
|
17
|
+
const ids = [...descendantIds(space.schema, el.id), el.id];
|
|
18
|
+
const removed = ids.map((id) => space.schema.flat[id]);
|
|
19
|
+
for (const id of ids) Reflect.deleteProperty(space.schema.flat, id);
|
|
20
|
+
removeFromParent(space, el);
|
|
21
|
+
indexRemoveElements(space.schema, removed);
|
|
22
|
+
return {
|
|
23
|
+
...empty(),
|
|
24
|
+
deleted: 1,
|
|
25
|
+
staleResources: [pageUri(env, op.pageRef)]
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
//#endregion
|
|
29
|
+
export { deleteElement, deleteElementOp };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { findPageByRef, indexInvalidateDetails, resolveRef } from "../../../../helpers/space.js";
|
|
2
|
+
import { pageUri } from "../../../../helpers/uris.js";
|
|
3
|
+
import { empty, fail } from "../../../../helpers/opResult.js";
|
|
4
|
+
import { position } from "../shared.js";
|
|
5
|
+
import { placeChild, removeFromParent } from "../write.js";
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
//#region src/modules/mcp/tools/operations/schema/elements/moveElement.ts
|
|
8
|
+
var moveElementOp = z.object({
|
|
9
|
+
type: z.literal("moveElement"),
|
|
10
|
+
pageRef: z.string().describe("Page ref or id"),
|
|
11
|
+
ref: z.string().describe("Ref or id of the element to move"),
|
|
12
|
+
toParentRef: z.string().describe("Ref or id of the anchor the element moves relative to (see position)"),
|
|
13
|
+
position
|
|
14
|
+
}).describe("Move an existing element to a new parent, or reorder it — its placement is set by position.");
|
|
15
|
+
var moveElement = (space, env, op) => {
|
|
16
|
+
const page = findPageByRef(space.schema, op.pageRef);
|
|
17
|
+
if (!page) return fail("pageRef", `Page "${op.pageRef}" not found`, "Read the pages resource for valid refs");
|
|
18
|
+
const el = resolveRef(space.schema, page, op.ref);
|
|
19
|
+
const anchor = resolveRef(space.schema, page, op.toParentRef);
|
|
20
|
+
if (!el || el.id === page.id) return fail("ref", `Element "${op.ref}" not found`, "Read the page resource for valid refs");
|
|
21
|
+
if (!anchor) return fail("toParentRef", `Target "${op.toParentRef}" not found`, "Read the page resource for valid refs");
|
|
22
|
+
removeFromParent(space, el);
|
|
23
|
+
let parent = anchor;
|
|
24
|
+
let index;
|
|
25
|
+
if (op.position === "before" || op.position === "after") {
|
|
26
|
+
parent = anchor.definition.parentId ? space.schema.flat[anchor.definition.parentId] ?? page : page;
|
|
27
|
+
const at = (parent.definition.items ?? []).indexOf(anchor.id);
|
|
28
|
+
index = at < 0 ? void 0 : op.position === "after" ? at + 1 : at;
|
|
29
|
+
}
|
|
30
|
+
el.definition.parentId = parent.id;
|
|
31
|
+
placeChild(parent, el.id, index);
|
|
32
|
+
indexInvalidateDetails(space.schema);
|
|
33
|
+
return {
|
|
34
|
+
...empty(),
|
|
35
|
+
updated: 1,
|
|
36
|
+
staleResources: [pageUri(env, op.pageRef)],
|
|
37
|
+
elementRefs: [op.ref]
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
//#endregion
|
|
41
|
+
export { moveElement, moveElementOp };
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { findPageByRef, resolveRef } from "../../../../helpers/space.js";
|
|
2
|
+
import { pageUri } from "../../../../helpers/uris.js";
|
|
3
|
+
import { empty, fail } from "../../../../helpers/opResult.js";
|
|
4
|
+
import { initialStateInput, styleRefs } from "../shared.js";
|
|
5
|
+
import { guardNewRef, writeInitialState } from "../write.js";
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
import { repointIdRefs } from "@plitzi/sdk-schema/helpers/idRef";
|
|
8
|
+
//#region src/modules/mcp/tools/operations/schema/elements/patchElement.ts
|
|
9
|
+
var patchElementOp = z.object({
|
|
10
|
+
type: z.literal("patchElement"),
|
|
11
|
+
pageRef: z.string().describe("Page ref or id"),
|
|
12
|
+
ref: z.string().describe("Existing element ref or id"),
|
|
13
|
+
idRef: z.string().optional().describe("Assign or rename the idRef of this element ([A-Za-z0-9_-], starting with a letter, unique in the space). Give an element one to make it bindable: without an idRef it publishes no data source. Renaming one moves its source name with it — every binding and interaction across the space that targeted the old name is repointed for you, so the wiring survives the rename."),
|
|
14
|
+
label: z.string().optional(),
|
|
15
|
+
subType: z.string().optional(),
|
|
16
|
+
props: z.record(z.string(), z.unknown()).optional().describe("Merged onto existing props: listed keys change, null unsets a key, others are preserved"),
|
|
17
|
+
style: styleRefs.optional().describe("Merged onto existing style: base replaces base, listed slots replace slots"),
|
|
18
|
+
initialState: initialStateInput.optional().describe("Merged onto existing initialState: styleVariant overlays per class/selector, visibility overrides")
|
|
19
|
+
}).describe("Partially update an EXISTING element: only the fields you pass change (props/style/initialState are merged, not replaced). Never creates — fails if ref does not resolve. Use upsertElement to create or fully replace.");
|
|
20
|
+
var patchElement = (space, env, op) => {
|
|
21
|
+
const page = findPageByRef(space.schema, op.pageRef);
|
|
22
|
+
if (!page) return fail("pageRef", `Page "${op.pageRef}" not found`, "Read plitzi://schema/" + env + "/pages for valid refs");
|
|
23
|
+
const el = resolveRef(space.schema, page, op.ref);
|
|
24
|
+
if (!el || el.id === page.id) return fail("ref", `Element "${op.ref}" not found in page "${op.pageRef}"`, "patchElement only updates an existing element; use upsertElement to create one");
|
|
25
|
+
if (op.idRef !== void 0 && op.idRef !== el.idRef) {
|
|
26
|
+
const guard = guardNewRef(space, op.idRef, "idRef");
|
|
27
|
+
if (guard) return guard;
|
|
28
|
+
const previous = el.idRef;
|
|
29
|
+
el.idRef = op.idRef;
|
|
30
|
+
if (previous) repointIdRefs(space.schema.flat, { [previous]: op.idRef });
|
|
31
|
+
}
|
|
32
|
+
if (op.label !== void 0) el.definition.label = op.label;
|
|
33
|
+
if (op.subType !== void 0) el.attributes = {
|
|
34
|
+
...el.attributes,
|
|
35
|
+
subType: op.subType
|
|
36
|
+
};
|
|
37
|
+
if (op.props !== void 0) {
|
|
38
|
+
const merged = { ...el.attributes };
|
|
39
|
+
for (const [key, value] of Object.entries(op.props)) if (value === null) Reflect.deleteProperty(merged, key);
|
|
40
|
+
else merged[key] = value;
|
|
41
|
+
el.attributes = merged;
|
|
42
|
+
}
|
|
43
|
+
if (op.style !== void 0) {
|
|
44
|
+
const selectors = { ...el.definition.styleSelectors };
|
|
45
|
+
if (op.style.base !== void 0) selectors.base = op.style.base.join(" ");
|
|
46
|
+
for (const [slot, classes] of Object.entries(op.style.slots ?? {})) selectors[slot] = classes.join(" ");
|
|
47
|
+
el.definition.styleSelectors = selectors;
|
|
48
|
+
}
|
|
49
|
+
if (op.initialState !== void 0) writeInitialState(el, op.initialState, true);
|
|
50
|
+
return {
|
|
51
|
+
...empty(),
|
|
52
|
+
updated: 1,
|
|
53
|
+
staleResources: [pageUri(env, op.pageRef)],
|
|
54
|
+
elementRefs: [op.ref]
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
//#endregion
|
|
58
|
+
export { patchElement, patchElementOp };
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { findPageByRef, resolveRef } from "../../../../helpers/space.js";
|
|
2
|
+
import { pageUri } from "../../../../helpers/uris.js";
|
|
3
|
+
import { empty, fail } from "../../../../helpers/opResult.js";
|
|
4
|
+
import { elementInput, position } from "../shared.js";
|
|
5
|
+
import { collectInputRefs, createElement, guardNewRef, writeInitialState } from "../write.js";
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
//#region src/modules/mcp/tools/operations/schema/elements/upsertElement.ts
|
|
8
|
+
var upsertElementOp = z.object({
|
|
9
|
+
type: z.literal("upsertElement"),
|
|
10
|
+
pageRef: z.string().describe("Page ref or id"),
|
|
11
|
+
element: elementInput,
|
|
12
|
+
parentRef: z.string().optional().describe("Anchor ref/id; defaults to page root"),
|
|
13
|
+
position: position.optional()
|
|
14
|
+
}).describe("Add an element to a page, or fully update it when element.ref already exists (props and style are REPLACED, not merged). To change only some fields of an existing element, use patchElement instead.");
|
|
15
|
+
var upsertElement = (space, env, op) => {
|
|
16
|
+
const page = findPageByRef(space.schema, op.pageRef);
|
|
17
|
+
if (!page) return fail("pageRef", `Page "${op.pageRef}" not found`, "Read plitzi://schema/" + env + "/pages for valid refs");
|
|
18
|
+
const existing = resolveRef(space.schema, page, op.element.ref);
|
|
19
|
+
if (existing && existing.id !== page.id) {
|
|
20
|
+
if (op.element.label !== void 0) existing.definition.label = op.element.label;
|
|
21
|
+
if (op.element.props !== void 0 || op.element.subType !== void 0) {
|
|
22
|
+
const subType = op.element.subType ?? existing.attributes.subType;
|
|
23
|
+
existing.attributes = subType === void 0 ? { ...op.element.props } : {
|
|
24
|
+
subType,
|
|
25
|
+
...op.element.props
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
if (op.element.style !== void 0) {
|
|
29
|
+
const selectors = { base: (op.element.style.base ?? []).join(" ") };
|
|
30
|
+
for (const [slot, classes] of Object.entries(op.element.style.slots ?? {})) selectors[slot] = classes.join(" ");
|
|
31
|
+
existing.definition.styleSelectors = selectors;
|
|
32
|
+
}
|
|
33
|
+
if (op.element.initialState !== void 0) writeInitialState(existing, op.element.initialState, false);
|
|
34
|
+
return {
|
|
35
|
+
...empty(),
|
|
36
|
+
updated: 1,
|
|
37
|
+
staleResources: [pageUri(env, op.pageRef)],
|
|
38
|
+
elementRefs: [op.element.ref]
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
for (const ref of collectInputRefs(op.element)) {
|
|
42
|
+
const guard = guardNewRef(space, ref, "element.ref");
|
|
43
|
+
if (guard) return guard;
|
|
44
|
+
}
|
|
45
|
+
let parent = page;
|
|
46
|
+
let index;
|
|
47
|
+
if (op.parentRef) {
|
|
48
|
+
const anchor = resolveRef(space.schema, page, op.parentRef);
|
|
49
|
+
if (!anchor) return fail("parentRef", `Parent "${op.parentRef}" not found in page "${op.pageRef}"`, "Use an existing ref");
|
|
50
|
+
if (op.position === "before" || op.position === "after") {
|
|
51
|
+
parent = anchor.definition.parentId ? space.schema.flat[anchor.definition.parentId] : page;
|
|
52
|
+
const at = (parent.definition.items ?? []).indexOf(anchor.id);
|
|
53
|
+
index = at < 0 ? void 0 : op.position === "after" ? at + 1 : at;
|
|
54
|
+
} else parent = anchor;
|
|
55
|
+
}
|
|
56
|
+
createElement(space, page, op.element, parent, index);
|
|
57
|
+
return {
|
|
58
|
+
...empty(),
|
|
59
|
+
created: 1,
|
|
60
|
+
staleResources: [pageUri(env, op.pageRef)],
|
|
61
|
+
elementRefs: [op.element.ref]
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
//#endregion
|
|
65
|
+
export { upsertElement, upsertElementOp };
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { findFolderByRef, isPageElement, pageFoldersOf, sortFolders } from "../../../../helpers/space.js";
|
|
2
|
+
import { folderUri, foldersUri, pagesUri } from "../../../../helpers/uris.js";
|
|
3
|
+
import { empty, fail } from "../../../../helpers/opResult.js";
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
//#region src/modules/mcp/tools/operations/schema/folders/deleteFolder.ts
|
|
6
|
+
var deleteFolderOp = z.object({
|
|
7
|
+
type: z.literal("deleteFolder"),
|
|
8
|
+
ref: z.string()
|
|
9
|
+
}).describe("Delete a folder; its child folders and pages move up to its parent (or the root)");
|
|
10
|
+
var deleteFolder = (space, env, op) => {
|
|
11
|
+
const folders = pageFoldersOf(space.schema);
|
|
12
|
+
const folder = findFolderByRef(space.schema, op.ref);
|
|
13
|
+
if (!folder) return fail("ref", `Folder "${op.ref}" not found`, "Read plitzi://folders for valid refs");
|
|
14
|
+
const newParent = folder.parentId;
|
|
15
|
+
for (const child of folders) if (child.parentId === folder.id) if (newParent === void 0) Reflect.deleteProperty(child, "parentId");
|
|
16
|
+
else child.parentId = newParent;
|
|
17
|
+
for (const el of Object.values(space.schema.flat)) if (isPageElement(space.schema, el) && el.attributes.folder === folder.id) el.attributes.folder = newParent ?? "";
|
|
18
|
+
space.schema.pageFolders = sortFolders(folders.filter((f) => f.id !== folder.id));
|
|
19
|
+
return {
|
|
20
|
+
...empty(),
|
|
21
|
+
deleted: 1,
|
|
22
|
+
staleResources: [
|
|
23
|
+
folderUri(env, folder.id),
|
|
24
|
+
foldersUri(env),
|
|
25
|
+
pagesUri(env)
|
|
26
|
+
]
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
//#endregion
|
|
30
|
+
export { deleteFolder, deleteFolderOp };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { findFolderByRef, pageFoldersOf, slugify, sortFolders } from "../../../../helpers/space.js";
|
|
2
|
+
import { folderUri, foldersUri } from "../../../../helpers/uris.js";
|
|
3
|
+
import { empty, fail } from "../../../../helpers/opResult.js";
|
|
4
|
+
import { z } from "zod";
|
|
5
|
+
//#region src/modules/mcp/tools/operations/schema/folders/upsertFolder.ts
|
|
6
|
+
var upsertFolderOp = z.object({
|
|
7
|
+
type: z.literal("upsertFolder"),
|
|
8
|
+
ref: z.string().describe("Folder ref: an existing folder id/name/slug to update, or a new id you choose"),
|
|
9
|
+
name: z.string().optional(),
|
|
10
|
+
slug: z.string().optional(),
|
|
11
|
+
parentId: z.string().nullable().optional().describe("Ref of the parent folder for nesting; null keeps it at root")
|
|
12
|
+
}).describe("Create a sidebar page-folder, or update it when ref already exists. Nest it under another via parentId.");
|
|
13
|
+
var upsertFolder = (space, env, op) => {
|
|
14
|
+
const folders = pageFoldersOf(space.schema);
|
|
15
|
+
let parentId;
|
|
16
|
+
if (op.parentId !== void 0 && op.parentId !== null) {
|
|
17
|
+
const parent = findFolderByRef(space.schema, op.parentId);
|
|
18
|
+
if (!parent) return fail("parentId", `Parent folder "${op.parentId}" not found`, "Create it with upsertFolder first");
|
|
19
|
+
parentId = parent.id;
|
|
20
|
+
}
|
|
21
|
+
const existing = findFolderByRef(space.schema, op.ref);
|
|
22
|
+
if (existing) {
|
|
23
|
+
if (op.name !== void 0) existing.name = op.name;
|
|
24
|
+
if (op.slug !== void 0) existing.slug = op.slug;
|
|
25
|
+
if (op.parentId === null) Reflect.deleteProperty(existing, "parentId");
|
|
26
|
+
else if (op.parentId !== void 0) existing.parentId = parentId;
|
|
27
|
+
space.schema.pageFolders = sortFolders(folders);
|
|
28
|
+
return {
|
|
29
|
+
...empty(),
|
|
30
|
+
updated: 1,
|
|
31
|
+
staleResources: [folderUri(env, existing.id), foldersUri(env)]
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
const folder = {
|
|
35
|
+
id: op.ref,
|
|
36
|
+
name: op.name ?? op.ref,
|
|
37
|
+
slug: op.slug ?? slugify(op.ref)
|
|
38
|
+
};
|
|
39
|
+
if (parentId !== void 0) folder.parentId = parentId;
|
|
40
|
+
folders.push(folder);
|
|
41
|
+
space.schema.pageFolders = sortFolders(folders);
|
|
42
|
+
return {
|
|
43
|
+
...empty(),
|
|
44
|
+
created: 1,
|
|
45
|
+
staleResources: [folderUri(env, folder.id), foldersUri(env)]
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
//#endregion
|
|
49
|
+
export { upsertFolder, upsertFolderOp };
|