@progress/kendo-angular-layout 21.4.1-develop.1 → 22.0.0-develop.1

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 (182) hide show
  1. package/avatar/l10n/messages.d.ts +1 -1
  2. package/fesm2022/progress-kendo-angular-layout.mjs +290 -290
  3. package/package.json +12 -20
  4. package/stepper/localization/messages.d.ts +1 -1
  5. package/tabstrip/localization/messages.d.ts +1 -1
  6. package/timeline/localization/messages.d.ts +1 -1
  7. package/esm2022/avatar/avatar.component.mjs +0 -406
  8. package/esm2022/avatar/l10n/custom-messages.component.mjs +0 -53
  9. package/esm2022/avatar/l10n/localized-messages.directive.mjs +0 -40
  10. package/esm2022/avatar/l10n/messages.mjs +0 -27
  11. package/esm2022/avatar/models/fill.mjs +0 -5
  12. package/esm2022/avatar/models/models.mjs +0 -9
  13. package/esm2022/avatar/models/rounded.mjs +0 -5
  14. package/esm2022/avatar/models/shape.mjs +0 -5
  15. package/esm2022/avatar/models/size.mjs +0 -5
  16. package/esm2022/avatar/models/theme-color.mjs +0 -5
  17. package/esm2022/avatar.module.mjs +0 -38
  18. package/esm2022/card/card-actions.component.mjs +0 -177
  19. package/esm2022/card/card-body.component.mjs +0 -37
  20. package/esm2022/card/card-footer.component.mjs +0 -37
  21. package/esm2022/card/card-header.component.mjs +0 -38
  22. package/esm2022/card/card.component.mjs +0 -118
  23. package/esm2022/card/directives/card-media.directive.mjs +0 -33
  24. package/esm2022/card/directives/card-separator.directive.mjs +0 -61
  25. package/esm2022/card/directives/card-subtitle.directive.mjs +0 -31
  26. package/esm2022/card/directives/card-title.directive.mjs +0 -31
  27. package/esm2022/card/models/actions-layout.mjs +0 -5
  28. package/esm2022/card/models/card-action.mjs +0 -21
  29. package/esm2022/card.module.mjs +0 -45
  30. package/esm2022/common/direction.mjs +0 -5
  31. package/esm2022/common/dom-queries.mjs +0 -47
  32. package/esm2022/common/orientation.mjs +0 -5
  33. package/esm2022/common/preventable-event.mjs +0 -31
  34. package/esm2022/common/styling-classes.mjs +0 -5
  35. package/esm2022/common/util.mjs +0 -85
  36. package/esm2022/directives.mjs +0 -174
  37. package/esm2022/drawer/animations.mjs +0 -146
  38. package/esm2022/drawer/drawer-container.component.mjs +0 -135
  39. package/esm2022/drawer/drawer-content.component.mjs +0 -39
  40. package/esm2022/drawer/drawer.component.mjs +0 -471
  41. package/esm2022/drawer/drawer.service.mjs +0 -105
  42. package/esm2022/drawer/events/drawer-list-select.event.mjs +0 -29
  43. package/esm2022/drawer/events/select-event.mjs +0 -33
  44. package/esm2022/drawer/item.component.mjs +0 -210
  45. package/esm2022/drawer/list.component.mjs +0 -165
  46. package/esm2022/drawer/models/constants.mjs +0 -8
  47. package/esm2022/drawer/models/drawer-animation.interface.mjs +0 -5
  48. package/esm2022/drawer/models/drawer-item-expand.interface.mjs +0 -5
  49. package/esm2022/drawer/models/drawer-item.interface.mjs +0 -5
  50. package/esm2022/drawer/models/drawer-view-item.interface.mjs +0 -5
  51. package/esm2022/drawer/models/mode.mjs +0 -5
  52. package/esm2022/drawer/models/position.mjs +0 -5
  53. package/esm2022/drawer/template-directives/drawer-template.directive.mjs +0 -43
  54. package/esm2022/drawer/template-directives/footer-template.directive.mjs +0 -36
  55. package/esm2022/drawer/template-directives/header-template.directive.mjs +0 -36
  56. package/esm2022/drawer/template-directives/item-template.directive.mjs +0 -44
  57. package/esm2022/drawer/template-directives.mjs +0 -8
  58. package/esm2022/drawer/types.mjs +0 -5
  59. package/esm2022/drawer/util.mjs +0 -16
  60. package/esm2022/drawer.module.mjs +0 -43
  61. package/esm2022/expansionpanel/animations.mjs +0 -23
  62. package/esm2022/expansionpanel/events/action-event.mjs +0 -21
  63. package/esm2022/expansionpanel/expansionpanel-title.directive.mjs +0 -38
  64. package/esm2022/expansionpanel/expansionpanel.component.mjs +0 -515
  65. package/esm2022/expansionpanel.module.mjs +0 -38
  66. package/esm2022/gridlayout.module.mjs +0 -38
  67. package/esm2022/index.mjs +0 -89
  68. package/esm2022/layout.module.mjs +0 -89
  69. package/esm2022/layouts/grid-layout.component.mjs +0 -179
  70. package/esm2022/layouts/gridlayout-item.component.mjs +0 -82
  71. package/esm2022/layouts/models/gridlayout-gap-settings.mjs +0 -5
  72. package/esm2022/layouts/models/gridlayout-row-col-size.mjs +0 -5
  73. package/esm2022/layouts/models/layout-align-settings.mjs +0 -5
  74. package/esm2022/layouts/models/layout-horizontal-align.mjs +0 -5
  75. package/esm2022/layouts/models/layout-vertical-align.mjs +0 -5
  76. package/esm2022/layouts/models.mjs +0 -10
  77. package/esm2022/layouts/stack-layout.component.mjs +0 -161
  78. package/esm2022/layouts/util.mjs +0 -101
  79. package/esm2022/package-metadata.mjs +0 -16
  80. package/esm2022/panelbar/events/collapse-event.mjs +0 -14
  81. package/esm2022/panelbar/events/expand-event.mjs +0 -14
  82. package/esm2022/panelbar/events/item-click-event.mjs +0 -17
  83. package/esm2022/panelbar/events/select-event.mjs +0 -14
  84. package/esm2022/panelbar/events/state-change-event.mjs +0 -13
  85. package/esm2022/panelbar/events.mjs +0 -9
  86. package/esm2022/panelbar/panelbar-content.directive.mjs +0 -36
  87. package/esm2022/panelbar/panelbar-expand-mode.mjs +0 -29
  88. package/esm2022/panelbar/panelbar-item-model.mjs +0 -5
  89. package/esm2022/panelbar/panelbar-item-template.directive.mjs +0 -37
  90. package/esm2022/panelbar/panelbar-item-title.directive.mjs +0 -42
  91. package/esm2022/panelbar/panelbar-item.component.mjs +0 -722
  92. package/esm2022/panelbar/panelbar.component.mjs +0 -705
  93. package/esm2022/panelbar/panelbar.service.mjs +0 -53
  94. package/esm2022/panelbar.module.mjs +0 -41
  95. package/esm2022/progress-kendo-angular-layout.mjs +0 -8
  96. package/esm2022/splitter/splitter-bar.component.mjs +0 -338
  97. package/esm2022/splitter/splitter-pane.component.mjs +0 -324
  98. package/esm2022/splitter/splitter.component.mjs +0 -301
  99. package/esm2022/splitter/splitter.service.mjs +0 -205
  100. package/esm2022/splitter/util.mjs +0 -34
  101. package/esm2022/splitter.module.mjs +0 -38
  102. package/esm2022/stacklayout.module.mjs +0 -37
  103. package/esm2022/stepper/events/activate-event.mjs +0 -33
  104. package/esm2022/stepper/list.component.mjs +0 -185
  105. package/esm2022/stepper/localization/custom-messages.component.mjs +0 -52
  106. package/esm2022/stepper/localization/localized-messages.directive.mjs +0 -41
  107. package/esm2022/stepper/localization/messages.mjs +0 -27
  108. package/esm2022/stepper/models/constants.mjs +0 -8
  109. package/esm2022/stepper/models/orientation.mjs +0 -5
  110. package/esm2022/stepper/models/step-predicate.mjs +0 -5
  111. package/esm2022/stepper/models/step-type.mjs +0 -5
  112. package/esm2022/stepper/models/stepper-step.interface.mjs +0 -5
  113. package/esm2022/stepper/step.component.mjs +0 -396
  114. package/esm2022/stepper/stepper.component.mjs +0 -423
  115. package/esm2022/stepper/stepper.service.mjs +0 -186
  116. package/esm2022/stepper/template-directives/indicator-template.directive.mjs +0 -37
  117. package/esm2022/stepper/template-directives/label-template.directive.mjs +0 -37
  118. package/esm2022/stepper/template-directives/step-template.directive.mjs +0 -39
  119. package/esm2022/stepper/template-directives.mjs +0 -7
  120. package/esm2022/stepper/types.mjs +0 -5
  121. package/esm2022/stepper.module.mjs +0 -41
  122. package/esm2022/tabstrip/constants.mjs +0 -29
  123. package/esm2022/tabstrip/directives/tab-content.directive.mjs +0 -39
  124. package/esm2022/tabstrip/directives/tab-title.directive.mjs +0 -37
  125. package/esm2022/tabstrip/directives/tab.directive.mjs +0 -24
  126. package/esm2022/tabstrip/events/select-event.mjs +0 -25
  127. package/esm2022/tabstrip/events/tabclose-event.mjs +0 -23
  128. package/esm2022/tabstrip/events/tabscroll-event.mjs +0 -23
  129. package/esm2022/tabstrip/events.mjs +0 -7
  130. package/esm2022/tabstrip/localization/custom-messages.component.mjs +0 -53
  131. package/esm2022/tabstrip/localization/localized-messages.directive.mjs +0 -39
  132. package/esm2022/tabstrip/localization/messages.mjs +0 -39
  133. package/esm2022/tabstrip/models/button-state-change.mjs +0 -5
  134. package/esm2022/tabstrip/models/scroll-button-type.mjs +0 -5
  135. package/esm2022/tabstrip/models/scroll-buttons-visibility.mjs +0 -5
  136. package/esm2022/tabstrip/models/scrollable-settings.mjs +0 -23
  137. package/esm2022/tabstrip/models/size.mjs +0 -5
  138. package/esm2022/tabstrip/models/tab-alignment.mjs +0 -5
  139. package/esm2022/tabstrip/models/tab-position.mjs +0 -5
  140. package/esm2022/tabstrip/models/tabstrip-tab.component.mjs +0 -130
  141. package/esm2022/tabstrip/rendering/tab.component.mjs +0 -182
  142. package/esm2022/tabstrip/scrollable-button.component.mjs +0 -182
  143. package/esm2022/tabstrip/tabstrip-scroll.service.mjs +0 -176
  144. package/esm2022/tabstrip/tabstrip.component.mjs +0 -954
  145. package/esm2022/tabstrip/tabstrip.service.mjs +0 -155
  146. package/esm2022/tabstrip/util.mjs +0 -120
  147. package/esm2022/tabstrip.module.mjs +0 -41
  148. package/esm2022/tilelayout/constants.mjs +0 -70
  149. package/esm2022/tilelayout/dragging-service.mjs +0 -421
  150. package/esm2022/tilelayout/keyboard-navigation.service.mjs +0 -189
  151. package/esm2022/tilelayout/models/dragging-config.interface.mjs +0 -5
  152. package/esm2022/tilelayout/models/flowmode.type.mjs +0 -5
  153. package/esm2022/tilelayout/models/gap.interface.mjs +0 -5
  154. package/esm2022/tilelayout/models/navigation.interface.mjs +0 -5
  155. package/esm2022/tilelayout/reorder-event.mjs +0 -43
  156. package/esm2022/tilelayout/resize-event.mjs +0 -37
  157. package/esm2022/tilelayout/tilelayout-item-body.component.mjs +0 -45
  158. package/esm2022/tilelayout/tilelayout-item-header.component.mjs +0 -43
  159. package/esm2022/tilelayout/tilelayout-item.component.mjs +0 -322
  160. package/esm2022/tilelayout/tilelayout-resize-handle.directive.mjs +0 -61
  161. package/esm2022/tilelayout/tilelayout.component.mjs +0 -388
  162. package/esm2022/tilelayout/util.mjs +0 -138
  163. package/esm2022/tilelayout.module.mjs +0 -40
  164. package/esm2022/timeline/events/navigation-direction.mjs +0 -5
  165. package/esm2022/timeline/localization/custom-messages.component.mjs +0 -43
  166. package/esm2022/timeline/localization/localized-messages.directive.mjs +0 -39
  167. package/esm2022/timeline/localization/messages.mjs +0 -33
  168. package/esm2022/timeline/models/anchor-target.mjs +0 -5
  169. package/esm2022/timeline/models/default-model-fields.mjs +0 -16
  170. package/esm2022/timeline/models/events-order.mjs +0 -5
  171. package/esm2022/timeline/models/model-fields.mjs +0 -5
  172. package/esm2022/timeline/models/timeline-event.mjs +0 -5
  173. package/esm2022/timeline/templates/timeline-card-actions.directive.mjs +0 -40
  174. package/esm2022/timeline/templates/timeline-card-body.directive.mjs +0 -40
  175. package/esm2022/timeline/templates/timeline-card-header.directive.mjs +0 -41
  176. package/esm2022/timeline/timeline-card.component.mjs +0 -451
  177. package/esm2022/timeline/timeline-horizontal.component.mjs +0 -781
  178. package/esm2022/timeline/timeline-vertical.component.mjs +0 -203
  179. package/esm2022/timeline/timeline.component.mjs +0 -491
  180. package/esm2022/timeline/timeline.service.mjs +0 -32
  181. package/esm2022/timeline/util.mjs +0 -26
  182. package/esm2022/timeline.module.mjs +0 -41
