Files
wehub-resource-sync 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
chore: import upstream snapshot with attribution
2026-07-13 13:09:29 +08:00

275 lines
10 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"$schema": "../_schema.json",
"format": "xlsx",
"element": "conditionalformatting",
"elementAliases": ["cf"],
"parent": "sheet",
"operations": {
"add": true,
"set": true,
"get": true,
"query": true,
"remove": true
},
"paths": {
"positional": ["/SheetName/cf[N]"]
},
"note": "Aliases: cf, cfextended. Type names map to xlsx CF rules (cellIs, colorScale, dataBar, iconSet, containsText, top/bottom N, etc.).",
"properties": {
"type": {
"type": "enum",
"description": "CF rule type.",
"values": ["cellIs", "colorScale", "dataBar", "iconSet", "containsText", "notContainsText", "beginsWith", "endsWith", "top", "topN", "top10", "topPercent", "bottom", "bottomN", "bottomPercent", "aboveAverage", "belowAverage", "duplicateValues", "uniqueValues", "containsBlanks", "containsErrors", "notContainsBlanks", "notContainsErrors", "formula", "dateOccurring", "today", "yesterday", "tomorrow", "thisWeek", "lastWeek", "nextWeek", "thisMonth", "lastMonth", "nextMonth"],
"aliases": ["rule"],
"add": true, "set": true, "get": true,
"examples": ["--prop type=cellIs", "--prop rule=top10"],
"readback": "rule type",
"enforcement": "report"
},
"ref": {
"type": "string",
"description": "target cell range.",
"aliases": ["range", "sqref"],
"add": true, "set": true, "get": true,
"examples": ["--prop ref=A1:A10", "--prop sqref=A1:A10"],
"readback": "cell range",
"enforcement": "report"
},
"fill": {
"type": "color",
"description": "background fill color for matched cells. Use this for cellIs, text, top/bottom, and formula rules.",
"add": true, "set": true, "get": true,
"examples": ["--prop fill=FFFF00"],
"readback": "#-prefixed hex",
"enforcement": "report"
},
"operator": {
"type": "string",
"description": "operator for cellIs/text rules.",
"add": true, "set": true, "get": true,
"examples": ["--prop operator=greaterThan"],
"readback": "operator",
"enforcement": "report"
},
"value": {
"type": "string",
"description": "threshold / comparison value.",
"aliases": ["formula1", "formula"],
"add": true, "set": true, "get": true,
"examples": ["--prop value=100", "--prop formula=$A1>5"],
"readback": "value/formula",
"enforcement": "report"
},
"color": {
"type": "color",
"description": "bar color for dataBar rules only. For cellIs/text/formula rules, use 'fill' instead.",
"add": true, "set": true, "get": true,
"examples": ["--prop color=#FFFF00"],
"readback": "#-prefixed hex",
"enforcement": "report"
},
"value2": {
"type": "string",
"description": "second threshold for between/notBetween cellIs rules. Alias: maxvalue.",
"aliases": ["maxvalue"],
"add": true, "set": true, "get": true,
"examples": ["--prop value=10 --prop value2=20"],
"readback": "value/formula",
"enforcement": "report"
},
"text": {
"type": "string",
"description": "needle for containsText/notContainsText/beginsWith/endsWith rules.",
"add": true, "set": true, "get": true,
"examples": ["--prop type=containsText --prop text=ERROR"],
"readback": "needle string",
"enforcement": "report"
},
"rank": {
"type": "number",
"description": "rank for top/bottom N rules. Aliases: top, bottomN.",
"aliases": ["top", "bottomN"],
"add": true, "set": true, "get": true,
"examples": ["--prop type=topN --prop rank=10"],
"readback": "integer rank",
"enforcement": "report"
},
"percent": {
"type": "bool",
"description": "treat 'rank' as a percentile rather than count (top/bottom rules).",
"add": true, "set": true, "get": true,
"examples": ["--prop type=top --prop rank=10 --prop percent=true"],
"readback": "true/false",
"enforcement": "report"
},
"bottom": {
"type": "bool",
"description": "select bottom-N instead of top-N (top/bottom rules).",
"add": true, "set": true, "get": true,
"examples": ["--prop type=bottom --prop rank=5"],
"readback": "true/false",
"enforcement": "report"
},
"aboveAverage": {
"type": "bool",
"description": "aboveAverage rule: true=above, false=below. Alias: above.",
"aliases": ["above"],
"add": true, "set": false, "get": true,
"examples": ["--prop type=aboveAverage --prop aboveAverage=true"],
"readback": "true/false",
"enforcement": "report"
},
"stdDev": {
"type": "number",
"description": "stdDev offset for aboveAverage rules (1 = 1σ above mean). Add-time only — Get does not surface this back today.",
"add": true, "set": false, "get": false,
"examples": ["--prop stdDev=1"],
"readback": "n/a",
"enforcement": "report"
},
"equalAverage": {
"type": "bool",
"description": "include the mean in aboveAverage matching. Add-time only — Get does not surface this back today.",
"add": true, "set": false, "get": false,
"examples": ["--prop equalAverage=true"],
"readback": "n/a",
"enforcement": "report"
},
"period": {
"type": "string",
"description": "time-period token for dateOccurring rules (today, yesterday, tomorrow, thisWeek, lastWeek, nextWeek, thisMonth, lastMonth, nextMonth). Aliases: timePeriod.",
"aliases": ["timePeriod", "timeperiod"],
"add": true, "set": false, "get": true,
"examples": ["--prop type=dateOccurring --prop period=lastWeek"],
"readback": "period token",
"enforcement": "report"
},
"min": {
"type": "string",
"description": "data-bar minimum value (numeric or 'auto'). Used by dataBar rules.",
"add": true, "set": false, "get": true,
"examples": ["--prop type=dataBar --prop min=0 --prop max=100"],
"readback": "number or token",
"enforcement": "report"
},
"max": {
"type": "string",
"description": "data-bar maximum value (numeric or 'auto'). Used by dataBar rules.",
"add": true, "set": false, "get": true,
"examples": ["--prop type=dataBar --prop max=100"],
"readback": "number or token",
"enforcement": "report"
},
"showValue": {
"type": "bool",
"description": "show numeric label alongside data bar / icon set. Alias: showvalue.",
"aliases": ["showvalue"],
"add": true, "set": true, "get": true,
"examples": ["--prop showValue=false"],
"readback": "true/false",
"enforcement": "report"
},
"negativeColor": {
"type": "color",
"description": "data-bar fill color for negative values.",
"add": true, "set": false, "get": true,
"examples": ["--prop negativeColor=#FF0000"],
"readback": "#-prefixed hex",
"enforcement": "report"
},
"axisColor": {
"type": "color",
"description": "data-bar axis color (separator between positive and negative bars).",
"add": true, "set": false, "get": true,
"examples": ["--prop axisColor=#000000"],
"readback": "#-prefixed hex",
"enforcement": "report"
},
"axisPosition": {
"type": "enum",
"values": ["automatic", "middle", "none"],
"description": "data-bar axis position. Default: automatic. Add-time only — Get does not surface this back today.",
"add": true, "set": false, "get": false,
"examples": ["--prop axisPosition=middle"],
"readback": "n/a",
"enforcement": "report"
},
"minColor": {
"type": "color",
"description": "color-scale color at the minimum stop. Alias: mincolor.",
"aliases": ["mincolor"],
"add": true, "set": true, "get": true,
"examples": ["--prop type=colorScale --prop minColor=#F8696B"],
"readback": "#-prefixed hex",
"enforcement": "report"
},
"maxColor": {
"type": "color",
"description": "color-scale color at the maximum stop. Alias: maxcolor.",
"aliases": ["maxcolor"],
"add": true, "set": true, "get": true,
"examples": ["--prop maxColor=#63BE7B"],
"readback": "#-prefixed hex",
"enforcement": "report"
},
"midColor": {
"type": "color",
"description": "color-scale color at the midpoint stop. Alias: midcolor.",
"aliases": ["midcolor"],
"add": true, "set": false, "get": true,
"examples": ["--prop midColor=#FFEB84"],
"readback": "#-prefixed hex",
"enforcement": "report"
},
"midPoint": {
"type": "string",
"description": "color-scale midpoint value (numeric or percentile). Alias: midpoint. Add-time only — Get does not surface this back today.",
"aliases": ["midpoint"],
"add": true, "set": false, "get": false,
"examples": ["--prop midPoint=50"],
"readback": "n/a",
"enforcement": "report"
},
"iconset": {
"type": "string",
"description": "icon-set name (e.g. 3TrafficLights1, 3Arrows, 5Rating). Alias: icons.",
"aliases": ["icons"],
"add": true, "set": true, "get": true,
"examples": ["--prop type=iconSet --prop iconset=3TrafficLights1"],
"readback": "icon-set name",
"enforcement": "report"
},
"reverse": {
"type": "bool",
"description": "reverse the icon-set ordering.",
"add": true, "set": true, "get": true,
"examples": ["--prop reverse=true"],
"readback": "true/false",
"enforcement": "report"
},
"formula": {
"type": "string",
"description": "formulaCf expression (without leading '=').",
"add": true, "set": true, "get": true,
"examples": ["--prop type=formula --prop formula=ISERROR(A1)"],
"readback": "formula expression",
"enforcement": "report"
},
"type": {
"type": "enum",
"values": ["dataBar", "colorScale", "iconSet", "formula", "topN", "aboveAverage", "duplicateValues", "uniqueValues", "containsText", "cellIs", "timePeriod"],
"description": "Canonical Get-only CF rule type token (camelCase). One key per semantic value — previously split as ruleType + cfType.",
"add": false, "set": false, "get": true,
"readback": "canonical CF type token",
"enforcement": "report"
},
"dxfId": {
"type": "int",
"description": "Get-only readback of the differential format index referenced by this rule (links to the workbook-level dxfs table).",
"add": false, "set": false, "get": true,
"readback": "0-based dxf index",
"enforcement": "report"
}
}
}