{
    "plugin": {
        "title": "Diagram",
        "packageName": "peek_plugin_diagram",
        "version": "4.1.0",
        "buildNumber": "#PLUGIN_BUILD#",
        "buildDate": "#BUILD_DATE#",
        "creator": "Synerty Pty Ltd",
        "website": "www.synerty.com"
    },
    "requiresServices": [
        "agent",
        "logic",
        "storage",
        "admin",
        "worker",
        "field",
        "office",
        "admin-doc",
        "field-doc"
    ],
    "admin-doc": {
        "docDir": "admin-doc",
        "docRst": "index.rst",
        "hasApi": true
    },
    "field-doc": {
        "docDir": "both-doc",
        "docRst": "index.rst"
    },
    "logic": {},
    "storage": {
        "alembicDir": "_private/alembic"
    },
    "admin": {
        "showHomeLink": true,
        "appDir": "_private/admin-app",
        "appModule": "diagram.module.web#PeekPluginDiagramModule",
        "moduleDir": "plugin-module",
        "moduleDirAdmin": "plugin-admin-module",
        "rootServices": [
        ]
    },
    "worker": {},
    "field": {
        "subprocessGroup": "livedb+diagram",
        "showHomeLink": false,
        "appDir": "_private/both-app",
        "moduleDir": "plugin-module",
        "rootServices": [
            {
                "file": "_private/branch-loader/LocalBranchStorageService",
                "class": "LocalBranchStorageService"
            },
            {
                "file": "DiagramLookupService",
                "class": "DiagramLookupService"
            },
            {
                "file": "_private/services/PrivateDiagramLookupService",
                "class": "PrivateDiagramLookupService",
                "persistent": true
            },
            {
                "file": "_private/services/PrivateDiagramOverrideService",
                "class": "PrivateDiagramOverrideService",
                "persistent": true
            },
            {
                "file": "DiagramOverrideService",
                "class": "DiagramOverrideService",
                "useExistingClass": "PrivateDiagramOverrideService"
            },
            {
                "file": "DiagramCoordSetService",
                "class": "DiagramCoordSetService",
                "useExistingClass": "PrivateDiagramCoordSetService"
            },
            {
                "file": "_private/services/PrivateDiagramCoordSetService",
                "class": "PrivateDiagramCoordSetService",
                "persistent": true
            },
            {
                "file": "_private/branch-loader/BranchIndexLoaderServiceA",
                "class": "BranchIndexLoaderServiceA",
                "useClassFile": "_private/branch-loader/BranchIndexLoaderService",
                "useClassClass": "BranchIndexLoaderService",
                "persistent": true
            },
            {
                "file": "_private/branch/PrivateDiagramBranchService",
                "class": "PrivateDiagramBranchService",
                "persistent": true
            },
            {
                "file": "DiagramBranchService",
                "class": "DiagramBranchService",
                "useExistingClass": "PrivateDiagramBranchService"
            },
            {
                "file": "_private/services/PrivateDiagramSnapshotService",
                "class": "PrivateDiagramSnapshotService",
                "persistent": true
            },
            {
                "file": "DiagramSnapshotService",
                "class": "DiagramSnapshotService",
                "useExistingClass": "PrivateDiagramSnapshotService"
            },
            {
                "file": "_private/services/PrivateDiagramConfigService",
                "class": "PrivateDiagramConfigService",
                "persistent": true
            },
            {
                "file": "DiagramConfigService",
                "class": "DiagramConfigService",
                "useExistingClass": "PrivateDiagramConfigService"
            },
            {
                "file": "_private/grid-loader/PrivateDiagramGridLoaderServiceA",
                "class": "PrivateDiagramGridLoaderServiceA",
                "useClassFile": "_private/grid-loader/PrivateDiagramGridLoaderService",
                "useClassClass": "PrivateDiagramGridLoaderService",
                "persistent": true
            },
            {
                "file": "DiagramToolbarService",
                "class": "DiagramToolbarService",
                "useClassFile": "_private/services/PrivateDiagramToolbarService",
                "useClassClass": "PrivateDiagramToolbarService",
                "persistent": true
            },
            {
                "file": "services/canvas.service",
                "class": "CanvasService",
                "locatedInAppDir": true
            },
            {
                "file": "DiagramItemSelectService",
                "class": "DiagramItemSelectService",
                "useExistingClass": "PrivateDiagramItemSelectService"
            },
            {
                "file": "_private/services/PrivateDiagramItemSelectService",
                "class": "PrivateDiagramItemSelectService",
                "persistent": true
            },
            {
                "file": "_private/location-loader/PrivateDiagramLocationLoaderService",
                "class": "PrivateDiagramLocationLoaderService",
                "persistent": true
            },
            {
                "file": "DiagramPositionService",
                "class": "DiagramPositionService",
                "useExistingClass": "PrivateDiagramPositionService"
            },
            {
                "file": "_private/services/PrivateDiagramPositionService",
                "class": "PrivateDiagramPositionService",
                "persistent": true
            },
            {
                "file": "_private/services/PrivateDiagramOfflineCacherService",
                "class": "PrivateDiagramOfflineCacherService",
                "persistent": true
            }
        ]
    },
    "agent": {},
    "office": {
        "subprocessGroup": "livedb+diagram",
        "showHomeLink": false,
        "appDir": "_private/both-app",
        "assetDir": "_private/both-assets",
        "moduleDir": "plugin-module",
        "rootServices": [
            {
                "file": "_private/branch-loader/LocalBranchStorageService",
                "class": "LocalBranchStorageService"
            },
            {
                "file": "DiagramLookupService",
                "class": "DiagramLookupService"
            },
            {
                "file": "_private/services/PrivateDiagramLookupService",
                "class": "PrivateDiagramLookupService",
                "persistent": true
            },
            {
                "file": "_private/services/PrivateDiagramOverrideService",
                "class": "PrivateDiagramOverrideService",
                "persistent": true
            },
            {
                "file": "DiagramOverrideService",
                "class": "DiagramOverrideService",
                "useExistingClass": "PrivateDiagramOverrideService"
            },
            {
                "file": "DiagramCoordSetService",
                "class": "DiagramCoordSetService",
                "useExistingClass": "PrivateDiagramCoordSetService"
            },
            {
                "file": "_private/services/PrivateDiagramCoordSetService",
                "class": "PrivateDiagramCoordSetService",
                "persistent": true
            },
            {
                "file": "_private/branch-loader/BranchIndexLoaderServiceA",
                "class": "BranchIndexLoaderServiceA",
                "useClassFile": "_private/branch-loader/BranchIndexLoaderService",
                "useClassClass": "BranchIndexLoaderService",
                "persistent": true
            },
            {
                "file": "_private/branch/PrivateDiagramBranchService",
                "class": "PrivateDiagramBranchService",
                "persistent": true
            },
            {
                "file": "DiagramBranchService",
                "class": "DiagramBranchService",
                "useExistingClass": "PrivateDiagramBranchService"
            },
            {
                "file": "_private/services/PrivateDiagramSnapshotService",
                "class": "PrivateDiagramSnapshotService",
                "persistent": true
            },
            {
                "file": "DiagramSnapshotService",
                "class": "DiagramSnapshotService",
                "useExistingClass": "PrivateDiagramSnapshotService"
            },
            {
                "file": "_private/services/PrivateDiagramConfigService",
                "class": "PrivateDiagramConfigService",
                "persistent": true
            },
            {
                "file": "DiagramConfigService",
                "class": "DiagramConfigService",
                "useExistingClass": "PrivateDiagramConfigService"
            },
            {
                "file": "_private/grid-loader/PrivateDiagramGridLoaderServiceA",
                "class": "PrivateDiagramGridLoaderServiceA",
                "useClassFile": "_private/grid-loader/PrivateDiagramGridLoaderService",
                "useClassClass": "PrivateDiagramGridLoaderService",
                "persistent": true
            },
            {
                "file": "DiagramToolbarService",
                "class": "DiagramToolbarService",
                "useClassFile": "_private/services/PrivateDiagramToolbarService",
                "useClassClass": "PrivateDiagramToolbarService",
                "persistent": true
            },
            {
                "file": "services/canvas.service",
                "class": "CanvasService",
                "locatedInAppDir": true
            },
            {
                "file": "DiagramItemSelectService",
                "class": "DiagramItemSelectService",
                "useExistingClass": "PrivateDiagramItemSelectService"
            },
            {
                "file": "_private/services/PrivateDiagramItemSelectService",
                "class": "PrivateDiagramItemSelectService",
                "persistent": true
            },
            {
                "file": "_private/location-loader/PrivateDiagramLocationLoaderService",
                "class": "PrivateDiagramLocationLoaderService",
                "persistent": true
            },
            {
                "file": "DiagramPositionService",
                "class": "DiagramPositionService",
                "useExistingClass": "PrivateDiagramPositionService"
            },
            {
                "file": "_private/services/PrivateDiagramPositionService",
                "class": "PrivateDiagramPositionService",
                "persistent": true
            }
        ]
    }
}
