AdaptiveCards/schemas/host-config.json

774 строки
17 KiB
JSON

{
"definitions": {
"AdaptiveCardConfig": {
"type": "object",
"description": "Toplevel options for `AdaptiveCards`",
"properties": {
"allowCustomStyle": {
"type": "boolean",
"description": "Controls whether custom styling is allowed",
"default": true
}
}
},
"ActionsConfig": {
"type": "object",
"description": "Options for `Action`s",
"properties": {
"actionsOrientation": {
"type": "string",
"description": "Controls how buttons are laid out",
"default": "horizontal",
"enum": [
"horizontal",
"vertical"
]
},
"actionAlignment": {
"type": "string",
"description": "Control layout of buttons",
"default": "stretch",
"enum": [
"left",
"center",
"right",
"stretch"
]
},
"buttonSpacing": {
"type": "integer",
"description": "Controls how much spacing to use between buttons",
"default": 10
},
"maxActions": {
"type": "integer",
"description": "Controls how many actions are allowed in total",
"default": 5
},
"spacing": {
"type": "string",
"description": "Controls overall spacing of action element",
"default": "default",
"enum": [
"default",
"none",
"small",
"medium",
"large",
"extraLarge",
"padding"
]
},
"showCard": {
"$ref": "#/definitions/ShowCardConfig"
},
"iconPlacement": {
"type": "string",
"description": "Controls where to place the action icon",
"default": "aboveTitle",
"enum": [
"aboveTitle",
"leftOfTitle"
]
},
"iconSize": {
"type": "integer",
"description": "Controls size of action icon",
"default": 30
}
}
},
"ContainerStyleConfig": {
"type": "object",
"description": "Controls styling of a container",
"properties": {
"backgroundColor": {
"type": [
"string",
"null"
],
"default": "#FFFFFFFF"
},
"foregroundColors": {
"$ref": "#/definitions/ForegroundColorsConfig"
}
}
},
"ContainerStylesConfig": {
"type": "object",
"description": "Controls styling for default and emphasis containers",
"properties": {
"default": {
"$ref": "#/definitions/ContainerStyleConfig",
"description": "Default container style"
},
"emphasis": {
"$ref": "#/definitions/ContainerStyleConfig",
"description": "Container style to use for emphasis"
}
}
},
"ErrorMessageConfig": {
"type": "object",
"description": "Controls styling for input error messages",
"version": "1.3",
"properties": {
"size": {
"type": "string",
"description": "Font size to use for the error message",
"default": "default",
"enum": [
"small",
"default",
"medium",
"large",
"extraLarge"
]
},
"spacing": {
"type": "string",
"description": "Amount of spacing to be used between input and error message",
"default": "default",
"enum": [
"default",
"none",
"small",
"medium",
"large",
"extraLarge",
"padding"
]
},
"weight": {
"type": "string",
"description": "Font weight that should be used for error messages",
"default": "default",
"enum": [
"lighter",
"default",
"bolder"
]
}
}
},
"FactSetConfig": {
"type": "object",
"description": "Controls the display of `FactSet`s",
"properties": {
"title": {
"$ref": "#/definitions/FactSetTextConfig",
"default": {
"weight": "bolder",
"size": "default",
"color": "default",
"fontType": "default",
"isSubtle": false,
"wrap": true,
"maxWidth": 150
}
},
"value": {
"$ref": "#/definitions/FactSetTextConfig",
"default": {
"weight": "default",
"size": "default",
"color": "default",
"fontType": "default",
"isSubtle": false,
"wrap": true,
"maxWidth": 0
}
},
"spacing": {
"type": "integer",
"default": 10
}
}
},
"FontColorConfig": {
"type": "object",
"properties": {
"default": {
"type": [
"string",
"null"
],
"description": "Color to use when displaying default text"
},
"subtle": {
"type": [
"string",
"null"
],
"description": "Color to use when displaying subtle text"
}
}
},
"FontSizesConfig": {
"type": "object",
"description": "Controls font size metrics for different text styles",
"properties": {
"small": {
"type": "integer",
"description": "Small font size",
"default": 10
},
"default": {
"type": "integer",
"description": "Default font size",
"default": 12
},
"medium": {
"type": "integer",
"description": "Medium font size",
"default": 14
},
"large": {
"type": "integer",
"description": "Large font size",
"default": 17
},
"extraLarge": {
"type": "integer",
"description": "Extra large font size",
"default": 20
}
}
},
"FontWeightsConfig": {
"type": "object",
"description": "Controls font weight metrics",
"properties": {
"lighter": {
"type": "integer",
"default": 200
},
"default": {
"type": "integer",
"default": 400
},
"bolder": {
"type": "integer",
"default": 800
}
}
},
"ForegroundColorsConfig": {
"type": "object",
"description": "Controls various font colors",
"properties": {
"default": {
"$ref": "#/definitions/FontColorConfig",
"default": {
"default": "#FF000000",
"subtle": "#B2000000"
}
},
"accent": {
"$ref": "#/definitions/FontColorConfig",
"default": {
"default": "#FF0000FF",
"subtle": "#B20000FF"
}
},
"dark": {
"$ref": "#/definitions/FontColorConfig",
"default": {
"default": "#FF101010",
"subtle": "#B2101010"
}
},
"light": {
"$ref": "#/definitions/FontColorConfig",
"default": {
"default": "#FFFFFFFF",
"subtle": "#B2FFFFFF"
}
},
"good": {
"$ref": "#/definitions/FontColorConfig",
"default": {
"default": "#FF008000",
"subtle": "#B2008000"
}
},
"warning": {
"$ref": "#/definitions/FontColorConfig",
"default": {
"default": "#FFFFD700",
"subtle": "#B2FFD700"
}
},
"attention": {
"$ref": "#/definitions/FontColorConfig",
"default": {
"default": "#FF8B0000",
"subtle": "#B28B0000"
}
}
}
},
"ImageSetConfig": {
"type": "object",
"description": "Controls how `ImageSet`s are displayed",
"properties": {
"imageSize": {
"type": "string",
"description": "Controls individual image sizing",
"enum": [
"auto",
"stretch",
"small",
"medium",
"large"
],
"default": "auto"
},
"maxImageHeight": {
"type": "integer",
"description": "Constrain image height to this value",
"default": 100
}
}
},
"ImageSizesConfig": {
"type": "object",
"description": "Controls `Image` sizes",
"properties": {
"small": {
"type": "integer",
"description": "Small image size value",
"default": 80
},
"medium": {
"type": "integer",
"description": "Medium image size value",
"default": 120
},
"large": {
"type": "integer",
"description": "Large image size value",
"default": 180
}
}
},
"InputsConfig": {
"type": "object",
"description": "Controls display and behavior of Input types",
"version": "1.3",
"properties": {
"label": {
"$ref": "#/definitions/LabelConfig"
},
"errorMessage": {
"$ref": "#/definitions/ErrorMessageConfig"
}
}
},
"InputLabelConfig": {
"type": "object",
"description": "Controls display of input labels",
"version": "1.3",
"properties": {
"color": {
"type": "string",
"description": "Color of the label",
"default": "default",
"enum": [
"default",
"dark",
"light",
"accent",
"good",
"warning",
"attention"
]
},
"isSubtle": {
"type": "boolean",
"description": "Whether the label should be displayed using a lighter weight font",
"default": false
},
"size": {
"type": "string",
"description": "Size of the label text",
"default": "default",
"enum": [
"small",
"default",
"medium",
"large",
"extraLarge"
]
},
"suffix": {
"type": "string",
"description": "Suffix that should be appended to labels of this type"
},
"weight": {
"type": "string",
"default": "default",
"description": "Font weight that should be used for this type of label",
"enum": [
"Lighter",
"Default",
"Bolder"
]
}
}
},
"LabelConfig": {
"type": "object",
"description": "Controls display of input labels",
"version": "1.3",
"properties": {
"inputSpacing": {
"type": "string",
"description": "Amount of spacing to be used between label and input",
"default": "default",
"enum": [
"default",
"none",
"small",
"medium",
"large",
"extraLarge",
"padding"
]
},
"requiredInputs": {
"$ref": "#/definitions/InputLabelConfig",
"description": "Label config for required Inputs"
},
"optionalInputs": {
"$ref": "#/definitions/InputLabelConfig",
"description": "Label config for optional Inputs"
}
}
},
"MediaConfig": {
"type": "object",
"version": "1.1",
"description": "Controls the display and behavior of `Media` elements",
"properties": {
"defaultPoster": {
"type": "string",
"format": "uri",
"description": "URI to image to display when play button hasn't been invoked"
},
"playButton": {
"type": "string",
"format": "uri",
"description": "Image to display as play button"
},
"allowInlinePlayback": {
"type": "boolean",
"description": "Whether to display media inline or invoke externally",
"default": true
}
}
},
"SeparatorConfig": {
"type": "object",
"description": "Controls how separators are displayed",
"properties": {
"lineThickness": {
"type": "integer",
"description": "Thickness of separator line",
"default": 1
},
"lineColor": {
"type": [
"string",
"null"
],
"description": "Color to use when drawing separator line",
"default": "#B2000000"
}
}
},
"ShowCardConfig": {
"type": "object",
"description": "Controls behavior and styling of `Action.ShowCard`",
"properties": {
"actionMode": {
"type": "string",
"description": "Controls how the card is displayed. Note: Popup show cards are not recommended for cards with input validation, and may be deprecated in the future.",
"enum": [
"inline",
"popup"
],
"default": "inline"
},
"style": {
"$ref": "#/definitions/ContainerStyleConfig",
"default": "emphasis"
},
"inlineTopMargin": {
"type": "integer",
"description": "Amount of margin to use when displaying the card",
"default": 16
}
}
},
"SpacingsConfig": {
"type": "object",
"description": "Controls how elements are to be laid out",
"properties": {
"small": {
"type": "integer",
"description": "Small spacing value",
"default": 3
},
"default": {
"type": "integer",
"description": "Default spacing value",
"default": 8
},
"medium": {
"type": "integer",
"description": "Medium spacing value",
"default": 20
},
"large": {
"type": "integer",
"description": "Large spacing value",
"default": 30
},
"extraLarge": {
"type": "integer",
"description": "Extra large spacing value",
"default": 40
},
"padding": {
"type": "integer",
"description": "Padding value",
"default": 20
}
}
},
"FactSetTextConfig": {
"type": "object",
"description": "Parameters controlling the display of text in a fact set",
"properties": {
"size": {
"type": "string",
"description": "Size of font for fact set text",
"enum": [
"default",
"small",
"medium",
"large",
"extraLarge"
],
"default": "default"
},
"weight": {
"type": "string",
"description": "Weight of font for fact set text",
"enum": [
"normal",
"lighter",
"bolder"
],
"default": "normal"
},
"color": {
"type": "string",
"description": "Color of font for fact set text",
"enum": [
"default",
"dark",
"light",
"accent",
"good",
"warning",
"attention"
],
"default": "default"
},
"fontType": {
"type": "string",
"description": "Font Type for fact set text",
"enum": [
"default",
"monospace"
],
"default": "default"
},
"isSubtle": {
"type": "boolean",
"description": "Indicates if fact set text should be subtle",
"default": false
},
"wrap": {
"type": "boolean",
"description": "Indicates if fact set text should wrap",
"default": true
},
"maxWidth": {
"type": "integer",
"description": "Maximum width of fact set text",
"default": 0
}
}
},
"TextStyleConfig": {
"type": "object",
"description": "Sets default properties for text of a given style",
"properties": {
"size": {
"type": "string",
"description": "Default font size for text of this style",
"enum": [
"default",
"small",
"medium",
"large",
"extraLarge"
],
"default": "default"
},
"weight": {
"type": "string",
"description": "Default font weight for text of this style",
"enum": [
"normal",
"lighter",
"bolder"
],
"default": "normal"
},
"color": {
"type": "string",
"description": "Default font color for text of this style",
"enum": [
"default",
"dark",
"light",
"accent",
"good",
"warning",
"attention"
],
"default": "default"
},
"fontType": {
"type": "string",
"description": "Default font type for text of this style",
"enum": [
"default",
"monospace"
],
"default": "default"
},
"isSubtle": {
"type": "boolean",
"description": "Whether text of this style should be subtle by default",
"default": false
}
}
},
"TextStylesConfig": {
"type": "object",
"description": "Sets default properties for text of a given style",
"properties": {
"heading": {
"$ref": "#/definitions/TextStyleConfig",
"default": {
"weight": "bolder",
"size": "large",
"color": "default",
"fontType": "default",
"isSubtle": false
}
},
"columnHeader": {
"$ref": "#/definitions/TextStyleConfig",
"default": {
"weight": "bolder",
"size": "default",
"color": "default",
"fontType": "default",
"isSubtle": false
}
}
}
},
"TextBlockConfig": {
"type": "object",
"description": "Configuration settings for TextBlocks",
"properties": {
"headingLevel": {
"type": "integer",
"description": "When displaying a `TextBlock` element with the `heading` style, this is the heading level exposed to accessibility tools.",
"default": 2
}
}
},
"HostConfig": {
"type": "object",
"description": "Contains host-configurable settings",
"properties": {
"supportsInteractivity": {
"type": "boolean",
"description": "Control whether interactive `Action`s are allowed to be invoked",
"default": true
},
"imageBaseUrl": {
"type": "string",
"format": "uri",
"description": "Base URL to be used when loading resources"
},
"fontFamily": {
"type": "string",
"description": "Font face to use when rendering text",
"default": "Calibri"
},
"actions": {
"$ref": "#/definitions/ActionsConfig"
},
"adaptiveCard": {
"$ref": "#/definitions/AdaptiveCardConfig"
},
"containerStyles": {
"$ref": "#/definitions/ContainerStylesConfig"
},
"imageSizes": {
"$ref": "#/definitions/ImageSizesConfig"
},
"imageSet": {
"$ref": "#/definitions/ImageSetConfig"
},
"factSet": {
"$ref": "#/definitions/FactSetConfig"
},
"fontSizes": {
"$ref": "#/definitions/FontSizesConfig"
},
"fontWeights": {
"$ref": "#/definitions/FontWeightsConfig"
},
"spacing": {
"$ref": "#/definitions/SpacingsConfig"
},
"separator": {
"$ref": "#/definitions/SeparatorConfig"
},
"media": {
"$ref": "#/definitions/MediaConfig"
},
"inputs": {
"$ref": "#/definitions/InputsConfig"
},
"textBlock": {
"$ref": "#/definitions/TextBlockConfig"
},
"textStyles": {
"$ref": "#/definitions/TextStylesConfig"
}
}
}
}
}