@adaptabletools/adaptable-cjs 18.0.5 → 18.0.7

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 (43) hide show
  1. package/package.json +1 -1
  2. package/src/Api/Implementation/DataImportApiImpl.js +3 -1
  3. package/src/PredefinedConfig/Common/CellSummary.d.ts +0 -2
  4. package/src/PredefinedConfig/Common/Enums.d.ts +0 -2
  5. package/src/PredefinedConfig/Common/Enums.js +0 -2
  6. package/src/PredefinedConfig/Common/RowSummary.d.ts +1 -1
  7. package/src/PredefinedConfig/Common/RowSummary.js +0 -2
  8. package/src/Strategy/CellSummaryModule.js +2 -6
  9. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.d.ts +3 -1
  10. package/src/Utilities/ExpressionFunctions/aggregatedScalarExpressionFunctions.js +68 -138
  11. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.d.ts +1 -1
  12. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +1 -0
  13. package/src/Utilities/ObjectFactory.js +0 -2
  14. package/src/View/CellSummary/CellSummaryDetails.js +2 -1
  15. package/src/View/Components/AdaptableDateInput/index.d.ts +1 -1
  16. package/src/View/Components/AdaptableInput/AdaptableDateInlineInput.d.ts +1 -1
  17. package/src/View/Components/ColumnSelector/index.d.ts +1 -6
  18. package/src/View/Components/ColumnSelector/index.js +2 -4
  19. package/src/View/Components/EntityRulesEditor/index.js +1 -3
  20. package/src/View/Components/ValueSelector/index.d.ts +0 -5
  21. package/src/View/Components/ValueSelector/index.js +1 -4
  22. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +4 -2
  23. package/src/View/DataImport/DataImportPopup.js +4 -2
  24. package/src/View/Layout/TransposedPopup.js +30 -20
  25. package/src/agGrid/ActionColumnRenderer.js +8 -0
  26. package/src/agGrid/AdaptableAgGrid.js +11 -4
  27. package/src/agGrid/BadgeRenderer.js +4 -4
  28. package/src/components/ColorPicker/ColorPicker.d.ts +1 -1
  29. package/src/components/Datepicker/index.d.ts +1 -1
  30. package/src/components/FieldWrap/index.d.ts +1 -7
  31. package/src/components/FieldWrap/index.js +5 -4
  32. package/src/components/FileDroppable/index.d.ts +1 -4
  33. package/src/components/FileDroppable/index.js +1 -2
  34. package/src/components/Input/index.d.ts +1 -1
  35. package/src/components/List/ListGroupItem/index.d.ts +1 -1
  36. package/src/components/OverlayTrigger/index.js +10 -9
  37. package/src/components/ResizeObserver/index.d.ts +1 -7
  38. package/src/components/ResizeObserver/index.js +2 -6
  39. package/src/components/SimpleButton/index.js +10 -9
  40. package/src/components/Tabs/index.d.ts +6 -24
  41. package/src/components/Tabs/index.js +7 -11
  42. package/src/env.js +2 -2
  43. package/tsconfig.cjs.tsbuildinfo +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaptabletools/adaptable-cjs",
3
- "version": "18.0.5",
3
+ "version": "18.0.7",
4
4
  "description": "Powerful data-agnostic HTML5 AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements",
5
5
  "keywords": [
6
6
  "web-components",
@@ -8,7 +8,9 @@ class DataImportApiImpl extends ApiBase_1.ApiBase {
8
8
  super(adaptable);
9
9
  this.internalApi = new DataImportInternalApi_1.DataImportInternalApi(adaptable);
10
10
  }
11
- openImportWizard() { }
11
+ openImportWizard() {
12
+ this.getSettingsPanelApi().openSettingsPanel('DataImport');
13
+ }
12
14
  importData(partialRows) { }
13
15
  }
14
16
  exports.DataImportApiImpl = DataImportApiImpl;
@@ -15,8 +15,6 @@ export interface CellSummmary {
15
15
  Count: number | undefined;
16
16
  Only: string | undefined;
17
17
  Std_Deviation: number | undefined;
18
- Oldest: Date | undefined;
19
- Newest: Date | undefined;
20
18
  [key: string]: any;
21
19
  }
