@progress/kendo-themes-html 14.7.1-dev.3 → 14.7.1-dev.4

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 (133) hide show
  1. package/dist/cjs/datainsights-composer/demos/datainsights-composer.js +1 -1
  2. package/dist/cjs/datainsights-composer/templates/datainsights-composer-data-source-browser-popup.js +1 -1
  3. package/dist/cjs/datainsights-composer/templates/datainsights-composer-data-source-fields-popup.js +1 -1
  4. package/dist/cjs/datainsights-composer/templates/datainsights-composer-error.js +1 -1
  5. package/dist/cjs/datainsights-composer/templates/datainsights-composer-followup.js +1 -1
  6. package/dist/cjs/datainsights-composer/templates/datainsights-composer-history-popup.js +1 -1
  7. package/dist/cjs/datainsights-composer/templates/datainsights-composer-loading.js +1 -1
  8. package/dist/cjs/datainsights-composer/templates/datainsights-composer-prompt-many-data-sources.js +1 -1
  9. package/dist/cjs/datainsights-composer/templates/datainsights-composer-prompt.js +1 -1
  10. package/dist/cjs/datainsights-composer/templates/datainsights-composer-report-edit-panel.js +1 -1
  11. package/dist/cjs/datainsights-composer/templates/datainsights-composer-report.js +1 -1
  12. package/dist/cjs/index.js +1 -1
  13. package/dist/esm/datainsights-composer/templates/datainsights-composer-data-source-browser-popup.mjs +1 -1
  14. package/dist/esm/datainsights-composer/templates/datainsights-composer-data-source-fields-popup.mjs +1 -1
  15. package/dist/esm/index.mjs +1 -1
  16. package/dist/meta/action-sheet.json +86 -0
  17. package/dist/meta/agent-response.json +174 -0
  18. package/dist/meta/appbar.json +42 -0
  19. package/dist/meta/autocomplete.json +163 -0
  20. package/dist/meta/avatar.json +86 -0
  21. package/dist/meta/badge.json +74 -0
  22. package/dist/meta/bottom-nav.json +113 -0
  23. package/dist/meta/breadcrumb.json +86 -0
  24. package/dist/meta/button-group.json +82 -0
  25. package/dist/meta/button.json +125 -0
  26. package/dist/meta/calendar.json +196 -0
  27. package/dist/meta/captcha.json +69 -0
  28. package/dist/meta/card.json +88 -0
  29. package/dist/meta/chart-wizard.json +43 -0
  30. package/dist/meta/chart.json +128 -0
  31. package/dist/meta/chat.json +87 -0
  32. package/dist/meta/checkbox.json +137 -0
  33. package/dist/meta/checkpoint.json +41 -0
  34. package/dist/meta/chip.json +176 -0
  35. package/dist/meta/citation.json +80 -0
  36. package/dist/meta/coloreditor.json +77 -0
  37. package/dist/meta/colorgradient.json +175 -0
  38. package/dist/meta/colorpalette.json +113 -0
  39. package/dist/meta/colorpicker.json +145 -0
  40. package/dist/meta/column-menu.json +200 -0
  41. package/dist/meta/combobox.json +206 -0
  42. package/dist/meta/context-menu.json +126 -0
  43. package/dist/meta/datainsights-composer.json +184 -0
  44. package/dist/meta/dateinput.json +139 -0
  45. package/dist/meta/datepicker.json +154 -0
  46. package/dist/meta/daterangepicker.json +94 -0
  47. package/dist/meta/datetimepicker.json +170 -0
  48. package/dist/meta/dialog.json +73 -0
  49. package/dist/meta/dock-manager.json +94 -0
  50. package/dist/meta/drawer.json +107 -0
  51. package/dist/meta/dropdowngrid.json +159 -0
  52. package/dist/meta/dropdownlist.json +189 -0
  53. package/dist/meta/dropdowntree.json +162 -0
  54. package/dist/meta/dropzone.json +33 -0
  55. package/dist/meta/editor.json +94 -0
  56. package/dist/meta/expansion-panel.json +80 -0
  57. package/dist/meta/fab.json +92 -0
  58. package/dist/meta/file-box.json +62 -0
  59. package/dist/meta/filemanager.json +46 -0
  60. package/dist/meta/filter.json +83 -0
  61. package/dist/meta/floating-label.json +33 -0
  62. package/dist/meta/floating-toolbar.json +111 -0
  63. package/dist/meta/form.json +65 -0
  64. package/dist/meta/gantt.json +289 -0
  65. package/dist/meta/grid.json +861 -0
  66. package/dist/meta/icon.json +65 -0
  67. package/dist/meta/imageeditor.json +209 -0
  68. package/dist/meta/index.json +15055 -0
  69. package/dist/meta/input.json +105 -0
  70. package/dist/meta/label.json +19 -0
  71. package/dist/meta/list.json +79 -0
  72. package/dist/meta/listbox.json +169 -0
  73. package/dist/meta/listview.json +124 -0
  74. package/dist/meta/loader.json +121 -0
  75. package/dist/meta/map.json +34 -0
  76. package/dist/meta/maskedtextbox.json +104 -0
  77. package/dist/meta/mediaplayer.json +110 -0
  78. package/dist/meta/menu-button.json +166 -0
  79. package/dist/meta/menu.json +249 -0
  80. package/dist/meta/message-box.json +46 -0
  81. package/dist/meta/multiselect.json +225 -0
  82. package/dist/meta/multiselecttree.json +191 -0
  83. package/dist/meta/multiviewcalendar.json +121 -0
  84. package/dist/meta/notification.json +80 -0
  85. package/dist/meta/numerictextbox.json +142 -0
  86. package/dist/meta/orgchart.json +141 -0
  87. package/dist/meta/otp.json +145 -0
  88. package/dist/meta/overlay.json +30 -0
  89. package/dist/meta/pager.json +169 -0
  90. package/dist/meta/panelbar.json +120 -0
  91. package/dist/meta/pdf-viewer.json +92 -0
  92. package/dist/meta/pivotgrid.json +143 -0
  93. package/dist/meta/popover.json +73 -0
  94. package/dist/meta/popup.json +41 -0
  95. package/dist/meta/progressbar.json +113 -0
  96. package/dist/meta/prompt-box.json +104 -0
  97. package/dist/meta/prompt.json +151 -0
  98. package/dist/meta/propertygrid.json +171 -0
  99. package/dist/meta/radio.json +130 -0
  100. package/dist/meta/rating.json +108 -0
  101. package/dist/meta/scheduler.json +420 -0
  102. package/dist/meta/scrollview.json +94 -0
  103. package/dist/meta/searchbox.json +68 -0
  104. package/dist/meta/segmented-control.json +137 -0
  105. package/dist/meta/signature.json +96 -0
  106. package/dist/meta/skeleton.json +35 -0
  107. package/dist/meta/slider.json +159 -0
  108. package/dist/meta/smart-box.json +240 -0
  109. package/dist/meta/speech-to-text-button.json +115 -0
  110. package/dist/meta/split-button.json +133 -0
  111. package/dist/meta/splitter.json +93 -0
  112. package/dist/meta/spreadsheet.json +286 -0
  113. package/dist/meta/stepper.json +97 -0
  114. package/dist/meta/switch.json +128 -0
  115. package/dist/meta/table.json +95 -0
  116. package/dist/meta/tabstrip.json +145 -0
  117. package/dist/meta/taskboard.json +134 -0
  118. package/dist/meta/textarea.json +111 -0
  119. package/dist/meta/textbox.json +104 -0
  120. package/dist/meta/tilelayout.json +132 -0
  121. package/dist/meta/timedurationpicker.json +202 -0
  122. package/dist/meta/timeline.json +227 -0
  123. package/dist/meta/timepicker.json +206 -0
  124. package/dist/meta/toolbar.json +209 -0
  125. package/dist/meta/tooltip.json +82 -0
  126. package/dist/meta/treelist.json +250 -0
  127. package/dist/meta/treeview.json +168 -0
  128. package/dist/meta/upload.json +130 -0
  129. package/dist/meta/window.json +87 -0
  130. package/dist/meta/wizard.json +88 -0
  131. package/package.json +11 -6
  132. package/src/datainsights-composer/templates/datainsights-composer-data-source-browser-popup.tsx +1 -1
  133. package/src/datainsights-composer/templates/datainsights-composer-data-source-fields-popup.tsx +5 -5
