8cb1f9f479
Publish SDK (PyPI) / publish (push) Has been cancelled
Publish SDK (npm) / publish (@aionui/officecli-sdk) (push) Has been cancelled
SDK smoke / smoke (windows-latest) (push) Has been cancelled
Publish SDK (npm) / publish (@officecli/officecli-sdk) (push) Has been cancelled
Publish SDK (npm) / publish (@officecli/sdk) (push) Has been cancelled
Publish SDK (npm) / publish (officecli-sdk) (push) Has been cancelled
SDK smoke / smoke (macos-latest) (push) Has been cancelled
SDK smoke / smoke (ubuntu-latest) (push) Has been cancelled
Skill parity / diff (push) Has been cancelled
91 lines
3.1 KiB
JSON
91 lines
3.1 KiB
JSON
{
|
|
"$schema": "../_schema.json",
|
|
"format": "pptx",
|
|
"element": "modernComment",
|
|
"parent": "slide",
|
|
"operations": {
|
|
"add": true,
|
|
"set": true,
|
|
"get": true,
|
|
"query": true,
|
|
"remove": true
|
|
},
|
|
"paths": {
|
|
"positional": [
|
|
"/slide[N]/modernComment[K]",
|
|
"/slide[N]/modernComment[K]/reply[R]"
|
|
]
|
|
},
|
|
"note": "Modern p188 (Office 2018/8) threaded comments. Distinct OOXML element from the legacy /slide[N]/comment[M]. Top-level threads live in PowerPointCommentPart (/ppt/comments/…); authors live in the presentation-level PowerPointAuthorsPart. Replies are nested as /slide[N]/modernComment[K]/reply[R] and surface as children on Get of the top-level node. resolved is a thread-level state (top-level only). Removing a top-level path removes the whole thread, mirroring PowerPoint UI.",
|
|
"properties": {
|
|
"author": {
|
|
"type": "string",
|
|
"add": true,
|
|
"set": true,
|
|
"get": true,
|
|
"examples": ["--prop author=\"Alice\""],
|
|
"readback": "author name",
|
|
"enforcement": "report"
|
|
},
|
|
"initials": {
|
|
"type": "string",
|
|
"description": "author initials. Defaults to derived from author name when omitted.",
|
|
"add": true,
|
|
"set": true,
|
|
"get": true,
|
|
"examples": ["--prop initials=A"],
|
|
"readback": "initials",
|
|
"enforcement": "report"
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"description": "comment body (plain text — rich-text replies deferred).",
|
|
"add": true,
|
|
"set": true,
|
|
"get": true,
|
|
"examples": ["--prop text=\"Please review\""],
|
|
"readback": "comment body text",
|
|
"enforcement": "report"
|
|
},
|
|
"resolved": {
|
|
"type": "bool",
|
|
"description": "Thread-level resolved state. Applies only to top-level comments; set on a reply path is rejected as unsupported.",
|
|
"add": true,
|
|
"set": true,
|
|
"get": true,
|
|
"examples": ["--prop resolved=true"],
|
|
"readback": "bool (true/false)",
|
|
"enforcement": "report"
|
|
},
|
|
"created": {
|
|
"type": "string",
|
|
"description": "ISO-8601 timestamp. Defaults to DateTime.UtcNow on add. Set accepts any ISO-8601 string; normalized to UTC `Z` form on readback.",
|
|
"add": true,
|
|
"set": true,
|
|
"get": true,
|
|
"examples": ["--prop created=2026-01-15T10:30:00Z"],
|
|
"readback": "ISO-8601 UTC",
|
|
"enforcement": "report"
|
|
},
|
|
"parent": {
|
|
"type": "string",
|
|
"description": "Path of an existing top-level modernComment to reply to. Add only — supplying parent= turns the new comment into a reply nested under that thread. Empty/missing creates a top-level comment.",
|
|
"add": true,
|
|
"set": false,
|
|
"get": true,
|
|
"examples": ["--prop parent='/slide[1]/modernComment[1]'"],
|
|
"readback": "parent comment path, or null for top-level",
|
|
"enforcement": "report"
|
|
},
|
|
"id": {
|
|
"type": "string",
|
|
"description": "GUID identifier assigned by the engine on add.",
|
|
"add": false,
|
|
"set": false,
|
|
"get": true,
|
|
"readback": "GUID in {…} form",
|
|
"enforcement": "report"
|
|
}
|
|
}
|
|
}
|