@adaptabletools/adaptable-cjs 22.0.1-canary.3 → 22.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/index.css +18 -8
  2. package/index.css.map +1 -1
  3. package/package.json +2 -2
  4. package/src/AdaptableInterfaces/IAdaptable.d.ts +2 -0
  5. package/src/Api/Internal/ActionColumnInternalApi.js +9 -0
  6. package/src/Api/Internal/ColumnFilterInternalApi.js +1 -1
  7. package/src/Api/Internal/RowFormInternalApi.js +4 -1
  8. package/src/Api/Internal/ThemeInternalApi.d.ts +1 -0
  9. package/src/Api/Internal/ThemeInternalApi.js +3 -0
  10. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/ColumnsList.js +1 -1
  11. package/src/View/BulkUpdate/BulkUpdatePopup.js +1 -1
  12. package/src/View/BulkUpdate/BulkUpdateViewPanel.js +1 -1
  13. package/src/View/Components/ColumnFilter/components/FloatingFilterInputList.js +1 -1
  14. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopup.js +1 -1
  15. package/src/View/Components/Popups/AdaptablePopup/AdaptablePopupDialog.js +5 -1
  16. package/src/View/Components/PreviewResultsPanel.js +7 -4
  17. package/src/View/Layout/Wizard/sections/ColumnsSection.js +1 -1
  18. package/src/View/SmartEdit/SmartEditViewPanel.js +1 -3
  19. package/src/agGrid/AdaptableAgGrid.d.ts +2 -1
  20. package/src/agGrid/AdaptableAgGrid.js +10 -4
  21. package/src/agGrid/AgGridExportAdapter.js +6 -2
  22. package/src/components/Dropdown/index.js +3 -3
  23. package/src/env.js +2 -2
  24. package/src/layout-manager/src/index.js +6 -5
  25. package/src/types.d.ts +0 -1
  26. package/tsconfig.cjs.tsbuildinfo +1 -1
  27. package/src/AdaptableOptions/IPushPullPluginOptions.d.ts +0 -35
  28. package/src/AdaptableOptions/IPushPullPluginOptions.js +0 -2
  29. package/src/Utilities/Interface/IPPStyle.d.ts +0 -31
  30. package/src/Utilities/Interface/IPPStyle.js +0 -2
