@trackunit/filters-graphql-hook 1.20.0 → 1.20.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.cjs.js +21 -1
- package/index.esm.js +21 -2
- package/package.json +1 -1
- package/src/fixTypes.d.ts +6 -0
package/index.cjs.js
CHANGED
|
@@ -183,6 +183,25 @@ const positiveValueBooleanOrNull = (input) => {
|
|
|
183
183
|
}
|
|
184
184
|
return null;
|
|
185
185
|
};
|
|
186
|
+
/**
|
|
187
|
+
* Converts activeFilter BooleanValue to GraphQL format.
|
|
188
|
+
* Maps tri-state: true → true, false → false, undefined → null
|
|
189
|
+
* This preserves the contract where "show all" maps to null (not undefined).
|
|
190
|
+
*/
|
|
191
|
+
const activeFilterToGraphQL = (input) => {
|
|
192
|
+
if (hasBooleanValue(input)) {
|
|
193
|
+
if (input.booleanValue === true) {
|
|
194
|
+
return true;
|
|
195
|
+
}
|
|
196
|
+
if (input.booleanValue === false) {
|
|
197
|
+
return false;
|
|
198
|
+
}
|
|
199
|
+
// booleanValue is undefined - "show all" state
|
|
200
|
+
return null;
|
|
201
|
+
}
|
|
202
|
+
// input is missing/undefined - "show all" state
|
|
203
|
+
return null;
|
|
204
|
+
};
|
|
186
205
|
const geoJsonSimplifiedPolygonSchema = zod.z.strictObject({
|
|
187
206
|
type: zod.z.literal("Polygon"),
|
|
188
207
|
coordinates: zod.z.array(zod.z.array(zod.z.tuple([zod.z.number(), zod.z.number()]))),
|
|
@@ -473,7 +492,7 @@ const useActiveAssetFilters = (filters) => {
|
|
|
473
492
|
systemOfMeasurement: systemOfMeasurement,
|
|
474
493
|
customerIds: valueNameArrayOrUndefined(filters.customerIds),
|
|
475
494
|
telematicsDeviceIsConnected: valueBooleanOrUndefined(filters.telematicsConnected),
|
|
476
|
-
activeFilter:
|
|
495
|
+
activeFilter: activeFilterToGraphQL(filters.activeFilter),
|
|
477
496
|
owningDepotSiteIds: valueNameArrayOrUndefined(filters.siteDepotOwnershipIds),
|
|
478
497
|
fleetHealthTypes: fixTypes(valueNameArrayOrUndefined(filters.fleetHealthTypes), fleetDataHealthIssueType),
|
|
479
498
|
fleetHealthCategories: fixTypes(valueNameArrayOrUndefined(filters.fleetHealthCategories), fleetDataHealthIssueCategory),
|
|
@@ -593,6 +612,7 @@ const useAssetQueryFilters = (props) => {
|
|
|
593
612
|
setupLibraryTranslations();
|
|
594
613
|
|
|
595
614
|
exports.CustomFieldPrefix = CustomFieldPrefix;
|
|
615
|
+
exports.activeFilterToGraphQL = activeFilterToGraphQL;
|
|
596
616
|
exports.booleanValueToArray = booleanValueToArray;
|
|
597
617
|
exports.convertToAssetSortInput = convertToAssetSortInput;
|
|
598
618
|
exports.fixType = fixType;
|
package/index.esm.js
CHANGED
|
@@ -181,6 +181,25 @@ const positiveValueBooleanOrNull = (input) => {
|
|
|
181
181
|
}
|
|
182
182
|
return null;
|
|
183
183
|
};
|
|
184
|
+
/**
|
|
185
|
+
* Converts activeFilter BooleanValue to GraphQL format.
|
|
186
|
+
* Maps tri-state: true → true, false → false, undefined → null
|
|
187
|
+
* This preserves the contract where "show all" maps to null (not undefined).
|
|
188
|
+
*/
|
|
189
|
+
const activeFilterToGraphQL = (input) => {
|
|
190
|
+
if (hasBooleanValue(input)) {
|
|
191
|
+
if (input.booleanValue === true) {
|
|
192
|
+
return true;
|
|
193
|
+
}
|
|
194
|
+
if (input.booleanValue === false) {
|
|
195
|
+
return false;
|
|
196
|
+
}
|
|
197
|
+
// booleanValue is undefined - "show all" state
|
|
198
|
+
return null;
|
|
199
|
+
}
|
|
200
|
+
// input is missing/undefined - "show all" state
|
|
201
|
+
return null;
|
|
202
|
+
};
|
|
184
203
|
const geoJsonSimplifiedPolygonSchema = z.strictObject({
|
|
185
204
|
type: z.literal("Polygon"),
|
|
186
205
|
coordinates: z.array(z.array(z.tuple([z.number(), z.number()]))),
|
|
@@ -471,7 +490,7 @@ const useActiveAssetFilters = (filters) => {
|
|
|
471
490
|
systemOfMeasurement: systemOfMeasurement,
|
|
472
491
|
customerIds: valueNameArrayOrUndefined(filters.customerIds),
|
|
473
492
|
telematicsDeviceIsConnected: valueBooleanOrUndefined(filters.telematicsConnected),
|
|
474
|
-
activeFilter:
|
|
493
|
+
activeFilter: activeFilterToGraphQL(filters.activeFilter),
|
|
475
494
|
owningDepotSiteIds: valueNameArrayOrUndefined(filters.siteDepotOwnershipIds),
|
|
476
495
|
fleetHealthTypes: fixTypes(valueNameArrayOrUndefined(filters.fleetHealthTypes), fleetDataHealthIssueType),
|
|
477
496
|
fleetHealthCategories: fixTypes(valueNameArrayOrUndefined(filters.fleetHealthCategories), fleetDataHealthIssueCategory),
|
|
@@ -590,4 +609,4 @@ const useAssetQueryFilters = (props) => {
|
|
|
590
609
|
*/
|
|
591
610
|
setupLibraryTranslations();
|
|
592
611
|
|
|
593
|
-
export { CustomFieldPrefix, booleanValueToArray, convertToAssetSortInput, fixType, fixTypes, geoJsonSimplifiedPolygonSchema, isStringArrayValue, isValueName, isValueNameArray, minMaxFilterValueToAggregatedNumberRange, minMaxFilterValueToArray, minMaxFilterValueToNumberRange, positiveValueBooleanOrNull, stringArrayOrUndefined, useActiveAssetFilters, useAssetQueryFilters, useAssetSortInput, useCustomFieldFilters, valueBooleanOrUndefined, valueNameArrayOrUndefined, valueNameBooleanToArray, valueNameOrUndefined, valuesIfNotEmpty };
|
|
612
|
+
export { CustomFieldPrefix, activeFilterToGraphQL, booleanValueToArray, convertToAssetSortInput, fixType, fixTypes, geoJsonSimplifiedPolygonSchema, isStringArrayValue, isValueName, isValueNameArray, minMaxFilterValueToAggregatedNumberRange, minMaxFilterValueToArray, minMaxFilterValueToNumberRange, positiveValueBooleanOrNull, stringArrayOrUndefined, useActiveAssetFilters, useAssetQueryFilters, useAssetSortInput, useCustomFieldFilters, valueBooleanOrUndefined, valueNameArrayOrUndefined, valueNameBooleanToArray, valueNameOrUndefined, valuesIfNotEmpty };
|
package/package.json
CHANGED
package/src/fixTypes.d.ts
CHANGED
|
@@ -53,6 +53,12 @@ export declare const valueBooleanOrUndefined: (input: unknown) => boolean | unde
|
|
|
53
53
|
*
|
|
54
54
|
*/
|
|
55
55
|
export declare const positiveValueBooleanOrNull: (input: unknown) => boolean | null;
|
|
56
|
+
/**
|
|
57
|
+
* Converts activeFilter BooleanValue to GraphQL format.
|
|
58
|
+
* Maps tri-state: true → true, false → false, undefined → null
|
|
59
|
+
* This preserves the contract where "show all" maps to null (not undefined).
|
|
60
|
+
*/
|
|
61
|
+
export declare const activeFilterToGraphQL: (input: unknown) => boolean | null;
|
|
56
62
|
export declare const geoJsonSimplifiedPolygonSchema: z.ZodObject<{
|
|
57
63
|
type: z.ZodLiteral<"Polygon">;
|
|
58
64
|
coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
|