22
20
  /**
@@ -59,8 +59,6 @@ export declare enum SummaryOperation {
59
59
  Max = "Max",
60
60
  Min = "Min",
61
61
  Count = "Count",
62
- Newest = "Newest",
63
- Oldest = "Oldest",
64
62
  Std_Deviation = "Std Deviation",
65
63
  Only = "Only",
66
64
  Weighted_Average = "Weighted Avg"
@@ -76,8 +76,6 @@ var SummaryOperation;
76
76
  SummaryOperation["Max"] = "Max";
77
77
  SummaryOperation["Min"] = "Min";
78
78
  SummaryOperation["Count"] = "Count";
79
- SummaryOperation["Newest"] = "Newest";
80
- SummaryOperation["Oldest"] = "Oldest";
81
79
  SummaryOperation["Std_Deviation"] = "Std Deviation";
82
80
  SummaryOperation["Only"] = "Only";
83
81
  SummaryOperation["Weighted_Average"] = "Weighted Avg";
@@ -1,6 +1,6 @@
1
1
  export declare const ROW_SUMMARY_ROW_ID = "__ROW_SUMMARY_ROW_ID";
2
2
  export declare const WEIGHTED_AVERAGE_AGGREATED_FUNCTION = "WEIGHTED_AVERAGE";
3
- export declare const summarySupportedExpressions: readonly ["MIN", "MAX", "SUM", "AVG", "COUNT", "MEDIAN", "MODE", "DISTINCT", "ONLY", "OLDEST", "NEWEST", "STD_DEVIATION", "WEIGHTED_AVERAGE"];
3
+ export declare const summarySupportedExpressions: readonly ["MIN", "MAX", "SUM", "AVG", "COUNT", "MEDIAN", "MODE", "DISTINCT", "ONLY", "STD_DEVIATION", "WEIGHTED_AVERAGE"];
4
4
  export type SummarySupportedExpression = (typeof summarySupportedExpressions)[number];
5
5
  /**
6
6
  * Position of Row Summary - 'Top' or 'Bottom'
@@ -13,8 +13,6 @@ exports.summarySupportedExpressions = [
13
13
  'MODE',
14
14
  'DISTINCT',
15
15
  'ONLY',
16
- 'OLDEST',
17
- 'NEWEST',
18
16
  'STD_DEVIATION',
19
17
  exports.WEIGHTED_AVERAGE_AGGREATED_FUNCTION,
20
18
  ];
@@ -78,10 +78,8 @@ class CellSummaryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
78
78
  const modeValue = isNumericColumn ? handleExpression('MODE') : null;
79
79
  const medianValue = isNumericColumn ? handleExpression('MEDIAN') : null;
80
80
  const distinctValue = handleExpression('DISTINCT');
81
- const maxValue = isNumericColumn ? handleExpression('MAX') : null;
82
- const minValue = isNumericColumn ? handleExpression('MIN') : null;
83
- const oldestValue = isDateColumn ? handleExpression('OLDEST') : null;
84
- const newestValue = isDateColumn ? handleExpression('NEWEST') : null;
81
+ const maxValue = isNumericColumn || isDateColumn ? handleExpression('MAX') : null;
82
+ const minValue = isNumericColumn || isDateColumn ? handleExpression('MIN') : null;
85
83
  const stdDeviation = isNumericColumn
86
84
  ? Helper_1.Helper.roundNumberTo4dp(handleExpression('STD_DEVIATION'))
87
85
  : null;
@@ -94,8 +92,6 @@ class CellSummaryModule extends AdaptableModuleBase_1.AdaptableModuleBase {
94
92
  Max: maxValue,
95
93
  Min: minValue,
96
94
  Count: selectedCellInfo.gridCells.length,
97
- Oldest: oldestValue,
98
- Newest: newestValue,
99
95
  Std_Deviation: stdDeviation,
100
96
  Only: distinctValue == 1 ? JSON.stringify(selectedCellInfo.gridCells[0].rawValue) : '',
101
97
  };
@@ -2,11 +2,12 @@ import { IRowNode } from '@ag-grid-community/core';
2
2
  import { ExpressionFunction } from '../../parser/src/types';
3
3
  import { BaseParameter } from './expressionFunctionUtils';
4
4
  import { AggregateParams } from './scalarAggregationHelper';
5
+ import { AdaptableColumnDataType } from '../../types';
5
6
  /**
6
7
  * List of all the AggregatedScalar Functions available in AdaptableQL
7
8
  */
8
9
  export type AggregatedScalarFunctionName = ScalarAggregationFunction | OperandFunction;
9
- export type ScalarAggregationFunction = 'SUM' | 'PERCENTAGE' | 'QUANT' | 'QUARTILE' | 'PERCENTILE' | 'AVG' | 'MIN' | 'MAX' | 'COUNT' | 'CUMUL' | 'MEDIAN' | 'MODE' | 'DISTINCT' | 'ONLY' | 'STD_DEVIATION' | 'OLDEST' | 'NEWEST';
10
+ export type ScalarAggregationFunction = 'SUM' | 'PERCENTAGE' | 'QUANT' | 'QUARTILE' | 'PERCENTILE' | 'AVG' | 'MIN' | 'MAX' | 'COUNT' | 'CUMUL' | 'MEDIAN' | 'MODE' | 'DISTINCT' | 'ONLY' | 'STD_DEVIATION';
10
11
  type OperandFunction = 'COL' | 'OVER' | 'GROUP_BY' | 'WEIGHT';
