@syncfusion/ej2-treemap 24.2.3 → 25.2.3

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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 24.2.3
3
+ * version : 25.2.3
4
4
  * Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-treemap@*",
3
- "_id": "@syncfusion/ej2-treemap@24.1.41",
3
+ "_id": "@syncfusion/ej2-treemap@25.1.35",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-5Xfl6U2LzgkU42iS4zd0axbamZ8NZRMGbv93CRVxc9frRMsfY/oMoafQzGbUQHanw8yfjlJcwjMo/2EfjAc7gw==",
5
+ "_integrity": "sha512-cammG0kT1v7yX5m5icGgKH+Yhn3EXEVozjdClFSsJOR1cLIx5ZpjmYLxoZNvyhT5OPRhFDlZ3I8lzSResAiozg==",
6
6
  "_location": "/@syncfusion/ej2-treemap",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -23,10 +23,10 @@
23
23
  "/@syncfusion/ej2-react-treemap",
24
24
  "/@syncfusion/ej2-vue-treemap"
25
25
  ],
26
- "_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-treemap/-/ej2-treemap-24.1.41.tgz",
27
- "_shasum": "9a11f76035bf287941f69b3f4f0875241beff02e",
26
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-treemap/-/ej2-treemap-25.1.35.tgz",
27
+ "_shasum": "d8aabc67b6bdfe95e29aea829c2dc717d94cc544",
28
28
  "_spec": "@syncfusion/ej2-treemap@*",
29
- "_where": "/jenkins/workspace/elease-automation_release_24.1.1/packages/included",
29
+ "_where": "/jenkins/workspace/elease-automation_release_25.1.1/packages/included",
30
30
  "author": {
31
31
  "name": "Syncfusion Inc."
32
32
  },
@@ -35,12 +35,12 @@
35
35
  },
36
36
  "bundleDependencies": false,
37
37
  "dependencies": {
38
- "@syncfusion/ej2-base": "~24.2.3",
39
- "@syncfusion/ej2-compression": "~24.2.3",
40
- "@syncfusion/ej2-data": "~24.2.3",
41
- "@syncfusion/ej2-file-utils": "~24.2.3",
42
- "@syncfusion/ej2-pdf-export": "~24.2.3",
43
- "@syncfusion/ej2-svg-base": "~24.2.3"
38
+ "@syncfusion/ej2-base": "~25.2.3",
39
+ "@syncfusion/ej2-compression": "~25.2.3",
40
+ "@syncfusion/ej2-data": "~25.2.3",
41
+ "@syncfusion/ej2-file-utils": "~25.2.3",
42
+ "@syncfusion/ej2-pdf-export": "~25.2.3",
43
+ "@syncfusion/ej2-svg-base": "~25.2.3"
44
44
  },
45
45
  "deprecated": false,
46
46
  "description": "Essential JS 2 TreeMap Components",
@@ -81,6 +81,6 @@
81
81
  "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
82
82
  },
83
83
  "typings": "index.d.ts",
84
- "version": "24.2.3",
84
+ "version": "25.2.3",
85
85
  "sideEffects": false
86
86
  }
