@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,79 @@
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/tabs.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "tabs",
6
+ "displayName": "Tabs",
7
+ "description": "Tabs organize content into multiple sections and allow users to navigate between them. The content under the set of tabs should be related and form a coherent unit.",
8
+ "meta": {
9
+ "category": "navigation",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/tabs/"
11
+ },
12
+ "options": {
13
+ "orientation": {
14
+ "type": "string",
15
+ "enum": ["horizontal", "vertical"],
16
+ "default": "horizontal"
17
+ },
18
+ "items": {
19
+ "type": "array",
20
+ "description": "An array of tab items.",
21
+ "items": {
22
+ "type": "object",
23
+ "properties": {
24
+ "label": {
25
+ "type": "string",
26
+ "description": "The text displayed for the tab item."
27
+ },
28
+ "isDisabled": {
29
+ "type": "boolean",
30
+ "default": false,
31
+ "description": "Whether the tab is disabled."
32
+ },
33
+ "state": {
34
+ "type": "string",
35
+ "enum": ["default", "hover", "keyboard focus"],
36
+ "default": "default",
37
+ "description": "The interaction state of the tab item."
38
+ },
39
+ "contentVariant": {
40
+ "type": "string",
41
+ "enum": ["label-only", "icon-only", "icon-label"],
42
+ "default": "icon-label",
43
+ "description": "Controls whether the tab displays a label, an icon, or both."
44
+ },
45
+ "density": {
46
+ "type": "string",
47
+ "enum": ["compact", "regular"],
48
+ "default": "regular"
49
+ },
50
+ "isFluid": {
51
+ "type": "boolean",
52
+ "default": false,
53
+ "description": "This overrides density and is only applicable to horizontal tabs."
54
+ },
55
+ "isEmphasized": {
56
+ "type": "boolean",
57
+ "default": false
58
+ },
59
+ "alignment": {
60
+ "type": "string",
61
+ "enum": ["start", "center"],
62
+ "default": "start"
63
+ },
64
+ "selectedItem": {
65
+ "description": "(list of available items)"
66
+ },
67
+ "keyboardActivation": {
68
+ "type": "string",
69
+ "enum": ["manual", "automatic"],
70
+ "default": "manual"
71
+ }
72
+ }
73
+ }
74
+ }
75
+ },
76
+ "lifecycle": {
77
+ "introduced": "1.0.0-draft"
78
+ }
79
+ }
@@ -0,0 +1,53 @@
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/tag-field.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "tag-field",
6
+ "displayName": "Tag field",
7
+ "description": "A tag field is an input field that allows users to enter and manage tags.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/tag-field/"
11
+ },
12
+ "options": {
13
+ "size": {
14
+ "type": "string",
15
+ "enum": ["s", "m", "l"],
16
+ "default": "m"
17
+ },
18
+ "style": {
19
+ "type": "string",
20
+ "enum": ["keyword", "icon", "thumbnail", "avatar"],
21
+ "default": "keyword"
22
+ },
23
+ "isDisabled": {
24
+ "type": "boolean",
25
+ "default": false
26
+ },
27
+ "hideLabel": {
28
+ "type": "boolean",
29
+ "default": false
30
+ }
31
+ },
32
+ "states": [
33
+ {
34
+ "name": "hover",
35
+ "trigger": "interaction"
36
+ },
37
+ {
38
+ "name": "focus-+-hover",
39
+ "trigger": "prop"
40
+ },
41
+ {
42
+ "name": "focus-+-not-hover",
43
+ "trigger": "prop"
44
+ },
45
+ {
46
+ "name": "keyboard-focus",
47
+ "trigger": "interaction"
48
+ }
49
+ ],
50
+ "lifecycle": {
51
+ "introduced": "1.0.0-draft"
52
+ }
53
+ }
@@ -0,0 +1,35 @@
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/tag-group.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "tag-group",
6
+ "displayName": "Tag group",
7
+ "description": "A tag group is a collection of tags that represent a set of related items.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/tag-group/"
11
+ },
12
+ "options": {
13
+ "size": {
14
+ "type": "string",
15
+ "enum": ["s", "m", "l"],
16
+ "default": "m"
17
+ },
18
+ "labelPosition": {
19
+ "type": "string",
20
+ "enum": ["top", "side"],
21
+ "default": "top"
22
+ },
23
+ "hideLabel": {
24
+ "type": "boolean",
25
+ "default": false
26
+ },
27
+ "actionLabel": {
28
+ "type": "string",
29
+ "description": "If undefined, this button does not appear."
30
+ }
31
+ },
32
+ "lifecycle": {
33
+ "introduced": "1.0.0-draft"
34
+ }
35
+ }
@@ -0,0 +1,54 @@
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/tag.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "tag",
6
+ "displayName": "Tag",
7
+ "description": "Tags allow users to categorize content. They can represent keywords or people, and are grouped to describe an item or a search request.",
8
+ "meta": {
9
+ "category": "navigation",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/tag/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "hasAvatar": {
17
+ "type": "boolean",
18
+ "default": false
19
+ },
20
+ "isRemovable": {
21
+ "type": "boolean",
22
+ "default": false
23
+ },
24
+ "isError": {
25
+ "type": "boolean",
26
+ "default": false
27
+ },
28
+ "isDisabled": {
29
+ "type": "boolean",
30
+ "default": false
31
+ },
32
+ "isReadOnly": {
33
+ "type": "boolean",
34
+ "default": false
35
+ }
36
+ },
37
+ "states": [
38
+ {
39
+ "name": "hover",
40
+ "trigger": "interaction"
41
+ },
42
+ {
43
+ "name": "down",
44
+ "trigger": "interaction"
45
+ },
46
+ {
47
+ "name": "keyboard-focus",
48
+ "trigger": "interaction"
49
+ }
50
+ ],
51
+ "lifecycle": {
52
+ "introduced": "1.0.0-draft"
53
+ }
54
+ }
@@ -0,0 +1,58 @@
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/takeover-dialog.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "takeover-dialog",
6
+ "displayName": "Takeover dialog",
7
+ "description": "Takeover dialogs are larger, flexible dialogs that contain other components to support complex workflows.",
8
+ "meta": {
9
+ "category": "feedback",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/takeover-dialog/"
11
+ },
12
+ "options": {
13
+ "title": {
14
+ "type": "string"
15
+ },
16
+ "description": {
17
+ "type": "string"
18
+ },
19
+ "variant": {
20
+ "type": "string",
21
+ "enum": ["dialog", "full screen"],
22
+ "default": "dialog"
23
+ },
24
+ "primaryActionLabel": {
25
+ "type": "string"
26
+ },
27
+ "secondaryActionLabel": {
28
+ "type": "string",
29
+ "description": "If undefined, this button does not appear."
30
+ },
31
+ "cancelActionLabel": {
32
+ "type": "string",
33
+ "default": "cancel",
34
+ "description": "If undefined, this button does not appear."
35
+ },
36
+ "slots": {
37
+ "type": "array",
38
+ "description": "Areas where other components can be inserted (e.g. Side navigation, Steplist, Forms).",
39
+ "items": {
40
+ "type": "object",
41
+ "properties": {
42
+ "name": {
43
+ "type": "string",
44
+ "description": "Identifier for the slot (e.g. 'sidebar', 'content', 'footer')."
45
+ },
46
+ "component": {
47
+ "type": "string",
48
+ "description": "The type of component placed in this slot (e.g. side-navigation, steplist, form)."
49
+ }
50
+ },
51
+ "required": ["name", "component"]
52
+ }
53
+ }
54
+ },
55
+ "lifecycle": {
56
+ "introduced": "1.0.0-draft"
57
+ }
58
+ }
@@ -0,0 +1,103 @@
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/text-area.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "text-area",
6
+ "displayName": "Text area",
7
+ "description": "A text area lets a user input a longer amount of text than a standard text field. It can include all of the standard validation options supported by the text field component.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/text-area/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "labelPosition": {
17
+ "type": "string",
18
+ "default": "top",
19
+ "enum": ["top", "side"]
20
+ },
21
+ "hideLabel": {
22
+ "type": "boolean",
23
+ "default": false
24
+ },
25
+ "value": {
26
+ "type": "string",
27
+ "description": "from minValue to maxValue"
28
+ },
29
+ "width": {
30
+ "type": "number"
31
+ },
32
+ "size": {
33
+ "type": "string",
34
+ "enum": ["s", "m", "l", "xl"],
35
+ "default": "m"
36
+ },
37
+ "necessityIndicator": {
38
+ "type": "string",
39
+ "enum": ["text", "icon"],
40
+ "default": "icon"
41
+ },
42
+ "isRequired": {
43
+ "type": "boolean",
44
+ "default": false
45
+ },
46
+ "hasCharacterCount": {
47
+ "type": "boolean",
48
+ "default": false
49
+ },
50
+ "showValidIcon": {
51
+ "type": "boolean",
52
+ "default": false
53
+ },
54
+ "isError": {
55
+ "type": "boolean",
56
+ "default": false
57
+ },
58
+ "isDisabled": {
59
+ "type": "boolean",
60
+ "default": false
61
+ },
62
+ "hideDragIcon": {
63
+ "type": "boolean",
64
+ "default": false
65
+ },
66
+ "height": {
67
+ "type": "number",
68
+ "description": "If undefined, height is dynamic and grows with input text."
69
+ },
70
+ "helpText": {
71
+ "type": "string"
72
+ },
73
+ "errorMessage": {
74
+ "type": "string"
75
+ },
76
+ "inputType": {
77
+ "type": "string",
78
+ "enum": ["text", "url", "phone", "email", "password"],
79
+ "default": "text"
80
+ }
81
+ },
82
+ "states": [
83
+ {
84
+ "name": "hover",
85
+ "trigger": "interaction"
86
+ },
87
+ {
88
+ "name": "focus-+-hover",
89
+ "trigger": "prop"
90
+ },
91
+ {
92
+ "name": "focus-+-not-hover",
93
+ "trigger": "prop"
94
+ },
95
+ {
96
+ "name": "keyboard-focus",
97
+ "trigger": "interaction"
98
+ }
99
+ ],
100
+ "lifecycle": {
101
+ "introduced": "1.0.0-draft"
102
+ }
103
+ }
@@ -0,0 +1,91 @@
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/text-field.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "text-field",
6
+ "displayName": "Text field",
7
+ "description": "Text fields allow users to input custom text entries with a keyboard. Various options can be shown with the field to communicate the input requirements.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/text-field/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "labelPosition": {
17
+ "type": "string",
18
+ "default": "top",
19
+ "enum": ["top", "side"]
20
+ },
21
+ "hideLabel": {
22
+ "type": "boolean",
23
+ "default": false
24
+ },
25
+ "value": {
26
+ "type": "string",
27
+ "description": "from minValue to maxValue"
28
+ },
29
+ "width": {
30
+ "type": "number"
31
+ },
32
+ "size": {
33
+ "type": "string",
34
+ "enum": ["s", "m", "l", "xl"],
35
+ "default": "m"
36
+ },
37
+ "necessityIndicator": {
38
+ "type": "string",
39
+ "enum": ["text", "icon"],
40
+ "default": "icon"
41
+ },
42
+ "isRequired": {
43
+ "type": "boolean",
44
+ "default": false
45
+ },
46
+ "hasCharacterCount": {
47
+ "type": "boolean",
48
+ "default": false
49
+ },
50
+ "showValidIcon": {
51
+ "type": "boolean",
52
+ "default": false
53
+ },
54
+ "isError": {
55
+ "type": "boolean",
56
+ "default": false,
57
+ "description": "If there is an error, this property overrides show valid icon."
58
+ },
59
+ "isDisabled": {
60
+ "type": "boolean",
61
+ "default": false
62
+ },
63
+ "helpText": {
64
+ "type": "string"
65
+ },
66
+ "errorMessage": {
67
+ "type": "string"
68
+ }
69
+ },
70
+ "states": [
71
+ {
72
+ "name": "hover",
73
+ "trigger": "interaction"
74
+ },
75
+ {
76
+ "name": "focus-+-hover",
77
+ "trigger": "prop"
78
+ },
79
+ {
80
+ "name": "focus-+-not-hover",
81
+ "trigger": "prop"
82
+ },
83
+ {
84
+ "name": "keyboard-focus",
85
+ "trigger": "interaction"
86
+ }
87
+ ],
88
+ "lifecycle": {
89
+ "introduced": "1.0.0-draft"
90
+ }
91
+ }
@@ -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/thumbnail.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "thumbnail",
6
+ "displayName": "Thumbnail",
7
+ "description": "Thumbnails are small representations of images or content used for previews and navigation in galleries, lists, and media collections.",
8
+ "meta": {
9
+ "category": "navigation",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/thumbnail/"
11
+ },
12
+ "options": {
13
+ "size": {
14
+ "type": "number",
15
+ "enum": [50, 75, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000]
16
+ }
17
+ },
18
+ "states": [
19
+ {
20
+ "name": "disabled",
21
+ "trigger": "prop"
22
+ }
23
+ ],
24
+ "lifecycle": {
25
+ "introduced": "1.0.0-draft"
26
+ }
27
+ }
@@ -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/toast.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "toast",
6
+ "displayName": "Toast",
7
+ "description": "Toasts display brief, temporary notifications. They're meant to be noticed without disrupting a user's experience or requiring an action to be taken.",
8
+ "meta": {
9
+ "category": "feedback",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/toast/"
11
+ },
12
+ "options": {
13
+ "text": {
14
+ "type": "string"
15
+ },
16
+ "variant": {
17
+ "type": "string",
18
+ "enum": ["neutral", "informative", "positive", "negative"],
19
+ "default": "neutral"
20
+ },
21
+ "actionLabel": {
22
+ "type": "string",
23
+ "description": "If undefined, this button does not appear."
24
+ },
25
+ "isAutoDismissible": {
26
+ "type": "boolean",
27
+ "default": false
28
+ }
29
+ },
30
+ "lifecycle": {
31
+ "introduced": "1.0.0-draft"
32
+ }
33
+ }
@@ -0,0 +1,54 @@
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/tooltip.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "tooltip",
6
+ "displayName": "Tooltip",
7
+ "description": "Tooltips show contextual help or information about specific components when a user hovers or focuses on them.",
8
+ "meta": {
9
+ "category": "feedback",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/tooltip/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "variant": {
17
+ "type": "string",
18
+ "enum": ["neutral", "informative", "negative"],
19
+ "default": "neutral"
20
+ },
21
+ "hasIcon": {
22
+ "type": "boolean",
23
+ "description": "If the neutral variant, there is never an icon.",
24
+ "default": false
25
+ },
26
+ "maxWidth": {
27
+ "type": "number",
28
+ "default": 160,
29
+ "description": "units: pixels"
30
+ },
31
+ "placement": {
32
+ "type": "string",
33
+ "enum": ["top", "bottom", "left", "right"],
34
+ "default": "top"
35
+ },
36
+ "shouldFlip": {
37
+ "type": "boolean",
38
+ "default": false
39
+ },
40
+ "offset": {
41
+ "type": "number",
42
+ "default": 4,
43
+ "description": "units: pixels"
44
+ },
45
+ "containerPadding": {
46
+ "type": "number",
47
+ "default": 8,
48
+ "description": "units: pixels"
49
+ }
50
+ },
51
+ "lifecycle": {
52
+ "introduced": "1.0.0-draft"
53
+ }
54
+ }
@@ -0,0 +1,21 @@
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/tray.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "tray",
6
+ "displayName": "Tray",
7
+ "description": "Trays are containers that display transient content such as menus, options, additional actions, and more. They only exist on mobile experiences and are used for exposing types of content that may be too overwhelming for popovers.",
8
+ "meta": {
9
+ "category": "containers",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/tray/"
11
+ },
12
+ "options": {
13
+ "height": {
14
+ "type": "string",
15
+ "default": "auto"
16
+ }
17
+ },
18
+ "lifecycle": {
19
+ "introduced": "1.0.0-draft"
20
+ }
21
+ }
@@ -0,0 +1,63 @@
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/tree-view.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "tree-view",
6
+ "displayName": "Tree view",
7
+ "description": "A tree view provides users with a way to navigate nested hierarchical information.",
8
+ "meta": {
9
+ "category": "navigation",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/tree-view/"
11
+ },
12
+ "options": {
13
+ "size": {
14
+ "type": "string",
15
+ "enum": ["s", "m", "l", "xl"],
16
+ "default": "m"
17
+ },
18
+ "isDetached": {
19
+ "type": "boolean",
20
+ "default": false
21
+ },
22
+ "isEmphasized": {
23
+ "type": "boolean",
24
+ "default": false
25
+ },
26
+ "showDragIcon": {
27
+ "type": "boolean",
28
+ "default": false
29
+ },
30
+ "selectionMode": {
31
+ "type": "string",
32
+ "enum": ["single", "multiple"],
33
+ "default": "multiple"
34
+ },
35
+ "selectionStyle": {
36
+ "type": "string",
37
+ "enum": ["checkbox", "highlight"],
38
+ "default": "checkbox"
39
+ },
40
+ "selectionBehavior": {
41
+ "type": "string",
42
+ "enum": ["toggle", "replace"],
43
+ "default": "toggle"
44
+ }
45
+ },
46
+ "states": [
47
+ {
48
+ "name": "hover",
49
+ "trigger": "interaction"
50
+ },
51
+ {
52
+ "name": "down",
53
+ "trigger": "interaction"
54
+ },
55
+ {
56
+ "name": "keyboard-focus",
57
+ "trigger": "interaction"
58
+ }
59
+ ],
60
+ "lifecycle": {
61
+ "introduced": "1.0.0-draft"
62
+ }
63
+ }