@gravity-platform/miro-bridge 0.1.1
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/MiroBridge/node/executor.d.ts +19 -0
- package/dist/MiroBridge/node/executor.d.ts.map +1 -0
- package/dist/MiroBridge/node/executor.js +143 -0
- package/dist/MiroBridge/node/executor.js.map +1 -0
- package/dist/MiroBridge/node/index.d.ts +10 -0
- package/dist/MiroBridge/node/index.d.ts.map +1 -0
- package/dist/MiroBridge/node/index.js +87 -0
- package/dist/MiroBridge/node/index.js.map +1 -0
- package/dist/MiroBridge/service/boardStore.d.ts +15 -0
- package/dist/MiroBridge/service/boardStore.d.ts.map +1 -0
- package/dist/MiroBridge/service/boardStore.js +151 -0
- package/dist/MiroBridge/service/boardStore.js.map +1 -0
- package/dist/MiroBridge/service/diagramLayout.d.ts +13 -0
- package/dist/MiroBridge/service/diagramLayout.d.ts.map +1 -0
- package/dist/MiroBridge/service/diagramLayout.js +241 -0
- package/dist/MiroBridge/service/diagramLayout.js.map +1 -0
- package/dist/MiroBridge/service/mcpHandlers.d.ts +18 -0
- package/dist/MiroBridge/service/mcpHandlers.d.ts.map +1 -0
- package/dist/MiroBridge/service/mcpHandlers.js +307 -0
- package/dist/MiroBridge/service/mcpHandlers.js.map +1 -0
- package/dist/MiroBridge/service/mcpSchema.d.ts +490 -0
- package/dist/MiroBridge/service/mcpSchema.d.ts.map +1 -0
- package/dist/MiroBridge/service/mcpSchema.js +262 -0
- package/dist/MiroBridge/service/mcpSchema.js.map +1 -0
- package/dist/MiroBridge/service/miroApi.d.ts +32 -0
- package/dist/MiroBridge/service/miroApi.d.ts.map +1 -0
- package/dist/MiroBridge/service/miroApi.js +262 -0
- package/dist/MiroBridge/service/miroApi.js.map +1 -0
- package/dist/MiroBridge/service/normalise.d.ts +2 -0
- package/dist/MiroBridge/service/normalise.d.ts.map +1 -0
- package/dist/MiroBridge/service/normalise.js +52 -0
- package/dist/MiroBridge/service/normalise.js.map +1 -0
- package/dist/MiroBridge/util/types.d.ts +78 -0
- package/dist/MiroBridge/util/types.d.ts.map +1 -0
- package/dist/MiroBridge/util/types.js +3 -0
- package/dist/MiroBridge/util/types.js.map +1 -0
- package/dist/credentials/index.d.ts +23 -0
- package/dist/credentials/index.d.ts.map +1 -0
- package/dist/credentials/index.js +28 -0
- package/dist/credentials/index.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +55 -0
- package/dist/index.js.map +1 -0
- package/package.json +25 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Normalises common LLM parameter mistakes before they reach handlers.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.normaliseParams = normaliseParams;
|
|
5
|
+
// Extract item/widget ID from a full Miro URL, or return the value as-is.
|
|
6
|
+
function extractMiroId(value) {
|
|
7
|
+
if (!value.includes("miro.com"))
|
|
8
|
+
return value;
|
|
9
|
+
const widgetMatch = value.match(/[?&](?:moveToWidget|focusWidget)=([^&]+)/);
|
|
10
|
+
if (widgetMatch)
|
|
11
|
+
return widgetMatch[1];
|
|
12
|
+
const boardMatch = value.match(/\/board\/([^/?]+)/);
|
|
13
|
+
if (boardMatch)
|
|
14
|
+
return boardMatch[1];
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
// Canonical param names — maps known wrong casings to correct ones.
|
|
18
|
+
const ALIASES = {
|
|
19
|
+
parentID: "parentId",
|
|
20
|
+
ParentId: "parentId",
|
|
21
|
+
parent_id: "parentId",
|
|
22
|
+
startItemID: "startItemId",
|
|
23
|
+
endItemID: "endItemId",
|
|
24
|
+
itemID: "itemId",
|
|
25
|
+
fillcolor: "fillColor",
|
|
26
|
+
FillColor: "fillColor",
|
|
27
|
+
fontSize: "fontSize",
|
|
28
|
+
fontsize: "fontSize",
|
|
29
|
+
duedate: "dueDate",
|
|
30
|
+
DueDate: "dueDate",
|
|
31
|
+
};
|
|
32
|
+
// Fields whose values should be extracted as Miro IDs.
|
|
33
|
+
const ID_FIELDS = new Set(["id", "parentId", "itemId", "startItemId", "endItemId"]);
|
|
34
|
+
function normaliseParams(params) {
|
|
35
|
+
const result = {};
|
|
36
|
+
for (const [key, value] of Object.entries(params)) {
|
|
37
|
+
const normKey = ALIASES[key] ?? key;
|
|
38
|
+
let normValue = value;
|
|
39
|
+
// Extract IDs from URLs
|
|
40
|
+
if (ID_FIELDS.has(normKey) && typeof value === "string") {
|
|
41
|
+
normValue = extractMiroId(value);
|
|
42
|
+
}
|
|
43
|
+
// Coerce string booleans
|
|
44
|
+
if (value === "true")
|
|
45
|
+
normValue = true;
|
|
46
|
+
else if (value === "false")
|
|
47
|
+
normValue = false;
|
|
48
|
+
result[normKey] = normValue;
|
|
49
|
+
}
|
|
50
|
+
return result;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=normalise.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalise.js","sourceRoot":"","sources":["../../../src/MiroBridge/service/normalise.ts"],"names":[],"mappings":";AAAA,uEAAuE;;AA+BvE,0CAqBC;AAlDD,0EAA0E;AAC1E,SAAS,aAAa,CAAC,KAAa;IAClC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC5E,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACpD,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,oEAAoE;AACpE,MAAM,OAAO,GAA2B;IACtC,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,UAAU;IACrB,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;CACnB,CAAC;AAEF,uDAAuD;AACvD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;AAEpF,SAAgB,eAAe,CAAC,MAA2B;IACzD,MAAM,MAAM,GAAwB,EAAE,CAAC;IAEvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;QAEpC,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,wBAAwB;QACxB,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACxD,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;QAED,yBAAyB;QACzB,IAAI,KAAK,KAAK,MAAM;YAAE,SAAS,GAAG,IAAI,CAAC;aAClC,IAAI,KAAK,KAAK,OAAO;YAAE,SAAS,GAAG,KAAK,CAAC;QAE9C,MAAM,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
export interface MiroBridgeConfig {
|
|
2
|
+
defaultX?: number;
|
|
3
|
+
defaultY?: number;
|
|
4
|
+
}
|
|
5
|
+
export type MiroColor = "yellow" | "orange" | "red" | "pink" | "violet" | "blue" | "cyan" | "green" | "light_green" | "gray" | "black" | "white";
|
|
6
|
+
export type MiroShapeType = "rectangle" | "circle" | "triangle" | "rhombus" | "parallelogram" | "star" | "arrow" | "cross" | "flow_chart_process" | "flow_chart_decision" | "flow_chart_terminator" | "flow_chart_database" | "flow_chart_document" | "flow_chart_predefined_process";
|
|
7
|
+
export type DiagramNodeShape = "process" | "decision" | "terminator" | "database" | "parallelogram" | "default";
|
|
8
|
+
export interface DiagramNode {
|
|
9
|
+
id: string;
|
|
10
|
+
label: string;
|
|
11
|
+
shape: DiagramNodeShape;
|
|
12
|
+
}
|
|
13
|
+
export interface DiagramEdge {
|
|
14
|
+
from: string;
|
|
15
|
+
to: string;
|
|
16
|
+
label?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface PositionedNode extends DiagramNode {
|
|
19
|
+
x: number;
|
|
20
|
+
y: number;
|
|
21
|
+
}
|
|
22
|
+
export interface DiagramLayout {
|
|
23
|
+
nodes: PositionedNode[];
|
|
24
|
+
bounds: {
|
|
25
|
+
width: number;
|
|
26
|
+
height: number;
|
|
27
|
+
};
|
|
28
|
+
edges: DiagramEdge[];
|
|
29
|
+
}
|
|
30
|
+
export interface AppCardField {
|
|
31
|
+
value?: string;
|
|
32
|
+
fillColor?: string;
|
|
33
|
+
textColor?: string;
|
|
34
|
+
iconUrl?: string;
|
|
35
|
+
iconShape?: "round" | "square";
|
|
36
|
+
tooltip?: string;
|
|
37
|
+
}
|
|
38
|
+
export interface BoardItem {
|
|
39
|
+
id: string;
|
|
40
|
+
type: string;
|
|
41
|
+
content?: string;
|
|
42
|
+
x?: number;
|
|
43
|
+
y?: number;
|
|
44
|
+
width?: number;
|
|
45
|
+
height?: number;
|
|
46
|
+
parentId?: string;
|
|
47
|
+
style?: Record<string, any>;
|
|
48
|
+
}
|
|
49
|
+
export interface BoardConnector {
|
|
50
|
+
id: string;
|
|
51
|
+
startItemId: string;
|
|
52
|
+
endItemId: string;
|
|
53
|
+
caption?: string;
|
|
54
|
+
}
|
|
55
|
+
export interface BoardTag {
|
|
56
|
+
id: string;
|
|
57
|
+
title: string;
|
|
58
|
+
color?: string;
|
|
59
|
+
itemIds: string[];
|
|
60
|
+
}
|
|
61
|
+
export interface BoardState {
|
|
62
|
+
items: BoardItem[];
|
|
63
|
+
connectors: BoardConnector[];
|
|
64
|
+
tags: BoardTag[];
|
|
65
|
+
version: number;
|
|
66
|
+
updatedAt: string;
|
|
67
|
+
}
|
|
68
|
+
export interface MiroToolResult {
|
|
69
|
+
requestId: string;
|
|
70
|
+
result?: any;
|
|
71
|
+
error?: string;
|
|
72
|
+
}
|
|
73
|
+
export interface MiroBridgeOutput {
|
|
74
|
+
__outputs: {
|
|
75
|
+
boardState: BoardState;
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/MiroBridge/util/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/MiroBridge/util/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare const MiroCredential: {
|
|
2
|
+
name: string;
|
|
3
|
+
displayName: string;
|
|
4
|
+
description: string;
|
|
5
|
+
properties: ({
|
|
6
|
+
name: string;
|
|
7
|
+
displayName: string;
|
|
8
|
+
type: "string";
|
|
9
|
+
required: boolean;
|
|
10
|
+
secret: boolean;
|
|
11
|
+
description: string;
|
|
12
|
+
placeholder: string;
|
|
13
|
+
} | {
|
|
14
|
+
name: string;
|
|
15
|
+
displayName: string;
|
|
16
|
+
type: "string";
|
|
17
|
+
required: boolean;
|
|
18
|
+
description: string;
|
|
19
|
+
placeholder: string;
|
|
20
|
+
secret?: undefined;
|
|
21
|
+
})[];
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/credentials/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;CAuB1B,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MiroCredential = void 0;
|
|
4
|
+
exports.MiroCredential = {
|
|
5
|
+
name: "miroCredential",
|
|
6
|
+
displayName: "Miro",
|
|
7
|
+
description: "Credentials for Miro REST API",
|
|
8
|
+
properties: [
|
|
9
|
+
{
|
|
10
|
+
name: "accessToken",
|
|
11
|
+
displayName: "Access Token",
|
|
12
|
+
type: "string",
|
|
13
|
+
required: true,
|
|
14
|
+
secret: true,
|
|
15
|
+
description: "Miro OAuth access token",
|
|
16
|
+
placeholder: "eyJtaXJvLm9yaWdpbiI6...",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
name: "boardId",
|
|
20
|
+
displayName: "Board ID",
|
|
21
|
+
type: "string",
|
|
22
|
+
required: true,
|
|
23
|
+
description: "The Miro board ID (from the board URL)",
|
|
24
|
+
placeholder: "uXjVIxxxxxx=",
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/credentials/index.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,MAAM;IACnB,WAAW,EAAE,+BAA+B;IAC5C,UAAU,EAAE;QACV;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,cAAc;YAC3B,IAAI,EAAE,QAAiB;YACvB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,yBAAyB;YACtC,WAAW,EAAE,yBAAyB;SACvC;QACD;YACE,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,UAAU;YACvB,IAAI,EAAE,QAAiB;YACvB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,wCAAwC;YACrD,WAAW,EAAE,cAAc;SAC5B;KACF;CACF,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,MAAM,uDAeV,CAAC;AAEH,eAAe,MAAM,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
const plugin_base_1 = require("@gravity-platform/plugin-base");
|
|
40
|
+
const package_json_1 = __importDefault(require("../package.json"));
|
|
41
|
+
const plugin = (0, plugin_base_1.createPlugin)({
|
|
42
|
+
name: package_json_1.default.name,
|
|
43
|
+
version: package_json_1.default.version,
|
|
44
|
+
description: package_json_1.default.description,
|
|
45
|
+
async setup(api) {
|
|
46
|
+
const { initializePlatformFromAPI } = await Promise.resolve().then(() => __importStar(require("@gravity-platform/plugin-base")));
|
|
47
|
+
initializePlatformFromAPI(api);
|
|
48
|
+
const { MiroBridgeNode } = await Promise.resolve().then(() => __importStar(require("./MiroBridge/node")));
|
|
49
|
+
api.registerNode(MiroBridgeNode);
|
|
50
|
+
const { MiroCredential } = await Promise.resolve().then(() => __importStar(require("./credentials")));
|
|
51
|
+
api.registerCredential(MiroCredential);
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
exports.default = plugin;
|
|
55
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAAoF;AACpF,mEAA0C;AAE1C,MAAM,MAAM,GAAG,IAAA,0BAAY,EAAC;IAC1B,IAAI,EAAE,sBAAW,CAAC,IAAI;IACtB,OAAO,EAAE,sBAAW,CAAC,OAAO;IAC5B,WAAW,EAAE,sBAAW,CAAC,WAAW;IAEpC,KAAK,CAAC,KAAK,CAAC,GAAqB;QAC/B,MAAM,EAAE,yBAAyB,EAAE,GAAG,wDAAa,+BAA+B,GAAC,CAAC;QACpF,yBAAyB,CAAC,GAAG,CAAC,CAAC;QAE/B,MAAM,EAAE,cAAc,EAAE,GAAG,wDAAa,mBAAmB,GAAC,CAAC;QAC7D,GAAG,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QAEjC,MAAM,EAAE,cAAc,EAAE,GAAG,wDAAa,eAAe,GAAC,CAAC;QACzD,GAAG,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;IACzC,CAAC;CACF,CAAC,CAAC;AAEH,kBAAe,MAAM,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@gravity-platform/miro-bridge",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "MiroBridge node: LLM-driven Miro board manipulation via MCP tools. Dispatches commands to the MiroBridge browser component running in the Miro iframe; results return via USER_ACTION sendUserAction.",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "tsc",
|
|
9
|
+
"dev": "tsc --watch",
|
|
10
|
+
"clean": "rm -rf dist"
|
|
11
|
+
},
|
|
12
|
+
"dependencies": {
|
|
13
|
+
"@gravity-platform/plugin-base": "*"
|
|
14
|
+
},
|
|
15
|
+
"devDependencies": {
|
|
16
|
+
"typescript": "^5.0.0"
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"dist/**/*",
|
|
20
|
+
"README.md"
|
|
21
|
+
],
|
|
22
|
+
"publishConfig": {
|
|
23
|
+
"access": "public"
|
|
24
|
+
}
|
|
25
|
+
}
|