@adobe/design-data-spec 0.3.0 → 0.4.0

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.
Files changed (81) hide show
  1. package/components/accordion.json +87 -0
  2. package/components/action-bar.json +21 -0
  3. package/components/action-button.json +75 -0
  4. package/components/action-group.json +68 -0
  5. package/components/alert-banner.json +33 -0
  6. package/components/alert-dialog.json +46 -0
  7. package/components/avatar-group.json +26 -0
  8. package/components/avatar.json +54 -0
  9. package/components/badge.json +73 -0
  10. package/components/body.json +29 -0
  11. package/components/bottom-navigation-android.json +41 -0
  12. package/components/breadcrumbs.json +89 -0
  13. package/components/button-group.json +37 -0
  14. package/components/calendar.json +104 -0
  15. package/components/cards.json +30 -0
  16. package/components/checkbox-group.json +53 -0
  17. package/components/checkbox.json +61 -0
  18. package/components/close-button.json +48 -0
  19. package/components/coach-indicator.json +38 -0
  20. package/components/coach-mark.json +55 -0
  21. package/components/code.json +25 -0
  22. package/components/color-area.json +77 -0
  23. package/components/color-handle.json +35 -0
  24. package/components/color-loupe.json +20 -0
  25. package/components/color-slider.json +79 -0
  26. package/components/color-wheel.json +60 -0
  27. package/components/combo-box.json +94 -0
  28. package/components/contextual-help.json +80 -0
  29. package/components/date-picker.json +161 -0
  30. package/components/detail.json +30 -0
  31. package/components/divider.json +27 -0
  32. package/components/drop-zone.json +45 -0
  33. package/components/field-label.json +43 -0
  34. package/components/heading.json +33 -0
  35. package/components/help-text.json +40 -0
  36. package/components/illustrated-message.json +49 -0
  37. package/components/in-field-progress-button.json +44 -0
  38. package/components/in-field-progress-circle.json +26 -0
  39. package/components/in-line-alert.json +47 -0
  40. package/components/link.json +45 -0
  41. package/components/list-view.json +93 -0
  42. package/components/menu.json +76 -0
  43. package/components/meter.json +48 -0
  44. package/components/number-field.json +70 -0
  45. package/components/opacity-checkerboard.json +25 -0
  46. package/components/picker.json +92 -0
  47. package/components/popover.json +69 -0
  48. package/components/progress-bar.json +68 -0
  49. package/components/progress-circle.json +45 -0
  50. package/components/radio-button.json +43 -0
  51. package/components/radio-group.json +62 -0
  52. package/components/rating.json +47 -0
  53. package/components/scroll-zoom-bar.json +53 -0
  54. package/components/search-field.json +72 -0
  55. package/components/segmented-control.json +76 -0
  56. package/components/select-box.json +62 -0
  57. package/components/side-navigation.json +71 -0
  58. package/components/slider.json +92 -0
  59. package/components/standard-dialog.json +53 -0
  60. package/components/standard-panel.json +53 -0
  61. package/components/status-light.json +54 -0
  62. package/components/steplist.json +56 -0
  63. package/components/swatch-group.json +48 -0
  64. package/components/swatch.json +59 -0
  65. package/components/switch.json +55 -0
  66. package/components/tab-bar-ios.json +41 -0
  67. package/components/table.json +122 -0
  68. package/components/tabs.json +79 -0
  69. package/components/tag-field.json +53 -0
  70. package/components/tag-group.json +35 -0
  71. package/components/tag.json +54 -0
  72. package/components/takeover-dialog.json +58 -0
  73. package/components/text-area.json +103 -0
  74. package/components/text-field.json +91 -0
  75. package/components/thumbnail.json +27 -0
  76. package/components/toast.json +33 -0
  77. package/components/tooltip.json +54 -0
  78. package/components/tray.json +21 -0
  79. package/components/tree-view.json +63 -0
  80. package/package.json +2 -1
  81. package/schemas/component.schema.json +2 -2