@@ -0,0 +1,62 @@
1
+ {
2
+ "component": "file-box",
3
+ "name": "FileBox",
4
+ "components": [
5
+ {
6
+ "name": "FileBox",
7
+ "isPrimary": true,
8
+ "rootClass": "k-file-box",
9
+ "options": [],
10
+ "states": [
11
+ "selected"
12
+ ],
13
+ "aria": [],
14
+ "keyboard": [
15
+ {
16
+ "trigger": "ArrowRight",
17
+ "behavior": "Focuses the next file in the list. If the focus is on the last file, the focus does not move."
18
+ },
19
+ {
20
+ "trigger": "ArrowLeft",
21
+ "behavior": "Focuses the previous file in the list. If the focus is on the first file, the focus does not move."
22
+ },
23
+ {
24
+ "trigger": "Home",
25
+ "behavior": "Focuses the first file in the list."
26
+ },
27
+ {
28
+ "trigger": "End",
29
+ "behavior": "Focuses the last file in the list."
30
+ },
31
+ {
32
+ "trigger": "Delete or Backspace",
33
+ "behavior": "Removes the currently focused file. After removal, the focus moves to the next file in the list if available, or to the previous file if the last file was removed."
34
+ }
35
+ ],
36
+ "ux": [
37
+ {
38
+ "trigger": "File list",
39
+ "behavior": "Displays each selected file with its name, size, and status."
40
+ },
41
+ {
42
+ "trigger": "Remove",
43
+ "behavior": "Each file item has a remove button to discard it from the list."
44
+ },
45
+ {
46
+ "trigger": "Upload status",
47
+ "behavior": "Visual indicators show whether each file is pending, uploading, or done."
48
+ }
49
+ ]
50
+ }
51
+ ],
52
+ "resources": [
53
+ {
54
+ "url": "https://www.w3.org/TR/wai-aria-1.2/#list",
55
+ "text": "WAI-ARIA Specification: List"
56
+ },
57
+ {
58
+ "url": "https://www.w3.org/TR/wai-aria-1.2/#listitem",
59
+ "text": "WAI-ARIA Specification: Listitem"
60
+ }
61
+ ]
62
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "component": "filemanager",
3
+ "name": "Filemanager",
4
+ "components": [
5
+ {
6
+ "name": "FileManager",
7
+ "isPrimary": true,
8
+ "rootClass": "k-filemanager",
9
+ "options": [],
10
+ "states": [
11
+ "disabled"
12
+ ],
13
+ "aria": [
14
+ {
15
+ "prop": null,
16
+ "attribute": "tabindex=\"0\"",
17
+ "description": "The element must be focusable, so that its content would be communicated to the users."
18
+ }
19
+ ],
20
+ "keyboard": [],
21
+ "ux": [
22
+ {
23
+ "trigger": "Folder tree",
24
+ "behavior": "A tree panel on the left lets the user navigate the directory hierarchy."
25
+ },
26
+ {
27
+ "trigger": "Content view",
28
+ "behavior": "The main panel lists the files and folders of the selected directory."
29
+ },
30
+ {
31
+ "trigger": "Breadcrumb",
32
+ "behavior": "A breadcrumb trail shows the current path and allows navigation."
33
+ },
34
+ {
35
+ "trigger": "View toggle",
36
+ "behavior": "Switches between grid (icon) and list file views."
37
+ },
38
+ {
39
+ "trigger": "Toolbar",
40
+ "behavior": "Provides actions such as New Folder, Upload, Delete, and Rename."
41
+ }
42
+ ]
43
+ }
44
+ ],
45
+ "resources": []
46
+ }
@@ -0,0 +1,83 @@
1
+ {
2
+ "component": "filter",
3
+ "name": "Filter",
4
+ "components": [
5
+ {
6
+ "name": "Filter",
7
+ "isPrimary": true,
8
+ "rootClass": "k-filter",
9
+ "options": [],
10
+ "states": [],
11
+ "aria": [
12
+ {
13
+ "prop": null,
14
+ "attribute": "role=\"tree\"",
15
+ "description": "Describes the hierarchical structure of the Filter component."
16
+ },
17
+ {
18
+ "prop": null,
19
+ "attribute": "aria-label",
20
+ "description": "Specifies a label for the Filter component."
21
+ },
22
+ {
23
+ "prop": null,
24
+ "attribute": "role=\"treeitem\"",
25
+ "description": "Each FilterGroup and FilterExpression represent a separate treeitem in the Filter component structure."
26
+ },
27
+ {
28
+ "prop": null,
29
+ "attribute": "role=\"group\"",
30
+ "description": "Represents a group of items in the Filter component."
31
+ },
32
+ {
33
+ "prop": null,
34
+ "attribute": "role=\"toolbar\"",
35
+ "description": "The role represents a collection of tools."
36
+ },
37
+ {
38
+ "prop": null,
39
+ "attribute": "aria-label",
40
+ "description": "Specifies a label for the toolbar."
41
+ }
42
+ ],
43
+ "keyboard": [
44
+ {
45
+ "trigger": "ArrowUp",
46
+ "behavior": "Focuses the previous item (FilterGroup or FilterExpression) in the `tree`."
47
+ },
48
+ {
49
+ "trigger": "ArrowDown",
50
+ "behavior": "Focuses the next item (FilterGroup or FilterExpression) in the `tree`."
51
+ }
52
+ ],
53
+ "ux": [
54
+ {
55
+ "trigger": "Filter groups",
56
+ "behavior": "Conditions are organized in groups with AND / OR logic operators."
57
+ },
58
+ {
59
+ "trigger": "Add condition",
60
+ "behavior": "A button adds a new filter condition to a group."
61
+ },
62
+ {
63
+ "trigger": "Remove condition",
64
+ "behavior": "Each condition has a remove button."
65
+ },
66
+ {
67
+ "trigger": "Field selector",
68
+ "behavior": "A dropdown selects the data field to filter on."
69
+ },
70
+ {
71
+ "trigger": "Operator selector",
72
+ "behavior": "A dropdown selects the comparison operator for the condition."
73
+ }
74
+ ]
75
+ }
76
+ ],
77
+ "resources": [
78
+ {
79
+ "url": "https://www.w3.org/TR/wai-aria-1.2/#toolbar",
80
+ "text": "WAI-ARIA specification for toolbar"
81
+ }
82
+ ]
83
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "component": "floating-label",
3
+ "name": "FloatingLabel",
4
+ "components": [
5
+ {
6
+ "name": "FloatingLabel",
7
+ "isPrimary": true,
8
+ "rootClass": "k-floating-label-container",
9
+ "options": [],
10
+ "states": [
11
+ "hover",
12
+ "focus",
13
+ "valid",
14
+ "invalid",
15
+ "empty",
16
+ "disabled"
17
+ ],
18
+ "aria": [],
19
+ "keyboard": [],
20
+ "ux": [
21
+ {
22
+ "trigger": "Animated label",
23
+ "behavior": "The label starts inside the input field and floats above it when the field is focused or has a value."
24
+ },
25
+ {
26
+ "trigger": "Placeholder replacement",
27
+ "behavior": "Acts as both the visible placeholder and the label before the field is filled."
28
+ }
29
+ ]
30
+ }
31
+ ],
32
+ "resources": []
33
+ }
@@ -0,0 +1,111 @@
1
+ {
2
+ "component": "floating-toolbar",
3
+ "name": "FloatingToolbar",
4
+ "components": [
5
+ {
6
+ "name": "FloatingToolbar",
7
+ "isPrimary": true,
8
+ "rootClass": "k-floating-toolbar",
9
+ "options": [
10
+ {
11
+ "name": "size",
12
+ "values": [
13
+ "small",
14
+ "medium",
15
+ "large"
16
+ ],
17
+ "default": null
18
+ },
19
+ {
20
+ "name": "fillMode",
21
+ "values": [
22
+ "solid",
23
+ "outline",
24
+ "flat"
25
+ ],
26
+ "default": null
27
+ }
28
+ ],
29
+ "states": [],
30
+ "aria": [
31
+ {
32
+ "prop": null,
33
+ "attribute": "role=\"button\"",
34
+ "description": "The drag handle is a non-semantic element exposed as a button; it is a Tab stop independent of the Toolbar's own roving-tabindex group."
35
+ },
36
+ {
37
+ "prop": null,
38
+ "attribute": "aria-label=\"Drag to reposition\"",
39
+ "description": "The drag handle requires an accessible name; override via `dragHandleAriaLabel`."
40
+ },
41
+ {
42
+ "prop": null,
43
+ "attribute": "aria-pressed=\"true\"|\"false\"",
44
+ "description": "Implementations must toggle this to reflect whether Move mode is currently engaged."
45
+ },
46
+ {
47
+ "prop": null,
48
+ "attribute": "aria-live=\"polite\"",
49
+ "description": "Implementations must announce each Move-mode position change (e.g. \"Moved right\") via a live region, since dragging has no other feedback for screen-reader users."
50
+ }
51
+ ],
52
+ "keyboard": [
53
+ {
54
+ "trigger": "—(inherited)",
55
+ "behavior": "The Toolbar's own keyboard map applies in full to its actions (roving tabindex, arrow-key navigation, Home/End, Enter, Alt+ArrowDown/Up). The drag handle is a separate Tab stop before/after the Toolbar and is not part of that roving-tabindex group."
56
+ },
57
+ {
58
+ "trigger": "M",
59
+ "behavior": "When draggable, activates the keyboard-driven \"Move\" mode on the drag handle (accessible equivalent to pointer drag)."
60
+ },
61
+ {
62
+ "trigger": "ArrowLeft",
63
+ "behavior": "While Move mode is active, moves the toolbar left."
64
+ },
65
+ {
66
+ "trigger": "ArrowRight",
67
+ "behavior": "While Move mode is active, moves the toolbar right."
68
+ },
69
+ {
70
+ "trigger": "ArrowUp",
71
+ "behavior": "While Move mode is active, moves the toolbar up."
72
+ },
73
+ {
74
+ "trigger": "ArrowDown",
75
+ "behavior": "While Move mode is active, moves the toolbar down."
76
+ },
77
+ {
78
+ "trigger": "Enter",
79
+ "behavior": "While Move mode is active, locks the toolbar in its new position and exits Move mode."
80
+ },
81
+ {
82
+ "trigger": "Escape",
83
+ "behavior": "While Move mode is active, cancels the move, restores the original position, and exits Move mode."
84
+ }
85
+ ],
86
+ "ux": [
87
+ {
88
+ "trigger": "Contextual display",
89
+ "behavior": "Appears near selected content (e.g., selected text in an editor)."
90
+ },
91
+ {
92
+ "trigger": "Floating position",
93
+ "behavior": "Rendered as a floating layer above the page, not in the document flow."
94
+ },
95
+ {
96
+ "trigger": "Action buttons",
97
+ "behavior": "Contains formatting or context-specific action buttons."
98
+ },
99
+ {
100
+ "trigger": "Drag handle",
101
+ "behavior": "When draggable, a persistent handle sits outside the scrollable Toolbar so it's never hidden behind the overflow menu."
102
+ },
103
+ {
104
+ "trigger": "Non-drag alternative",
105
+ "behavior": "Per WCAG 2.5.7, implementations must also offer a way to reposition without a sustained drag gesture (e.g. tap handle, then tap/click the destination); the keyboard Move mode alone does not satisfy this for touch/mouse users. Not addressed by this spec — flagged as an open requirement for consuming implementations."
106
+ }
107
+ ]
108
+ }
109
+ ],
110
+ "resources": []
111
+ }
@@ -0,0 +1,65 @@
1
+ {
2
+ "component": "form",
3
+ "name": "Form",
4
+ "components": [
5
+ {
6
+ "name": "Form",
7
+ "isPrimary": true,
8
+ "rootClass": "k-form",
9
+ "options": [
10
+ {
11
+ "name": "size",
12
+ "values": [
13
+ "small",
14
+ "medium",
15
+ "large"
16
+ ],
17
+ "default": null
18
+ }
19
+ ],
20
+ "states": [],
21
+ "aria": [],
22
+ "keyboard": [
23
+ {
24
+ "trigger": "Shift + Tab",
25
+ "behavior": "Moves focus to the previous focusable element."
26
+ },
27
+ {
28
+ "trigger": "Tab",
29
+ "behavior": "Moves focus to the next focusable element."
30
+ },
31
+ {
32
+ "trigger": "Space",
33
+ "behavior": "Triggers the default action of the focused element for the Space key."
34
+ },
35
+ {
36
+ "trigger": "Enter",
37
+ "behavior": "Triggers the default action of the focused element for the Enter key."
38
+ }
39
+ ],
40
+ "ux": [
41
+ {
42
+ "trigger": "Validation",
43
+ "behavior": "Validates field values on change or submit and shows inline error messages."
44
+ },
45
+ {
46
+ "trigger": "Labels",
47
+ "behavior": "Each field has an associated label that describes its purpose."
48
+ },
49
+ {
50
+ "trigger": "Hint",
51
+ "behavior": "Optional hint text below a field provides additional guidance."
52
+ },
53
+ {
54
+ "trigger": "Required indicator",
55
+ "behavior": "Required fields are visually marked with an asterisk."
56
+ },
57
+ {
58
+ "trigger": "Layout",
59
+ "behavior": "Supports horizontal (label beside field) and vertical (label above field) layouts."
60
+ }
61
+ ]
62
+ }
63
+ ],
64
+ "resources": []
65
+ }
@@ -0,0 +1,289 @@
1
+ {
2
+ "component": "gantt",
3
+ "name": "Gantt",
4
+ "components": [
5
+ {
6
+ "name": "Gantt",
7
+ "isPrimary": true,
8
+ "rootClass": "k-gantt",
9
+ "options": [],
10
+ "states": [],
11
+ "aria": [
12
+ {
13
+ "prop": null,
14
+ "attribute": "role=\"application\"",
15
+ "description": "The Gantt uses role=application to indicate a complex interactive widget."
16
+ },
17
+ {
18
+ "prop": null,
19
+ "attribute": "aria-roledescription",
20
+ "description": "Provides a human-readable description of the component role."
21
+ },
22
+ {
23
+ "prop": null,
24
+ "attribute": "role=\"toolbar\"",
25
+ "description": "The toolbar is a collection of command buttons and inputs."
26
+ },
27
+ {
28
+ "prop": null,
29
+ "attribute": "aria-label",
30
+ "description": "Clarifies the purpose of the toolbar."
31
+ },
32
+ {
33
+ "prop": null,
34
+ "attribute": "aria-label",
35
+ "description": "Icon-only toggle button must have accessible text."
36
+ },
37
+ {
38
+ "prop": null,
39
+ "attribute": "role=\"tree\"",
40
+ "description": "The timeline content area is a tree structure."
41
+ },
42
+ {
43
+ "prop": null,
44
+ "attribute": "role=\"treeitem\"",
45
+ "description": "Each task in the timeline is a tree item."
46
+ },
47
+ {
48
+ "prop": null,
49
+ "attribute": "aria-level",
50
+ "description": "Specifies the nesting level of the task."
51
+ },
52
+ {
53
+ "prop": null,
54
+ "attribute": "aria-describedby",
55
+ "description": "References the tooltip providing task details (when visible)."
56
+ },
57
+ {
58
+ "prop": null,
59
+ "attribute": "aria-hidden=\"true\"",
60
+ "description": "The progress indicator is decorative."
61
+ },
62
+ {
63
+ "prop": null,
64
+ "attribute": "aria-hidden=\"true\"",
65
+ "description": "Task action buttons are hidden from the accessibility tree."
66
+ },
67
+ {
68
+ "prop": null,
69
+ "attribute": "aria-hidden=\"true\"",
70
+ "description": "Dependency lines are decorative."
71
+ }
72
+ ],
73
+ "keyboard": [
74
+ {
75
+ "trigger": "Alt/Opt(Mac) + 1,2,3,...",
76
+ "behavior": "navigates to the view with the respective number"
77
+ },
78
+ {
79
+ "trigger": "F10",
80
+ "behavior": "Focuses the ToolBar."
81
+ },
82
+ {
83
+ "trigger": "Tab",
84
+ "behavior": "Moves focus to the corresponding task in the TimeLine."
85
+ },
86
+ {
87
+ "trigger": "Shift + Tab",
88
+ "behavior": "If focus has been previously on the same line in the treelist, moves focus to last focused cell. Otherwise, focus the last cell on the same line."
89
+ },
90
+ {
91
+ "trigger": "Home",
92
+ "behavior": "Moves focus to first task."
93
+ },
94
+ {
95
+ "trigger": "End",
96
+ "behavior": "Moves focus to the last task."
97
+ },
98
+ {
99
+ "trigger": "ArrowUp",
100
+ "behavior": "Moves focus to previous task."
101
+ },
102
+ {
103
+ "trigger": "ArrowDown",
104
+ "behavior": "Moves focus to the next task."
105
+ },
106
+ {
107
+ "trigger": "ArrowLeft",
108
+ "behavior": "Scrolls the view to the left."
109
+ },
110
+ {
111
+ "trigger": "ArrowRight",
112
+ "behavior": "Scrolls the view to the right."
113
+ },
114
+ {
115
+ "trigger": "Enter",
116
+ "behavior": "Gantt Popup Form is opened to provide editing of the task. The dependencies and field edit is made. On close focus is returned on the task."
117
+ },
118
+ {
119
+ "trigger": "Delete",
120
+ "behavior": "The task gets deleted. The focus is moved to the previous task."
121
+ },
122
+ {
123
+ "trigger": "Alt/Opt(Mac) + ArrowRight",
124
+ "behavior": "The task is expanded, if it contains child tasks. The task should remain in focus and the timeline should be scrolled to it."
125
+ },
126
+ {
127
+ "trigger": "Alt/Opt(Mac) + ArrowLeft",
128
+ "behavior": "The task is collapsed, if it contains child tasks. The task should remain in focus and the timeline should be scrolled to it."
129
+ }
130
+ ],
131
+ "ux": [
132
+ {
133
+ "trigger": "Task list",
134
+ "behavior": "A tree list on the left side shows the hierarchy of tasks."
135
+ },
136
+ {
137
+ "trigger": "Timeline",
138
+ "behavior": "Task bars on the right represent duration on a time axis."
139
+ },
140
+ {
141
+ "trigger": "Resize",
142
+ "behavior": "Dragging a bar's edge changes the task duration."
143
+ },
144
+ {
145
+ "trigger": "Drag",
146
+ "behavior": "Dragging a bar horizontally changes the task start date."
147
+ },
148
+ {
149
+ "trigger": "Dependencies",
150
+ "behavior": "Connector lines visualize dependencies between tasks."
151
+ }
152
+ ]
153
+ },
154
+ {
155
+ "name": "GanttColumnsTable",
156
+ "isPrimary": true,
157
+ "rootClass": "k-gantt-columns",
158
+ "options": [],
159
+ "states": [],
160
+ "aria": [
161
+ {
162
+ "prop": null,
163
+ "attribute": "aria-label",
164
+ "description": "The view selector dropdown must have an accessible name."
165
+ },
166
+ {
167
+ "prop": null,
168
+ "attribute": "role=\"presentation\"",
169
+ "description": "The columns grid is presentational."
170
+ },
171
+ {
172
+ "prop": null,
173
+ "attribute": "aria-hidden=\"true\"",
174
+ "description": "The current time marker is decorative."
175
+ },
176
+ {
177
+ "prop": null,
178
+ "attribute": "aria-hidden=\"true\"",
179
+ "description": "Resize handles are decorative."
180
+ },
181
+ {
182
+ "prop": null,
183
+ "attribute": "aria-label",
184
+ "description": "Drag cells must have an accessible name."
185
+ }
186
+ ],
187
+ "keyboard": [],
188
+ "ux": []
189
+ },
190
+ {
191
+ "name": "GanttLine",
192
+ "isPrimary": true,
193
+ "rootClass": "k-gantt-line",
194
+ "options": [],
195
+ "states": [],
196
+ "aria": [
197
+ {
198
+ "prop": null,
199
+ "attribute": "aria-hidden=\"true\"",
200
+ "description": "Dependency connector lines are decorative."
201
+ }
202
+ ],
203
+ "keyboard": [],
204
+ "ux": []
205
+ },
206
+ {
207
+ "name": "GanttRowsTable",
208
+ "isPrimary": true,
209
+ "rootClass": "k-gantt-rows",
210
+ "options": [],
211
+ "states": [],
212
+ "aria": [
213
+ {
214
+ "prop": null,
215
+ "attribute": "role=\"presentation\"",
216
+ "description": "The rows grid is presentational."
217
+ }
218
+ ],
219
+ "keyboard": [],
220
+ "ux": []
221
+ },
222
+ {
223
+ "name": "GanttTask",
224
+ "isPrimary": true,
225
+ "rootClass": "k-task",
226
+ "options": [],
227
+ "states": [],
228
+ "aria": [
229
+ {
230
+ "prop": null,
231
+ "attribute": "aria-hidden=\"true\"",
232
+ "description": "The progress drag handle is decorative."
233
+ }
234
+ ],
235
+ "keyboard": [],
236
+ "ux": [
237
+ {
238
+ "trigger": "Bar representation",
239
+ "behavior": "Renders the task as a horizontal bar whose width represents duration."
240
+ },
241
+ {
242
+ "trigger": "Drag",
243
+ "behavior": "The bar can be dragged horizontally to change the task start date."
244
+ },
245
+ {
246
+ "trigger": "Resize",
247
+ "behavior": "Dragging the bar's right edge changes the task end date."
248
+ },
249
+ {
250
+ "trigger": "Progress handle",
251
+ "behavior": "A drag handle inside the bar adjusts the completion percentage."
252
+ }
253
+ ]
254
+ },
255
+ {
256
+ "name": "GanttTaskDot",
257
+ "isPrimary": true,
258
+ "rootClass": "k-task-dot",
259
+ "options": [],
260
+ "states": [],
261
+ "aria": [
262
+ {
263
+ "prop": null,
264
+ "attribute": "aria-hidden=\"true\"",
265
+ "description": "Task connection dots are decorative."
266
+ }
267
+ ],
268
+ "keyboard": [],
269
+ "ux": []
270
+ },
271
+ {
272
+ "name": "GanttTasksTable",
273
+ "isPrimary": true,
274
+ "rootClass": "k-gantt-tasks",
275
+ "options": [],
276
+ "states": [],
277
+ "aria": [
278
+ {
279
+ "prop": null,
280
+ "attribute": "role=\"presentation\"",
281
+ "description": "The tasks table is presentational."
282
+ }
283
+ ],
284
+ "keyboard": [],
285
+ "ux": []
286
+ }
287
+ ],
288
+ "resources": []
289
+ }