@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,68 @@
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/progress-bar.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "progress-bar",
6
+ "displayName": "Progress bar",
7
+ "description": "Progress bars show the progression of a system operation: downloading, uploading, processing, etc., in a visual way. They can represent either determinate or indeterminate progress.",
8
+ "meta": {
9
+ "category": "status",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/progress-bar/"
11
+ },
12
+ "options": {
13
+ "variant": {
14
+ "type": "string",
15
+ "enum": ["default", "over background"],
16
+ "default": "default"
17
+ },
18
+ "staticColor": {
19
+ "type": "string",
20
+ "enum": ["white"],
21
+ "description": "Static color can only be white, otherwise it is default."
22
+ },
23
+ "label": {
24
+ "type": "string"
25
+ },
26
+ "labelPosition": {
27
+ "type": "string",
28
+ "enum": ["top", "side"],
29
+ "default": "top"
30
+ },
31
+ "hideLabel": {
32
+ "type": "boolean",
33
+ "default": false
34
+ },
35
+ "value": {
36
+ "type": "number",
37
+ "description": "Not applicable when indeterminate."
38
+ },
39
+ "minValue": {
40
+ "type": "number",
41
+ "default": 0,
42
+ "description": "Not applicable when indeterminate."
43
+ },
44
+ "maxValue": {
45
+ "type": "number",
46
+ "default": 1,
47
+ "description": "Not applicable when indeterminate."
48
+ },
49
+ "valueLabel": {
50
+ "type": "string"
51
+ },
52
+ "width": {
53
+ "type": "number"
54
+ },
55
+ "size": {
56
+ "type": "string",
57
+ "enum": ["s", "m", "l", "xl"],
58
+ "default": "m"
59
+ },
60
+ "isIndeterminate": {
61
+ "type": "boolean",
62
+ "default": false
63
+ }
64
+ },
65
+ "lifecycle": {
66
+ "introduced": "1.0.0-draft"
67
+ }
68
+ }
@@ -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/progress-circle.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "progress-circle",
6
+ "displayName": "Progress circle",
7
+ "description": "Progress circles show the progression of a system operation such as downloading, uploading, processing, etc. in a visual way. They can represent determinate or indeterminate progress.",
8
+ "meta": {
9
+ "category": "status",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/progress-circle/"
11
+ },
12
+ "options": {
13
+ "variant": {
14
+ "type": "string",
15
+ "enum": ["default", "over background"],
16
+ "default": "default"
17
+ },
18
+ "value": {
19
+ "type": "number",
20
+ "description": "Not applicable when indeterminate."
21
+ },
22
+ "minValue": {
23
+ "type": "number",
24
+ "default": 0,
25
+ "description": "Not applicable when indeterminate."
26
+ },
27
+ "maxValue": {
28
+ "type": "number",
29
+ "default": 1,
30
+ "description": "Not applicable when indeterminate."
31
+ },
32
+ "size": {
33
+ "type": "string",
34
+ "enum": ["s", "m", "l"],
35
+ "default": "m"
36
+ },
37
+ "isIndeterminate": {
38
+ "type": "boolean",
39
+ "default": false
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/radio-button.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "radio-button",
6
+ "displayName": "Radio button",
7
+ "description": "Radio buttons allow users to select a single option from a list of mutually exclusive options.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/radio-button/"
11
+ },
12
+ "options": {
13
+ "isSelected": {
14
+ "type": "boolean",
15
+ "default": false
16
+ },
17
+ "isEmphasized": {
18
+ "type": "boolean",
19
+ "default": false
20
+ },
21
+ "label": {
22
+ "type": "string",
23
+ "description": "The text displayed next to a radio button."
24
+ }
25
+ },
26
+ "states": [
27
+ {
28
+ "name": "hover",
29
+ "trigger": "interaction"
30
+ },
31
+ {
32
+ "name": "down",
33
+ "trigger": "interaction"
34
+ },
35
+ {
36
+ "name": "keyboard-focus",
37
+ "trigger": "interaction"
38
+ }
39
+ ],
40
+ "lifecycle": {
41
+ "introduced": "1.0.0-draft"
42
+ }
43
+ }
@@ -0,0 +1,62 @@
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/radio-group.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "radio-group",
6
+ "displayName": "Radio Group",
7
+ "description": "A radio group is a grouping of radio buttons that are related to each other.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/radio-group/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "labelPosition": {
17
+ "type": "string",
18
+ "enum": ["top", "side"],
19
+ "default": "top"
20
+ },
21
+ "orientation": {
22
+ "type": "string",
23
+ "enum": ["horizontal", "vertical"],
24
+ "default": "vertical"
25
+ },
26
+ "size": {
27
+ "type": "string",
28
+ "enum": ["s", "m", "l", "xl"],
29
+ "default": "m"
30
+ },
31
+ "isEmphasized": {
32
+ "type": "boolean",
33
+ "default": false
34
+ },
35
+ "necessityIndicator": {
36
+ "type": "string",
37
+ "enum": ["text", "icon"],
38
+ "default": "icon"
39
+ },
40
+ "isRequired": {
41
+ "type": "boolean",
42
+ "default": false
43
+ },
44
+ "isError": {
45
+ "type": "boolean",
46
+ "default": false
47
+ },
48
+ "isDisabled": {
49
+ "type": "boolean",
50
+ "default": false
51
+ },
52
+ "errorMessage": {
53
+ "type": "string"
54
+ },
55
+ "description": {
56
+ "type": "string"
57
+ }
58
+ },
59
+ "lifecycle": {
60
+ "introduced": "1.0.0-draft"
61
+ }
62
+ }
@@ -0,0 +1,47 @@
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/rating.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "rating",
6
+ "displayName": "Rating",
7
+ "description": "The rating component lets users apply a rating to an item or experience, such as an image, a forum post, an item for sale in a marketplace, and more.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/rating/"
11
+ },
12
+ "options": {
13
+ "value": {
14
+ "type": "number",
15
+ "minimum": 0,
16
+ "maximum": 5,
17
+ "default": 0,
18
+ "multipleOf": 0.5,
19
+ "description": "From 0 to 5, can be a decimal to represent half stars"
20
+ },
21
+ "isEmphasized": {
22
+ "type": "boolean",
23
+ "default": false
24
+ },
25
+ "isDisabled": {
26
+ "type": "boolean",
27
+ "default": false
28
+ }
29
+ },
30
+ "states": [
31
+ {
32
+ "name": "hover",
33
+ "trigger": "interaction"
34
+ },
35
+ {
36
+ "name": "down",
37
+ "trigger": "interaction"
38
+ },
39
+ {
40
+ "name": "keyboard-focus",
41
+ "trigger": "interaction"
42
+ }
43
+ ],
44
+ "lifecycle": {
45
+ "introduced": "1.0.0-draft"
46
+ }
47
+ }
@@ -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/scroll-zoom-bar.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "scroll-zoom-bar",
6
+ "displayName": "Scroll-zoom bar",
7
+ "description": "Primarily for usage in timelines, a scroll-zoom bar lets a user scroll or zoom with the same control.",
8
+ "meta": {
9
+ "category": "navigation",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/scroll-zoom-bar/"
11
+ },
12
+ "options": {
13
+ "size": {
14
+ "type": "string",
15
+ "enum": ["s", "m", "l"],
16
+ "default": "m"
17
+ },
18
+ "orientation": {
19
+ "type": "string",
20
+ "enum": ["horizontal", "vertical"],
21
+ "default": "horizontal"
22
+ },
23
+ "hideTrack": {
24
+ "type": "boolean",
25
+ "default": false
26
+ },
27
+ "hideHandles": {
28
+ "type": "boolean",
29
+ "default": false
30
+ },
31
+ "scaleDown": {
32
+ "type": "boolean",
33
+ "default": false
34
+ },
35
+ "isDetached": {
36
+ "type": "boolean",
37
+ "default": false
38
+ }
39
+ },
40
+ "states": [
41
+ {
42
+ "name": "hover",
43
+ "trigger": "interaction"
44
+ },
45
+ {
46
+ "name": "keyboard-focus",
47
+ "trigger": "interaction"
48
+ }
49
+ ],
50
+ "lifecycle": {
51
+ "introduced": "1.0.0-draft"
52
+ }
53
+ }
@@ -0,0 +1,72 @@
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/search-field.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "search-field",
6
+ "displayName": "Search field",
7
+ "description": "A search field is used for searching and filtering items.",
8
+ "meta": {
9
+ "category": "inputs",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/search-field/"
11
+ },
12
+ "options": {
13
+ "label": {
14
+ "type": "string"
15
+ },
16
+ "hideLabel": {
17
+ "type": "boolean",
18
+ "default": false
19
+ },
20
+ "icon": {
21
+ "$ref": "https://opensource.adobe.com/spectrum-design-data/schemas/types/workflow-icon.json",
22
+ "description": "Icon must be present if the label is not defined."
23
+ },
24
+ "value": {
25
+ "type": "string"
26
+ },
27
+ "width": {
28
+ "type": "number"
29
+ },
30
+ "size": {
31
+ "type": "string",
32
+ "enum": ["s", "m", "l", "xl"],
33
+ "default": "m",
34
+ "pattern": "^(x?s|m|x{0,3}l)$"
35
+ },
36
+ "helpText": {
37
+ "type": "string"
38
+ },
39
+ "placeholder": {
40
+ "type": "string"
41
+ },
42
+ "isDisabled": {
43
+ "type": "boolean",
44
+ "default": false
45
+ }
46
+ },
47
+ "states": [
48
+ {
49
+ "name": "down",
50
+ "trigger": "interaction"
51
+ },
52
+ {
53
+ "name": "hover",
54
+ "trigger": "interaction"
55
+ },
56
+ {
57
+ "name": "focus-+-hover",
58
+ "trigger": "prop"
59
+ },
60
+ {
61
+ "name": "focus-+-not-hover",
62
+ "trigger": "prop"
63
+ },
64
+ {
65
+ "name": "keyboard-focus",
66
+ "trigger": "interaction"
67
+ }
68
+ ],
69
+ "lifecycle": {
70
+ "introduced": "1.0.0-draft"
71
+ }
72
+ }
@@ -0,0 +1,76 @@
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/segmented-control.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "segmented-control",
6
+ "displayName": "Segmented Control",
7
+ "description": "Segmented controls allow users to select one option from a set of mutually exclusive options.",
8
+ "meta": {
9
+ "category": "navigation",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/segmented-control/"
11
+ },
12
+ "options": {
13
+ "orientation": {
14
+ "type": "string",
15
+ "enum": ["horizontal", "vertical"],
16
+ "default": "horizontal"
17
+ },
18
+ "isFluid": {
19
+ "type": "boolean",
20
+ "default": false,
21
+ "description": "If true, the control takes up the full width of its container. Only applicable to horizontal segmented controls."
22
+ },
23
+ "alignment": {
24
+ "type": "string",
25
+ "enum": ["start", "center"],
26
+ "default": "start"
27
+ },
28
+ "hideTracker": {
29
+ "type": "boolean",
30
+ "default": false,
31
+ "description": "If true, the tracker that indicates the selected item is hidden."
32
+ },
33
+ "selectedItem": {
34
+ "type": "string",
35
+ "description": "The identifier of the currently selected item."
36
+ },
37
+ "keyboardActivation": {
38
+ "type": "string",
39
+ "enum": ["manual", "automatic"],
40
+ "default": "manual"
41
+ },
42
+ "items": {
43
+ "type": "array",
44
+ "description": "An array of segmented control items.",
45
+ "items": {
46
+ "type": "object",
47
+ "properties": {
48
+ "label": {
49
+ "type": "string",
50
+ "description": "The text displayed for the segmented control item."
51
+ },
52
+ "isDisabled": {
53
+ "type": "boolean",
54
+ "default": false,
55
+ "description": "Whether the segmented control item is disabled."
56
+ },
57
+ "state": {
58
+ "type": "string",
59
+ "enum": ["default", "hover", "keyboard focus"],
60
+ "default": "default",
61
+ "description": "The interaction state of the segmented control item."
62
+ },
63
+ "contentVariant": {
64
+ "type": "string",
65
+ "enum": ["label-only", "icon-only", "icon-label"],
66
+ "default": "icon-label",
67
+ "description": "Controls whether the segmented control item displays a label, an icon, or both."
68
+ }
69
+ }
70
+ }
71
+ }
72
+ },
73
+ "lifecycle": {
74
+ "introduced": "1.0.0-draft"
75
+ }
76
+ }
@@ -0,0 +1,62 @@
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/select-box.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "select-box",
6
+ "displayName": "Select box",
7
+ "meta": {
8
+ "category": "inputs",
9
+ "documentationUrl": "https://spectrum.adobe.com/page/select-box/"
10
+ },
11
+ "options": {
12
+ "label": {
13
+ "type": "string"
14
+ },
15
+ "orientation": {
16
+ "type": "string",
17
+ "enum": ["horizontal", "vertical"],
18
+ "default": "vertical"
19
+ },
20
+ "body": {
21
+ "type": "string"
22
+ },
23
+ "isSelected": {
24
+ "type": "boolean",
25
+ "default": false
26
+ },
27
+ "hideIllustration": {
28
+ "type": "boolean",
29
+ "default": false
30
+ },
31
+ "showCheckbox": {
32
+ "type": "boolean",
33
+ "default": false
34
+ },
35
+ "isDisabled": {
36
+ "type": "boolean",
37
+ "default": false
38
+ },
39
+ "multiple": {
40
+ "type": "boolean",
41
+ "default": false,
42
+ "description": "Set to true to allow multiple selections."
43
+ }
44
+ },
45
+ "states": [
46
+ {
47
+ "name": "down",
48
+ "trigger": "interaction"
49
+ },
50
+ {
51
+ "name": "hover",
52
+ "trigger": "interaction"
53
+ },
54
+ {
55
+ "name": "keyboard-focus",
56
+ "trigger": "interaction"
57
+ }
58
+ ],
59
+ "lifecycle": {
60
+ "introduced": "1.0.0-draft"
61
+ }
62
+ }
@@ -0,0 +1,71 @@
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/side-navigation.json",
4
+ "specVersion": "1.0.0-draft",
5
+ "name": "side-navigation",
6
+ "displayName": "Side navigation",
7
+ "description": "Side navigation lets users navigate the entire content of a product or a section. These can be used for a single level or a multi-level navigation.",
8
+ "meta": {
9
+ "category": "navigation",
10
+ "documentationUrl": "https://spectrum.adobe.com/page/side-navigation/"
11
+ },
12
+ "options": {
13
+ "items": {
14
+ "type": "array",
15
+ "description": "The list of navigation items.",
16
+ "items": {
17
+ "type": "object",
18
+ "properties": {
19
+ "label": {
20
+ "type": "string",
21
+ "description": "Text label for the navigation item."
22
+ },
23
+ "state": {
24
+ "type": "string",
25
+ "enum": ["default", "hover", "down", "keyboard focus"],
26
+ "default": "default",
27
+ "description": "State of the navigation item."
28
+ },
29
+ "icon": {
30
+ "type": "string",
31
+ "description": "Optional icon token for the navigation item."
32
+ },
33
+ "isSelected": {
34
+ "type": "boolean",
35
+ "default": false,
36
+ "description": "Whether the item is currently selected."
37
+ },
38
+ "isDisabled": {
39
+ "type": "boolean",
40
+ "default": false,
41
+ "description": "Whether the item is disabled."
42
+ }
43
+ },
44
+ "required": ["label"]
45
+ }
46
+ },
47
+ "selectionMode": {
48
+ "type": "string",
49
+ "enum": ["none", "single", "multiple"],
50
+ "default": "single",
51
+ "description": "How selection is handled for items."
52
+ }
53
+ },
54
+ "states": [
55
+ {
56
+ "name": "hover",
57
+ "trigger": "interaction"
58
+ },
59
+ {
60
+ "name": "down",
61
+ "trigger": "interaction"
62
+ },
63
+ {
64
+ "name": "keyboard-focus",
65
+ "trigger": "interaction"
66
+ }
67
+ ],
68
+ "lifecycle": {
69
+ "introduced": "1.0.0-draft"
70
+ }
71
+ }