@@ -1,205 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { EventEmitter, NgZone, Injectable } from '@angular/core';
6
- import { isDocumentAvailable, Keys } from '@progress/kendo-angular-common';
7
- import { shouldTogglePrev, shouldToggleNext } from './util';
8
- import * as i0 from "@angular/core";
9
- const MAX_PANE_HEIGHT = 33554400;
10
- /**
11
- * @hidden
12
- */
13
- export class SplitterService {
14
- zone;
15
- panes;
16
- splitterBars;
17
- layoutChange = new EventEmitter();
18
- resizeStep = 10;
19
- fixedHeight;
20
- constructor(zone) {
21
- this.zone = zone;
22
- }
23
- tryToggle(paneIndex) {
24
- const pane = this.pane(paneIndex);
25
- if (pane.collapsible) {
26
- pane.collapsed = !pane.collapsed;
27
- pane.collapsedChange.emit(pane.collapsed);
28
- this.emit(this.layoutChange, {});
29
- if (pane.collapsed) {
30
- pane.detectChanges();
31
- }
32
- }
33
- const notCollapsed = this.panes.filter(p => !p.collapsed);
34
- const allHaveFixedSize = notCollapsed.every(p => p.fixedSize);
35
- notCollapsed.filter(p => p.fixedSize).forEach(pane => {
36
- pane.forceExpand = allHaveFixedSize ? true : false;
37
- });
38
- return pane.collapsible;
39
- }
40
- togglePane(keyCode, index) {
41
- const prev = this.pane(index);
42
- const next = this.pane(index + 1);
43
- if (shouldTogglePrev(keyCode, prev, next)) {
44
- this.tryToggle(index);
45
- }
46
- else if (shouldToggleNext(keyCode, prev, next)) {
47
- this.tryToggle(index + 1);
48
- }
49
- }
50
- resizePane(keyCode, index) {
51
- const state = this.dragState(index);
52
- const direction = keyCode === Keys.ArrowLeft || keyCode === (this.rtl ? Keys.ArrowDown : Keys.ArrowUp);
53
- let step = direction ? (-this.resizeStep) : this.resizeStep;
54
- if (this.rtl) {
55
- step = -step;
56
- }
57
- this.setSize(state, step);
58
- }
59
- toggleContentOverlay(index, show) {
60
- this.pane(index).toggleOverlay(show);
61
- this.pane(index + 1).toggleOverlay(show);
62
- }
63
- dragState(splitbarIndex) {
64
- const prev = this.pane(splitbarIndex);
65
- const next = this.pane(splitbarIndex + 1);
66
- const total = prev.computedSize + next.computedSize;
67
- const px = s => this.toPixels(s);
68
- return {
69
- prev: {
70
- index: splitbarIndex,
71
- initialSize: prev.computedSize,
72
- min: px(prev.min) || total - px(next.max) || 0,
73
- max: px(prev.max) || total - px(next.min) || total
74
- },
75
- next: {
76
- index: splitbarIndex + 1,
77
- initialSize: next.computedSize,
78
- min: px(next.min) || total - px(prev.max) || 0,
79
- max: px(next.max) || total - px(prev.min) || total
80
- }
81
- };
82
- }
83
- setSize(state, delta) {
84
- const clamp = (min, max, v) => Math.min(max, Math.max(min, v));
85
- const resize = (paneState, change, modifyMax = false) => {
86
- const pane = this.pane(paneState.index);
87
- const splitterSize = this.containerSize();
88
- const newSize = clamp(paneState.min, modifyMax ? MAX_PANE_HEIGHT : paneState.max, paneState.initialSize + change);
89
- let size = "";
90
- if (this.isPercent(pane.size)) {
91
- size = (100 * newSize / splitterSize) + "%";
92
- }
93
- else {
94
- size = newSize + "px";
95
- }
96
- pane.size = size;
97
- pane.isResized = true;
98
- this.emit(pane.sizeChange, size);
99
- };
100
- const prevPane = this.pane(state.prev.index);
101
- const nextPane = this.pane(state.next.index);
102
- const canResizeBothPanes = this.panes.length > 2;
103
- const modifyPrevMax = prevPane.orientation === 'vertical' && !this.fixedHeight && !prevPane.max;
104
- const modifyNextMax = prevPane.orientation === 'vertical' && !this.fixedHeight && !nextPane.max;
105
- if (prevPane.fixedSize && nextPane.fixedSize || canResizeBothPanes) {
106
- const bothVertical = prevPane.orientation === 'vertical' && nextPane.orientation === 'vertical';
107
- if (bothVertical) {
108
- if (modifyNextMax) {
109
- resize(state.prev, delta, modifyPrevMax);
110
- }
111
- else if (modifyPrevMax) {
112
- resize(state.next, -delta, modifyNextMax);
113
- }
114
- else {
115
- resize(state.prev, delta, modifyNextMax);
116
- resize(state.next, -delta, modifyPrevMax);
117
- }
118
- }
119
- else {
120
- resize(state.prev, delta);
121
- resize(state.next, -delta);
122
- }
123
- }
124
- else if (nextPane.fixedSize || nextPane.collapsible) {
125
- resize(state.next, -delta, modifyNextMax);
126
- }
127
- else {
128
- resize(state.prev, delta, modifyPrevMax);
129
- }
130
- this.emit(this.layoutChange, {});
131
- }
132
- isDraggable(splitBarIndex) {
133
- const prev = this.pane(splitBarIndex);
134
- const next = this.pane(splitBarIndex + 1);
135
- const betweenResizablePanes = prev?.resizable && next?.resizable;
136
- const nearCollapsedPane = prev?.collapsed || next?.collapsed;
137
- return betweenResizablePanes && !nearCollapsedPane;
138
- }
139
- isStatic(splitBarIndex) {
140
- const prev = this.pane(splitBarIndex);
141
- const next = this.pane(splitBarIndex + 1);
142
- const betweenResizablePanes = prev?.resizable && next?.resizable;
143
- const nearCollapsiblePane = prev?.collapsible || next?.collapsible;
144
- return !betweenResizablePanes && !nearCollapsiblePane;
145
- }
146
- pane(index) {
147
- if (!isDocumentAvailable()) {
148
- return;
149
- }
150
- if (!this.panes) {
151
- throw new Error("Panes not initialized");
152
- }
153
- if (index < 0 || index >= this.panes.length) {
154
- throw new Error("Index out of range");
155
- }
156
- return this.panes[index];
157
- }
158
- paneByIndex(pane) {
159
- if (!this.panes) {
160
- return -1;
161
- }
162
- return this.panes.findIndex(splitterPane => splitterPane === pane);
163
- }
164
- getPaneSplitterBar(pane) {
165
- if (!this.splitterBars) {
166
- return;
167
- }
168
- const paneIndex = this.paneByIndex(pane);
169
- if (paneIndex < 0 || paneIndex >= this.splitterBars.length) {
170
- return null;
171
- }
172
- return this.splitterBars[paneIndex];
173
- }
174
- configure({ panes, orientation, containerSize, direction }) {
175
- this.panes = panes;
176
- this.panes.forEach((pane, index) => {
177
- pane.order = index * 2;
178
- pane.orientation = orientation;
179
- });
180
- this.containerSize = containerSize;
181
- this.rtl = direction === 'rtl';
182
- }
183
- containerSize = () => { };
184
- rtl;
185
- isPercent(size) {
186
- return /%$/.test(size);
187
- }
188
- toPixels(size) {
189
- let result = parseFloat(size);
190
- if (this.isPercent(size)) {
191
- result = (this.containerSize() * result / 100);
192
- }
193
- return result;
194
- }
195
- emit(emitter, args) {
196
- if (emitter.observers.length) {
197
- this.zone.run(() => emitter.emit(args));
198
- }
199
- }
200
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SplitterService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
201
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SplitterService });
202
- }
203
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SplitterService, decorators: [{
204
- type: Injectable
205
- }], ctorParameters: () => [{ type: i0.NgZone }] });
@@ -1,34 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { Keys } from "@progress/kendo-angular-common";
6
- /**
7
- * @hidden
8
- */
9
- export const shouldTogglePrev = (keyCode, prev, next) => {
10
- const leftArrow = keyCode === Keys.ArrowLeft;
11
- const upArrow = keyCode === Keys.ArrowUp;
12
- const collapsePrev = !prev.collapsed && !next.collapsed && (leftArrow || upArrow);
13
- const expandPrev = prev.collapsed && !(leftArrow || upArrow);
14
- return collapsePrev || expandPrev;
15
- };
16
- /**
17
- * @hidden
18
- */
19
- export const shouldToggleNext = (keyCode, prev, next) => {
20
- const leftArrow = keyCode === Keys.ArrowLeft;
21
- const upArrow = keyCode === Keys.ArrowUp;
22
- const collapseNext = !next.collapsed && !prev.collapsed && !(leftArrow || upArrow);
23
- const expandNext = next.collapsed && (leftArrow || upArrow);
24
- return collapseNext || expandNext;
25
- };
26
- /**
27
- * @hidden
28
- */
29
- export const shouldToggleOrResize = (keyCode, orientation) => {
30
- const isHorizontal = orientation === 'horizontal';
31
- const isHorizontalChange = isHorizontal && (keyCode === Keys.ArrowLeft || keyCode === Keys.ArrowRight);
32
- const isVerticalChange = !isHorizontal && (keyCode === Keys.ArrowUp || keyCode === Keys.ArrowDown);
33
- return isHorizontalChange || isVerticalChange;
34
- };
@@ -1,38 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { NgModule } from '@angular/core';
6
- import { KENDO_SPLITTER } from './directives';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./splitter/splitter.component";
9
- import * as i2 from "./splitter/splitter-pane.component";
10
- // IMPORTANT: NgModule export kept for backwards compatibility
11
- /**
12
- * Defines the [`NgModule`](link:site.data.urls.angular['ngmoduleapi']) for the Splitter component.
13
- *
14
- * Use this module to add the Splitter component to your NgModule-based Angular application.
15
- *
16
- * @example
17
- * ```typescript
18
- * import { SplitterModule } from '@progress/kendo-angular-layout';
19
- * import { NgModule } from '@angular/core';
20
- *
21
- * @NgModule({
22
- * imports: [SplitterModule]
23
- * })
24
- * export class AppModule { }
25
- * ```
26
- */
27
- export class SplitterModule {
28
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SplitterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
29
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: SplitterModule, imports: [i1.SplitterComponent, i2.SplitterPaneComponent], exports: [i1.SplitterComponent, i2.SplitterPaneComponent] });
30
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SplitterModule, imports: [i1.SplitterComponent] });
31
- }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SplitterModule, decorators: [{
33
- type: NgModule,
34
- args: [{
35
- exports: [...KENDO_SPLITTER],
36
- imports: [...KENDO_SPLITTER]
37
- }]
38
- }] });
@@ -1,37 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { NgModule } from '@angular/core';
6
- import { KENDO_STACKLAYOUT } from './directives';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./layouts/stack-layout.component";
9
- // IMPORTANT: NgModule export kept for backwards compatibility
10
- /**
11
- * Defines the [`NgModule`](link:site.data.urls.angular['ngmoduleapi']) for the StackLayout component.
12
- *
13
- * Use this module to add the StackLayout component to your NgModule-based Angular application.
14
- *
15
- * @example
16
- * ```typescript
17
- * import { StackLayoutModule } from '@progress/kendo-angular-layout';
18
- * import { NgModule } from '@angular/core';
19
- *
20
- * @NgModule({
21
- * imports: [StackLayoutModule]
22
- * })
23
- * export class AppModule { }
24
- * ```
25
- */
26
- export class StackLayoutModule {
27
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StackLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
28
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: StackLayoutModule, imports: [i1.StackLayoutComponent], exports: [i1.StackLayoutComponent] });
29
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StackLayoutModule });
30
- }
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StackLayoutModule, decorators: [{
32
- type: NgModule,
33
- args: [{
34
- exports: [...KENDO_STACKLAYOUT],
35
- imports: [...KENDO_STACKLAYOUT]
36
- }]
37
- }] });
@@ -1,33 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { PreventableEvent } from '@progress/kendo-angular-common';
6
- /**
7
- * Represents the arguments for the `activate` event of the Stepper.
8
- */
9
- export class StepperActivateEvent extends PreventableEvent {
10
- /**
11
- * Specifies the index of the activated step in the `steps` collection.
12
- */
13
- index;
14
- /**
15
- * Specifies the activated step.
16
- */
17
- step;
18
- /**
19
- * Specifies the DOM event that triggered the step activation.
20
- */
21
- originalEvent;
22
- /**
23
- * Specifies the Stepper that triggered the event.
24
- */
25
- sender;
26
- /**
27
- * @hidden
28
- */
29
- constructor(args) {
30
- super();
31
- Object.assign(this, args);
32
- }
33
- }
@@ -1,185 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { Component, ElementRef, EventEmitter, Input, NgZone, Output, Renderer2, TemplateRef } from "@angular/core";
6
- import { closestItem, itemIndex, hasClass } from '../common/dom-queries';
7
- import { STEPPER_STEP_INDEX } from '../stepper/models/constants';
8
- import { StepperService } from "./stepper.service";
9
- import { isPresent } from "@progress/kendo-angular-common";
10
- import { StepperStepComponent } from "./step.component";
11
- import { NgClass, NgStyle } from "@angular/common";
12
- import * as i0 from "@angular/core";
13
- import * as i1 from "./stepper.service";
14
- /**
15
- * @hidden
16
- */
17
- export class StepperListComponent {
18
- renderer;
19
- ngZone;
20
- service;
21
- element;
22
- linear;
23
- stepType;
24
- orientation;
25
- currentStep;
26
- steps;
27
- successIcon;
28
- successSVGIcon;
29
- errorIcon;
30
- errorSVGIcon;
31
- svgIcon;
32
- indicatorTemplate;
33
- labelTemplate;
34
- stepTemplate;
35
- listKeydown = new EventEmitter();
36
- listClick = new EventEmitter();
37
- domSubs;
38
- constructor(renderer, ngZone, service, element) {
39
- this.renderer = renderer;
40
- this.ngZone = ngZone;
41
- this.service = service;
42
- this.element = element;
43
- }
44
- ngOnInit() {
45
- this.initDomEvents();
46
- }
47
- ngOnDestroy() {
48
- if (this.domSubs) {
49
- this.domSubs();
50
- }
51
- }
52
- get maxStepWidth() {
53
- return this.maxStepDimension('width');
54
- }
55
- get maxStepHeight() {
56
- return this.maxStepDimension('height');
57
- }
58
- get focusedStep() {
59
- return this.service.focusedStep;
60
- }
61
- isPresent(arg) {
62
- return isPresent(arg);
63
- }
64
- maxStepDimension(dimension) {
65
- if (dimension === 'width' && this.orientation === 'vertical') {
66
- return null;
67
- }
68
- if (dimension === 'height' && this.orientation === 'horizontal') {
69
- return null;
70
- }
71
- return 100 / this.steps.length;
72
- }
73
- initDomEvents() {
74
- if (!this.element) {
75
- return;
76
- }
77
- this.ngZone.runOutsideAngular(() => {
78
- const nativeElement = this.element.nativeElement;
79
- const clickSubscription = this.renderer.listen(nativeElement, 'click', this.clickHandler.bind(this));
80
- const keydownSubscription = this.renderer.listen(nativeElement, 'keydown', (e) => {
81
- if (hasClass(e.target, 'k-step-link')) {
82
- this.listKeydown.emit(e);
83
- }
84
- });
85
- this.domSubs = () => {
86
- clickSubscription();
87
- keydownSubscription();
88
- };
89
- });
90
- }
91
- clickHandler(e) {
92
- e.preventDefault();
93
- const stepIdx = this.getStepIndex(e.target);
94
- const step = this.steps[stepIdx];
95
- if (!step || step.disabled) {
96
- return;
97
- }
98
- const eventArgs = {
99
- stepIdx,
100
- currentStep: this.currentStep,
101
- linear: this.linear,
102
- originalEvent: e
103
- };
104
- this.listClick.emit(eventArgs);
105
- }
106
- getStepIndex(target) {
107
- const step = closestItem(target, STEPPER_STEP_INDEX, this.element.nativeElement);
108
- if (step) {
109
- return itemIndex(step, STEPPER_STEP_INDEX);
110
- }
111
- }
112
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperListComponent, deps: [{ token: i0.Renderer2 }, { token: i0.NgZone }, { token: i1.StepperService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
113
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: StepperListComponent, isStandalone: true, selector: "[kendoStepperList]", inputs: { linear: "linear", stepType: "stepType", orientation: "orientation", currentStep: "currentStep", steps: "steps", successIcon: "successIcon", successSVGIcon: "successSVGIcon", errorIcon: "errorIcon", errorSVGIcon: "errorSVGIcon", svgIcon: "svgIcon", indicatorTemplate: "indicatorTemplate", labelTemplate: "labelTemplate", stepTemplate: "stepTemplate" }, outputs: { listKeydown: "listKeydown", listClick: "listClick" }, ngImport: i0, template: "\n @for (step of steps; track step; let idx = $index) {\n <li kendoStepperStep\n [attr.data-kendo-stepper-index]='idx'\n [type]='stepType'\n [step]='step'\n [index]='idx'\n [current]='currentStep'\n [successIcon]='successIcon'\n [successSVGIcon]='successSVGIcon'\n [errorIcon]='errorIcon'\n [errorSVGIcon]='errorSVGIcon'\n [svgIcon]='svgIcon'\n [indicatorTemplate]='indicatorTemplate'\n [labelTemplate]='labelTemplate'\n [stepTemplate]='stepTemplate'\n class='k-step'\n [class.k-step-first]='idx === 0'\n [class.k-step-last]='idx === steps.length - 1'\n [class.k-step-done]='idx < currentStep'\n [class.k-step-current]='idx === currentStep'\n [class.k-step-optional]='step.optional'\n [class.k-disabled]='step.disabled'\n [class.k-focus]='idx === focusedStep || (!isPresent(focusedStep) && idx === currentStep)'\n [ngClass]='step.cssClass'\n [ngStyle]='step.cssStyle'\n [style.max-width.%] = 'maxStepWidth'\n [style.max-height.%] = 'maxStepHeight'\n >\n </li>\n }\n ", isInline: true, dependencies: [{ kind: "component", type: StepperStepComponent, selector: "[kendoStepperStep]", inputs: ["step", "index", "current", "type", "successIcon", "successSVGIcon", "errorIcon", "errorSVGIcon", "svgIcon", "indicatorTemplate", "labelTemplate", "stepTemplate"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
114
- }
115
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperListComponent, decorators: [{
116
- type: Component,
117
- args: [{
118
- // eslint-disable-next-line @angular-eslint/component-selector
119
- selector: '[kendoStepperList]',
120
- template: `
121
- @for (step of steps; track step; let idx = $index) {
122
- <li kendoStepperStep
123
- [attr.${STEPPER_STEP_INDEX}]='idx'
124
- [type]='stepType'
125
- [step]='step'
126
- [index]='idx'
127
- [current]='currentStep'
128
- [successIcon]='successIcon'
129
- [successSVGIcon]='successSVGIcon'
130
- [errorIcon]='errorIcon'
131
- [errorSVGIcon]='errorSVGIcon'
132
- [svgIcon]='svgIcon'
133
- [indicatorTemplate]='indicatorTemplate'
134
- [labelTemplate]='labelTemplate'
135
- [stepTemplate]='stepTemplate'
136
- class='k-step'
137
- [class.k-step-first]='idx === 0'
138
- [class.k-step-last]='idx === steps.length - 1'
139
- [class.k-step-done]='idx < currentStep'
140
- [class.k-step-current]='idx === currentStep'
141
- [class.k-step-optional]='step.optional'
142
- [class.k-disabled]='step.disabled'
143
- [class.k-focus]='idx === focusedStep || (!isPresent(focusedStep) && idx === currentStep)'
144
- [ngClass]='step.cssClass'
145
- [ngStyle]='step.cssStyle'
146
- [style.max-width.%] = 'maxStepWidth'
147
- [style.max-height.%] = 'maxStepHeight'
148
- >
149
- </li>
150
- }
151
- `,
152
- standalone: true,
153
- imports: [StepperStepComponent, NgClass, NgStyle]
154
- }]
155
- }], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.NgZone }, { type: i1.StepperService }, { type: i0.ElementRef }], propDecorators: { linear: [{
156
- type: Input
157
- }], stepType: [{
158
- type: Input
159
- }], orientation: [{
160
- type: Input
161
- }], currentStep: [{
162
- type: Input
163
- }], steps: [{
164
- type: Input
165
- }], successIcon: [{
166
- type: Input
167
- }], successSVGIcon: [{
168
- type: Input
169
- }], errorIcon: [{
170
- type: Input
171
- }], errorSVGIcon: [{
172
- type: Input
173
- }], svgIcon: [{
174
- type: Input
175
- }], indicatorTemplate: [{
176
- type: Input
177
- }], labelTemplate: [{
178
- type: Input
179
- }], stepTemplate: [{
180
- type: Input
181
- }], listKeydown: [{
182
- type: Output
183
- }], listClick: [{
184
- type: Output
185
- }] } });
@@ -1,52 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { Component, forwardRef } from '@angular/core';
6
- import { LocalizationService } from '@progress/kendo-angular-l10n';
7
- import { StepperMessages } from './messages';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@progress/kendo-angular-l10n";
10
- /**
11
- * Provides custom component messages that override default component messages
12
- * ([see example]({% slug rtl_layout %})).
13
- *
14
- * ```html
15
- * <kendo-stepper>
16
- * <kendo-stepper-messages
17
- * optional="Optional step"
18
- * ></kendo-stepper-messages>
19
- * </kendo-stepper>
20
- * ```
21
- */
22
- export class StepperCustomMessagesComponent extends StepperMessages {
23
- service;
24
- constructor(service) {
25
- super();
26
- this.service = service;
27
- }
28
- get override() {
29
- return true;
30
- }
31
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperCustomMessagesComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
32
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: StepperCustomMessagesComponent, isStandalone: true, selector: "kendo-stepper-messages", providers: [
33
- {
34
- provide: StepperMessages,
35
- useExisting: forwardRef(() => StepperCustomMessagesComponent)
36
- }
37
- ], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
38
- }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperCustomMessagesComponent, decorators: [{
40
- type: Component,
41
- args: [{
42
- providers: [
43
- {
44
- provide: StepperMessages,
45
- useExisting: forwardRef(() => StepperCustomMessagesComponent)
46
- }
47
- ],
48
- selector: 'kendo-stepper-messages',
49
- template: ``,
50
- standalone: true
51
- }]
52
- }], ctorParameters: () => [{ type: i1.LocalizationService }] });
@@ -1,41 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { Directive, forwardRef } from '@angular/core';
6
- import { LocalizationService } from '@progress/kendo-angular-l10n';
7
- import { StepperMessages } from './messages';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@progress/kendo-angular-l10n";
10
- /**
11
- * @hidden
12
- */
13
- export class LocalizedStepperMessagesDirective extends StepperMessages {
14
- service;
15
- constructor(service) {
16
- super();
17
- this.service = service;
18
- }
19
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LocalizedStepperMessagesDirective, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
20
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: LocalizedStepperMessagesDirective, isStandalone: true, selector: "\n [kendoStepperLocalizedMessages]\n ", providers: [
21
- {
22
- provide: StepperMessages,
23
- useExisting: forwardRef(() => LocalizedStepperMessagesDirective)
24
- }
25
- ], usesInheritance: true, ngImport: i0 });
26
- }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: LocalizedStepperMessagesDirective, decorators: [{
28
- type: Directive,
29
- args: [{
30
- providers: [
31
- {
32
- provide: StepperMessages,
33
- useExisting: forwardRef(() => LocalizedStepperMessagesDirective)
34
- }
35
- ],
36
- selector: `
37
- [kendoStepperLocalizedMessages]
38
- `,
39
- standalone: true
40
- }]
41
- }], ctorParameters: () => [{ type: i1.LocalizationService }] });
@@ -1,27 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- import { Directive, Input } from '@angular/core';
6
- import { ComponentMessages } from '@progress/kendo-angular-l10n';
7
- import * as i0 from "@angular/core";
8
- /**
9
- * @hidden
10
- */
11
- export class StepperMessages extends ComponentMessages {
12
- /**
13
- * Specifies the optional text.
14
- */
15
- optional;
16
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
17
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: StepperMessages, selector: "kendo-stepper-messages-base", inputs: { optional: "optional" }, usesInheritance: true, ngImport: i0 });
18
- }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: StepperMessages, decorators: [{
20
- type: Directive,
21
- args: [{
22
- // eslint-disable-next-line @angular-eslint/directive-selector
23
- selector: 'kendo-stepper-messages-base'
24
- }]
25
- }], propDecorators: { optional: [{
26
- type: Input
27
- }] } });
@@ -1,8 +0,0 @@
1
- /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2026 Progress Software Corporation. All rights reserved.
3
- * Licensed under commercial license. See LICENSE.md in the project root for more information
4
- *-------------------------------------------------------------------------------------------*/
5
- /**
6
- * @hidden
7
- */
8
- export const STEPPER_STEP_INDEX = 'data-kendo-stepper-index';