@datorama/core 22.12.6 → 22.12.7-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11911,18 +11911,25 @@ var DATO_GRID_STORAGE_API = new InjectionToken('DATO_GRID_STORAGE_API');
11911
11911
  var defaultEditableColumnRenderer = function (params) {
11912
11912
  return params && params.value ? "<div class=\"value-wrapper ellipsis\">" + params.value + "</div>" : null;
11913
11913
  };
11914
- var editableCellRendererWithSearchHighlight = function (params, searchTerm) {
11914
+ var editableCellRendererWithSearchHighlight = function (params, searchTerm, allowHTML) {
11915
11915
  if (!params || !params.value) {
11916
11916
  return null;
11917
11917
  }
11918
- return "<div class=\"value-wrapper ellipsis\">" + searchHighlightCellRenderer(params, searchTerm) + "</div>";
11918
+ return "<div class=\"value-wrapper ellipsis\">" + searchHighlightCellRenderer(params, searchTerm, allowHTML) + "</div>";
11919
11919
  };
11920
- var searchHighlightCellRenderer = function (params, searchTerm) {
11920
+ var searchHighlightCellRenderer = function (params, searchTerm, allowHTML) {
11921
+ if (allowHTML === void 0) { allowHTML = true; }
11922
+ var cellValue = (params.valueFormatted || params.value || '').toString();
11923
+ if (!allowHTML) {
11924
+ cellValue = escape(cellValue);
11925
+ }
11926
+ else {
11927
+ cellValue = DOMPurify.sanitize(cellValue);
11928
+ }
11921
11929
  searchTerm = (searchTerm || '').trim();
11922
- var value = (params.valueFormatted || params.value || '').toString();
11923
- return searchTerm
11924
- ? value.replace(new RegExp(searchTerm, 'gi'), function (str) { return "<span class=\"search-highlight\">" + str + "</span>"; })
11925
- : value;
11930
+ return searchTerm ?
11931
+ cellValue.replace(new RegExp(searchTerm, 'gi'), function (str) { return "<span class=\"search-highlight\">" + str + "</span>"; }) :
11932
+ cellValue;
11926
11933
  };
11927
11934
  var GridMinWidths;
11928
11935
  (function (GridMinWidths) {
@@ -13593,7 +13600,7 @@ var defaultGridOptions = __assign({
13593
13600
  type: DatoGridColumnTypes.String,
13594
13601
  menuTabs: ['filterMenuTab'],
13595
13602
  headerComponentFramework: DatoGridColumnHeaderComponent
13596
- }, suppressCellSelection: true, suppressPropertyNamesCheck: true, rowHeight: 35, headerHeight: 30, rowSelection: GridRowSelectionType.MULTIPLE, rowDeselection: true, unSortIcon: true, animateRows: true, rememberGroupStateWhenNewData: true, groupMultiAutoColumn: true, groupDefaultExpanded: -1, usePivotGridStyle: false }, (isTestEnv() ? { suppressColumnVirtualisation: true, rowBuffer: 99999 } : {}));
13603
+ }, suppressCellSelection: true, suppressPropertyNamesCheck: true, rowHeight: 35, headerHeight: 30, rowSelection: GridRowSelectionType.MULTIPLE, rowDeselection: true, unSortIcon: true, animateRows: true, rememberGroupStateWhenNewData: true, groupMultiAutoColumn: true, groupDefaultExpanded: -1, usePivotGridStyle: false, disabledHTMLRenderingFields: [] }, (isTestEnv() ? { suppressColumnVirtualisation: true, rowBuffer: 99999 } : {}));
13597
13604
  var DEFAULT_GRID_SEARCH_DEBOUNCE_TIME = {
13598
13605
  CLIENT: 200,
13599
13606
  SERVER: 250
@@ -14281,11 +14288,13 @@ var GridService = /** @class */ (function () {
14281
14288
  !this.hasCellRenderer(normalized, gridOptions) &&
14282
14289
  gridOptions.enableSearchHighlight) {
14283
14290
  normalized.cellRenderer = function (params) {
14291
+ var colField = getColField(params.colDef);
14292
+ var allowHTML = !gridOptions.disabledHTMLRenderingFields || !gridOptions.disabledHTMLRenderingFields.includes(colField);
14284
14293
  var isEditable = (isFunction(normalized.editable) && normalized.editable(params)) ||
14285
14294
  (!isFunction(normalized.editable) && normalized.editable);
14286
14295
  return isEditable
14287
- ? editableCellRendererWithSearchHighlight(params, _this.gridQuery.getSearchTerm())
14288
- : searchHighlightCellRenderer(params, _this.gridQuery.getSearchTerm());
14296
+ ? editableCellRendererWithSearchHighlight(params, _this.gridQuery.getSearchTerm(), allowHTML)
14297
+ : searchHighlightCellRenderer(params, _this.gridQuery.getSearchTerm(), allowHTML);
14289
14298
  };
14290
14299
  }
14291
14300
  };
@@ -15598,6 +15607,7 @@ var DatoGridControllerComponent = /** @class */ (function () {
15598
15607
  }
15599
15608
  var gridApi = { grid: api, columns: columnApi };
15600
15609
  _this.gridService._setApi(gridApi, agGrid);
15610
+ debugger;
15601
15611
  _this.gridQuery._setApi(gridApi, agGrid);
15602
15612
  _this.gridService.initSettings(savedSettings || {});
15603
15613
  _this.registerSettingsListeners(gridApi, agGrid);
@@ -15626,7 +15636,7 @@ var DatoGridControllerComponent = /** @class */ (function () {
15626
15636
  rowActions: this.rowActions
15627
15637
  };
15628
15638
  var normalized = this.gridService.normalizeOptions(params);
15629
- var defaults = __assign(__assign(__assign({}, defaultGridOptions), (this.gridOptions.treeData ? defaultTreeOptions : {})), { icons: this.getGridIcons() });
15639
+ var defaults = __assign(__assign(__assign({}, defaultGridOptions), (this.gridOptions.treeData ? defaultTreeOptions : {})), { icons: this.getGridIcons(), disabledHTMLRenderingFields: normalized.disabledHTMLRenderingFields || defaultGridOptions.disabledHTMLRenderingFields });
15630
15640
  return deepmerge(defaults, normalized);
15631
15641
  };
15632
15642
  DatoGridControllerComponent.prototype.setGridRows = function (data) {
@@ -15838,18 +15848,20 @@ var DatoGridControllerComponent = /** @class */ (function () {
15838
15848
  var textOverflow = cell.offsetWidth < cell.scrollWidth;
15839
15849
  if (textOverflow) {
15840
15850
  clearTimeout(this.cellMouseOutTimer);
15841
- var params = { cell: cell, value: cell.innerText };
15851
+ var colField = getColField(event.colDef);
15852
+ var allowHTML = !this.gridOptions.disabledHTMLRenderingFields || !this.gridOptions.disabledHTMLRenderingFields.includes(colField);
15853
+ var params = { cell: cell, value: cell.innerText, allowHTML: allowHTML };
15842
15854
  isNil(this.tooltip) ? this.createAndShowTooltip(params) : this.updateTooltip(params);
15843
15855
  }
15844
15856
  };
15845
15857
  DatoGridControllerComponent.prototype.createAndShowTooltip = function (_a) {
15846
- var cell = _a.cell, value = _a.value;
15858
+ var cell = _a.cell, value = _a.value, allowHTML = _a.allowHTML;
15847
15859
  this.tooltip = new Tooltip(cell, {
15848
15860
  placement: 'top',
15849
15861
  container: document.body,
15850
15862
  trigger: 'manual',
15851
- title: DOMPurify.sanitize(value),
15852
- html: true,
15863
+ title: allowHTML ? DOMPurify.sanitize(value) : value,
15864
+ html: allowHTML,
15853
15865
  popperOptions: {
15854
15866
  modifiers: {
15855
15867
  preventOverflow: { enabled: false }
@@ -25488,7 +25500,7 @@ function fixNgLeaks() {
25488
25500
  };
25489
25501
  }
25490
25502
 
25491
- window.coreVersion = '22.12.6';
25503
+ window.coreVersion = '22.12.7';
25492
25504
 
25493
25505
  /**
25494
25506
  * @license