11
12
  export interface ScalarAggregationParameter extends BaseParameter<'aggregationScalar', ScalarAggregationFunction> {
12
13
  value: AggregatedScalarExpressionEvaluation;
@@ -29,6 +30,7 @@ export interface AggregatedScalarExpressionEvaluation {
29
30
  sortByColumn?: string;
30
31
  rowFilterFn?: (rowNode: IRowNode) => boolean;
31
32
  getRowNodes?: () => IRowNode[];
33
+ columnType?: AdaptableColumnDataType;
32
34
  }
33
35
  export interface CumulatedAggregationValue {
34
36
  currentValue: number;
@@ -48,7 +48,7 @@ exports.aggregatedScalarExpressionFunctions = {
48
48
  handler(args, context) {
49
49
  const aggregationParameter = (0, expressionFunctionUtils_1.extractParameter)('CUMUL', 'aggregationScalar', ['SUM', 'PERCENTAGE', 'AVG', 'MIN', 'MAX', 'COUNT'], args);
50
50
  const overColumnParameter = (0, expressionFunctionUtils_1.extractParameter)('CUMUL', 'operand', ['OVER'], args);
51
- const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('MAX', 'operand', ['GROUP_BY'], args, {
51
+ const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)(aggregationParameter.name, 'operand', ['GROUP_BY'], args, {
52
52
  isOptional: true,
53
53
  });
54
54
  if (!!groupByParameter) {
@@ -77,7 +77,7 @@ exports.aggregatedScalarExpressionFunctions = {
77
77
  handler(args, context) {
78
78
  const sumColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('SUM', args);
79
79
  const sumColumnName = sumColumnParameter.value;
80
- (0, expressionFunctionUtils_1.validateColumnType)(sumColumnName, ['Number'], 'SUM', context.adaptableApi);
80
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(sumColumnName, ['Number'], 'SUM', context.adaptableApi);
81
81
  const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('SUM', 'operand', ['GROUP_BY'], args, {
82
82
  isOptional: true,
83
83
  });
@@ -101,6 +101,7 @@ exports.aggregatedScalarExpressionFunctions = {
101
101
  },
102
102
  rowFilterFn: context.filterFn,
103
103
  getRowNodes: context.getRowNodes,
104
+ columnType,
104
105
  };
105
106
  addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
106
107
  const result = {
@@ -126,7 +127,7 @@ exports.aggregatedScalarExpressionFunctions = {
126
127
  var _a;
127
128
  const percentageColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('PERCENTAGE', args);
128
129
  const percentageColumnName = percentageColumnParameter.value;
129
- (0, expressionFunctionUtils_1.validateColumnType)(percentageColumnName, ['Number'], 'PERCENTAGE', context.adaptableApi);
130
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(percentageColumnName, ['Number'], 'PERCENTAGE', context.adaptableApi);
130
131
  const sumOperand = (0, expressionFunctionUtils_1.extractParameter)('PERCENTAGE', 'aggregationScalar', ['SUM'], args, {
131
132
  isOptional: true,
132
133
  });
@@ -165,6 +166,7 @@ exports.aggregatedScalarExpressionFunctions = {
165
166
  },
166
167
  rowFilterFn: context.filterFn,
167
168
  getRowNodes: context.getRowNodes,
169
+ columnType,
168
170
  };
169
171
  addGroupByParams(groupByColumnNames, aggregationExpressionEvaluation);
170
172
  const result = {
@@ -193,7 +195,7 @@ exports.aggregatedScalarExpressionFunctions = {
193
195
  handler(args, context) {
194
196
  const avgColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('AVG', args);
195
197
  const avgColumnName = avgColumnParameter.value;
196
- (0, expressionFunctionUtils_1.validateColumnType)(avgColumnName, ['Number'], 'AVG', context.adaptableApi);
198
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(avgColumnName, ['Number'], 'AVG', context.adaptableApi);
197
199
  const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('AVG', 'operand', ['GROUP_BY'], args, {
198
200
  isOptional: true,
199
201
  });
@@ -240,6 +242,7 @@ exports.aggregatedScalarExpressionFunctions = {
240
242
  },
241
243
  rowFilterFn: context.filterFn,
242
244
  getRowNodes: context.getRowNodes,
245
+ columnType,
243
246
  };
244
247
  addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
245
248
  if (weightParameter) {
@@ -269,7 +272,7 @@ exports.aggregatedScalarExpressionFunctions = {
269
272
  handler(args, context) {
270
273
  const medianColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('MEDIAN', args);
271
274
  const medianColumnName = medianColumnParameter.value;
272
- (0, expressionFunctionUtils_1.validateColumnType)(medianColumnName, ['Number'], 'MEDIAN', context.adaptableApi);
275
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(medianColumnName, ['Number'], 'MEDIAN', context.adaptableApi);
273
276
  const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('MEDIAN', 'operand', ['GROUP_BY'], args, {
274
277
  isOptional: true,
275
278
  });
@@ -310,6 +313,7 @@ exports.aggregatedScalarExpressionFunctions = {
310
313
  },
311
314
  rowFilterFn: context.filterFn,
312
315
  getRowNodes: context.getRowNodes,
316
+ columnType,
313
317
  };
314
318
  addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
315
319
  const result = {
@@ -334,7 +338,7 @@ exports.aggregatedScalarExpressionFunctions = {
334
338
  handler(args, context) {
335
339
  const modeColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('mode', args);
336
340
  const modeColumnName = modeColumnParameter.value;
337
- (0, expressionFunctionUtils_1.validateColumnType)(modeColumnName, ['Number', 'String', 'Date'], 'mode', context.adaptableApi);
341
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(modeColumnName, ['Number', 'String', 'Date'], 'mode', context.adaptableApi);
338
342
  const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('MODE', 'operand', ['GROUP_BY'], args, {
339
343
  isOptional: true,
340
344
  });
@@ -376,6 +380,7 @@ exports.aggregatedScalarExpressionFunctions = {
376
380
  },
377
381
  rowFilterFn: context.filterFn,
378
382
  getRowNodes: context.getRowNodes,
383
+ columnType,
379
384
  };
380
385
  addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
381
386
  const result = {
@@ -448,7 +453,7 @@ exports.aggregatedScalarExpressionFunctions = {
448
453
  handler(args, context) {
449
454
  const distinctColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('ONLY', args);
450
455
  const onlyColumnName = distinctColumnParameter.value;
451
- (0, expressionFunctionUtils_1.validateColumnType)(onlyColumnName, ['Number'], 'ONLY', context.adaptableApi);
456
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(onlyColumnName, ['Number'], 'ONLY', context.adaptableApi);
452
457
  const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('ONLY', 'operand', ['GROUP_BY'], args, {
453
458
  isOptional: true,
454
459
  });
@@ -474,6 +479,7 @@ exports.aggregatedScalarExpressionFunctions = {
474
479
  },
475
480
  rowFilterFn: context.filterFn,
476
481
  getRowNodes: context.getRowNodes,
482
+ columnType,
477
483
  };
478
484
  addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
479
485
  const result = {
@@ -498,7 +504,7 @@ exports.aggregatedScalarExpressionFunctions = {
498
504
  handler(args, context) {
499
505
  const columnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('STD_DEVIATION', args);
500
506
  const columnName = columnParameter.value;
501
- (0, expressionFunctionUtils_1.validateColumnType)(columnName, ['Number'], 'STD_DEVIATION', context.adaptableApi);
507
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(columnName, ['Number'], 'STD_DEVIATION', context.adaptableApi);
502
508
  const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('STD_DEVIATION', 'operand', ['GROUP_BY'], args, {
503
509
  isOptional: true,
504
510
  });
@@ -532,6 +538,7 @@ exports.aggregatedScalarExpressionFunctions = {
532
538
  },
533
539
  rowFilterFn: context.filterFn,
534
540
  getRowNodes: context.getRowNodes,
541
+ columnType,
535
542
  };
536
543
  addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
537
544
  const result = {
@@ -556,7 +563,7 @@ exports.aggregatedScalarExpressionFunctions = {
556
563
  handler(args, context) {
557
564
  const minColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('MIN', args);
558
565
  const minColumnName = minColumnParameter.value;
559
- (0, expressionFunctionUtils_1.validateColumnType)(minColumnName, ['Number'], 'MIN', context.adaptableApi);
566
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(minColumnName, ['Number', 'Date'], 'MIN', context.adaptableApi);
560
567
  const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('MIN', 'operand', ['GROUP_BY'], args, {
561
568
  isOptional: true,
562
569
  });
@@ -571,8 +578,19 @@ exports.aggregatedScalarExpressionFunctions = {
571
578
  if (isUndefinedValue(rowValue)) {
572
579
  return minValue;
573
580
  }
574
- const numericRowValue = (0, expressionFunctionUtils_1.getNumericValue)(rowValue);
575
- return numericRowValue < minValue ? numericRowValue : minValue;
581
+ if (minValue === Number.MAX_VALUE) {
582
+ return rowValue;
583
+ }
584
+ if (columnType === 'Number') {
585
+ const numericRowValue = (0, expressionFunctionUtils_1.getNumericValue)(rowValue);
586
+ return numericRowValue < minValue ? numericRowValue : minValue;
587
+ }
588
+ else {
589
+ // Date
590
+ return (0, isAfter_1.default)((0, DateHelper_1.parseDateValue)(rowValue), (0, DateHelper_1.parseDateValue)(minValue))
591
+ ? minValue
592
+ : rowValue;
593
+ }
576
594
  },
577
595
  done: (minValue) => {
578
596
  if (minValue !== Number.MAX_VALUE) {
@@ -584,6 +602,7 @@ exports.aggregatedScalarExpressionFunctions = {
584
602
  },
585
603
  rowFilterFn: context.filterFn,
586
604
  getRowNodes: context.getRowNodes,
605
+ columnType,
587
606
  };
588
607
  addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
589
608
  const result = {
@@ -608,7 +627,7 @@ exports.aggregatedScalarExpressionFunctions = {
608
627
  handler(args, context) {
609
628
  const maxColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('MAX', args);
610
629
  const maxColumnName = maxColumnParameter.value;
611
- (0, expressionFunctionUtils_1.validateColumnType)(maxColumnName, ['Number'], 'MAX', context.adaptableApi);
630
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(maxColumnName, ['Number', 'Date'], 'MAX', context.adaptableApi);
612
631
  const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('MAX', 'operand', ['GROUP_BY'], args, {
613
632
  isOptional: true,
614
633
  });
@@ -623,8 +642,19 @@ exports.aggregatedScalarExpressionFunctions = {
623
642
  if (isUndefinedValue(rowValue)) {
624
643
  return maxValue;
625
644
  }
626
- const numericRowValue = (0, expressionFunctionUtils_1.getNumericValue)(rowValue);
627
- return numericRowValue > maxValue ? numericRowValue : maxValue;
645
+ if (maxValue === Number.MIN_VALUE) {
646
+ return rowValue;
647
+ }
648
+ if (columnType === 'Number') {
649
+ const numericRowValue = (0, expressionFunctionUtils_1.getNumericValue)(rowValue);
650
+ return numericRowValue > maxValue ? numericRowValue : maxValue;
651
+ }
652
+ else {
653
+ // Date
654
+ return (0, isAfter_1.default)((0, DateHelper_1.parseDateValue)(rowValue), (0, DateHelper_1.parseDateValue)(maxValue))
655
+ ? rowValue
656
+ : maxValue;
657
+ }
628
658
  },
629
659
  done: (maxValue) => {
630
660
  if (maxValue !== Number.MIN_VALUE) {
@@ -636,6 +666,7 @@ exports.aggregatedScalarExpressionFunctions = {
636
666
  },
637
667
  rowFilterFn: context.filterFn,
638
668
  getRowNodes: context.getRowNodes,
669
+ columnType,
639
670
  };
640
671
  addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
641
672
  const result = {
@@ -652,7 +683,7 @@ exports.aggregatedScalarExpressionFunctions = {
652
683
  'MAX( [colNameA], GROUP_BY( [colNameB] ))',
653
684
  'MAX( COL(nameA: string), GROUP_BY( COL(nameB: string)))',
654
685
  ],
655
- examples: ['MIN([colA])', 'MIN([colA], GROUP_BY([colB]))'],
686
+ examples: ['MAX([colA])', 'MAX([colA], GROUP_BY([colB]))'],
656
687
  category: 'aggregation',
657
688
  inputs: ['number'],
658
689
  },
@@ -661,7 +692,7 @@ exports.aggregatedScalarExpressionFunctions = {
661
692
  var _a, _b, _c;
662
693
  const quantileColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('QUANT', args);
663
694
  const quantileColumnName = quantileColumnParameter.value;
664
- (0, expressionFunctionUtils_1.validateColumnType)(quantileColumnName, ['Number'], 'QUANT', context.adaptableApi);
695
+ const columnType = (0, expressionFunctionUtils_1.validateColumnType)(quantileColumnName, ['Number'], 'QUANT', context.adaptableApi);
665
696
  const qNumberCandidates = args.filter((arg) => typeof arg === 'number');
666
697
  if (qNumberCandidates.length !== 1) {
667
698
  throw new ExpressionEvaluationError_1.ExpressionEvaluationError('QUANT', 'expects a single positive numeric argument as q-quantile');
@@ -768,6 +799,7 @@ exports.aggregatedScalarExpressionFunctions = {
768
799
  }
769
800
  return rowBucketMap[rowValue];
770
801
  },
802
+ columnType,
771
803
  };
772
804
  addGroupByParams(groupByOperand === null || groupByOperand === void 0 ? void 0 : groupByOperand.value, aggregationExpressionEvaluation);
773
805
  const result = {
@@ -915,124 +947,6 @@ exports.aggregatedScalarExpressionFunctions = {
915
947
  examples: ['[col1]', 'COL("col1")'],
916
948
  category: 'special',
917
949
  },
918
- OLDEST: {
919
- handler(args, context) {
920
- const minColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('OLDEST', args);
921
- const minColumnName = minColumnParameter.value;
922
- (0, expressionFunctionUtils_1.validateColumnType)(minColumnName, ['Date'], 'OLDEST', context.adaptableApi);
923
- const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('OLDEST', 'operand', ['GROUP_BY'], args, {
924
- isOptional: true,
925
- });
926
- const aggregationExpressionEvaluation = {
927
- aggregationParams: {
928
- reducers: {
929
- OLDEST: {
930
- name: 'OLDEST',
931
- field: minColumnName,
932
- initialValue: null,
933
- reducer: (minValue, rowValue) => {
934
- if (!minValue) {
935
- return rowValue;
936
- }
937
- if (!rowValue) {
938
- return minValue;
939
- }
940
- if ((0, isAfter_1.default)((0, DateHelper_1.parseDateValue)(minValue), (0, DateHelper_1.parseDateValue)(rowValue))) {
941
- return rowValue;
942
- }
943
- else {
944
- return minValue;
945
- }
946
- },
947
- done: (minValue, arr) => {
948
- if (minValue !== null) {
949
- return minValue;
950
- }
951
- },
952
- },
953
- },
954
- },
955
- rowFilterFn: context.filterFn,
956
- getRowNodes: context.getRowNodes,
957
- };
958
- addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
959
- const result = {
960
- name: 'OLDEST',
961
- type: 'aggregationScalar',
962
- value: aggregationExpressionEvaluation,
963
- };
964
- return result;
965
- },
966
- description: 'Aggregates a Date column over multiple rows by computing the oldest of the column values\nOptionally the aggregation may be computed within provided individual groups',
967
- signatures: [
968
- 'OLDEST( [colName] )',
969
- 'OLDEST( COL(name: string))',
970
- 'OLDEST( [colNameA], GROUP_BY( [colNameB] ))',
971
- 'OLDEST( COL(nameA: string), GROUP_BY( COL(nameB: string)))',
972
- ],
973
- examples: ['OLDEST([colA])', 'OLDEST([colA], GROUP_BY([colB]))'],
974
- category: 'aggregation',
975
- inputs: ['date'],
976
- },
977
- NEWEST: {
978
- handler(args, context) {
979
- const minColumnParameter = (0, expressionFunctionUtils_1.extractColumnParameter)('NEWEST', args);
980
- const minColumnName = minColumnParameter.value;
981
- (0, expressionFunctionUtils_1.validateColumnType)(minColumnName, ['Date'], 'NEWEST', context.adaptableApi);
982
- const groupByParameter = (0, expressionFunctionUtils_1.extractParameter)('NEWEST', 'operand', ['GROUP_BY'], args, {
983
- isOptional: true,
984
- });
985
- const aggregationExpressionEvaluation = {
986
- aggregationParams: {
987
- reducers: {
988
- NEWEST: {
989
- name: 'NEWEST',
990
- field: minColumnName,
991
- initialValue: null,
992
- reducer: (minValue, rowValue) => {
993
- if (!minValue) {
994
- return rowValue;
995
- }
996
- if (!rowValue) {
997
- return minValue;
998
- }
999
- if ((0, isAfter_1.default)((0, DateHelper_1.parseDateValue)(minValue), (0, DateHelper_1.parseDateValue)(rowValue))) {
1000
- return minValue;
1001
- }
1002
- else {
1003
- return rowValue;
1004
- }
1005
- },
1006
- done: (minValue, arr) => {
1007
- if (minValue !== null) {
1008
- return minValue;
1009
- }
1010
- },
1011
- },
1012
- },
1013
- },
1014
- rowFilterFn: context.filterFn,
1015
- getRowNodes: context.getRowNodes,
1016
- };
1017
- addGroupByParams(groupByParameter === null || groupByParameter === void 0 ? void 0 : groupByParameter.value, aggregationExpressionEvaluation);
1018
- const result = {
1019
- name: 'NEWEST',
1020
- type: 'aggregationScalar',
1021
- value: aggregationExpressionEvaluation,
1022
- };
1023
- return result;
1024
- },
1025
- description: 'Aggregates a Date column over multiple rows by computing the most recent of the column values\nOptionally the aggregation may be computed within provided individual groups',
1026
- signatures: [
1027
- 'NEWEST( [colName] )',
1028
- 'NEWEST( COL(name: string))',
1029
- 'NEWEST( [colNameA], GROUP_BY( [colNameB] ))',
1030
- 'NEWEST( COL(nameA: string), GROUP_BY( COL(nameB: string)))',
1031
- ],
1032
- examples: ['NEWEST([colA])', 'NEWEST([colA], GROUP_BY([colB]))'],
1033
- category: 'aggregation',
1034
- inputs: ['date'],
1035
- },
1036
950
  };
1037
951
  const mapAggregationToCumulation = (aggregationParameter, overColumnParameter, context) => {
1038
952
  const aggregationEvaluation = aggregationParameter.value;
@@ -1062,8 +976,16 @@ const mapAggregationToCumulation = (aggregationParameter, overColumnParameter, c
1062
976
  cumulatedValues: {},
1063
977
  },
1064
978
  reducer: (cumulationBag, rowValue, rowNode) => {
1065
- if (isDefinedValue(rowValue) && rowValue < cumulationBag.currentValue) {
1066
- cumulationBag.currentValue = rowValue;
979
+ if (isDefinedValue(rowValue)) {
980
+ if (aggregationEvaluation.columnType === 'Date') {
981
+ if (cumulationBag.currentValue === aggregationReducer.initialValue ||
982
+ (0, isAfter_1.default)((0, DateHelper_1.parseDateValue)(cumulationBag.currentValue), (0, DateHelper_1.parseDateValue)(rowValue))) {
983
+ cumulationBag.currentValue = rowValue;
984
+ }
985
+ }
986
+ else if (rowValue < cumulationBag.currentValue) {
987
+ cumulationBag.currentValue = rowValue;
988
+ }
1067
989
  }
1068
990
  if (cumulationBag.currentValue !== aggregationReducer.initialValue) {
1069
991
  cumulationBag.cumulatedValues[rowNode.id] = cumulationBag.currentValue;
@@ -1080,8 +1002,16 @@ const mapAggregationToCumulation = (aggregationParameter, overColumnParameter, c
1080
1002
  cumulatedValues: {},
1081
1003
  },
1082
1004
  reducer: (cumulationBag, rowValue, rowNode) => {
1083
- if (isDefinedValue(rowValue) && rowValue > cumulationBag.currentValue) {
1084
- cumulationBag.currentValue = rowValue;
1005
+ if (isDefinedValue(rowValue)) {
1006
+ if (aggregationEvaluation.columnType === 'Date') {
1007
+ if (cumulationBag.currentValue === aggregationReducer.initialValue ||
1008
+ (0, isAfter_1.default)((0, DateHelper_1.parseDateValue)(rowValue), (0, DateHelper_1.parseDateValue)(cumulationBag.currentValue))) {
1009
+ cumulationBag.currentValue = rowValue;
1010
+ }
1011
+ }
1012
+ else if (rowValue > cumulationBag.currentValue) {
1013
+ cumulationBag.currentValue = rowValue;
1014
+ }
1085
1015
  }
1086
1016
  if (cumulationBag.currentValue !== aggregationReducer.initialValue) {
1087
1017
  cumulationBag.cumulatedValues[rowNode.id] = cumulationBag.currentValue;
@@ -28,4 +28,4 @@ export declare const extractParameters: <T extends BaseParameter<string, string>
28
28
  }) => T[];
29
29
  export declare const handleColumnFunction: (args: any[], context: ExpressionContext) => ColumnParameter;
30
30
  export declare const getNumericValue: (input: unknown) => number;
31
- export declare const validateColumnType: (columnId: string, validColumnTypes: ('Number' | 'String' | 'Date')[], consumingFunction: string, api: AdaptableApi) => void;
31
+ export declare const validateColumnType: (columnId: string, validColumnTypes: ('Number' | 'String' | 'Date')[], consumingFunction: string, api: AdaptableApi) => import("../../types").AdaptableColumnDataType;
@@ -133,6 +133,7 @@ const validateColumnType = (columnId, validColumnTypes, consumingFunction, api)
133
133
  if (!validColumnTypes.some((validType) => validType === columnType)) {
134
134
  throw new ExpressionEvaluationError_1.ExpressionEvaluationError(consumingFunction, `expects a column of type ${validColumnTypes.join(' or ')}`);
135
135
  }
136
+ return columnType;
136
137
  };
137
138
  exports.validateColumnType = validateColumnType;
138
139
  const validateColumnId = (columnId, api) => {
@@ -314,8 +314,6 @@ function CreateEmptyCellSummmary() {
314
314
  Max: undefined,
315
315
  Min: undefined,
316
316
  Count: undefined,
317
- Newest: undefined,
318
- Oldest: undefined,
319
317
  Std_Deviation: undefined,
320
318
  Only: undefined,
321
319
  };
@@ -21,8 +21,9 @@ class CellSummaryDetails extends React.Component {
21
21
  let data = [];
22
22
  if (this.props.CellSummary != null) {
23
23
  data = Object.keys(this.props.CellSummary).map((operationName) => {
24
+ const operationLabel = operationName === 'Std_Deviation' ? 'Standard Deviation' : operationName;
24
25
  return {
25
- Operation: operationName,
26
+ Operation: operationLabel,
26
27
  Value: this.props.CellSummary[operationName],
27
28
  };
28
29
  });
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
2
  import { AdaptableInputProps } from '../AdaptableInput';
3
3
  export type AdaptableDateInputProps = AdaptableInputProps;
4
- declare const AdaptableDateInput: React.ForwardRefExoticComponent<Pick<import("../../../components/Input").InputProps, "children" | "size" | "name" | "tabIndex" | "color" | "style" | "cite" | "data" | "form" | "label" | "p" | "slot" | "span" | "summary" | "title" | "pattern" | "start" | "hidden" | "content" | "default" | "flex" | "wrap" | "open" | "padding" | "multiple" | "disabled" | "checked" | "download" | "list" | "order" | "target" | "rows" | "src" | "className" | "onTransitionEnd" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEndCapture" | "opacity" | "value" | "key" | "sizes" | "variant" | "tx" | "as" | "css" | "m" | "margin" | "mt" | "marginTop" | "mr" | "marginRight" | "mb" | "marginBottom" | "ml" | "marginLeft" | "mx" | "marginX" | "my" | "marginY" | "pt" | "paddingTop" | "pr" | "paddingRight" | "pb" | "paddingBottom" | "pl" | "paddingLeft" | "px" | "paddingX" | "py" | "paddingY" | "width" | "height" | "minWidth" | "minHeight" | "maxWidth" | "maxHeight" | "display" | "verticalAlign" | "overflow" | "overflowX" | "overflowY" | "fontFamily" | "fontSize" | "fontWeight" | "lineHeight" | "letterSpacing" | "fontStyle" | "textAlign" | "bg" | "backgroundColor" | "alignItems" | "alignContent" | "justifyItems" | "justifyContent" | "flexWrap" | "flexDirection" | "flexGrow" | "flexShrink" | "flexBasis" | "justifySelf" | "alignSelf" | "sx" | "accept" | "acceptCharset" | "action" | "allowFullScreen" | "allowTransparency" | "alt" | "async" | "autoComplete" | "autoFocus" | "autoPlay" | "capture" | "cellPadding" | "cellSpacing" | "charSet" | "challenge" | "classID" | "cols" | "colSpan" | "controls" | "coords" | "crossOrigin" | "dateTime" | "defer" | "encType" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "frameBorder" | "headers" | "high" | "href" | "hrefLang" | "htmlFor" | "httpEquiv" | "integrity" | "keyParams" | "keyType" | "kind" | "loop" | "low" | "manifest" | "marginHeight" | "marginWidth" | "max" | "maxLength" | "media" | "mediaGroup" | "method" | "min" | "minLength" | "muted" | "nonce" | "noValidate" | "optimum" | "playsInline" | "poster" | "preload" | "readOnly" | "rel" | "required" | "reversed" | "rowSpan" | "sandbox" | "scope" | "scoped" | "scrolling" | "seamless" | "selected" | "shape" | "srcDoc" | "srcLang" | "srcSet" | "step" | "type" | "useMap" | "wmode"> & React.RefAttributes<HTMLInputElement>>;
4
+ declare const AdaptableDateInput: React.ForwardRefExoticComponent<Pick<import("../../../components/Input").InputProps, "children" | "size" | "name" | "tabIndex" | "color" | "style" | "cite" | "data" | "form" | "label" | "p" | "slot" | "span" | "summary" | "title" | "pattern" | "start" | "hidden" | "content" | "default" | "flex" | "wrap" | "open" | "padding" | "multiple" | "disabled" | "checked" | "download" | "list" | "order" | "target" | "rows" | "src" | "className" | "onTransitionEnd" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEndCapture" | "opacity" | "value" | "step" | "sizes" | "variant" | "tx" | "as" | "css" | "key" | "m" | "margin" | "mt" | "marginTop" | "mr" | "marginRight" | "mb" | "marginBottom" | "ml" | "marginLeft" | "mx" | "marginX" | "my" | "marginY" | "pt" | "paddingTop" | "pr" | "paddingRight" | "pb" | "paddingBottom" | "pl" | "paddingLeft" | "px" | "paddingX" | "py" | "paddingY" | "width" | "height" | "minWidth" | "minHeight" | "maxWidth" | "maxHeight" | "display" | "verticalAlign" | "overflow" | "overflowX" | "overflowY" | "fontFamily" | "fontSize" | "fontWeight" | "lineHeight" | "letterSpacing" | "fontStyle" | "textAlign" | "bg" | "backgroundColor" | "alignItems" | "alignContent" | "justifyItems" | "justifyContent" | "flexWrap" | "flexDirection" | "flexGrow" | "flexShrink" | "flexBasis" | "justifySelf" | "alignSelf" | "sx" | "accept" | "acceptCharset" | "action" | "allowFullScreen" | "allowTransparency" | "alt" | "async" | "autoComplete" | "autoFocus" | "autoPlay" | "capture" | "cellPadding" | "cellSpacing" | "charSet" | "challenge" | "classID" | "cols" | "colSpan" | "controls" | "coords" | "crossOrigin" | "dateTime" | "defer" | "encType" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "frameBorder" | "headers" | "high" | "href" | "hrefLang" | "htmlFor" | "httpEquiv" | "integrity" | "keyParams" | "keyType" | "kind" | "loop" | "low" | "manifest" | "marginHeight" | "marginWidth" | "max" | "maxLength" | "media" | "mediaGroup" | "method" | "min" | "minLength" | "muted" | "nonce" | "noValidate" | "optimum" | "playsInline" | "poster" | "preload" | "readOnly" | "rel" | "required" | "reversed" | "rowSpan" | "sandbox" | "scope" | "scoped" | "scrolling" | "seamless" | "selected" | "shape" | "srcDoc" | "srcLang" | "srcSet" | "type" | "useMap" | "wmode"> & React.RefAttributes<HTMLInputElement>>;
5
5
  export default AdaptableDateInput;