@infinite-table/infinite-react 7.3.6 → 7.4.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.
package/index.d.ts CHANGED
@@ -335,6 +335,14 @@ type DebugLogger = {
335
335
  destroy: () => void;
336
336
  logFn: undefined | ((...args: any[]) => void);
337
337
  };
338
+ /**
339
+ * Returns whether logging is enabled for a specific channel
340
+ *
341
+ * @param channel the name of a specific channel like "a:b:c" - cannot contain wildcards
342
+ * @param permissions we accept values like "a:b:c,d:e:f,d:x:*" - multiple values separated by a comma. can also contain wildcards
343
+ * @returns boolean
344
+ */
345
+ declare function isChannelEnabled(channel: string, permissions: string): boolean;
338
346
  declare const debug: {
339
347
  (channelName: string): DebugLogger;
340
348
  colors: string[];
@@ -342,6 +350,7 @@ declare const debug: {
342
350
  diffenable: string | boolean;
343
351
  logFn: DebugLogger["logFn"];
344
352
  destroyAll: () => void;
353
+ isChannelEnabled: typeof isChannelEnabled;
345
354
  onLogIntent: (channel: string, fn: (options: {
346
355
  timestamp: number;
347
356
  channel: string;
@@ -1078,6 +1087,19 @@ type GroupBy<DataType, KeyType = any> = {
1078
1087
  }
1079
1088
  ]>;
1080
1089
 
1090
+ type PerfMarkerDetails = {
1091
+ name: string;
1092
+ value: string | number | boolean;
1093
+ }[];
1094
+ interface PerfMarker {
1095
+ start(options?: {
1096
+ details?: PerfMarkerDetails;
1097
+ }): PerfMarker;
1098
+ end(options?: {
1099
+ details?: PerfMarkerDetails;
1100
+ }): PerfMarker;
1101
+ }
1102
+
1081
1103
  type SortDir = 1 | -1;
1082
1104
  type MultisortInfo<T> = {
1083
1105
  /**
@@ -1104,6 +1126,7 @@ type MultisortInfoAllowMultipleFields<T> = Omit<MultisortInfo<T>, 'field'> & {
1104
1126
  };
1105
1127
  declare const multisort: {
1106
1128
  <T>(sortInfo: MultisortInfoAllowMultipleFields<T>[], array: T[], options?: {
1129
+ marker?: PerfMarker;
1107
1130
  get?: (item: any) => T;
1108
1131
  } | ((item: any) => T)): T[];
1109
1132
  knownTypes: {
@@ -1118,6 +1141,7 @@ type NestedMultiSortOptions<T> = {
1118
1141
  toKey: (item: T) => any;
1119
1142
  depthFirst?: boolean;
1120
1143
  inplace?: boolean;
1144
+ marker?: PerfMarker;
1121
1145
  };
1122
1146
  declare const multisortNested: <T>(sortInfo: MultisortInfoAllowMultipleFields<T>[], array: T[], options: NestedMultiSortOptions<T>) => T[];
1123
1147
 
@@ -3367,6 +3391,7 @@ declare const defaultFilterTypes: Record<string, DataSourceFilterType<any>>;
3367
3391
  declare function useDataSourceState<T>(): DataSourceState<T>;
3368
3392
 
3369
3393
  type FilterDataSourceParams<T> = {
3394
+ marker?: PerfMarker;
3370
3395
  dataArray: T[];
3371
3396
  operatorsByFilterType: DataSourceDerivedState<T>['operatorsByFilterType'];
3372
3397
  filterTypes: DataSourcePropFilterTypes<T>;
@@ -6724,12 +6749,14 @@ type PivotBy<DataType, KeyType> = Omit<GroupBy<DataType, KeyType>, 'column'> & {
6724
6749
  }) => ColumnTypeWithInherit<Partial<InfiniteTablePivotFinalColumnGroup<DataType>>>);
6725
6750
  };
6726
6751
  type TreeParams<DataType, _KeyType> = {
6752
+ marker?: PerfMarker;
6727
6753
  isLeafNode: (item: DataType) => boolean;
6728
6754
  getNodeChildren: (item: DataType) => null | DataType[];
6729
6755
  toKey: (item: DataType) => any;
6730
6756
  reducers?: Record<string, DataSourceAggregationReducer<DataType, any>>;
6731
6757
  };
6732
6758
  type GroupParams<DataType, KeyType> = {
6759
+ marker?: PerfMarker;
6733
6760
  groupBy: GroupBy<DataType, KeyType>[];
6734
6761
  defaultToKey?: (value: any, item: DataType) => GroupKeyType<KeyType>;
6735
6762
  pivot?: PivotBy<DataType, KeyType>[];
@@ -7230,7 +7257,7 @@ type RowDetailComponentProps<T = any> = {
7230
7257
  rowInfo: InfiniteTableRowInfo<T>;
7231
7258
  cache: RowDetailCacheStorageForCurrentRow<RowDetailCacheEntry>;
7232
7259
  };
7233
- type InfiniteTablePropComponents<T = any> = {
7260
+ interface InfiniteTablePropComponents<T = any> {
7234
7261
  LoadMask?: (props: LoadMaskProps & {
7235
7262
  children?: React$1.ReactNode | undefined;
7236
7263
  }) => React$1.JSX.Element | null;
@@ -7240,7 +7267,7 @@ type InfiniteTablePropComponents<T = any> = {
7240
7267
  }) => React$1.JSX.Element | null;
7241
7268
  MenuIcon?: (props: MenuIconProps) => React$1.JSX.Element | null;
7242
7269
  RowDetail?: (props: RowDetailComponentProps<T>) => React$1.JSX.Element | null;
7243
- };
7270
+ }
7244
7271
  type ScrollStopInfo = {
7245
7272
  scrollTop: number;
7246
7273
  scrollLeft: number;