@xh/hoist 75.0.0-SNAPSHOT.1751426116456 → 75.0.0-SNAPSHOT.1751484541223

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/CHANGELOG.md CHANGED
@@ -9,6 +9,11 @@
9
9
  * Deprecated `popoverTitle` prop - use `editorTitle` instead.
10
10
  * Moved "Save as Favorite" button to a new compact toolbar within the popover.
11
11
 
12
+ ### 🐞 Bug Fixes
13
+
14
+ * Fixed a bug where `TrackService` was not properly verifying that tracked `data` was below the
15
+ configured `maxDataLength` limit.
16
+
12
17
  ## v74.1.0 - 2025-06-30
13
18
 
14
19
  ### 🎁 New Features
@@ -177,7 +177,7 @@ export interface TrackOptions {
177
177
  /** Correlation ID to save along with track log. */
178
178
  correlationId?: string;
179
179
  /** App-supplied data to save along with track log.*/
180
- data?: PlainObject | PlainObject[];
180
+ data?: PlainObject | Array<unknown>;
181
181
  /**
182
182
  * Set true to log on the server all primitive values in the 'data' property.
183
183
  * May also be specified as list of specific property keys that should be logged.
@@ -6,8 +6,8 @@
6
6
  */
7
7
 
8
8
  import {RuleLike} from '@xh/hoist/data';
9
- import {MouseEvent, ReactElement, ReactNode, isValidElement} from 'react';
10
9
  import {isString} from 'lodash';
10
+ import {isValidElement, MouseEvent, ReactElement, ReactNode} from 'react';
11
11
  import {LoadSpec} from '../load';
12
12
  import {Intent, PlainObject, Thunkable} from './Types';
13
13
 
@@ -224,7 +224,7 @@ export interface TrackOptions {
224
224
  correlationId?: string;
225
225
 
226
226
  /** App-supplied data to save along with track log.*/
227
- data?: PlainObject | PlainObject[];
227
+ data?: PlainObject | Array<unknown>;
228
228
 
229
229
  /**
230
230
  * Set true to log on the server all primitive values in the 'data' property.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xh/hoist",
3
- "version": "75.0.0-SNAPSHOT.1751426116456",
3
+ "version": "75.0.0-SNAPSHOT.1751484541223",
4
4
  "description": "Hoist add-on for building and deploying React Applications.",
5
5
  "repository": "github:xh/hoist-react",
6
6
  "homepage": "https://xh.io",
@@ -132,10 +132,11 @@ export class TrackService extends HoistService {
132
132
  if (options.logData !== undefined) ret.logData = options.logData;
133
133
  if (options.elapsed !== undefined) ret.elapsed = options.elapsed;
134
134
 
135
- const {maxDataLength} = this.conf;
136
- if (ret.data?.length > maxDataLength) {
135
+ const {maxDataLength} = this.conf,
136
+ dataLength = JSON.stringify(ret.data)?.length ?? 0;
137
+ if (dataLength > maxDataLength) {
137
138
  this.logWarn(
138
- `Track log includes ${ret.data.length} chars of JSON data`,
139
+ `Track log includes ${dataLength} chars of JSON data`,
139
140
  `exceeds limit of ${maxDataLength}`,
140
141
  'data will not be persisted',
141
142
  options.data