@@ -0,0 +1,60 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/color-wheel.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "color-wheel",
6
+ "displayName": "Color wheel",
7
+ "description": "A color wheel lets users visually change an individual channel of a color on a circular track.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/color-wheel/"
11
+ },
12
+ "options": {
13
+ "background": {
14
+ "type": "string",
15
+ "description": "This will vary depending on implementation."
16
+ },
17
+ "value": {
18
+ "type": "number",
19
+ "description": "Number (from minValue to maxValue)"
20
+ },
21
+ "minValue": {
22
+ "type": "number",
23
+ "default": 0
24
+ },
25
+ "maxValue": {
26
+ "type": "number",
27
+ "default": 360
28
+ },
29
+ "step": {
30
+ "type": "number",
31
+ "default": 1
32
+ },
33
+ "size": {
34
+ "type": "number",
35
+ "default": 192,
36
+ "description": "units: px"
37
+ },
38
+ "isDisabled": {
39
+ "type": "boolean",
40
+ "default": false
41
+ }
42
+ },
43
+ "states": [
44
+ {
45
+ "name": "hover",
46
+ "trigger": "interaction"
47
+ },
48
+ {
49
+ "name": "down",
50
+ "trigger": "interaction"
51
+ },
52
+ {
53
+ "name": "keyboard-focus",
54
+ "trigger": "interaction"
55
+ }
56
+ ],
57
+ "lifecycle": {
58
+ "introduced": "1.0.0-draft"
59
+ }
60
+ }
@@ -0,0 +1,94 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/combo-box.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "combo-box",
6
+ "displayName": "Combo box",
7
+ "description": "Combo boxes combine a text entry with a picker menu, allowing users to filter longer lists to only the selections matching a query.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/combo-box/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "labelPosition": {
17
+ "type": "string",
18
+ "enum": ["top", "side", "in line"],
19
+ "default": "top"
20
+ },
21
+ "value": {
22
+ "type": "string"
23
+ },
24
+ "width": {
25
+ "type": "number"
26
+ },
27
+ "size": {
28
+ "type": "string",
29
+ "enum": ["s", "m", "l", "xl"],
30
+ "default": "m"
31
+ },
32
+ "isRequired": {
33
+ "type": "boolean",
34
+ "default": false
35
+ },
36
+ "necessityIndicator": {
37
+ "type": "string",
38
+ "enum": ["text", "icon"],
39
+ "default": "icon"
40
+ },
41
+ "hasAutocomplete": {
42
+ "type": "boolean",
43
+ "default": false
44
+ },
45
+ "menuTrigger": {
46
+ "type": "string",
47
+ "enum": ["input", "focus", "manual"],
48
+ "default": "input"
49
+ },
50
+ "isError": {
51
+ "type": "boolean",
52
+ "default": false
53
+ },
54
+ "isDisabled": {
55
+ "type": "boolean",
56
+ "default": false
57
+ },
58
+ "isReadOnly": {
59
+ "type": "boolean",
60
+ "default": false
61
+ },
62
+ "description": {
63
+ "type": "string"
64
+ },
65
+ "errorMessage": {
66
+ "type": "string"
67
+ }
68
+ },
69
+ "states": [
70
+ {
71
+ "name": "hover-(text-area)",
72
+ "trigger": "prop"
73
+ },
74
+ {
75
+ "name": "hover-(button-area)",
76
+ "trigger": "prop"
77
+ },
78
+ {
79
+ "name": "focus-+-hover",
80
+ "trigger": "prop"
81
+ },
82
+ {
83
+ "name": "focus-+-not-hover",
84
+ "trigger": "prop"
85
+ },
86
+ {
87
+ "name": "keyboard-focus",
88
+ "trigger": "interaction"
89
+ }
90
+ ],
91
+ "lifecycle": {
92
+ "introduced": "1.0.0-draft"
93
+ }
94
+ }
@@ -0,0 +1,80 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/contextual-help.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "contextual-help",
6
+ "displayName": "Contextual help",
7
+ "description": "Contextual help shows a user extra information about the state of either an adjacent component or an entire view. It explains a high-level topic about an experience and can point users to more information elsewhere.",
8
+ "meta": {
9
+ "category": "feedback",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/contextual-help/"
11
+ },
12
+ "options": {
13
+ "icon": {
14
+ "type": "string",
15
+ "enum": ["info", "help"],
16
+ "default": "info"
17
+ },
18
+ "popoverPlacement": {
19
+ "type": "string",
20
+ "enum": [
21
+ "top",
22
+ "top left",
23
+ "top right",
24
+ "top start",
25
+ "top end",
26
+ "bottom",
27
+ "bottom left",
28
+ "bottom right",
29
+ "bottom start",
30
+ "bottom end",
31
+ "left",
32
+ "left top",
33
+ "left bottom",
34
+ "start",
35
+ "start top",
36
+ "start bottom",
37
+ "right",
38
+ "right top",
39
+ "right bottom",
40
+ "end",
41
+ "end top",
42
+ "end bottom"
43
+ ],
44
+ "default": "bottom start"
45
+ },
46
+ "popoverOffset": {
47
+ "type": "number",
48
+ "default": 8
49
+ },
50
+ "href": {
51
+ "type": "string",
52
+ "description": "Optional URL within contextual help content like a 'Learn more' link."
53
+ },
54
+ "popoverCrossOffset": {
55
+ "type": "number",
56
+ "default": 0
57
+ },
58
+ "containerPadding": {
59
+ "type": "number",
60
+ "default": 8
61
+ }
62
+ },
63
+ "states": [
64
+ {
65
+ "name": "down",
66
+ "trigger": "interaction"
67
+ },
68
+ {
69
+ "name": "open",
70
+ "trigger": "prop"
71
+ },
72
+ {
73
+ "name": "keyboard-focus",
74
+ "trigger": "interaction"
75
+ }
76
+ ],
77
+ "lifecycle": {
78
+ "introduced": "1.0.0-draft"
79
+ }
80
+ }
@@ -0,0 +1,161 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/date-picker.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "date-picker",
6
+ "displayName": "Date picker",
7
+ "description": "A date picker lets users enter a single date or a date range. It includes a calendar popover and a field.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/date-picker/"
11
+ },
12
+ "options": {
13
+ "variant": {
14
+ "type": "string",
15
+ "enum": ["single", "double", "triple"],
16
+ "default": "single",
17
+ "description": "Controls the number of months displayed in the calendar popover."
18
+ },
19
+ "selectedDate": {
20
+ "type": "string",
21
+ "description": "The currently selected date. Used when selectionMode is single."
22
+ },
23
+ "selectedRange": {
24
+ "type": "object",
25
+ "description": "The currently selected date range, used when selectionMode is range.",
26
+ "properties": {
27
+ "start": {
28
+ "type": "string",
29
+ "description": "Range start date."
30
+ },
31
+ "end": {
32
+ "type": "string",
33
+ "description": "Range end date."
34
+ }
35
+ }
36
+ },
37
+ "dateField": {
38
+ "type": "object",
39
+ "description": "Configuration for the date input field.",
40
+ "properties": {
41
+ "label": {
42
+ "type": "string",
43
+ "description": "Optional text label displayed with the date field."
44
+ },
45
+ "labelPosition": {
46
+ "type": "string",
47
+ "enum": ["top", "side"],
48
+ "default": "top"
49
+ },
50
+ "hideLabel": {
51
+ "type": "boolean",
52
+ "default": false
53
+ },
54
+ "isDisabled": {
55
+ "type": "boolean",
56
+ "default": false
57
+ },
58
+ "isReadOnly": {
59
+ "type": "boolean",
60
+ "default": false
61
+ },
62
+ "isRequired": {
63
+ "type": "boolean",
64
+ "default": false
65
+ },
66
+ "isError": {
67
+ "type": "boolean",
68
+ "default": false,
69
+ "description": "If there is an error, this property overrides show valid icon."
70
+ },
71
+ "state": {
72
+ "type": "string",
73
+ "enum": [
74
+ "default",
75
+ "hover",
76
+ "hover (in-field button)",
77
+ "focus + hover",
78
+ "focus + open",
79
+ "focus + not hover",
80
+ "keyboard focus"
81
+ ],
82
+ "default": "default"
83
+ }
84
+ }
85
+ },
86
+ "calendarPopover": {
87
+ "type": "object",
88
+ "description": "Configuration for the calendar popover.",
89
+ "properties": {
90
+ "isDisabled": {
91
+ "type": "boolean",
92
+ "default": false
93
+ },
94
+ "minValue": {
95
+ "type": "string",
96
+ "description": "The minimum allowed date that a user may select."
97
+ },
98
+ "maxValue": {
99
+ "type": "string",
100
+ "description": "The maximum allowed date that a user may select (ISO format string)."
101
+ },
102
+ "currentMonth": {
103
+ "type": "number",
104
+ "minimum": 1,
105
+ "maximum": 12,
106
+ "description": "The month currently displayed in the calendar (1 = January, 12 = December)."
107
+ },
108
+ "currentYear": {
109
+ "type": "number",
110
+ "description": "The year currently displayed in the calendar (Gregorian year number)."
111
+ },
112
+ "selectionMode": {
113
+ "type": "string",
114
+ "enum": ["single", "range"],
115
+ "default": "single",
116
+ "description": "Controls whether the calendar allows selecting a single date or a date range."
117
+ },
118
+ "showTimeZone": {
119
+ "type": "boolean",
120
+ "default": false,
121
+ "description": "Whether to show a time zone indicator in the popover."
122
+ },
123
+ "isError": {
124
+ "type": "boolean",
125
+ "default": false,
126
+ "description": "If the calendar popover is in an error state."
127
+ },
128
+ "timeFields": {
129
+ "type": "object",
130
+ "description": "Optional start and end time fields displayed within the calendar popover.",
131
+ "properties": {
132
+ "showStartTime": {
133
+ "type": "boolean",
134
+ "default": false,
135
+ "description": "If true, displays a start time field."
136
+ },
137
+ "showEndTime": {
138
+ "type": "boolean",
139
+ "default": false,
140
+ "description": "If true, displays an end time field."
141
+ },
142
+ "granularity": {
143
+ "type": "string",
144
+ "enum": ["hour", "minute", "second"],
145
+ "default": "minute",
146
+ "description": "The level of time granularity for the time fields."
147
+ },
148
+ "is24Hour": {
149
+ "type": "boolean",
150
+ "default": false,
151
+ "description": "If true, displays time in 24-hour format instead of AM/PM."
152
+ }
153
+ }
154
+ }
155
+ }
156
+ }
157
+ },
158
+ "lifecycle": {
159
+ "introduced": "1.0.0-draft"
160
+ }
161
+ }
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/detail.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "detail",
6
+ "displayName": "Detail",
7
+ "description": "Detail is a typography component used for disclosing extra information or smaller items in hierarchical relationships of text.",
8
+ "meta": {
9
+ "category": "typography",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/detail/"
11
+ },
12
+ "options": {
13
+ "script": {
14
+ "$ref": "https://opensource.adobe.com/spectrum-design-data/schemas/types/typography-script.json"
15
+ },
16
+ "weight": {
17
+ "type": "string",
18
+ "enum": ["light", "default"],
19
+ "default": "default"
20
+ },
21
+ "size": {
22
+ "type": "string",
23
+ "enum": ["s", "m", "l", "xl"],
24
+ "default": "m"
25
+ }
26
+ },
27
+ "lifecycle": {
28
+ "introduced": "1.0.0-draft"
29
+ }
30
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/divider.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "divider",
6
+ "displayName": "Divider",
7
+ "description": "Dividers bring clarity to a layout by grouping and dividing content in close proximity. They can also be used to establish rhythm and hierarchy.",
8
+ "meta": {
9
+ "category": "containers",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/divider/"
11
+ },
12
+ "options": {
13
+ "size": {
14
+ "type": "string",
15
+ "enum": ["s", "m", "l"],
16
+ "default": "s"
17
+ },
18
+ "orientation": {
19
+ "type": "string",
20
+ "enum": ["horizontal", "vertical"],
21
+ "default": "horizontal"
22
+ }
23
+ },
24
+ "lifecycle": {
25
+ "introduced": "1.0.0-draft"
26
+ }
27
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/drop-zone.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "drop-zone",
6
+ "displayName": "Drop zone",
7
+ "description": "A drop zone allows users to drag and drop files or other content into a designated area.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/drop-zone/"
11
+ },
12
+ "options": {
13
+ "accept": {
14
+ "type": "array",
15
+ "items": {
16
+ "type": "string",
17
+ "description": "File types that are accepted by the drop zone."
18
+ }
19
+ },
20
+ "size": {
21
+ "type": "string",
22
+ "enum": ["s", "m", "l"],
23
+ "default": "m"
24
+ },
25
+ "actionLabel": {
26
+ "type": "string",
27
+ "description": "If undefined, this button does not appear."
28
+ },
29
+ "onDrop": {
30
+ "type": "string",
31
+ "description": "Callback function called when files are dropped onto the drop zone."
32
+ },
33
+ "onDragOver": {
34
+ "type": "string",
35
+ "description": "Callback function called when a file is dragged over the drop zone."
36
+ },
37
+ "onDragLeave": {
38
+ "type": "string",
39
+ "description": "Callback function called when a file is dragged out of the drop zone."
40
+ }
41
+ },
42
+ "lifecycle": {
43
+ "introduced": "1.0.0-draft"
44
+ }
45
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/field-label.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "field-label",
6
+ "displayName": "Field label",
7
+ "description": "Field labels give context to the information that a user needs to input. They're commonly used in forms.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/field-label/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "labelPosition": {
17
+ "type": "string",
18
+ "enum": ["top", "side"],
19
+ "default": "top"
20
+ },
21
+ "size": {
22
+ "type": "string",
23
+ "enum": ["s", "m", "l", "xl"],
24
+ "default": "m"
25
+ },
26
+ "necessityIndicator": {
27
+ "type": "string",
28
+ "enum": ["text", "icon"],
29
+ "default": "icon"
30
+ },
31
+ "isRequired": {
32
+ "type": "boolean",
33
+ "default": false
34
+ },
35
+ "isDisabled": {
36
+ "type": "boolean",
37
+ "default": false
38
+ }
39
+ },
40
+ "lifecycle": {
41
+ "introduced": "1.0.0-draft"
42
+ }
43
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/heading.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "heading",
6
+ "displayName": "Heading",
7
+ "description": "Heading is a typography component used to create various levels of hierarchies between text.",
8
+ "meta": {
9
+ "category": "typography",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/heading/"
11
+ },
12
+ "options": {
13
+ "script": {
14
+ "$ref": "https://opensource.adobe.com/spectrum-design-data/schemas/types/typography-script.json"
15
+ },
16
+ "classification": {
17
+ "$ref": "https://opensource.adobe.com/spectrum-design-data/schemas/types/typography-classification.json"
18
+ },
19
+ "weight": {
20
+ "type": "string",
21
+ "enum": ["light", "default", "heavy"],
22
+ "default": "default"
23
+ },
24
+ "size": {
25
+ "type": "string",
26
+ "enum": ["xs", "s", "m", "l", "xl", "xxl", "xxxl"],
27
+ "default": "m"
28
+ }
29
+ },
30
+ "lifecycle": {
31
+ "introduced": "1.0.0-draft"
32
+ }
33
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/help-text.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "help-text",
6
+ "displayName": "Help text",
7
+ "description": "Help text provides either an informative description or an error message that gives more context about what a user needs to input. It’s commonly used in forms.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/help-text/"
11
+ },
12
+ "options": {
13
+ "text": {
14
+ "type": "string"
15
+ },
16
+ "variant": {
17
+ "type": "string",
18
+ "enum": ["neutral", "negative"],
19
+ "default": "neutral"
20
+ },
21
+ "hideIcon": {
22
+ "type": "boolean",
23
+ "default": false,
24
+ "description": "Only applicable if variant is negative."
25
+ },
26
+ "size": {
27
+ "type": "string",
28
+ "enum": ["s", "m", "l", "xl"],
29
+ "default": "m"
30
+ },
31
+ "isDisabled": {
32
+ "type": "boolean",
33
+ "default": false,
34
+ "description": "Help text cannot be both disabled and negative variant."
35
+ }
36
+ },
37
+ "lifecycle": {
38
+ "introduced": "1.0.0-draft"
39
+ }
40
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "$schema": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/component.schema.json",
3
+ "$id": "https://opensource.adobe.com/spectrum-design-data/schemas/v0/components/illustrated-message.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "illustrated-message",
6
+ "displayName": "Illustrated message",
7
+ "description": "An illustrated message displays an illustration with a short title and description, often used for empty states or error states.",
8
+ "meta": {
9
+ "category": "feedback",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/illustrated-message/"
11
+ },
12
+ "options": {
13
+ "illustration": {
14
+ "type": "string",
15
+ "description": "Optional illustration or icon displayed above the message."
16
+ },
17
+ "size": {
18
+ "type": "string",
19
+ "enum": ["s", "m", "l"],
20
+ "default": "m",
21
+ "description": "Size of the illustration."
22
+ },
23
+ "orientation": {
24
+ "type": "string",
25
+ "enum": ["vertical", "horizontal"],
26
+ "default": "vertical",
27
+ "description": "Orientation of the illustrated message."
28
+ },
29
+ "title": {
30
+ "type": "string",
31
+ "description": "Primary heading text of the message."
32
+ },
33
+ "description": {
34
+ "type": "string",
35
+ "description": "Secondary descriptive text providing context or instructions."
36
+ },
37
+ "primaryActionLabel": {
38
+ "type": "string",
39
+ "description": "Label for the primary action button. If undefined, no primary action is shown."
40
+ },
41
+ "secondaryActionLabel": {
42
+ "type": "string",
43
+ "description": "Label for the secondary action button. If undefined, no secondary action is shown."
44
+ }
45
+ },
46
+ "lifecycle": {
47
+ "introduced": "1.0.0-draft"
48
+ }
49
+ }