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
86 lines
3.7 KiB
JSON
86 lines
3.7 KiB
JSON
{
|
|
"$schema": "../_schema.json",
|
|
"format": "xlsx",
|
|
"element": "column",
|
|
"elementAliases": ["col"],
|
|
"parent": "sheet",
|
|
"operations": {
|
|
"add": true,
|
|
"set": true,
|
|
"get": true,
|
|
"query": true,
|
|
"remove": true
|
|
},
|
|
"paths": {
|
|
"positional": ["/SheetName/col[X]"]
|
|
},
|
|
"note": "X is a column letter (A,B,…) or 1-based index. Insert/move/clone at an occupied slot shifts every column at or past the slot right by one, and every range-bearing structure on the sheet (mergeCells, CF/DV sqref, autoFilter, hyperlink/table refs, named ranges, formula cell-refs) follows the displacement. 'add --from /SheetName/col[L]' with --before/--after clones cells + single-col mergeCells; relative formula refs are delta-shifted to the new anchor (Excel 'Insert Copied Cells' parity). Excel-style whole-column references (B:B; B:D spans on set) are accepted as input aliases for col[X]; readback paths stay canonical.",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string",
|
|
"description": "column letter to insert at (e.g. 'C'). If omitted, uses index position or appends.",
|
|
"add": true, "set": false, "get": false,
|
|
"examples": ["--prop name=C"],
|
|
"readback": "n/a (used only for addressing)",
|
|
"enforcement": "strict"
|
|
},
|
|
"width": {
|
|
"type": "length",
|
|
"description": "column width in Excel character units (parsed by ParseColWidthChars). Accepts bare number or unit-qualified.",
|
|
"add": true, "set": true, "get": true,
|
|
"examples": ["--prop width=20"],
|
|
"readback": "raw double (character units)",
|
|
"enforcement": "strict"
|
|
},
|
|
"hidden": {
|
|
"type": "bool",
|
|
"description": "hide column.",
|
|
"add": true, "set": true, "get": true,
|
|
"examples": ["--prop hidden=true"],
|
|
"readback": "true when hidden, key absent otherwise",
|
|
"enforcement": "strict"
|
|
},
|
|
"outline": {
|
|
"type": "int",
|
|
"description": "outline/group level 0-7. Currently Set-only. Aliases: outlineLevel, group.",
|
|
"aliases": ["outlinelevel", "group"],
|
|
"add": false, "set": true, "get": false,
|
|
"examples": ["--prop outline=1"],
|
|
"readback": "not surfaced by Get",
|
|
"enforcement": "report"
|
|
},
|
|
"collapsed": {
|
|
"type": "bool",
|
|
"description": "collapsed column-group flag; omitted from Get when not collapsed.",
|
|
"add": false, "set": true, "get": true,
|
|
"examples": ["--prop collapsed=true"],
|
|
"readback": "true when the column group is collapsed",
|
|
"enforcement": "report"
|
|
},
|
|
"numberformat": {
|
|
"type": "string",
|
|
"description": "Excel format code applied to the whole column via a style ref on col@s (number, date, percentage, currency, text @). Mirrors the cell-level numberformat; resolved back through the column's style index on Get.",
|
|
"aliases": ["numfmt", "format"],
|
|
"add": false, "set": true, "get": true,
|
|
"examples": ["--prop numberformat=\"#,##0.00\"", "--prop numberformat=0.00%", "--prop numberformat=yyyy-mm-dd"],
|
|
"readback": "format string as stored (via col style index)",
|
|
"enforcement": "report"
|
|
},
|
|
"customWidth": {
|
|
"type": "bool",
|
|
"description": "Get-only readback. True when the column has an explicit width set (i.e. width is not the sheet default). Mirrors OOXML col@customWidth.",
|
|
"add": false, "set": false, "get": true,
|
|
"readback": "true when column has explicit width",
|
|
"enforcement": "report"
|
|
},
|
|
"autofit": {
|
|
"type": "bool",
|
|
"description": "auto-fit width to cell content. Set-only by design (meaningless at Add since new column has no data).",
|
|
"add": false, "set": true, "get": false,
|
|
"examples": ["--prop autofit=true"],
|
|
"readback": "resolves to width at Set time",
|
|
"enforcement": "strict"
|
|
}
|
|
}
|
|
}
|