@progress/kendo-angular-grid 19.0.0-develop.26 → 19.0.0-develop.28
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.
- package/codemods/utils.js +430 -8
- package/codemods/v19/grid-kendogridgroupbinding.js +3 -3
- package/column-menu/column-menu-item.component.d.ts +2 -6
- package/esm2022/adaptiveness/adaptive-renderer.component.mjs +1 -1
- package/esm2022/column-menu/column-menu-autosize-all.component.mjs +1 -1
- package/esm2022/column-menu/column-menu-autosize.component.mjs +1 -1
- package/esm2022/column-menu/column-menu-chooser.component.mjs +1 -1
- package/esm2022/column-menu/column-menu-filter.component.mjs +1 -1
- package/esm2022/column-menu/column-menu-item.component.mjs +9 -15
- package/esm2022/column-menu/column-menu-lock.component.mjs +1 -1
- package/esm2022/column-menu/column-menu-position.component.mjs +1 -1
- package/esm2022/column-menu/column-menu-sort.component.mjs +1 -1
- package/esm2022/column-menu/column-menu-stick.component.mjs +1 -1
- package/esm2022/package-metadata.mjs +2 -2
- package/esm2022/rendering/toolbar/tools/filter-toolbar-tool.component.mjs +3 -8
- package/fesm2022/progress-kendo-angular-grid.mjs +23 -33
- package/package.json +22 -27
- package/rendering/toolbar/tools/filter-toolbar-tool.component.d.ts +0 -2
- package/schematics/ngAdd/index.js +4 -4
- package/codemods/v19/index.js +0 -51
package/codemods/utils.js
CHANGED
|
@@ -7,9 +7,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
8
|
};
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.htmlAttributeTransformer = exports.tsPropertyTransformer = exports.templateAttributeTransformer = void 0;
|
|
10
|
+
exports.tsComponentPropertyRemoval = exports.tsPropertyRemoval = exports.templateAttributeRemoval = exports.htmlAttributeRemoval = exports.htmlAttributeValueTransformer = exports.tsPropertyValueTransformer = exports.templateAttributeValueTransformer = exports.htmlAttributeTransformer = exports.htmlBoundAttributeTransformer = exports.htmlStaticAttributeTransformer = exports.tsPropertyTransformer = exports.templateAttributeTransformer = exports.templateBoundAttributeTransformer = exports.templateStaticAttributeTransformer = void 0;
|
|
11
11
|
const node_html_parser_1 = __importDefault(require("node-html-parser"));
|
|
12
|
-
const
|
|
12
|
+
const templateStaticAttributeTransformer = (root, tagName, attributeName, newAttributeName) => {
|
|
13
|
+
const elements = Array.from(root.getElementsByTagName(tagName)) || [];
|
|
14
|
+
for (const element of elements) {
|
|
15
|
+
// Handle static attributes like title="foo"
|
|
16
|
+
const staticAttr = element.getAttribute(attributeName);
|
|
17
|
+
if (staticAttr) {
|
|
18
|
+
element.setAttribute(newAttributeName, staticAttr);
|
|
19
|
+
element.removeAttribute(attributeName);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
exports.templateStaticAttributeTransformer = templateStaticAttributeTransformer;
|
|
24
|
+
const templateBoundAttributeTransformer = (root, tagName, attributeName, newAttributeName) => {
|
|
13
25
|
const elements = Array.from(root.getElementsByTagName(tagName)) || [];
|
|
14
26
|
for (const element of elements) {
|
|
15
27
|
// Handle bound attributes like [title]="foo" or [title]="'foo'"
|
|
@@ -20,6 +32,11 @@ const templateAttributeTransformer = (root, tagName, attributeName, newAttribute
|
|
|
20
32
|
}
|
|
21
33
|
}
|
|
22
34
|
};
|
|
35
|
+
exports.templateBoundAttributeTransformer = templateBoundAttributeTransformer;
|
|
36
|
+
const templateAttributeTransformer = (root, tagName, attributeName, newAttributeName) => {
|
|
37
|
+
(0, exports.templateBoundAttributeTransformer)(root, tagName, attributeName, newAttributeName);
|
|
38
|
+
(0, exports.templateStaticAttributeTransformer)(root, tagName, attributeName, newAttributeName);
|
|
39
|
+
};
|
|
23
40
|
exports.templateAttributeTransformer = templateAttributeTransformer;
|
|
24
41
|
const tsPropertyTransformer = (root, j, componentType, propertyName, newPropertyName) => {
|
|
25
42
|
// Find all class properties that are of type DropDownListComponent
|
|
@@ -106,18 +123,170 @@ const tsPropertyTransformer = (root, j, componentType, propertyName, newProperty
|
|
|
106
123
|
});
|
|
107
124
|
};
|
|
108
125
|
exports.tsPropertyTransformer = tsPropertyTransformer;
|
|
109
|
-
const
|
|
126
|
+
const htmlStaticAttributeTransformer = (fileInfo, tagName, oldName, newName) => {
|
|
127
|
+
const fileContent = fileInfo.source;
|
|
128
|
+
const root = (0, node_html_parser_1.default)(fileContent);
|
|
129
|
+
let modified = false;
|
|
130
|
+
const elements = Array.from(root.querySelectorAll(tagName));
|
|
131
|
+
for (const element of elements) {
|
|
132
|
+
const staticAttr = element.getAttribute(oldName);
|
|
133
|
+
if (staticAttr) {
|
|
134
|
+
element.removeAttribute(oldName);
|
|
135
|
+
element.setAttribute(newName, staticAttr);
|
|
136
|
+
modified = true;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
if (modified) {
|
|
140
|
+
return root.toString();
|
|
141
|
+
}
|
|
142
|
+
return fileContent;
|
|
143
|
+
};
|
|
144
|
+
exports.htmlStaticAttributeTransformer = htmlStaticAttributeTransformer;
|
|
145
|
+
const htmlBoundAttributeTransformer = (fileInfo, tagName, oldName, newName) => {
|
|
110
146
|
const fileContent = fileInfo.source;
|
|
111
147
|
const root = (0, node_html_parser_1.default)(fileContent);
|
|
112
148
|
let modified = false;
|
|
113
|
-
// Locate elements using [oldName] binding and update the old attribute to the new one
|
|
114
149
|
const elements = Array.from(root.querySelectorAll(tagName));
|
|
115
150
|
for (const element of elements) {
|
|
116
|
-
const
|
|
117
|
-
if (
|
|
151
|
+
const boundAttr = element.getAttribute(`[${oldName}]`);
|
|
152
|
+
if (boundAttr) {
|
|
118
153
|
element.removeAttribute(`[${oldName}]`);
|
|
119
|
-
element.setAttribute(`[${newName}]`,
|
|
154
|
+
element.setAttribute(`[${newName}]`, boundAttr);
|
|
155
|
+
modified = true;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
if (modified) {
|
|
159
|
+
return root.toString();
|
|
160
|
+
}
|
|
161
|
+
return fileContent;
|
|
162
|
+
};
|
|
163
|
+
exports.htmlBoundAttributeTransformer = htmlBoundAttributeTransformer;
|
|
164
|
+
const htmlAttributeTransformer = (fileInfo, tagName, oldName, newName) => {
|
|
165
|
+
let content = (0, exports.htmlBoundAttributeTransformer)(fileInfo, tagName, oldName, newName);
|
|
166
|
+
content = (0, exports.htmlStaticAttributeTransformer)({ path: fileInfo.path, source: content }, tagName, oldName, newName);
|
|
167
|
+
return content;
|
|
168
|
+
};
|
|
169
|
+
exports.htmlAttributeTransformer = htmlAttributeTransformer;
|
|
170
|
+
const templateAttributeValueTransformer = (root, tagName, attributeName, oldAttributeValue, newAttributeValue) => {
|
|
171
|
+
const elements = Array.from(root.getElementsByTagName(tagName)) || [];
|
|
172
|
+
for (const element of elements) {
|
|
173
|
+
// Handle bound attributes (e.g., [showText]="'overflow'")
|
|
174
|
+
const boundAttr = element.getAttribute(`[${attributeName}]`);
|
|
175
|
+
if (boundAttr === `'${oldAttributeValue}'`) {
|
|
176
|
+
// For bound literals like [showText]="'overflow'" or [showText]="\"overflow\""
|
|
177
|
+
element.setAttribute(`[${attributeName}]`, boundAttr.replace(oldAttributeValue, newAttributeValue));
|
|
178
|
+
}
|
|
179
|
+
// Handle static attributes like title="foo"
|
|
180
|
+
const staticAttrValue = element.getAttribute(attributeName);
|
|
181
|
+
if (staticAttrValue === oldAttributeValue) {
|
|
182
|
+
element.setAttribute(attributeName, newAttributeValue);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
};
|
|
186
|
+
exports.templateAttributeValueTransformer = templateAttributeValueTransformer;
|
|
187
|
+
const tsPropertyValueTransformer = (root, j, typeName, oldValue, newValue) => {
|
|
188
|
+
// 1. Find all class properties with the specified type
|
|
189
|
+
root
|
|
190
|
+
.find(j.ClassProperty)
|
|
191
|
+
.filter(path => {
|
|
192
|
+
// Check if the property has a type annotation matching the specified type
|
|
193
|
+
if (path.node.typeAnnotation?.typeAnnotation &&
|
|
194
|
+
path.node.typeAnnotation.typeAnnotation.type === 'TSTypeReference' &&
|
|
195
|
+
path.node.typeAnnotation.typeAnnotation.typeName &&
|
|
196
|
+
path.node.typeAnnotation.typeAnnotation.typeName.type === 'Identifier' &&
|
|
197
|
+
path.node.typeAnnotation.typeAnnotation.typeName.name === typeName) {
|
|
198
|
+
return true;
|
|
199
|
+
}
|
|
200
|
+
return false;
|
|
201
|
+
})
|
|
202
|
+
.forEach(path => {
|
|
203
|
+
// Update the value if it matches the old value
|
|
204
|
+
if (path.node.value &&
|
|
205
|
+
path.node.value.type === 'StringLiteral' &&
|
|
206
|
+
path.node.value.value === oldValue) {
|
|
207
|
+
path.node.value.value = newValue;
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
// 2. Find all assignments to variables of the specified type
|
|
211
|
+
const variablesOfType = new Set();
|
|
212
|
+
// First, collect all variables with the specified type
|
|
213
|
+
root
|
|
214
|
+
.find(j.VariableDeclarator)
|
|
215
|
+
.filter(path => {
|
|
216
|
+
if (path.node.id.type === 'Identifier' &&
|
|
217
|
+
path.node.id.typeAnnotation?.typeAnnotation &&
|
|
218
|
+
path.node.id.typeAnnotation.typeAnnotation.type === 'TSTypeReference' &&
|
|
219
|
+
path.node.id.typeAnnotation.typeAnnotation.typeName.type === 'Identifier' &&
|
|
220
|
+
path.node.id.typeAnnotation.typeAnnotation.typeName.name === typeName) {
|
|
221
|
+
return true;
|
|
222
|
+
}
|
|
223
|
+
return false;
|
|
224
|
+
})
|
|
225
|
+
.forEach(path => {
|
|
226
|
+
if (path.node.id.type === 'Identifier') {
|
|
227
|
+
variablesOfType.add(path.node.id.name);
|
|
228
|
+
// Also update the initial value if it matches
|
|
229
|
+
if (path.node.init &&
|
|
230
|
+
path.node.init.type === 'StringLiteral' &&
|
|
231
|
+
path.node.init.value === oldValue) {
|
|
232
|
+
path.node.init.value = newValue;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
});
|
|
236
|
+
// 3. Update literals in assignment expressions
|
|
237
|
+
root
|
|
238
|
+
.find(j.AssignmentExpression)
|
|
239
|
+
.filter(path => {
|
|
240
|
+
// Only process string literals with the old value
|
|
241
|
+
return path.node.right.type === 'StringLiteral' &&
|
|
242
|
+
path.node.right.value === oldValue;
|
|
243
|
+
})
|
|
244
|
+
.forEach(path => {
|
|
245
|
+
// Update the value
|
|
246
|
+
path.node.right.value = newValue;
|
|
247
|
+
});
|
|
248
|
+
// 4. Also look for string literals in attributes within JSX elements
|
|
249
|
+
root
|
|
250
|
+
.find(j.JSXAttribute, {
|
|
251
|
+
value: {
|
|
252
|
+
type: 'StringLiteral',
|
|
253
|
+
value: oldValue
|
|
254
|
+
}
|
|
255
|
+
})
|
|
256
|
+
.forEach(path => {
|
|
257
|
+
if (path.node.value?.type === 'StringLiteral') {
|
|
258
|
+
path.node.value.value = newValue;
|
|
259
|
+
}
|
|
260
|
+
});
|
|
261
|
+
};
|
|
262
|
+
exports.tsPropertyValueTransformer = tsPropertyValueTransformer;
|
|
263
|
+
const htmlAttributeValueTransformer = (fileInfo, tagName, attributeName, oldValue, newValue) => {
|
|
264
|
+
// Read file content from fileInfo
|
|
265
|
+
const fileContent = fileInfo.source;
|
|
266
|
+
// Parse the HTML content
|
|
267
|
+
const root = (0, node_html_parser_1.default)(fileContent);
|
|
268
|
+
// Find all elements matching the tagName
|
|
269
|
+
const elements = root.querySelectorAll(tagName);
|
|
270
|
+
let modified = false;
|
|
271
|
+
// Process each element
|
|
272
|
+
for (const element of elements) {
|
|
273
|
+
// Handle static attributes (e.g., showText="overflow")
|
|
274
|
+
const staticAttr = element.getAttribute(attributeName);
|
|
275
|
+
if (staticAttr === oldValue) {
|
|
276
|
+
element.setAttribute(attributeName, newValue);
|
|
120
277
|
modified = true;
|
|
278
|
+
console.log(`Modified static attribute ${attributeName} from "${oldValue}" to "${newValue}" in element:`, element.toString().substring(0, 100));
|
|
279
|
+
}
|
|
280
|
+
// Handle bound attributes (e.g., [showText]="overflow")
|
|
281
|
+
const boundAttr = element.getAttribute(`[${attributeName}]`);
|
|
282
|
+
if (boundAttr) {
|
|
283
|
+
// For bound literals like [showText]="'overflow'" or [showText]="\"overflow\""
|
|
284
|
+
if (boundAttr === `'${oldValue}'` || boundAttr === `"${oldValue}"`) {
|
|
285
|
+
const updatedValue = boundAttr.replace(oldValue, newValue);
|
|
286
|
+
element.setAttribute(`[${attributeName}]`, updatedValue);
|
|
287
|
+
modified = true;
|
|
288
|
+
console.log(`Modified bound attribute [${attributeName}] from "${boundAttr}" to "${updatedValue}" in element:`, element.toString().substring(0, 100));
|
|
289
|
+
}
|
|
121
290
|
}
|
|
122
291
|
}
|
|
123
292
|
// Return modified content if changes were made
|
|
@@ -128,4 +297,257 @@ const htmlAttributeTransformer = (fileInfo, tagName, oldName, newName) => {
|
|
|
128
297
|
// Return original content if no changes were made or if there was an error
|
|
129
298
|
return fileContent;
|
|
130
299
|
};
|
|
131
|
-
exports.
|
|
300
|
+
exports.htmlAttributeValueTransformer = htmlAttributeValueTransformer;
|
|
301
|
+
const htmlAttributeRemoval = (fileInfo, tagName, attributeName, propertyToRemove) => {
|
|
302
|
+
const filePath = fileInfo.path;
|
|
303
|
+
const fileContent = fileInfo.source;
|
|
304
|
+
const root = (0, node_html_parser_1.default)(fileContent);
|
|
305
|
+
// Use the same logic as templateAttributeRemoval
|
|
306
|
+
const elements = root.querySelectorAll(tagName);
|
|
307
|
+
for (const element of elements) {
|
|
308
|
+
// Look for bound attribute (e.g., [scrollable]="...")
|
|
309
|
+
const boundAttr = element.getAttribute(`[${attributeName}]`);
|
|
310
|
+
if (boundAttr) {
|
|
311
|
+
// Check if it's an object literal
|
|
312
|
+
if (boundAttr.trim().startsWith('{') && boundAttr.trim().endsWith('}')) {
|
|
313
|
+
// Process object literal like {mouseScrollSpeed: 10000}
|
|
314
|
+
const objectLiteral = boundAttr.trim();
|
|
315
|
+
// Build a regex that matches the property and its value
|
|
316
|
+
// This handles various formats like {prop: value}, { prop: value }, etc.
|
|
317
|
+
const propRegex = new RegExp(`\\s*${propertyToRemove}\\s*:\\s*[^,}]+\\s*(,\\s*)?`, 'g');
|
|
318
|
+
// Remove the property and any trailing comma
|
|
319
|
+
let newObjectLiteral = objectLiteral.replace(propRegex, '');
|
|
320
|
+
// Fix syntax if we removed the last property with trailing comma
|
|
321
|
+
newObjectLiteral = newObjectLiteral.replace(/,\s*}$/, '}');
|
|
322
|
+
// If the object is now empty, remove the attribute completely
|
|
323
|
+
if (newObjectLiteral === '{}') {
|
|
324
|
+
element.removeAttribute(`[${attributeName}]`);
|
|
325
|
+
}
|
|
326
|
+
else {
|
|
327
|
+
element.setAttribute(`[${attributeName}]`, newObjectLiteral);
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
// Check if it's a variable reference to an object
|
|
331
|
+
else {
|
|
332
|
+
// For variable references, we can't modify them in the template
|
|
333
|
+
// We should warn the user or handle this case specially
|
|
334
|
+
console.warn(`Cannot remove property from variable reference: ${boundAttr} in file ${filePath}`);
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
// Return the modified HTML content
|
|
339
|
+
return root.toString();
|
|
340
|
+
};
|
|
341
|
+
exports.htmlAttributeRemoval = htmlAttributeRemoval;
|
|
342
|
+
/**
|
|
343
|
+
* Removes a specified property from an object binding in HTML templates
|
|
344
|
+
*
|
|
345
|
+
* @param root - The HTML root element
|
|
346
|
+
* @param tagName - The tag to search for (e.g., 'kendo-tabstrip')
|
|
347
|
+
* @param attributeName - The attribute containing the object binding (e.g., 'scrollable')
|
|
348
|
+
* @param propertyToRemove - The property to remove from the object (e.g., 'mouseScrollSpeed')
|
|
349
|
+
*/
|
|
350
|
+
const templateAttributeRemoval = (root, tagName, attributeName, propertyToRemove) => {
|
|
351
|
+
const elements = root.querySelectorAll(tagName);
|
|
352
|
+
for (const element of elements) {
|
|
353
|
+
// Look for bound attribute (e.g., [scrollable]="...")
|
|
354
|
+
const boundAttr = element.getAttribute(`[${attributeName}]`);
|
|
355
|
+
if (boundAttr) {
|
|
356
|
+
// Check if it's an object literal
|
|
357
|
+
if (boundAttr.trim().startsWith('{') && boundAttr.trim().endsWith('}')) {
|
|
358
|
+
// Process object literal like {mouseScrollSpeed: 10000}
|
|
359
|
+
const objectLiteral = boundAttr.trim();
|
|
360
|
+
// Build a regex that matches the property and its value
|
|
361
|
+
// This handles various formats like {prop: value}, { prop: value }, etc.
|
|
362
|
+
const propRegex = new RegExp(`\\s*${propertyToRemove}\\s*:\\s*[^,}]+\\s*(,\\s*)?`, 'g');
|
|
363
|
+
// Remove the property and any trailing comma
|
|
364
|
+
let newObjectLiteral = objectLiteral.replace(propRegex, '');
|
|
365
|
+
// Fix syntax if we removed the last property with trailing comma
|
|
366
|
+
newObjectLiteral = newObjectLiteral.replace(/,\s*}$/, '}');
|
|
367
|
+
// If the object is now empty, remove the attribute completely
|
|
368
|
+
if (newObjectLiteral === '{}') {
|
|
369
|
+
element.removeAttribute(`[${attributeName}]`);
|
|
370
|
+
}
|
|
371
|
+
else {
|
|
372
|
+
element.setAttribute(`[${attributeName}]`, newObjectLiteral);
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
// Check if it's a variable reference to an object
|
|
376
|
+
else {
|
|
377
|
+
// For variable references, we can't modify them in the template
|
|
378
|
+
// We should warn the user or handle this case specially
|
|
379
|
+
console.warn(`Cannot remove property from variable reference: ${boundAttr}`);
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
};
|
|
384
|
+
exports.templateAttributeRemoval = templateAttributeRemoval;
|
|
385
|
+
/**
|
|
386
|
+
* Removes a property from object literals of a specified type
|
|
387
|
+
*
|
|
388
|
+
* @param root - The AST root
|
|
389
|
+
* @param j - The JSCodeshift instance
|
|
390
|
+
* @param typeName - The type to target (e.g., 'TabStripScrollableSettings')
|
|
391
|
+
* @param propertyToRemove - The property to remove (e.g., 'mouseScrollSpeed')
|
|
392
|
+
*/
|
|
393
|
+
function tsPropertyRemoval(rootSource, j, typeName, propertyName) {
|
|
394
|
+
// Find class properties that have the specified type
|
|
395
|
+
rootSource
|
|
396
|
+
.find(j.ClassProperty, {
|
|
397
|
+
typeAnnotation: {
|
|
398
|
+
typeAnnotation: {
|
|
399
|
+
typeName: {
|
|
400
|
+
name: typeName
|
|
401
|
+
}
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
})
|
|
405
|
+
.forEach(path => {
|
|
406
|
+
// Check if there's an object literal initializer
|
|
407
|
+
if (path.node.value && path.node.value.type === 'ObjectExpression') {
|
|
408
|
+
const properties = path.node.value.properties;
|
|
409
|
+
// Find the property we want to remove - safely handle different property types
|
|
410
|
+
const propIndex = properties.findIndex((p) => p.type === 'ObjectProperty' &&
|
|
411
|
+
p.key &&
|
|
412
|
+
p.key.type === 'Identifier' &&
|
|
413
|
+
p.key.name === propertyName);
|
|
414
|
+
if (propIndex !== -1) {
|
|
415
|
+
// If property exists, remove it
|
|
416
|
+
// Case 1: If it's the only property, remove the entire class property
|
|
417
|
+
if (properties.length === 1) {
|
|
418
|
+
j(path).remove();
|
|
419
|
+
}
|
|
420
|
+
// Case 2: If there are other properties, just remove this one property
|
|
421
|
+
else {
|
|
422
|
+
properties.splice(propIndex, 1);
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
});
|
|
427
|
+
// Also handle property assignments (e.g., in methods like ngOnInit)
|
|
428
|
+
rootSource
|
|
429
|
+
.find(j.AssignmentExpression, {
|
|
430
|
+
left: {
|
|
431
|
+
type: 'MemberExpression',
|
|
432
|
+
object: {
|
|
433
|
+
type: 'MemberExpression'
|
|
434
|
+
},
|
|
435
|
+
property: {
|
|
436
|
+
name: propertyName
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
})
|
|
440
|
+
.forEach(path => {
|
|
441
|
+
j(path).remove();
|
|
442
|
+
});
|
|
443
|
+
return rootSource;
|
|
444
|
+
}
|
|
445
|
+
exports.tsPropertyRemoval = tsPropertyRemoval;
|
|
446
|
+
/**
|
|
447
|
+
* Removes assignments to a specific nested property of a component
|
|
448
|
+
*
|
|
449
|
+
* @param root - The AST root
|
|
450
|
+
* @param j - The JSCodeshift instance
|
|
451
|
+
* @param componentType - The component type to target (e.g., 'TabStripComponent')
|
|
452
|
+
* @param componentProperty - The component property (e.g., 'scrollable')
|
|
453
|
+
* @param propertyToRemove - The nested property to remove assignments to (e.g., 'mouseScrollSpeed')
|
|
454
|
+
*/
|
|
455
|
+
const tsComponentPropertyRemoval = (root, j, componentType, componentProperty, propertyToRemove) => {
|
|
456
|
+
// CASE 1: Handle direct property assignments like: foo.scrollable.mouseScrollSpeed = 3000;
|
|
457
|
+
root
|
|
458
|
+
.find(j.AssignmentExpression)
|
|
459
|
+
.filter((path) => {
|
|
460
|
+
const { left } = path.value;
|
|
461
|
+
// Check if this is a member expression assignment
|
|
462
|
+
if (left && left.type === 'MemberExpression') {
|
|
463
|
+
// Check if we're accessing the property to remove
|
|
464
|
+
if (left.property && left.property.name === propertyToRemove) {
|
|
465
|
+
// Check if we're accessing it from component.componentProperty
|
|
466
|
+
const obj = left.object;
|
|
467
|
+
if (obj && obj.type === 'MemberExpression' &&
|
|
468
|
+
obj.property && obj.property.name === componentProperty) {
|
|
469
|
+
// Now check if the base object is our component type
|
|
470
|
+
return isComponentTypeMatch(root, j, obj.object, componentType);
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
return false;
|
|
475
|
+
})
|
|
476
|
+
.forEach((path) => {
|
|
477
|
+
// Remove the entire statement
|
|
478
|
+
j(path).closest(j.ExpressionStatement).remove();
|
|
479
|
+
});
|
|
480
|
+
// CASE 2 & 3: Handle object assignments like: foo.scrollable = { mouseScrollSpeed: 3000, ... };
|
|
481
|
+
root
|
|
482
|
+
.find(j.AssignmentExpression)
|
|
483
|
+
.filter((path) => {
|
|
484
|
+
const { left, right } = path.value;
|
|
485
|
+
// Check if this assigns to component.componentProperty
|
|
486
|
+
if (left && left.type === 'MemberExpression' &&
|
|
487
|
+
left.property && left.property.name === componentProperty &&
|
|
488
|
+
right && right.type === 'ObjectExpression') {
|
|
489
|
+
// Check if the base object is our component type
|
|
490
|
+
return isComponentTypeMatch(root, j, left.object, componentType);
|
|
491
|
+
}
|
|
492
|
+
return false;
|
|
493
|
+
})
|
|
494
|
+
.forEach((path) => {
|
|
495
|
+
const properties = path.value.right.properties;
|
|
496
|
+
// Find the property we want to remove
|
|
497
|
+
const propIndex = properties.findIndex((p) => p && p.type === 'ObjectProperty' &&
|
|
498
|
+
p.key && p.key.type === 'Identifier' &&
|
|
499
|
+
p.key.name === propertyToRemove);
|
|
500
|
+
if (propIndex !== -1) {
|
|
501
|
+
// Case 2: If it's the only property, remove the entire statement
|
|
502
|
+
if (properties.length === 1) {
|
|
503
|
+
j(path).closest(j.ExpressionStatement).remove();
|
|
504
|
+
}
|
|
505
|
+
// Case 3: If there are other properties, just remove this one property
|
|
506
|
+
else {
|
|
507
|
+
properties.splice(propIndex, 1);
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
});
|
|
511
|
+
return root;
|
|
512
|
+
};
|
|
513
|
+
exports.tsComponentPropertyRemoval = tsComponentPropertyRemoval;
|
|
514
|
+
// Helper function to check if a node is a component of the specified type
|
|
515
|
+
function isComponentTypeMatch(root, j, node, componentType) {
|
|
516
|
+
if (!node)
|
|
517
|
+
return false;
|
|
518
|
+
// Case 1: Direct match for 'this.propertyName'
|
|
519
|
+
if (node.type === 'ThisExpression') {
|
|
520
|
+
return true; // Assuming 'this' refers to the component class
|
|
521
|
+
}
|
|
522
|
+
// Case 2: Function parameter
|
|
523
|
+
if (node.type === 'Identifier') {
|
|
524
|
+
const paramName = node.name;
|
|
525
|
+
// Check function parameters
|
|
526
|
+
return root
|
|
527
|
+
.find(j.Function)
|
|
528
|
+
.some(path => {
|
|
529
|
+
return path.node.params && path.node.params.some((param) => param.type === 'Identifier' &&
|
|
530
|
+
param.name === paramName &&
|
|
531
|
+
param.typeAnnotation?.typeAnnotation?.typeName?.name === componentType);
|
|
532
|
+
});
|
|
533
|
+
}
|
|
534
|
+
// Case 3: Member expression (obj.prop)
|
|
535
|
+
if (node.type === 'MemberExpression') {
|
|
536
|
+
// This would need more complex logic to determine if the object is of the right type
|
|
537
|
+
// For now, we can check if it's a property that has been declared with the right type
|
|
538
|
+
if (node.object.type === 'ThisExpression' && node.property.type === 'Identifier') {
|
|
539
|
+
const propName = node.property.name;
|
|
540
|
+
return root
|
|
541
|
+
.find(j.ClassProperty, {
|
|
542
|
+
key: { name: propName },
|
|
543
|
+
typeAnnotation: {
|
|
544
|
+
typeAnnotation: {
|
|
545
|
+
typeName: { name: componentType }
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
})
|
|
549
|
+
.size() > 0;
|
|
550
|
+
}
|
|
551
|
+
}
|
|
552
|
+
return false;
|
|
553
|
+
}
|
|
@@ -27,9 +27,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
27
27
|
return result;
|
|
28
28
|
};
|
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
const
|
|
31
|
-
const fs = __importStar(require("fs"));
|
|
30
|
+
const index_1 = require("../template-transformer/index");
|
|
32
31
|
const utils_1 = require("../utils");
|
|
32
|
+
const fs = __importStar(require("fs"));
|
|
33
33
|
function default_1(fileInfo, api) {
|
|
34
34
|
const filePath = fileInfo.path;
|
|
35
35
|
// Check if the file is an HTML file
|
|
@@ -42,7 +42,7 @@ function default_1(fileInfo, api) {
|
|
|
42
42
|
}
|
|
43
43
|
const j = api.jscodeshift;
|
|
44
44
|
const rootSource = j(fileInfo.source);
|
|
45
|
-
(0,
|
|
45
|
+
(0, index_1.templateTransformer)(rootSource, j, (root) => {
|
|
46
46
|
// Using node-html-parser to parse and manipulate the template: https://github.com/taoqf/node-html-parser
|
|
47
47
|
(0, utils_1.templateAttributeTransformer)(root, 'kendo-grid', 'kendoGridGroupBinding', 'kendoGridBinding');
|
|
48
48
|
});
|
|
@@ -61,11 +61,7 @@ export declare class ColumnMenuItemComponent implements AfterViewInit, OnChanges
|
|
|
61
61
|
/**
|
|
62
62
|
* @hidden
|
|
63
63
|
*/
|
|
64
|
-
indicatorIcon:
|
|
65
|
-
/**
|
|
66
|
-
* @hidden
|
|
67
|
-
*/
|
|
68
|
-
indicatorSVGIcon: SVGIcon;
|
|
64
|
+
indicatorIcon: boolean;
|
|
69
65
|
/**
|
|
70
66
|
* Specifies the item text.
|
|
71
67
|
*/
|
|
@@ -129,5 +125,5 @@ export declare class ColumnMenuItemComponent implements AfterViewInit, OnChanges
|
|
|
129
125
|
onClick(e: any): void;
|
|
130
126
|
private updateContentState;
|
|
131
127
|
static ɵfac: i0.ɵɵFactoryDeclaration<ColumnMenuItemComponent, never>;
|
|
132
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ColumnMenuItemComponent, "kendo-grid-columnmenu-item", never, { "icon": { "alias": "icon"; "required": false; }; "svgIcon": { "alias": "svgIcon"; "required": false; }; "indicatorIcon": { "alias": "indicatorIcon"; "required": false; }; "
|
|
128
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ColumnMenuItemComponent, "kendo-grid-columnmenu-item", never, { "icon": { "alias": "icon"; "required": false; }; "svgIcon": { "alias": "svgIcon"; "required": false; }; "indicatorIcon": { "alias": "indicatorIcon"; "required": false; }; "text": { "alias": "text"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; "focused": { "alias": "focused"; "required": false; }; "service": { "alias": "service"; "required": false; }; "column": { "alias": "column"; "required": false; }; }, { "itemClick": "itemClick"; "expand": "expand"; "collapse": "collapse"; }, ["contentTemplate"], never, true, never>;
|
|
133
129
|
}
|
|
@@ -660,7 +660,7 @@ export class AdaptiveRendererComponent {
|
|
|
660
660
|
{{messageFor('filterFilterButton')}}
|
|
661
661
|
</button>
|
|
662
662
|
</ng-template>
|
|
663
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "component", type: ActionSheetViewComponent, selector: "kendo-actionsheet-view", inputs: ["title", "subtitle", "titleId"] }, { kind: "component", type: FilterToolbarToolComponent, selector: "kendo-filter-toolbar-tool", outputs: ["close"] }, { kind: "component", type: ButtonDirective, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: ActionSheetHeaderTemplateDirective, selector: "[kendoActionSheetHeaderTemplate]" }, { kind: "directive", type: ActionSheetContentTemplateDirective, selector: "[kendoActionSheetContentTemplate]" }, { kind: "directive", type: ActionSheetFooterTemplateDirective, selector: "[kendoActionSheetFooterTemplate]" }, { kind: "component", type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { kind: "component", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { kind: "component", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { kind: "component", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
663
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "component", type: ActionSheetViewComponent, selector: "kendo-actionsheet-view", inputs: ["title", "subtitle", "titleId"] }, { kind: "component", type: FilterToolbarToolComponent, selector: "kendo-filter-toolbar-tool", outputs: ["close"] }, { kind: "component", type: ButtonDirective, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: ActionSheetHeaderTemplateDirective, selector: "[kendoActionSheetHeaderTemplate]" }, { kind: "directive", type: ActionSheetContentTemplateDirective, selector: "[kendoActionSheetContentTemplate]" }, { kind: "directive", type: ActionSheetFooterTemplateDirective, selector: "[kendoActionSheetFooterTemplate]" }, { kind: "component", type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { kind: "component", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { kind: "component", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { kind: "component", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemDirective, selector: "[kendoGridColumnMenuItem]", inputs: ["kendoGridColumnMenuItem"] }, { kind: "component", type: ColumnListComponent, selector: "kendo-grid-columnlist", inputs: ["columns", "showActions", "autoSync", "ariaLabel", "allowHideAll", "applyText", "resetText", "actionsClass", "isLast", "isExpanded", "service"], outputs: ["reset", "apply", "columnChange"] }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: FormComponent, selector: "kendo-grid-external-form", inputs: ["controls", "formSettings", "formGroup", "actionButtons"], outputs: ["formSubmit"] }] });
|
|
664
664
|
}
|
|
665
665
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdaptiveRendererComponent, decorators: [{
|
|
666
666
|
type: Component,
|
|
@@ -58,7 +58,7 @@ export class ColumnMenuAutoSizeAllColumnsComponent extends ColumnMenuItemBase {
|
|
|
58
58
|
[svgIcon]="displayInlineFlexIcon"
|
|
59
59
|
(itemClick)="autoSizeAllColumns()"
|
|
60
60
|
></kendo-grid-columnmenu-item>
|
|
61
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
61
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
62
62
|
}
|
|
63
63
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuAutoSizeAllColumnsComponent, decorators: [{
|
|
64
64
|
type: Component,
|
|
@@ -64,7 +64,7 @@ export class ColumnMenuAutoSizeColumnComponent extends ColumnMenuItemBase {
|
|
|
64
64
|
[svgIcon]="maxWidthIcon"
|
|
65
65
|
(itemClick)="autoSizeColumn()"
|
|
66
66
|
></kendo-grid-columnmenu-item>
|
|
67
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
67
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
68
68
|
}
|
|
69
69
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuAutoSizeColumnComponent, decorators: [{
|
|
70
70
|
type: Component,
|
|
@@ -118,7 +118,7 @@ export class ColumnMenuChooserComponent extends ColumnMenuItemBase {
|
|
|
118
118
|
</kendo-grid-columnlist>
|
|
119
119
|
</ng-template>
|
|
120
120
|
</kendo-grid-columnmenu-item>
|
|
121
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
121
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }, { kind: "component", type: ColumnListComponent, selector: "kendo-grid-columnlist", inputs: ["columns", "showActions", "autoSync", "ariaLabel", "allowHideAll", "applyText", "resetText", "actionsClass", "isLast", "isExpanded", "service"], outputs: ["reset", "apply", "columnChange"] }] });
|
|
122
122
|
}
|
|
123
123
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuChooserComponent, decorators: [{
|
|
124
124
|
type: Component,
|
|
@@ -97,7 +97,7 @@ export class ColumnMenuFilterComponent extends ColumnMenuItemBase {
|
|
|
97
97
|
</kendo-grid-filter-menu-container>
|
|
98
98
|
</ng-template>
|
|
99
99
|
</kendo-grid-columnmenu-item>
|
|
100
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
100
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }] });
|
|
101
101
|
}
|
|
102
102
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuFilterComponent, decorators: [{
|
|
103
103
|
type: Component,
|
|
@@ -71,10 +71,6 @@ export class ColumnMenuItemComponent {
|
|
|
71
71
|
* @hidden
|
|
72
72
|
*/
|
|
73
73
|
indicatorIcon;
|
|
74
|
-
/**
|
|
75
|
-
* @hidden
|
|
76
|
-
*/
|
|
77
|
-
indicatorSVGIcon;
|
|
78
74
|
/**
|
|
79
75
|
* Specifies the item text.
|
|
80
76
|
*/
|
|
@@ -192,7 +188,7 @@ export class ColumnMenuItemComponent {
|
|
|
192
188
|
this.contentState = this.expanded ? 'expanded' : 'collapsed';
|
|
193
189
|
}
|
|
194
190
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuItemComponent, deps: [{ token: i0.NgZone }, { token: i1.ContextService }, { token: i2.AdaptiveGridService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
195
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuItemComponent, isStandalone: true, selector: "kendo-grid-columnmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", indicatorIcon: "indicatorIcon",
|
|
191
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuItemComponent, isStandalone: true, selector: "kendo-grid-columnmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", indicatorIcon: "indicatorIcon", text: "text", selected: "selected", disabled: "disabled", expanded: "expanded", focused: "focused", service: "service", column: "column" }, outputs: { itemClick: "itemClick", expand: "expand", collapse: "collapse" }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ColumnMenuItemContentTemplateDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
196
192
|
<div *ngIf="contentTemplate; else content" class="k-expander">
|
|
197
193
|
<ng-container [ngTemplateOutlet]="content"></ng-container>
|
|
198
194
|
</div>
|
|
@@ -213,16 +209,16 @@ export class ColumnMenuItemComponent {
|
|
|
213
209
|
[name]="icon"
|
|
214
210
|
[svgIcon]="svgIcon"></kendo-icon-wrapper>
|
|
215
211
|
{{ text }}
|
|
216
|
-
<span *ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'sortToolbarTool' && sortDescriptor(column.field).dir)
|
|
212
|
+
<span *ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'sortToolbarTool' && sortDescriptor(column.field).dir)"
|
|
217
213
|
class="k-columnmenu-indicators">
|
|
218
214
|
<kendo-icon-wrapper
|
|
219
|
-
[name]="
|
|
220
|
-
[svgIcon]="
|
|
215
|
+
[name]="sortDescriptor(column.field).dir === 'asc' ? 'sort-asc-small' : 'sort-desc-small'"
|
|
216
|
+
[svgIcon]="sortDescriptor(column.field).dir === 'asc' ? sortAscSmallIcon : sortDescSmallIcon">
|
|
221
217
|
</kendo-icon-wrapper>
|
|
222
218
|
<span *ngIf="showSortNumbering(column)" class="k-sort-index">{{sortOrder(column.field)}}</span>
|
|
223
219
|
</span>
|
|
224
220
|
<kendo-icon-wrapper
|
|
225
|
-
*ngIf="ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'filterToolbarTool' && hasFilters"
|
|
221
|
+
*ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'filterToolbarTool' && hasFilters) || indicatorIcon"
|
|
226
222
|
class="k-columnmenu-indicators"
|
|
227
223
|
name="filter"
|
|
228
224
|
[svgIcon]="filterIcon">
|
|
@@ -312,16 +308,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
312
308
|
[name]="icon"
|
|
313
309
|
[svgIcon]="svgIcon"></kendo-icon-wrapper>
|
|
314
310
|
{{ text }}
|
|
315
|
-
<span *ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'sortToolbarTool' && sortDescriptor(column.field).dir)
|
|
311
|
+
<span *ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'sortToolbarTool' && sortDescriptor(column.field).dir)"
|
|
316
312
|
class="k-columnmenu-indicators">
|
|
317
313
|
<kendo-icon-wrapper
|
|
318
|
-
[name]="
|
|
319
|
-
[svgIcon]="
|
|
314
|
+
[name]="sortDescriptor(column.field).dir === 'asc' ? 'sort-asc-small' : 'sort-desc-small'"
|
|
315
|
+
[svgIcon]="sortDescriptor(column.field).dir === 'asc' ? sortAscSmallIcon : sortDescSmallIcon">
|
|
320
316
|
</kendo-icon-wrapper>
|
|
321
317
|
<span *ngIf="showSortNumbering(column)" class="k-sort-index">{{sortOrder(column.field)}}</span>
|
|
322
318
|
</span>
|
|
323
319
|
<kendo-icon-wrapper
|
|
324
|
-
*ngIf="ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'filterToolbarTool' && hasFilters"
|
|
320
|
+
*ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'filterToolbarTool' && hasFilters) || indicatorIcon"
|
|
325
321
|
class="k-columnmenu-indicators"
|
|
326
322
|
name="filter"
|
|
327
323
|
[svgIcon]="filterIcon">
|
|
@@ -355,8 +351,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
355
351
|
type: Input
|
|
356
352
|
}], indicatorIcon: [{
|
|
357
353
|
type: Input
|
|
358
|
-
}], indicatorSVGIcon: [{
|
|
359
|
-
type: Input
|
|
360
354
|
}], text: [{
|
|
361
355
|
type: Input
|
|
362
356
|
}], selected: [{
|
|
@@ -89,7 +89,7 @@ export class ColumnMenuLockComponent extends ColumnMenuItemBase {
|
|
|
89
89
|
(itemClick)="toggleColumn()"
|
|
90
90
|
[disabled]="disabled">
|
|
91
91
|
</kendo-grid-columnmenu-item>
|
|
92
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
92
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
93
93
|
}
|
|
94
94
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuLockComponent, decorators: [{
|
|
95
95
|
type: Component,
|
|
@@ -138,7 +138,7 @@ export class ColumnMenuPositionComponent extends ColumnMenuItemBase {
|
|
|
138
138
|
</kendo-grid-columnmenu-stick>
|
|
139
139
|
</ng-template>
|
|
140
140
|
</kendo-grid-columnmenu-item>
|
|
141
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
141
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }] });
|
|
142
142
|
}
|
|
143
143
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuPositionComponent, decorators: [{
|
|
144
144
|
type: Component,
|
|
@@ -91,7 +91,7 @@ export class ColumnMenuSortComponent extends ColumnMenuItemBase {
|
|
|
91
91
|
(itemClick)="toggleSort('desc')"
|
|
92
92
|
[selected]="sortedDesc">
|
|
93
93
|
</kendo-grid-columnmenu-item>
|
|
94
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
94
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
95
95
|
}
|
|
96
96
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuSortComponent, decorators: [{
|
|
97
97
|
type: Component,
|
|
@@ -91,7 +91,7 @@ export class ColumnMenuStickComponent extends ColumnMenuItemBase {
|
|
|
91
91
|
(itemClick)="toggleColumn()"
|
|
92
92
|
[disabled]="disabled">
|
|
93
93
|
</kendo-grid-columnmenu-item>
|
|
94
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
94
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
95
95
|
}
|
|
96
96
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuStickComponent, decorators: [{
|
|
97
97
|
type: Component,
|
|
@@ -10,7 +10,7 @@ export const packageMetadata = {
|
|
|
10
10
|
productName: 'Kendo UI for Angular',
|
|
11
11
|
productCode: 'KENDOUIANGULAR',
|
|
12
12
|
productCodes: ['KENDOUIANGULAR'],
|
|
13
|
-
publishDate:
|
|
14
|
-
version: '19.0.0-develop.
|
|
13
|
+
publishDate: 1747761009,
|
|
14
|
+
version: '19.0.0-develop.28',
|
|
15
15
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
16
16
|
};
|
|
@@ -13,7 +13,6 @@ import { ColumnMenuItemContentTemplateDirective } from '../../../column-menu/col
|
|
|
13
13
|
import { ColumnInfoService } from '../../../common/column-info.service';
|
|
14
14
|
import { cloneFilters } from '../../../common/filter-descriptor-differ';
|
|
15
15
|
import { AdaptiveGridService } from '../../../common/adaptiveness.service';
|
|
16
|
-
import { filterIcon } from '@progress/kendo-svg-icons';
|
|
17
16
|
import { take } from 'rxjs/operators';
|
|
18
17
|
import * as i0 from "@angular/core";
|
|
19
18
|
import * as i1 from "../../../filtering/filter.service";
|
|
@@ -44,8 +43,6 @@ export class FilterToolbarToolComponent {
|
|
|
44
43
|
columnMenuService;
|
|
45
44
|
columns;
|
|
46
45
|
filter;
|
|
47
|
-
activeFilterSVGIcon = filterIcon;
|
|
48
|
-
activeFilterIcon = 'k-i-filter';
|
|
49
46
|
isFilterApplied(column) {
|
|
50
47
|
if (!this.filter?.filters) {
|
|
51
48
|
return false;
|
|
@@ -151,8 +148,7 @@ export class FilterToolbarToolComponent {
|
|
|
151
148
|
(focus)="onItemFocus(filterItem)"
|
|
152
149
|
(focusout)="onItemFocusOut()"
|
|
153
150
|
(keydown.enter)="toggleItem($event, i)"
|
|
154
|
-
[
|
|
155
|
-
[indicatorIcon]="isFilterApplied(column) ? activeFilterIcon : null"
|
|
151
|
+
[indicatorIcon]="isFilterApplied(column)"
|
|
156
152
|
(itemClick)="navigateView(getColumnComponent(column))"
|
|
157
153
|
[expanded]="false"
|
|
158
154
|
[focused]="isItemFocused(filterItem)">
|
|
@@ -168,7 +164,7 @@ export class FilterToolbarToolComponent {
|
|
|
168
164
|
</ng-template>
|
|
169
165
|
</kendo-grid-columnmenu-item>
|
|
170
166
|
</div>
|
|
171
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
167
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }] });
|
|
172
168
|
}
|
|
173
169
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterToolbarToolComponent, decorators: [{
|
|
174
170
|
type: Component,
|
|
@@ -185,8 +181,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
185
181
|
(focus)="onItemFocus(filterItem)"
|
|
186
182
|
(focusout)="onItemFocusOut()"
|
|
187
183
|
(keydown.enter)="toggleItem($event, i)"
|
|
188
|
-
[
|
|
189
|
-
[indicatorIcon]="isFilterApplied(column) ? activeFilterIcon : null"
|
|
184
|
+
[indicatorIcon]="isFilterApplied(column)"
|
|
190
185
|
(itemClick)="navigateView(getColumnComponent(column))"
|
|
191
186
|
[expanded]="false"
|
|
192
187
|
[focused]="isItemFocused(filterItem)">
|
|
@@ -12236,10 +12236,6 @@ class ColumnMenuItemComponent {
|
|
|
12236
12236
|
* @hidden
|
|
12237
12237
|
*/
|
|
12238
12238
|
indicatorIcon;
|
|
12239
|
-
/**
|
|
12240
|
-
* @hidden
|
|
12241
|
-
*/
|
|
12242
|
-
indicatorSVGIcon;
|
|
12243
12239
|
/**
|
|
12244
12240
|
* Specifies the item text.
|
|
12245
12241
|
*/
|
|
@@ -12357,7 +12353,7 @@ class ColumnMenuItemComponent {
|
|
|
12357
12353
|
this.contentState = this.expanded ? 'expanded' : 'collapsed';
|
|
12358
12354
|
}
|
|
12359
12355
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuItemComponent, deps: [{ token: i0.NgZone }, { token: ContextService }, { token: AdaptiveGridService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
12360
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuItemComponent, isStandalone: true, selector: "kendo-grid-columnmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", indicatorIcon: "indicatorIcon",
|
|
12356
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ColumnMenuItemComponent, isStandalone: true, selector: "kendo-grid-columnmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", indicatorIcon: "indicatorIcon", text: "text", selected: "selected", disabled: "disabled", expanded: "expanded", focused: "focused", service: "service", column: "column" }, outputs: { itemClick: "itemClick", expand: "expand", collapse: "collapse" }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ColumnMenuItemContentTemplateDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
12361
12357
|
<div *ngIf="contentTemplate; else content" class="k-expander">
|
|
12362
12358
|
<ng-container [ngTemplateOutlet]="content"></ng-container>
|
|
12363
12359
|
</div>
|
|
@@ -12378,16 +12374,16 @@ class ColumnMenuItemComponent {
|
|
|
12378
12374
|
[name]="icon"
|
|
12379
12375
|
[svgIcon]="svgIcon"></kendo-icon-wrapper>
|
|
12380
12376
|
{{ text }}
|
|
12381
|
-
<span *ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'sortToolbarTool' && sortDescriptor(column.field).dir)
|
|
12377
|
+
<span *ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'sortToolbarTool' && sortDescriptor(column.field).dir)"
|
|
12382
12378
|
class="k-columnmenu-indicators">
|
|
12383
12379
|
<kendo-icon-wrapper
|
|
12384
|
-
[name]="
|
|
12385
|
-
[svgIcon]="
|
|
12380
|
+
[name]="sortDescriptor(column.field).dir === 'asc' ? 'sort-asc-small' : 'sort-desc-small'"
|
|
12381
|
+
[svgIcon]="sortDescriptor(column.field).dir === 'asc' ? sortAscSmallIcon : sortDescSmallIcon">
|
|
12386
12382
|
</kendo-icon-wrapper>
|
|
12387
12383
|
<span *ngIf="showSortNumbering(column)" class="k-sort-index">{{sortOrder(column.field)}}</span>
|
|
12388
12384
|
</span>
|
|
12389
12385
|
<kendo-icon-wrapper
|
|
12390
|
-
*ngIf="ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'filterToolbarTool' && hasFilters"
|
|
12386
|
+
*ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'filterToolbarTool' && hasFilters) || indicatorIcon"
|
|
12391
12387
|
class="k-columnmenu-indicators"
|
|
12392
12388
|
name="filter"
|
|
12393
12389
|
[svgIcon]="filterIcon">
|
|
@@ -12477,16 +12473,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12477
12473
|
[name]="icon"
|
|
12478
12474
|
[svgIcon]="svgIcon"></kendo-icon-wrapper>
|
|
12479
12475
|
{{ text }}
|
|
12480
|
-
<span *ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'sortToolbarTool' && sortDescriptor(column.field).dir)
|
|
12476
|
+
<span *ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'sortToolbarTool' && sortDescriptor(column.field).dir)"
|
|
12481
12477
|
class="k-columnmenu-indicators">
|
|
12482
12478
|
<kendo-icon-wrapper
|
|
12483
|
-
[name]="
|
|
12484
|
-
[svgIcon]="
|
|
12479
|
+
[name]="sortDescriptor(column.field).dir === 'asc' ? 'sort-asc-small' : 'sort-desc-small'"
|
|
12480
|
+
[svgIcon]="sortDescriptor(column.field).dir === 'asc' ? sortAscSmallIcon : sortDescSmallIcon">
|
|
12485
12481
|
</kendo-icon-wrapper>
|
|
12486
12482
|
<span *ngIf="showSortNumbering(column)" class="k-sort-index">{{sortOrder(column.field)}}</span>
|
|
12487
12483
|
</span>
|
|
12488
12484
|
<kendo-icon-wrapper
|
|
12489
|
-
*ngIf="ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'filterToolbarTool' && hasFilters"
|
|
12485
|
+
*ngIf="(ctx.grid.isActionSheetExpanded && adaptiveGridService.viewType === 'filterToolbarTool' && hasFilters) || indicatorIcon"
|
|
12490
12486
|
class="k-columnmenu-indicators"
|
|
12491
12487
|
name="filter"
|
|
12492
12488
|
[svgIcon]="filterIcon">
|
|
@@ -12520,8 +12516,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
12520
12516
|
type: Input
|
|
12521
12517
|
}], indicatorIcon: [{
|
|
12522
12518
|
type: Input
|
|
12523
|
-
}], indicatorSVGIcon: [{
|
|
12524
|
-
type: Input
|
|
12525
12519
|
}], text: [{
|
|
12526
12520
|
type: Input
|
|
12527
12521
|
}], selected: [{
|
|
@@ -12587,7 +12581,7 @@ class ColumnMenuAutoSizeAllColumnsComponent extends ColumnMenuItemBase {
|
|
|
12587
12581
|
[svgIcon]="displayInlineFlexIcon"
|
|
12588
12582
|
(itemClick)="autoSizeAllColumns()"
|
|
12589
12583
|
></kendo-grid-columnmenu-item>
|
|
12590
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
12584
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
12591
12585
|
}
|
|
12592
12586
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuAutoSizeAllColumnsComponent, decorators: [{
|
|
12593
12587
|
type: Component,
|
|
@@ -12659,7 +12653,7 @@ class ColumnMenuAutoSizeColumnComponent extends ColumnMenuItemBase {
|
|
|
12659
12653
|
[svgIcon]="maxWidthIcon"
|
|
12660
12654
|
(itemClick)="autoSizeColumn()"
|
|
12661
12655
|
></kendo-grid-columnmenu-item>
|
|
12662
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
12656
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
12663
12657
|
}
|
|
12664
12658
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuAutoSizeColumnComponent, decorators: [{
|
|
12665
12659
|
type: Component,
|
|
@@ -12787,7 +12781,7 @@ class ColumnMenuChooserComponent extends ColumnMenuItemBase {
|
|
|
12787
12781
|
</kendo-grid-columnlist>
|
|
12788
12782
|
</ng-template>
|
|
12789
12783
|
</kendo-grid-columnmenu-item>
|
|
12790
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
12784
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }, { kind: "component", type: ColumnListComponent, selector: "kendo-grid-columnlist", inputs: ["columns", "showActions", "autoSync", "ariaLabel", "allowHideAll", "applyText", "resetText", "actionsClass", "isLast", "isExpanded", "service"], outputs: ["reset", "apply", "columnChange"] }] });
|
|
12791
12785
|
}
|
|
12792
12786
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuChooserComponent, decorators: [{
|
|
12793
12787
|
type: Component,
|
|
@@ -12911,7 +12905,7 @@ class ColumnMenuStickComponent extends ColumnMenuItemBase {
|
|
|
12911
12905
|
(itemClick)="toggleColumn()"
|
|
12912
12906
|
[disabled]="disabled">
|
|
12913
12907
|
</kendo-grid-columnmenu-item>
|
|
12914
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
12908
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
12915
12909
|
}
|
|
12916
12910
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuStickComponent, decorators: [{
|
|
12917
12911
|
type: Component,
|
|
@@ -13009,7 +13003,7 @@ class ColumnMenuLockComponent extends ColumnMenuItemBase {
|
|
|
13009
13003
|
(itemClick)="toggleColumn()"
|
|
13010
13004
|
[disabled]="disabled">
|
|
13011
13005
|
</kendo-grid-columnmenu-item>
|
|
13012
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
13006
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
13013
13007
|
}
|
|
13014
13008
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuLockComponent, decorators: [{
|
|
13015
13009
|
type: Component,
|
|
@@ -13154,7 +13148,7 @@ class ColumnMenuPositionComponent extends ColumnMenuItemBase {
|
|
|
13154
13148
|
</kendo-grid-columnmenu-stick>
|
|
13155
13149
|
</ng-template>
|
|
13156
13150
|
</kendo-grid-columnmenu-item>
|
|
13157
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
13151
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }] });
|
|
13158
13152
|
}
|
|
13159
13153
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuPositionComponent, decorators: [{
|
|
13160
13154
|
type: Component,
|
|
@@ -13286,7 +13280,7 @@ class ColumnMenuFilterComponent extends ColumnMenuItemBase {
|
|
|
13286
13280
|
</kendo-grid-filter-menu-container>
|
|
13287
13281
|
</ng-template>
|
|
13288
13282
|
</kendo-grid-columnmenu-item>
|
|
13289
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
13283
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }] });
|
|
13290
13284
|
}
|
|
13291
13285
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuFilterComponent, decorators: [{
|
|
13292
13286
|
type: Component,
|
|
@@ -13589,7 +13583,7 @@ class ColumnMenuSortComponent extends ColumnMenuItemBase {
|
|
|
13589
13583
|
(itemClick)="toggleSort('desc')"
|
|
13590
13584
|
[selected]="sortedDesc">
|
|
13591
13585
|
</kendo-grid-columnmenu-item>
|
|
13592
|
-
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
13586
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }] });
|
|
13593
13587
|
}
|
|
13594
13588
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnMenuSortComponent, decorators: [{
|
|
13595
13589
|
type: Component,
|
|
@@ -20445,8 +20439,8 @@ const packageMetadata = {
|
|
|
20445
20439
|
productName: 'Kendo UI for Angular',
|
|
20446
20440
|
productCode: 'KENDOUIANGULAR',
|
|
20447
20441
|
productCodes: ['KENDOUIANGULAR'],
|
|
20448
|
-
publishDate:
|
|
20449
|
-
version: '19.0.0-develop.
|
|
20442
|
+
publishDate: 1747761009,
|
|
20443
|
+
version: '19.0.0-develop.28',
|
|
20450
20444
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
|
|
20451
20445
|
};
|
|
20452
20446
|
|
|
@@ -24364,8 +24358,6 @@ class FilterToolbarToolComponent {
|
|
|
24364
24358
|
columnMenuService;
|
|
24365
24359
|
columns;
|
|
24366
24360
|
filter;
|
|
24367
|
-
activeFilterSVGIcon = filterIcon;
|
|
24368
|
-
activeFilterIcon = 'k-i-filter';
|
|
24369
24361
|
isFilterApplied(column) {
|
|
24370
24362
|
if (!this.filter?.filters) {
|
|
24371
24363
|
return false;
|
|
@@ -24471,8 +24463,7 @@ class FilterToolbarToolComponent {
|
|
|
24471
24463
|
(focus)="onItemFocus(filterItem)"
|
|
24472
24464
|
(focusout)="onItemFocusOut()"
|
|
24473
24465
|
(keydown.enter)="toggleItem($event, i)"
|
|
24474
|
-
[
|
|
24475
|
-
[indicatorIcon]="isFilterApplied(column) ? activeFilterIcon : null"
|
|
24466
|
+
[indicatorIcon]="isFilterApplied(column)"
|
|
24476
24467
|
(itemClick)="navigateView(getColumnComponent(column))"
|
|
24477
24468
|
[expanded]="false"
|
|
24478
24469
|
[focused]="isItemFocused(filterItem)">
|
|
@@ -24488,7 +24479,7 @@ class FilterToolbarToolComponent {
|
|
|
24488
24479
|
</ng-template>
|
|
24489
24480
|
</kendo-grid-columnmenu-item>
|
|
24490
24481
|
</div>
|
|
24491
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
24482
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemContentTemplateDirective, selector: "[kendoGridColumnMenuItemContentTemplate]" }] });
|
|
24492
24483
|
}
|
|
24493
24484
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterToolbarToolComponent, decorators: [{
|
|
24494
24485
|
type: Component,
|
|
@@ -24505,8 +24496,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
24505
24496
|
(focus)="onItemFocus(filterItem)"
|
|
24506
24497
|
(focusout)="onItemFocusOut()"
|
|
24507
24498
|
(keydown.enter)="toggleItem($event, i)"
|
|
24508
|
-
[
|
|
24509
|
-
[indicatorIcon]="isFilterApplied(column) ? activeFilterIcon : null"
|
|
24499
|
+
[indicatorIcon]="isFilterApplied(column)"
|
|
24510
24500
|
(itemClick)="navigateView(getColumnComponent(column))"
|
|
24511
24501
|
[expanded]="false"
|
|
24512
24502
|
[focused]="isItemFocused(filterItem)">
|
|
@@ -25754,7 +25744,7 @@ class AdaptiveRendererComponent {
|
|
|
25754
25744
|
{{messageFor('filterFilterButton')}}
|
|
25755
25745
|
</button>
|
|
25756
25746
|
</ng-template>
|
|
25757
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "component", type: ActionSheetViewComponent, selector: "kendo-actionsheet-view", inputs: ["title", "subtitle", "titleId"] }, { kind: "component", type: FilterToolbarToolComponent, selector: "kendo-filter-toolbar-tool", outputs: ["close"] }, { kind: "component", type: ButtonDirective, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: ActionSheetHeaderTemplateDirective, selector: "[kendoActionSheetHeaderTemplate]" }, { kind: "directive", type: ActionSheetContentTemplateDirective, selector: "[kendoActionSheetContentTemplate]" }, { kind: "directive", type: ActionSheetFooterTemplateDirective, selector: "[kendoActionSheetFooterTemplate]" }, { kind: "component", type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { kind: "component", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { kind: "component", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { kind: "component", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "
|
|
25747
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ActionSheetComponent, selector: "kendo-actionsheet", inputs: ["actions", "actionsLayout", "overlayClickClose", "title", "subtitle", "items", "cssClass", "cssStyle", "animation", "expanded", "titleId", "initialFocus"], outputs: ["expandedChange", "action", "expand", "collapse", "itemClick", "overlayClick"], exportAs: ["kendoActionSheet"] }, { kind: "component", type: ActionSheetViewComponent, selector: "kendo-actionsheet-view", inputs: ["title", "subtitle", "titleId"] }, { kind: "component", type: FilterToolbarToolComponent, selector: "kendo-filter-toolbar-tool", outputs: ["close"] }, { kind: "component", type: ButtonDirective, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }, { kind: "directive", type: ActionSheetHeaderTemplateDirective, selector: "[kendoActionSheetHeaderTemplate]" }, { kind: "directive", type: ActionSheetContentTemplateDirective, selector: "[kendoActionSheetContentTemplate]" }, { kind: "directive", type: ActionSheetFooterTemplateDirective, selector: "[kendoActionSheetFooterTemplate]" }, { kind: "component", type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { kind: "component", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { kind: "component", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { kind: "component", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { kind: "component", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { kind: "component", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "indicatorIcon", "text", "selected", "disabled", "expanded", "focused", "service", "column"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ColumnMenuItemDirective, selector: "[kendoGridColumnMenuItem]", inputs: ["kendoGridColumnMenuItem"] }, { kind: "component", type: ColumnListComponent, selector: "kendo-grid-columnlist", inputs: ["columns", "showActions", "autoSync", "ariaLabel", "allowHideAll", "applyText", "resetText", "actionsClass", "isLast", "isExpanded", "service"], outputs: ["reset", "apply", "columnChange"] }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "component", type: FormComponent, selector: "kendo-grid-external-form", inputs: ["controls", "formSettings", "formGroup", "actionButtons"], outputs: ["formSubmit"] }] });
|
|
25758
25748
|
}
|
|
25759
25749
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AdaptiveRendererComponent, decorators: [{
|
|
25760
25750
|
type: Component,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-angular-grid",
|
|
3
|
-
"version": "19.0.0-develop.
|
|
3
|
+
"version": "19.0.0-develop.28",
|
|
4
4
|
"description": "Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "Progress",
|
|
@@ -26,15 +26,10 @@
|
|
|
26
26
|
"migrations": {
|
|
27
27
|
"options": {
|
|
28
28
|
"parser": "tsx",
|
|
29
|
-
"pattern": "*.{
|
|
29
|
+
"pattern": "*.{ts,html}"
|
|
30
30
|
},
|
|
31
31
|
"codemods": {
|
|
32
32
|
"19": [
|
|
33
|
-
{
|
|
34
|
-
"description": "Migrate all breaking changes for the grid package",
|
|
35
|
-
"file": "codemods/v19/index.js",
|
|
36
|
-
"prompt": "true"
|
|
37
|
-
},
|
|
38
33
|
{
|
|
39
34
|
"description": "The Grid's kendoGridGroupBinding directive is deprecated",
|
|
40
35
|
"file": "codemods/v19/grid-kendogridgroupbinding.js",
|
|
@@ -46,7 +41,7 @@
|
|
|
46
41
|
"package": {
|
|
47
42
|
"productName": "Kendo UI for Angular",
|
|
48
43
|
"productCode": "KENDOUIANGULAR",
|
|
49
|
-
"publishDate":
|
|
44
|
+
"publishDate": 1747761009,
|
|
50
45
|
"licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
|
|
51
46
|
}
|
|
52
47
|
},
|
|
@@ -59,29 +54,29 @@
|
|
|
59
54
|
"@progress/kendo-data-query": "^1.0.0",
|
|
60
55
|
"@progress/kendo-drawing": "^1.21.0",
|
|
61
56
|
"@progress/kendo-licensing": "^1.5.0",
|
|
62
|
-
"@progress/kendo-angular-buttons": "19.0.0-develop.
|
|
63
|
-
"@progress/kendo-angular-common": "19.0.0-develop.
|
|
64
|
-
"@progress/kendo-angular-dateinputs": "19.0.0-develop.
|
|
65
|
-
"@progress/kendo-angular-layout": "19.0.0-develop.
|
|
66
|
-
"@progress/kendo-angular-navigation": "19.0.0-develop.
|
|
67
|
-
"@progress/kendo-angular-dropdowns": "19.0.0-develop.
|
|
68
|
-
"@progress/kendo-angular-excel-export": "19.0.0-develop.
|
|
69
|
-
"@progress/kendo-angular-icons": "19.0.0-develop.
|
|
70
|
-
"@progress/kendo-angular-inputs": "19.0.0-develop.
|
|
71
|
-
"@progress/kendo-angular-indicators": "19.0.0-develop.
|
|
72
|
-
"@progress/kendo-angular-intl": "19.0.0-develop.
|
|
73
|
-
"@progress/kendo-angular-l10n": "19.0.0-develop.
|
|
74
|
-
"@progress/kendo-angular-label": "19.0.0-develop.
|
|
75
|
-
"@progress/kendo-angular-pager": "19.0.0-develop.
|
|
76
|
-
"@progress/kendo-angular-pdf-export": "19.0.0-develop.
|
|
77
|
-
"@progress/kendo-angular-popup": "19.0.0-develop.
|
|
78
|
-
"@progress/kendo-angular-toolbar": "19.0.0-develop.
|
|
79
|
-
"@progress/kendo-angular-utils": "19.0.0-develop.
|
|
57
|
+
"@progress/kendo-angular-buttons": "19.0.0-develop.28",
|
|
58
|
+
"@progress/kendo-angular-common": "19.0.0-develop.28",
|
|
59
|
+
"@progress/kendo-angular-dateinputs": "19.0.0-develop.28",
|
|
60
|
+
"@progress/kendo-angular-layout": "19.0.0-develop.28",
|
|
61
|
+
"@progress/kendo-angular-navigation": "19.0.0-develop.28",
|
|
62
|
+
"@progress/kendo-angular-dropdowns": "19.0.0-develop.28",
|
|
63
|
+
"@progress/kendo-angular-excel-export": "19.0.0-develop.28",
|
|
64
|
+
"@progress/kendo-angular-icons": "19.0.0-develop.28",
|
|
65
|
+
"@progress/kendo-angular-inputs": "19.0.0-develop.28",
|
|
66
|
+
"@progress/kendo-angular-indicators": "19.0.0-develop.28",
|
|
67
|
+
"@progress/kendo-angular-intl": "19.0.0-develop.28",
|
|
68
|
+
"@progress/kendo-angular-l10n": "19.0.0-develop.28",
|
|
69
|
+
"@progress/kendo-angular-label": "19.0.0-develop.28",
|
|
70
|
+
"@progress/kendo-angular-pager": "19.0.0-develop.28",
|
|
71
|
+
"@progress/kendo-angular-pdf-export": "19.0.0-develop.28",
|
|
72
|
+
"@progress/kendo-angular-popup": "19.0.0-develop.28",
|
|
73
|
+
"@progress/kendo-angular-toolbar": "19.0.0-develop.28",
|
|
74
|
+
"@progress/kendo-angular-utils": "19.0.0-develop.28",
|
|
80
75
|
"rxjs": "^6.5.3 || ^7.0.0"
|
|
81
76
|
},
|
|
82
77
|
"dependencies": {
|
|
83
78
|
"tslib": "^2.3.1",
|
|
84
|
-
"@progress/kendo-angular-schematics": "19.0.0-develop.
|
|
79
|
+
"@progress/kendo-angular-schematics": "19.0.0-develop.28",
|
|
85
80
|
"@progress/kendo-common": "^1.0.1",
|
|
86
81
|
"@progress/kendo-file-saver": "^1.0.0"
|
|
87
82
|
},
|
|
@@ -33,8 +33,6 @@ export declare class FilterToolbarToolComponent implements AfterViewInit, OnDest
|
|
|
33
33
|
columnMenuService: ColumnMenuService;
|
|
34
34
|
columns: Array<ColumnBase>;
|
|
35
35
|
filter: any;
|
|
36
|
-
activeFilterSVGIcon: import("@progress/kendo-svg-icons").SVGIcon;
|
|
37
|
-
activeFilterIcon: string;
|
|
38
36
|
isFilterApplied(column: any): boolean;
|
|
39
37
|
isItemFocused(filterItem: ColumnMenuItemComponent): boolean;
|
|
40
38
|
onItemFocus(item: ColumnMenuItemComponent): void;
|
|
@@ -4,14 +4,14 @@ const schematics_1 = require("@angular-devkit/schematics");
|
|
|
4
4
|
function default_1(options) {
|
|
5
5
|
const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'GridModule', package: 'grid', peerDependencies: {
|
|
6
6
|
// peer deps of the dropdowns
|
|
7
|
-
'@progress/kendo-angular-treeview': '19.0.0-develop.
|
|
8
|
-
'@progress/kendo-angular-navigation': '19.0.0-develop.
|
|
7
|
+
'@progress/kendo-angular-treeview': '19.0.0-develop.28',
|
|
8
|
+
'@progress/kendo-angular-navigation': '19.0.0-develop.28',
|
|
9
9
|
// peer dependency of kendo-angular-inputs
|
|
10
|
-
'@progress/kendo-angular-dialog': '19.0.0-develop.
|
|
10
|
+
'@progress/kendo-angular-dialog': '19.0.0-develop.28',
|
|
11
11
|
// peer dependency of kendo-angular-icons
|
|
12
12
|
'@progress/kendo-svg-icons': '^4.0.0',
|
|
13
13
|
// peer dependency of kendo-angular-layout
|
|
14
|
-
'@progress/kendo-angular-progressbar': '19.0.0-develop.
|
|
14
|
+
'@progress/kendo-angular-progressbar': '19.0.0-develop.28'
|
|
15
15
|
} });
|
|
16
16
|
return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
|
|
17
17
|
}
|
package/codemods/v19/index.js
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
/**-----------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright © 2025 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
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
-
if (k2 === undefined) k2 = k;
|
|
8
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
-
}
|
|
12
|
-
Object.defineProperty(o, k2, desc);
|
|
13
|
-
}) : (function(o, m, k, k2) {
|
|
14
|
-
if (k2 === undefined) k2 = k;
|
|
15
|
-
o[k2] = m[k];
|
|
16
|
-
}));
|
|
17
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
-
}) : function(o, v) {
|
|
20
|
-
o["default"] = v;
|
|
21
|
-
});
|
|
22
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
23
|
-
if (mod && mod.__esModule) return mod;
|
|
24
|
-
var result = {};
|
|
25
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
26
|
-
__setModuleDefault(result, mod);
|
|
27
|
-
return result;
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
const template_transformer_1 = require("../template-transformer");
|
|
31
|
-
const fs = __importStar(require("fs"));
|
|
32
|
-
const utils_1 = require("../utils");
|
|
33
|
-
function default_1(fileInfo, api) {
|
|
34
|
-
const filePath = fileInfo.path;
|
|
35
|
-
// Check if the file is an HTML file
|
|
36
|
-
if (filePath.endsWith('.html')) {
|
|
37
|
-
let updatedContent = fileInfo.source;
|
|
38
|
-
updatedContent = (0, utils_1.htmlAttributeTransformer)({ ...fileInfo, source: updatedContent }, 'kendo-grid', 'kendoGridGroupBinding', 'kendoGridBinding');
|
|
39
|
-
// Only write to file once after all transformations
|
|
40
|
-
fs.writeFileSync(filePath, updatedContent, 'utf-8');
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
const j = api.jscodeshift;
|
|
44
|
-
const rootSource = j(fileInfo.source);
|
|
45
|
-
(0, template_transformer_1.templateTransformer)(rootSource, j, (root) => {
|
|
46
|
-
// Using node-html-parser to parse and manipulate the template: https://github.com/taoqf/node-html-parser
|
|
47
|
-
(0, utils_1.templateAttributeTransformer)(root, 'kendo-grid', 'kendoGridGroupBinding', 'kendoGridBinding');
|
|
48
|
-
});
|
|
49
|
-
return rootSource.toSource();
|
|
50
|
-
}
|
|
51
|
-
exports.default = default_1;
|