@@ -543,7 +543,7 @@ const ColumnPropertiesEditor = (props) => {
543
543
  { label: 'Moveable', checked: props.column.moveable },
544
544
  { label: 'Pivotable', checked: props.column.pivotable },
545
545
  { label: 'Sortable', checked: props.column.sortable },
546
- ].map(({ label, checked }) => (React.createElement(Flex_1.Flex, { alignItems: "center", className: (0, clsx_1.default)({
546
+ ].map(({ label, checked }) => (React.createElement(Flex_1.Flex, { key: label, alignItems: "center", className: (0, clsx_1.default)({
547
547
  'twa:rounded-standard twa:gap-2': true,
548
548
  }) },
549
549
  React.createElement(Flex_1.Box, { className: "twa:size-5" }, checked ? (React.createElement(icons_1.Icon, { name: "check", className: "twa:text-success" })) : (React.createElement(icons_1.Icon, { name: "close", className: "twa:text-error" }))),
@@ -85,9 +85,7 @@ class SmartEditViewPanelComponent extends React.Component {
85
85
  !shouldDisable && (React.createElement(ButtonApply_1.ButtonApply, { onClick: () => this.onApplyClick(), style: applyButtonStyle, className: `ab-${elementType}__SmartEdit__apply`, tooltip: "Apply Smart Edit", disabled: StringExtensions_1.StringExtensions.IsNullOrEmpty(`${this.props.SmartEditValue}`) ||
86
86
  (this.props.PreviewInfo != null &&
87
87
  this.props.PreviewInfo.previewValidationSummary.validationResult == 'All'), accessLevel: this.props.accessLevel }, this.props.viewType === 'ToolPanel' && 'Apply Smart Edit')),
88
- !shouldDisable && (React.createElement(AdaptablePopover_1.AdaptablePopover, { headerText: "Preview Results", className: `ab-${elementType}__SmartEdit__info`,
89
- // tooltipText="Preview Results"
90
- bodyText: [previewPanel], MessageType: UIHelper_1.UIHelper.getMessageTypeByStatusColour(statusColour), useButton: true, showEvent: 'focus', hideEvent: "blur" })))));
88
+ !shouldDisable && (React.createElement(AdaptablePopover_1.AdaptablePopover, { headerText: "Preview Results", className: `ab-${elementType}__SmartEdit__info`, bodyText: [previewPanel], popoverMinWidth: 360, popoverMaxWidth: 500, popupPadding: 0, MessageType: UIHelper_1.UIHelper.getMessageTypeByStatusColour(statusColour), useButton: true, showEvent: 'focus', hideEvent: "blur" })))));
91
89
  }
92
90
  checkSelectedCells() {
93
91
  this.props.onSmartEditCheckSelectedCells();
@@ -16,6 +16,7 @@ import { IQueryLanguageService } from '../Utilities/Services/Interface/IQueryLan
16
16
  import { IAlertService } from '../Utilities/Services/Interface/IAlertService';
17
17
  import { ITeamSharingService } from '../Utilities/Services/Interface/ITeamSharingService';
18
18
  import { IMetamodelService } from '../Utilities/Services/Interface/IMetamodelService';
19
+ import { IThemeService } from '../Utilities/Services/Interface/IThemeService';
19
20
  import { Fdc3Service } from '../Utilities/Services/Fdc3Service';
20
21
  import { AnnotationsService } from '../Utilities/Services/AnnotationsService';
21
22
  import { IModuleCollection } from '../Strategy/Interface/IModule';
@@ -92,9 +93,9 @@ export declare class AdaptableAgGrid implements IAdaptable {
92
93
  Fdc3Service: Fdc3Service;
93
94
  AnnotationsService: AnnotationsService;
94
95
  FlashingCellService: FlashingCellService;
96
+ ThemeService: IThemeService;
95
97
  private LicenseService;
96
98
  private ChartingService;
97
- private ThemeService;
98
99
  private rowListeners;
99
100
  private throttleFilterOnDataChange;
100
101
  private debouncedSetSelectedRows;
@@ -200,9 +200,9 @@ class AdaptableAgGrid {
200
200
  Fdc3Service;
201
201
  AnnotationsService;
202
202
  FlashingCellService;
203
+ ThemeService;
203
204
  LicenseService;
204
205
  ChartingService;
205
- ThemeService;
206
206
  rowListeners;
207
207
  throttleFilterOnDataChange;
208
208
  debouncedSetSelectedRows;
@@ -2213,10 +2213,16 @@ class AdaptableAgGrid {
2213
2213
  return typeof rawValue !== 'string' ? String(rawValue) : rawValue;
2214
2214
  }
2215
2215
  if (dataType === 'number') {
2216
+ if (typeof rawValue === 'number') {
2217
+ return rawValue;
2218
+ }
2216
2219
  // empty string or space should not be converted to 0
2217
- return typeof rawValue !== 'number' && StringExtensions_1.default.IsNumeric(rawValue)
2218
- ? Number(rawValue)
2219
- : rawValue;
2220
+ if (typeof rawValue === 'string') {
2221
+ return StringExtensions_1.default.IsNumeric(rawValue) ? Number(rawValue) : rawValue;
2222
+ }
2223
+ // handle objects with toString() (e.g. from valueGetters)
2224
+ const numValue = Number(rawValue);
2225
+ return isNaN(numValue) ? rawValue : numValue;
2220
2226
  }
2221
2227
  if (dataType === 'boolean') {
2222
2228
  return typeof rawValue !== 'boolean' ? Boolean(rawValue) : rawValue;
@@ -351,7 +351,9 @@ class AgGridExportAdapter {
351
351
  let exportedColumnIds = [];
352
352
  switch (report.ReportColumnScope) {
353
353
  case 'AllColumns':
354
- exportedColumnIds = exportableColumnIds.filter((colId) => this.isTreeDataGrid() || !this.adaptableApi.columnApi.isAutoRowGroupColumn(colId));
354
+ exportedColumnIds = exportableColumnIds.filter((colId) => this.isTreeDataGrid() ||
355
+ (!this.adaptableApi.columnApi.isAutoRowGroupColumn(colId) &&
356
+ !this.adaptableApi.columnApi.isSelectionColumn(colId)));
355
357
  break;
356
358
  case 'VisibleColumns':
357
359
  exportedColumnIds = getVisibleColumnIds();
@@ -360,7 +362,9 @@ class AgGridExportAdapter {
360
362
  // in this case we have to map the auto-group columns to the real keys
361
363
  exportedColumnIds = [
362
364
  ...groupColumnIds,
363
- ...exportedColumnIds.filter((columnId) => this.isTreeDataGrid() || !this.adaptableApi.columnApi.isAutoRowGroupColumn(columnId)),
365
+ ...exportedColumnIds.filter((columnId) => this.isTreeDataGrid() ||
366
+ (!this.adaptableApi.columnApi.isAutoRowGroupColumn(columnId) &&
367
+ !this.adaptableApi.columnApi.isSelectionColumn(columnId))),
364
368
  ];
365
369
  }
366
370
  break;
@@ -36,7 +36,7 @@ const Dropdown = (props) => {
36
36
  };
37
37
  options = lazyOptions;
38
38
  }
39
- let placeholder = props.emptyText || props.placeholder || 'Select an option';
39
+ let placeholder = props.emptyText || (typeof props.placeholder === 'string' ? props.placeholder : null) || 'Select an option';
40
40
  const finalOptions = options.map((option) => {
41
41
  if (typeof option === 'string') {
42
42
  option = {
@@ -66,7 +66,7 @@ const Dropdown = (props) => {
66
66
  return;
67
67
  }
68
68
  if (e.target === domRef.current) {
69
- selectRef.current.focus();
69
+ selectRef.current?.focus();
70
70
  }
71
71
  };
72
72
  const onBlur = () => {
@@ -80,7 +80,7 @@ const Dropdown = (props) => {
80
80
  selectedText = placeholder;
81
81
  }
82
82
  //20 ... 20 16
83
- const renderClearButton = () => (React.createElement(SimpleButton_1.default, { variant: "text", icon: "close", tone: "none", tooltip: "Clear", iconSize: 20, ...clearButtonProps, className: (0, twMerge_1.twMerge)('twa:p-0 twa:mr-1 twa:z-10 twa:color-inherit', clearButtonProps.className), style: {
83
+ const renderClearButton = () => (React.createElement(SimpleButton_1.default, { variant: "text", icon: "close", tone: "none", tooltip: "Clear", iconSize: 20, ...clearButtonProps, className: (0, twMerge_1.twMerge)('twa:p-0 twa:mr-1 twa:z-10 twa:color-inherit', clearButtonProps?.className), style: {
84
84
  ...(clearButtonProps ? clearButtonProps.style : null),
85
85
  }, onClick: (e) => {
86
86
  e.preventDefault();
package/src/env.js CHANGED
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = {
4
4
  NEXT_PUBLIC_INFINITE_TABLE_LICENSE_KEY: "StartDate=2021-06-29|EndDate=2030-01-01|Owner=Adaptable|Type=distribution|TS=1624971462479|C=137829811,1004007071,2756196225,1839832928,3994409405,636616862" || '',
5
- PUBLISH_TIMESTAMP: 1772188636753 || Date.now(),
6
- VERSION: "22.0.1-canary.3" || '--current-version--',
5
+ PUBLISH_TIMESTAMP: 1773153919389 || Date.now(),
6
+ VERSION: "22.0.2" || '--current-version--',
7
7
  };
@@ -406,11 +406,12 @@ class LayoutManager extends LMEmitter_1.LMEmitter {
406
406
  PivotExpandLevel: prevLayout?.PivotExpandLevel ?? -1,
407
407
  };
408
408
  if (storePivotResultColumns) {
409
- // Get pivot result columns in display order (not creation order)
410
- const displayedPivotResultColumns = this.gridApi
411
- .getAllDisplayedColumns()
412
- .filter((col) => pivotResultColumnsSet.has(col.getColId()));
413
- pivotLayout.PivotResultColumnsOrder = displayedPivotResultColumns.map((col) => col.getColId());
409
+ // Save all pivot result columns (including hidden ones from collapsed
410
+ // groups) in their current order, so the order is fully preserved.
411
+ const allPivotResultColumnsInOrder = this.gridApi
412
+ .getColumnState()
413
+ .filter((col) => pivotResultColumnsSet.has(col.colId));
414
+ pivotLayout.PivotResultColumnsOrder = allPivotResultColumnsInOrder.map((col) => col.colId);
414
415
  }
415
416
  if (layout.SuppressAggFuncInHeader) {
416
417
  pivotLayout.SuppressAggFuncInHeader = layout.SuppressAggFuncInHeader;
package/src/types.d.ts CHANGED
@@ -28,7 +28,6 @@ export type { CellSummaryOptions } from './AdaptableOptions/CellSummaryOptions';
28
28
  export type { CustomSortOptions, ColumnValuesComparer } from './AdaptableOptions/CustomSortOptions';
29
29
  export type { NoteOptions, NotableCellContext } from './AdaptableOptions/NoteOptions';
30
30
  export type { CommentOptions, CommentableCellContext, CommentLoadContext, } from './AdaptableOptions/CommentOptions';
31
- export type { IPushPullPluginOptions } from './AdaptableOptions/IPushPullPluginOptions';
32
31
  export type { LayoutOptions, LayoutViewOptions, LayoutTagOptions, LayoutExtendedContext, AutoGenerateTagsForLayoutsContext, PivotPreviewColumnsContext, TableLayoutCreationDefaultProperties, PivotLayoutCreationDefaultProperties, LayoutCreationDefaultProperties, LayoutCreationDefaultPropertiesContext, } from './AdaptableOptions/LayoutOptions';
33
32
  export type { ChartingOptions, ChartContainer, ExternalChartingContext, ExternalChartingOptions, SaveChartBehaviour, } from './AdaptableOptions/ChartingOptions';
34
33
  export type { OpenFinPluginOptions } from './AdaptableOptions/OpenFinPluginOptions';