@@ -39,6 +39,8 @@ export declare class TreeMapLegend {
39
39
  constructor(treemap: TreeMap);
40
40
  /**
41
41
  * method for legend
42
+ *
43
+ * @returns {void}
42
44
  * @private
43
45
  */
44
46
  renderLegend(): void;
@@ -52,6 +54,7 @@ export declare class TreeMapLegend {
52
54
  private isAddNewLegendData;
53
55
  /**
54
56
  * To draw the legend
57
+ *
55
58
  * @private
56
59
  */
57
60
  drawLegend(): void;
@@ -69,10 +72,15 @@ export declare class TreeMapLegend {
69
72
  renderInteractivePointer(e: PointerEvent | TouchEvent): void;
70
73
  private drawInteractivePointer;
71
74
  private getLegendAlignment;
72
- /** @private */
75
+ /**
76
+ * @param {PointerEvent} e - Specifies the event.
77
+ * @returns {void}
78
+ * @private
79
+ */
73
80
  mouseUpHandler(e: PointerEvent): void;
74
81
  /**
75
82
  * To remove the interactive pointer
83
+ *
76
84
  * @private
77
85
  */
78
86
  removeInteractivePointer(): void;
@@ -94,11 +102,13 @@ export declare class TreeMapLegend {
94
102
  wireEvents(element: Element): void;
95
103
  /**
96
104
  * To add the event listener
105
+ *
97
106
  * @private
98
107
  */
99
108
  addEventListener(): void;
100
109
  /**
101
110
  * To remove the event listener
111
+ *
102
112
  * @private
103
113
  */
104
114
  removeEventListener(): void;
@@ -21,9 +21,10 @@ var TreeMapLegend = /** @class */ (function () {
21
21
  this.treemap = treemap;
22
22
  this.addEventListener();
23
23
  }
24
- // eslint-disable-next-line valid-jsdoc
25
24
  /**
26
25
  * method for legend
26
+ *
27
+ * @returns {void}
27
28
  * @private
28
29
  */
29
30
  TreeMapLegend.prototype.renderLegend = function () {
@@ -549,6 +550,7 @@ var TreeMapLegend = /** @class */ (function () {
549
550
  // eslint-disable-next-line valid-jsdoc
550
551
  /**
551
552
  * To draw the legend
553
+ *
552
554
  * @private
553
555
  */
554
556
  TreeMapLegend.prototype.drawLegend = function () {
@@ -661,7 +663,7 @@ var TreeMapLegend = /** @class */ (function () {
661
663
  };
662
664
  treemap.trigger(legendItemRendering, eventArgs, function (observedArgs) {
663
665
  var renderOptions = new PathOption(shapeId, observedArgs.fill, strokeWidth_1, isLineShape_1 ? collection['Fill'] : strokeColor_1, legend.opacity, '');
664
- legendElement.appendChild(drawSymbol(shapeLocation, observedArgs.shape, shapeSize, observedArgs.imageUrl, renderOptions, legendText));
666
+ legendElement.appendChild(drawSymbol(shapeLocation, observedArgs.shape, shapeSize, observedArgs.imageUrl, renderOptions));
665
667
  textOptions = new TextOption(textId, textLocation.x, textLocation.y, 'start', legendText, '', '');
666
668
  renderTextElement(textOptions, legend.textStyle, legend.textStyle.color || treemap.themeStyle.legendTextColor, legendElement);
667
669
  _this.legendGroup.appendChild(legendElement);
@@ -716,7 +718,9 @@ var TreeMapLegend = /** @class */ (function () {
716
718
  'text-anchor': 'middle',
717
719
  'transform': '',
718
720
  'opacity': 1,
719
- 'dominant-baseline': ''
721
+ 'dominant-baseline': '',
722
+ 'role': 'region',
723
+ 'aria-label': pagingText
720
724
  };
721
725
  pagingGroup.appendChild(render.createText(pageTextOptions, pagingText));
722
726
  this.legendGroup.appendChild(pagingGroup);
@@ -752,7 +756,10 @@ var TreeMapLegend = /** @class */ (function () {
752
756
  var textSize = measureText(trimTitle, textStyle);
753
757
  if (legendTitle) {
754
758
  textOptions = new TextOption(this.treemap.element.id + '_LegendTitle', (this.legendItemRect.x) + (this.legendItemRect.width / 2), this.legendItemRect.y - (textSize.height / 2) - (spacing / 2), 'middle', trimTitle, '');
755
- renderTextElement(textOptions, textStyle, textStyle.color || this.treemap.themeStyle.legendTitleColor, this.legendGroup);
759
+ var textElement = renderTextElement(textOptions, textStyle, textStyle.color ||
760
+ this.treemap.themeStyle.legendTitleColor, this.legendGroup);
761
+ textElement.setAttribute('role', 'region');
762
+ textElement.setAttribute('aria-label', legendTitle);
756
763
  }
757
764
  };
758
765
  /**
@@ -902,8 +909,11 @@ var TreeMapLegend = /** @class */ (function () {
902
909
  this.translate = new Location(x, y);
903
910
  }
904
911
  };
905
- // eslint-disable-next-line valid-jsdoc
906
- /** @private */
912
+ /**
913
+ * @param {PointerEvent} e - Specifies the event.
914
+ * @returns {void}
915
+ * @private
916
+ */
907
917
  TreeMapLegend.prototype.mouseUpHandler = function (e) {
908
918
  this.renderInteractivePointer(e);
909
919
  clearTimeout(this.clearTimeout);
@@ -912,6 +922,7 @@ var TreeMapLegend = /** @class */ (function () {
912
922
  // eslint-disable-next-line valid-jsdoc
913
923
  /**
914
924
  * To remove the interactive pointer
925
+ *
915
926
  * @private
916
927
  */
917
928
  TreeMapLegend.prototype.removeInteractivePointer = function () {
@@ -950,6 +961,7 @@ var TreeMapLegend = /** @class */ (function () {
950
961
  // eslint-disable-next-line valid-jsdoc
951
962
  /**
952
963
  * To add the event listener
964
+ *
953
965
  * @private
954
966
  */
955
967
  TreeMapLegend.prototype.addEventListener = function () {
@@ -962,6 +974,7 @@ var TreeMapLegend = /** @class */ (function () {
962
974
  // eslint-disable-next-line valid-jsdoc
963
975
  /**
964
976
  * To remove the event listener
977
+ *
965
978
  * @private
966
979
  */
967
980
  TreeMapLegend.prototype.removeEventListener = function () {
@@ -986,6 +999,8 @@ var TreeMapLegend = /** @class */ (function () {
986
999
  * @private
987
1000
  */
988
1001
  TreeMapLegend.prototype.destroy = function () {
1002
+ clearTimeout(this.clearTimeout);
1003
+ this.clearTimeout = null;
989
1004
  this.legendRenderingCollections = [];
990
1005
  this.legendCollections = [];
991
1006
  this.outOfRangeLegend = null;
@@ -999,8 +1014,7 @@ var TreeMapLegend = /** @class */ (function () {
999
1014
  this.legendInteractiveGradient = [];
1000
1015
  this.legendItemRect = null;
1001
1016
  this.removeEventListener();
1002
- //TODO: The removeInteractivePointer method (calling method) is called in a timer in the mouseUpHandler method. Because of this handling, adding the below code results in a spec failure.
1003
- //this.treemap = null;
1017
+ this.treemap = null;
1004
1018
  };
1005
1019
  /**
1006
1020
  * Get the gradient color for interactive legend.
@@ -550,10 +550,11 @@ var LayoutPanel = /** @class */ (function () {
550
550
  }
551
551
  }
552
552
  itemGroup.setAttribute('aria-label', item['name']);
553
- if ((_this.treemap.enableDrillDown && isLeafItem) || (_this.treemap.selectionSettings.enable || _this.treemap.highlightSettings.enable)) {
553
+ if ((_this.treemap.enableDrillDown && isLeafItem) || (_this.treemap.selectionSettings.enable ||
554
+ _this.treemap.highlightSettings.enable)) {
554
555
  itemGroup.setAttribute('role', 'button');
555
556
  itemGroup.setAttribute('tabindex', _this.treemap.tabIndex.toString());
556
- itemGroup.style.cursor = _this.treemap.highlightSettings.enable && !_this.treemap.selectionSettings.enable && (_this.treemap.enableDrillDown && item['groupIndex'] == (_this.treemap.levels.length - 1)) ? 'default' :
557
+ itemGroup.style.cursor = _this.treemap.highlightSettings.enable && !_this.treemap.selectionSettings.enable && (_this.treemap.enableDrillDown && item['groupIndex'] === (_this.treemap.levels.length - 1)) ? 'default' :
557
558
  _this.treemap.highlightSettings.enable && !_this.treemap.selectionSettings.enable && !_this.treemap.enableDrillDown ? 'default' : 'pointer';
558
559
  }
559
560
  else {
@@ -160,6 +160,7 @@ export interface IItemClickEventArgs extends ITreeMapEventArgs {
160
160
  }
161
161
  /**
162
162
  * Defines the event argument of the treemap item data.
163
+ *
163
164
  * @private
164
165
  */
165
166
  export interface IItemDataEventArgs {
@@ -349,6 +350,7 @@ export interface ITreeMapTooltipRenderEventArgs extends ITreeMapEventArgs {
349
350
  }
350
351
  /**
351
352
  * Specifies the event arguments available for the tooltip events in the treemap.
353
+ *
352
354
  * @private
353
355
  */
354
356
  export interface ITreeMapTooltipArgs extends ITreeMapEventArgs {
@@ -454,6 +456,7 @@ export interface IShapes {
454
456
  }
455
457
  /**
456
458
  * Defines the theme supported for treemap.
459
+ *
457
460
  * @private
458
461
  */
459
462
  export interface IThemeStyle {
@@ -61,6 +61,7 @@ var Print = /** @class */ (function () {
61
61
  }
62
62
  else {
63
63
  var exportElement = treeMap.element.cloneNode(true);
64
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
64
65
  var backgroundElement = exportElement.getElementsByTagName('svg')[0];
65
66
  if (!isNullOrUndefined(backgroundElement)) {
66
67
  backgroundElement = backgroundElement.childNodes[0];
@@ -41,21 +41,25 @@ import { PdfExport } from './model/pdf-export';
41
41
  export declare class TreeMap extends Component<HTMLElement> implements INotifyPropertyChanged {
42
42
  /**
43
43
  * Sets and gets the module that is used to add tooltip in the treemap.
44
+ *
44
45
  * @private
45
46
  */
46
47
  treeMapTooltipModule: TreeMapTooltip;
47
48
  /**
48
49
  * Sets and gets the module that is used to add highlight functionality in the treemap.
50
+ *
49
51
  * @private
50
52
  */
51
53
  treeMapHighlightModule: TreeMapHighlight;
52
54
  /**
53
55
  * Sets and gets the module that is used to add selection functionality in the treemap.
56
+ *
54
57
  * @private
55
58
  */
56
59
  treeMapSelectionModule: TreeMapSelection;
57
60
  /**
58
61
  * Sets and gets the module that is used to add legend in the treemap.
62
+ *
59
63
  * @private
60
64
  */
61
65
  treeMapLegendModule: TreeMapLegend;
@@ -127,8 +127,9 @@ var TreeMap = /** @class */ (function (_super) {
127
127
  fetchApiModule.onSuccess = function (args) {
128
128
  if (!isNullOrUndefined(args.type) && args.type === 'application/octet-stream') {
129
129
  var reader_1 = new FileReader();
130
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
130
131
  var treemap_1 = _this;
131
- reader_1.onload = function (data) {
132
+ reader_1.onload = function () {
132
133
  args = JSON.parse(reader_1.result.toString());
133
134
  treemap_1.dataSource = args;
134
135
  treemap_1.renderTreeMapElements();
@@ -256,7 +257,7 @@ var TreeMap = /** @class */ (function (_super) {
256
257
  var titleBounds = new Rect(location_1.x, location_1.y, elementSize.width, elementSize.height);
257
258
  var element = renderTextElement(options, style, style.color || (type === 'title' ? this.themeStyle.titleFontColor : this.themeStyle.subTitleFontColor), groupEle);
258
259
  element.setAttribute('aria-label', title.description || title.text);
259
- element.setAttribute('role', '');
260
+ element.setAttribute('role', 'region');
260
261
  element.setAttribute('tabindex', this.tabIndex.toString());
261
262
  if ((type === 'title' && !title.subtitleSettings.text) || (type === 'subtitle')) {
262
263
  height = (this.availableSize.height - titleBounds.y - titlePadding - this.margin.bottom);
@@ -1082,43 +1083,50 @@ var TreeMap = /** @class */ (function (_super) {
1082
1083
  if (this.tooltipSettings.visible) {
1083
1084
  modules.push({
1084
1085
  member: 'treeMapTooltip',
1085
- args: [this]
1086
+ args: [this],
1087
+ name: 'TreeMapTooltip'
1086
1088
  });
1087
1089
  }
1088
1090
  if (this.highlightSettings.enable) {
1089
1091
  modules.push({
1090
1092
  member: 'treeMapHighlight',
1091
- args: [this]
1093
+ args: [this],
1094
+ name: 'TreeMapHighlight'
1092
1095
  });
1093
1096
  }
1094
1097
  if (this.selectionSettings.enable) {
1095
1098
  modules.push({
1096
1099
  member: 'treeMapSelection',
1097
- args: [this]
1100
+ args: [this],
1101
+ name: 'TreeMapSelection'
1098
1102
  });
1099
1103
  }
1100
1104
  if (this.legendSettings.visible) {
1101
1105
  modules.push({
1102
1106
  member: 'treeMapLegend',
1103
- args: [this]
1107
+ args: [this],
1108
+ name: 'TreeMapLegend'
1104
1109
  });
1105
1110
  }
1106
1111
  if (this.allowPrint) {
1107
1112
  modules.push({
1108
1113
  member: 'Print',
1109
- args: [this, Print]
1114
+ args: [this, Print],
1115
+ name: 'Print'
1110
1116
  });
1111
1117
  }
1112
1118
  if (this.allowImageExport) {
1113
1119
  modules.push({
1114
1120
  member: 'ImageExport',
1115
- args: [this, ImageExport]
1121
+ args: [this, ImageExport],
1122
+ name: 'ImageExport'
1116
1123
  });
1117
1124
  }
1118
1125
  if (this.allowPdfExport) {
1119
1126
  modules.push({
1120
1127
  member: 'PdfExport',
1121
- args: [this, PdfExport]
1128
+ args: [this, PdfExport],
1129
+ name: 'PdfExport'
1122
1130
  });
1123
1131
  }
1124
1132
  return modules;
@@ -1180,6 +1188,20 @@ var TreeMap = /** @class */ (function (_super) {
1180
1188
  this.legendId = [];
1181
1189
  this.removeSvg();
1182
1190
  _super.prototype.destroy.call(this);
1191
+ this.areaRect = null;
1192
+ this.themeStyle = null;
1193
+ this.totalRect = null;
1194
+ this.drilledLegendItems = null;
1195
+ this.doubleTapTimer = null;
1196
+ this.treemapLevelData = null;
1197
+ this.resizeEvent = null;
1198
+ this.availableSize = null;
1199
+ this.intl = null;
1200
+ if (!isNullOrUndefined(this.layout)) {
1201
+ this.layout.destroy();
1202
+ }
1203
+ this.layout = null;
1204
+ this.renderer = null;
1183
1205
  };
1184
1206
  TreeMap.prototype.removeSvg = function () {
1185
1207
  removeElement(this.element.id + '_Secondary_Element');
@@ -16,11 +16,13 @@ export declare class TreeMapTooltip {
16
16
  removeTooltip(): void;
17
17
  /**
18
18
  * To bind events for tooltip module
19
+ *
19
20
  * @private
20
21
  */
21
22
  addEventListener(): void;
22
23
  /**
23
24
  * To unbind events for tooltip module
25
+ *
24
26
  * @private
25
27
  */
26
28
  removeEventListener(): void;
@@ -60,11 +60,13 @@ var TreeMapTooltip = /** @class */ (function () {
60
60
  markerFill = item['options']['fill'];
61
61
  }
62
62
  if (this.treemap.enableRtl) {
63
- tooltipContent = [(!isNullOrUndefined(this.tooltipSettings.format) ? textFormatter(this.tooltipSettings.format, toolTipData, this.treemap) : null)
63
+ tooltipContent = [(!isNullOrUndefined(this.tooltipSettings.format) ?
64
+ textFormatter(this.tooltipSettings.format, toolTipData, this.treemap) : null)
64
65
  || formatValue(value, this.treemap) + ' : ' + this.treemap.weightValuePath.toString()];
65
66
  }
66
67
  else {
67
- tooltipContent = [(!isNullOrUndefined(this.tooltipSettings.format) ? textFormatter(this.tooltipSettings.format, toolTipData, this.treemap) : null)
68
+ tooltipContent = [(!isNullOrUndefined(this.tooltipSettings.format) ?
69
+ textFormatter(this.tooltipSettings.format, toolTipData, this.treemap) : null)
68
70
  || this.treemap.weightValuePath.toString() + ' : ' + formatValue(value, this.treemap)];
69
71
  }
70
72
  if (document.getElementById(this.tooltipId)) {
@@ -168,6 +170,7 @@ var TreeMapTooltip = /** @class */ (function () {
168
170
  // eslint-disable-next-line valid-jsdoc
169
171
  /**
170
172
  * To bind events for tooltip module
173
+ *
171
174
  * @private
172
175
  */
173
176
  TreeMapTooltip.prototype.addEventListener = function () {
@@ -180,6 +183,7 @@ var TreeMapTooltip = /** @class */ (function () {
180
183
  // eslint-disable-next-line valid-jsdoc
181
184
  /**
182
185
  * To unbind events for tooltip module
186
+ *
183
187
  * @private
184
188
  */
185
189
  TreeMapTooltip.prototype.removeEventListener = function () {
@@ -220,6 +220,7 @@ export declare type RenderingMode =
220
220
  'TopLeftBottomRight';
221
221
  /**
222
222
  * Defines the shape of the marker in the tooltip of the treemap.
223
+ *
223
224
  * @private
224
225
  */
225
226
  export declare type MarkerShape =
@@ -434,11 +434,10 @@ export declare function colorNameToHex(color: string): string;
434
434
  * @param {Size} size - Specifies the size
435
435
  * @param {string} url - Specifies the url
436
436
  * @param {PathOption} options - Specifies the options
437
- * @param {string} label - Specifies the label
438
437
  * @returns {Element} - Returns the element
439
438
  * @private
440
439
  */
441
- export declare function drawSymbol(location: Location, shape: string, size: Size, url: string, options: PathOption, label: string): Element;
440
+ export declare function drawSymbol(location: Location, shape: string, size: Size, url: string, options: PathOption): Element;
442
441
  /**
443
442
  * @param {Location} location - Specifies the location
444
443
  * @param {Size} size - Specifies the size
@@ -1052,11 +1052,10 @@ export function colorNameToHex(color) {
1052
1052
  * @param {Size} size - Specifies the size
1053
1053
  * @param {string} url - Specifies the url
1054
1054
  * @param {PathOption} options - Specifies the options
1055
- * @param {string} label - Specifies the label
1056
1055
  * @returns {Element} - Returns the element
1057
1056
  * @private
1058
1057
  */
1059
- export function drawSymbol(location, shape, size, url, options, label) {
1058
+ export function drawSymbol(location, shape, size, url, options) {
1060
1059
  var svgRenderer = new SvgRenderer('');
1061
1060
  var temp = renderLegendShape(location, size, shape, options, url);
1062
1061
  var htmlElement = svgRenderer['draw' + temp.functionName](temp.renderOption);
@@ -1,72 +0,0 @@
1
- # Bug description
2
-
3
- Clearly and concisely describe the problem or feature (this cannot be empty).
4
-
5
- ## Root cause
6
-
7
- Briefly describe the root cause and analysis of the problem.
8
- If there is an internal discussion on the forum, provide the link.
9
-
10
- ## Reason for not identifying earlier
11
-
12
- Find how it was missed in our earlier testing and development and by whom it was missed. This will help prevent similar mistakes in the future.
13
-
14
- ### Reason
15
-
16
- Provide reason for missing.
17
-
18
- ### Action taken:
19
-
20
- Provide the action plan taken to avoid this issue further. Also, mention if we addressed any other area in the same product based on this learning.
21
-
22
- ### Related Area for missing test case:
23
-
24
- Unit test case / E2E test case / Manual testing
25
-
26
- ## Is it a breaking issue?
27
-
28
- If it is a breaking issue, provide the commit detail which caused this break.
29
-
30
- ## Solution description
31
-
32
- Describe your code changes in detail for reviewers.
33
-
34
- ### Cause:
35
-
36
- Technical explanation for cause.
37
-
38
- ### Fix:
39
-
40
- Technical explanation for your fix.
41
-
42
- ## Output screenshots
43
-
44
- Post the output screenshots if an UI is affected or added due to this bug.
45
-
46
- ### Before issue fix output image:
47
-
48
- Provide issue image before fix.
49
-
50
- ### After issue fix output image:
51
-
52
- Provide issue fixed image with your fix.
53
-
54
- ## Areas affected and ensured
55
-
56
- List the areas affected by your code changes.
57
-
58
- ## Additional checklist
59
-
60
- - [ ] Did you run the automation against your fix? <b> Yes | No Your Explanation </b>
61
-
62
- - [ ] Is there any API name change? <b> Yes | No Your Explanation </b>
63
-
64
- - [ ] Is there any existing behavior change of other features due to this code change? <b> Yes | No Your Explanation </b>
65
-
66
- - [ ] Did you record this case in the unit test or UI test? <b> Yes | No Your Explanation </b>
67
-
68
- - [ ] Did you added issue fix comment? <b> Yes | No Your Explanation </b>
69
-
70
- - [ ] Did you tested this issue fix for all browsers? <b> [ ] Chrome [ ] Firefox [ ] Edge [ ] Internet Explorer </b>
71
-
72
- - [ ] Does it have any known issues? <b> Yes | No Your Explanation </b>
@@ -1,49 +0,0 @@
1
- # Feature description
2
-
3
- Clearly and concisely describe the problem/feature (this cannot be empty)
4
-
5
- ## Analysis / Design
6
-
7
- If there is an external design, link to it project documentation area
8
- If there is an internal discussion on the Forum, provide the link.
9
-
10
- ## Solution Description
11
-
12
- Describe your code changes in detail for reviewers
13
-
14
- ## Output screenshots
15
-
16
- Post the output screenshots if an UI is affected or added due to this feature.
17
-
18
- ## Areas affected and ensured
19
-
20
- List out the areas are affected by your code changes.
21
-
22
- ## Test cases
23
-
24
- Provide the unit testing written file details to understand the use cases considered in this implementation.
25
- If there is no TDD (if it’s not possible to follow), provide the UI automation script location and the Excel file that contains the use cases considered in this implementation.
26
- Provide the test cases Excel file alone if the feature cannot be automated in any case.
27
-
28
- ## Test bed sample location
29
-
30
- Provide the test bed sample location where code reviewers can review the new feature’s behaviors. It can be from NPMCI, staging site, local server, etc.
31
-
32
- ## Additional checklist
33
-
34
- - [ ] Did you run the automation against your feature? <b> Yes | No Your Explanation </b>
35
-
36
- - [ ] Is there any API name change? <b> Yes | No Your Explanation </b>
37
-
38
- - [ ] Is there any existing behavior change of other features due to this code change? <b> Yes | No Your Explanation </b>
39
-
40
- - [ ] Did you record this case in the unit test or UI test? <b> Yes | No Your Explanation </b>
41
-
42
- - [ ] Did you add comment for your new code (Method / Class / API / Interface / Event)? <b> Yes | No Your Explanation </b>
43
-
44
- - [ ] Did you configured third party config your feature? <b> Yes | No Your Explanation </b>
45
-
46
- - [ ] Did you tested this feature with all browsers? <b> [ ] Chrome [ ] Firefox [ ] Edge [ ] Internet Explorer </b>
47
-
48
-
49
-