@progress/kendo-angular-scheduler 25.0.0-develop.3 → 25.0.0-develop.31

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.
@@ -13,6 +13,7 @@ exports.writeInstructionMarker = writeInstructionMarker;
13
13
  exports.isApiChangeTarget = isApiChangeTarget;
14
14
  exports.isRenderingChangeTarget = isRenderingChangeTarget;
15
15
  exports.executeCodemodTest = executeCodemodTest;
16
+ exports.removeAttributeFromDirectiveHost = removeAttributeFromDirectiveHost;
16
17
  const tslib_1 = require("tslib");
17
18
  /// <reference types="node" />
18
19
  const fs = tslib_1.__importStar(require("fs"));
@@ -1486,3 +1487,17 @@ function executeCodemodTest(codemod, testDir, exampleFileName = 'example.ts', ex
1486
1487
  catch { }
1487
1488
  }
1488
1489
  }
1490
+ function removeAttributeFromDirectiveHost(templateContent, directiveAttr, attrToRemove) {
1491
+ const escapedDirective = directiveAttr.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
1492
+ const escapedAttr = attrToRemove.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
1493
+ const boundPattern = new RegExp(`(<[a-zA-Z][a-zA-Z0-9-]*[^>]*${escapedDirective}[^>]*?)\\s+\\[${escapedAttr}\\]\\s*=\\s*("(?:[^"\\\\]|\\\\.)*?"|'(?:[^'\\\\]|\\\\.)*?'|[^\\s>]+)([^>]*?>)`, 'gi');
1494
+ const staticPattern = new RegExp(`(<[a-zA-Z][a-zA-Z0-9-]*[^>]*${escapedDirective}[^>]*?)\\s+${escapedAttr}\\s*=\\s*("(?:[^"\\\\]|\\\\.)*?"|'(?:[^'\\\\]|\\\\.)*?'|[^\\s>]+)([^>]*?>)`, 'gi');
1495
+ // Also match when the attribute appears before the directive
1496
+ const boundPatternBefore = new RegExp(`(<[a-zA-Z][a-zA-Z0-9-]*[^>]*?)\\s+\\[${escapedAttr}\\]\\s*=\\s*("(?:[^"\\\\]|\\\\.)*?"|'(?:[^'\\\\]|\\\\.)*?'|[^\\s>]+)([^>]*${escapedDirective}[^>]*?>)`, 'gi');
1497
+ const staticPatternBefore = new RegExp(`(<[a-zA-Z][a-zA-Z0-9-]*[^>]*?)\\s+${escapedAttr}\\s*=\\s*("(?:[^"\\\\]|\\\\.)*?"|'(?:[^'\\\\]|\\\\.)*?'|[^\\s>]+)([^>]*${escapedDirective}[^>]*?>)`, 'gi');
1498
+ let result = templateContent.replace(boundPattern, '$1$3');
1499
+ result = result.replace(staticPattern, '$1$3');
1500
+ result = result.replace(boundPatternBefore, '$1$3');
1501
+ result = result.replace(staticPatternBefore, '$1$3');
1502
+ return result;
1503
+ }
@@ -0,0 +1,28 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const tslib_1 = require("tslib");
9
+ const fs = tslib_1.__importStar(require("fs"));
10
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, codemods_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ const htmlResult = (0, codemods_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, codemods_1.attributeRemoval)(templateContent, 'kendo-scheduler-messages', 'editorDateInputsDateTab'));
17
+ if (filePath.endsWith('.html')) {
18
+ if (htmlResult && htmlResult !== fileInfo.source) {
19
+ fs.writeFileSync(filePath, htmlResult, 'utf-8');
20
+ return htmlResult;
21
+ }
22
+ return fileInfo.source;
23
+ }
24
+ const j = api.jscodeshift;
25
+ const rootSource = j(htmlResult || fileInfo.source);
26
+ (0, codemods_1.tsPropertyRemoval)(fileInfo.source, rootSource, j, '@progress/kendo-angular-scheduler', 'SchedulerCustomMessagesComponent', 'editorDateInputsDateTab');
27
+ return rootSource.toSource();
28
+ }
@@ -0,0 +1,28 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const tslib_1 = require("tslib");
9
+ const fs = tslib_1.__importStar(require("fs"));
10
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, codemods_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ const htmlResult = (0, codemods_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, codemods_1.attributeRemoval)(templateContent, 'kendo-scheduler-messages', 'editorDateInputsDateTabLabel'));
17
+ if (filePath.endsWith('.html')) {
18
+ if (htmlResult && htmlResult !== fileInfo.source) {
19
+ fs.writeFileSync(filePath, htmlResult, 'utf-8');
20
+ return htmlResult;
21
+ }
22
+ return fileInfo.source;
23
+ }
24
+ const j = api.jscodeshift;
25
+ const rootSource = j(htmlResult || fileInfo.source);
26
+ (0, codemods_1.tsPropertyRemoval)(fileInfo.source, rootSource, j, '@progress/kendo-angular-scheduler', 'SchedulerCustomMessagesComponent', 'editorDateInputsDateTabLabel');
27
+ return rootSource.toSource();
28
+ }
@@ -0,0 +1,28 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const tslib_1 = require("tslib");
9
+ const fs = tslib_1.__importStar(require("fs"));
10
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, codemods_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ const htmlResult = (0, codemods_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, codemods_1.attributeRemoval)(templateContent, 'kendo-scheduler-messages', 'editorDateInputsTimeTab'));
17
+ if (filePath.endsWith('.html')) {
18
+ if (htmlResult && htmlResult !== fileInfo.source) {
19
+ fs.writeFileSync(filePath, htmlResult, 'utf-8');
20
+ return htmlResult;
21
+ }
22
+ return fileInfo.source;
23
+ }
24
+ const j = api.jscodeshift;
25
+ const rootSource = j(htmlResult || fileInfo.source);
26
+ (0, codemods_1.tsPropertyRemoval)(fileInfo.source, rootSource, j, '@progress/kendo-angular-scheduler', 'SchedulerCustomMessagesComponent', 'editorDateInputsTimeTab');
27
+ return rootSource.toSource();
28
+ }
@@ -0,0 +1,28 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const tslib_1 = require("tslib");
9
+ const fs = tslib_1.__importStar(require("fs"));
10
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, codemods_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ const htmlResult = (0, codemods_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, codemods_1.attributeRemoval)(templateContent, 'kendo-scheduler-messages', 'editorDateInputsTimeTabLabel'));
17
+ if (filePath.endsWith('.html')) {
18
+ if (htmlResult && htmlResult !== fileInfo.source) {
19
+ fs.writeFileSync(filePath, htmlResult, 'utf-8');
20
+ return htmlResult;
21
+ }
22
+ return fileInfo.source;
23
+ }
24
+ const j = api.jscodeshift;
25
+ const rootSource = j(htmlResult || fileInfo.source);
26
+ (0, codemods_1.tsPropertyRemoval)(fileInfo.source, rootSource, j, '@progress/kendo-angular-scheduler', 'SchedulerCustomMessagesComponent', 'editorDateInputsTimeTabLabel');
27
+ return rootSource.toSource();
28
+ }
@@ -0,0 +1,28 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const tslib_1 = require("tslib");
9
+ const fs = tslib_1.__importStar(require("fs"));
10
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, codemods_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ const htmlResult = (0, codemods_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, codemods_1.attributeRemoval)(templateContent, 'kendo-scheduler-messages', 'editorDateInputsToggle'));
17
+ if (filePath.endsWith('.html')) {
18
+ if (htmlResult && htmlResult !== fileInfo.source) {
19
+ fs.writeFileSync(filePath, htmlResult, 'utf-8');
20
+ return htmlResult;
21
+ }
22
+ return fileInfo.source;
23
+ }
24
+ const j = api.jscodeshift;
25
+ const rootSource = j(htmlResult || fileInfo.source);
26
+ (0, codemods_1.tsPropertyRemoval)(fileInfo.source, rootSource, j, '@progress/kendo-angular-scheduler', 'SchedulerCustomMessagesComponent', 'editorDateInputsToggle');
27
+ return rootSource.toSource();
28
+ }
@@ -0,0 +1,28 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const tslib_1 = require("tslib");
9
+ const fs = tslib_1.__importStar(require("fs"));
10
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, codemods_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ const htmlResult = (0, codemods_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, codemods_1.attributeRemoval)(templateContent, 'kendo-scheduler-messages', 'editorEventSeparateTimeZones'));
17
+ if (filePath.endsWith('.html')) {
18
+ if (htmlResult && htmlResult !== fileInfo.source) {
19
+ fs.writeFileSync(filePath, htmlResult, 'utf-8');
20
+ return htmlResult;
21
+ }
22
+ return fileInfo.source;
23
+ }
24
+ const j = api.jscodeshift;
25
+ const rootSource = j(htmlResult || fileInfo.source);
26
+ (0, codemods_1.tsPropertyRemoval)(fileInfo.source, rootSource, j, '@progress/kendo-angular-scheduler', 'SchedulerCustomMessagesComponent', 'editorEventSeparateTimeZones');
27
+ return rootSource.toSource();
28
+ }
@@ -0,0 +1,47 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.aiInstructions = void 0;
8
+ exports.default = default_1;
9
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
10
+ exports.aiInstructions = `Review your stylesheets, test files, and any code that references these Scheduler classes:
11
+
12
+ k-slot-cell — no longer rendered on major and minor time header slots when using horizontal resources. TimeLine views no longer add k-slot-cell to header cells.
13
+ Update selectors or tests that rely on .k-slot-cell in Scheduler time headers.
14
+
15
+ k-event-actions — removed. Replaced by k-event-recurrence-icon and k-event-continuation spans.
16
+ Replace .k-event-actions selectors with .k-event-recurrence-icon or .k-event-continuation as appropriate.
17
+
18
+ Edit form rendering — The Scheduler edit form rendering is revamped.
19
+ Update selectors or tests targeting the edit form structure.
20
+
21
+ Delete icon — removed from event rendering.
22
+ Remove selectors or tests targeting the delete icon in Scheduler events.
23
+
24
+ Day/Week view header cells — now use a two-line layout with separate day name and date number.
25
+ Update selectors targeting the day/week header cell content structure.
26
+
27
+ ToolbarViewSelectorComponent — now renders a DropDownButton in compact mode and SegmentedControl in default mode (replaces HTML select and button group).
28
+ Update selectors targeting .k-scheduler-views select or .k-button-group in the toolbar.
29
+
30
+ New Event button — The Toolbar now displays a New Event button when editing is enabled.
31
+ Update tests that assert toolbar element count or order.
32
+
33
+ Toolbar order — Now: New Event button, Today button, Navigation, ViewSelector.
34
+ Update tests or selectors that rely on a specific toolbar element order.
35
+
36
+ Year view — now uses a Popover instead of a Tooltip to display events for a day.
37
+ Update selectors or tests targeting tooltip elements in the Year view.`;
38
+ const classes = ['k-slot-cell', 'k-event-actions', 'k-scheduler-views'];
39
+ const pattern = (0, codemods_1.makePattern)(classes);
40
+ function default_1(fileInfo) {
41
+ if ((0, codemods_1.isRenderingChangeTarget)(fileInfo.path)) {
42
+ if (pattern.test(fileInfo.source)) {
43
+ (0, codemods_1.writeInstructionMarker)(exports.aiInstructions, __filename, fileInfo.path);
44
+ }
45
+ }
46
+ return fileInfo.source;
47
+ }
@@ -0,0 +1,28 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const tslib_1 = require("tslib");
9
+ const fs = tslib_1.__importStar(require("fs"));
10
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, codemods_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ const htmlResult = (0, codemods_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, codemods_1.removeAttributeFromDirectiveHost)(templateContent, 'kendoSchedulerToolbarViewSelector', 'responsiveBreakpoint'));
17
+ if (filePath.endsWith('.html')) {
18
+ if (htmlResult && htmlResult !== fileInfo.source) {
19
+ fs.writeFileSync(filePath, htmlResult, 'utf-8');
20
+ return htmlResult;
21
+ }
22
+ return fileInfo.source;
23
+ }
24
+ const j = api.jscodeshift;
25
+ const rootSource = j(htmlResult || fileInfo.source);
26
+ (0, codemods_1.tsPropertyRemoval)(fileInfo.source, rootSource, j, '@progress/kendo-angular-scheduler', 'ToolbarViewSelectorComponent', 'responsiveBreakpoint');
27
+ return rootSource.toSource();
28
+ }
@@ -0,0 +1,28 @@
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
+ "use strict";
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.default = default_1;
8
+ const tslib_1 = require("tslib");
9
+ const fs = tslib_1.__importStar(require("fs"));
10
+ const codemods_1 = require("@progress/kendo-angular-common/codemods");
11
+ function default_1(fileInfo, api) {
12
+ const filePath = fileInfo.path;
13
+ if (!(0, codemods_1.isApiChangeTarget)(filePath)) {
14
+ return fileInfo.source;
15
+ }
16
+ const htmlResult = (0, codemods_1.htmlTransformer)(fileInfo, api, (templateContent) => (0, codemods_1.removeAttributeFromDirectiveHost)(templateContent, 'kendoSchedulerToolbarViewSelector', 'toolbarWidth'));
17
+ if (filePath.endsWith('.html')) {
18
+ if (htmlResult && htmlResult !== fileInfo.source) {
19
+ fs.writeFileSync(filePath, htmlResult, 'utf-8');
20
+ return htmlResult;
21
+ }
22
+ return fileInfo.source;
23
+ }
24
+ const j = api.jscodeshift;
25
+ const rootSource = j(htmlResult || fileInfo.source);
26
+ (0, codemods_1.tsPropertyRemoval)(fileInfo.source, rootSource, j, '@progress/kendo-angular-scheduler', 'ToolbarViewSelectorComponent', 'toolbarWidth');
27
+ return rootSource.toSource();
28
+ }