@ethlete/query 0.1.0-next.2 → 0.1.0-next.3

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.
@@ -1279,10 +1279,11 @@ class QueryForm {
1279
1279
  const queryParams = this._activatedRoute.snapshot.queryParams;
1280
1280
  for (const [key, field] of Object.entries(this._fields)) {
1281
1281
  const value = queryParams[key];
1282
- if (value === undefined) {
1282
+ // We only check using == because the value types can be different (e.g. "1" and 1)
1283
+ if (value === undefined || value == field.control.value) {
1283
1284
  continue;
1284
1285
  }
1285
- const deserializedValue = field.data.queryParamTransformFn?.(value) ?? value;
1286
+ const deserializedValue = field.data.queryParamToValueTransformFn?.(value) ?? value;
1286
1287
  field.setValue(deserializedValue);
1287
1288
  }
1288
1289
  }
@@ -1332,7 +1333,9 @@ class QueryForm {
1332
1333
  delete queryParams[key];
1333
1334
  }
1334
1335
  else {
1335
- queryParams[key] = value;
1336
+ queryParams[key] = this._fields[key].data.valueToQueryParamTransformFn
1337
+ ? this._fields[key].data.valueToQueryParamTransformFn?.(value)
1338
+ : value;
1336
1339
  }
1337
1340
  }
1338
1341
  this._router.navigate([], {
@@ -1414,10 +1417,30 @@ const transformToDateArray = (value) => {
1414
1417
  }
1415
1418
  return null;
1416
1419
  };
1420
+ const transformToSort = (value) => {
1421
+ if (typeof value === 'string') {
1422
+ const [active, direction] = value.split(':');
1423
+ return {
1424
+ active,
1425
+ direction: direction,
1426
+ };
1427
+ }
1428
+ return null;
1429
+ };
1430
+ const transformToSortQueryParam = (value) => {
1431
+ if (typeof value === 'string') {
1432
+ return value;
1433
+ }
1434
+ if (value && typeof value === 'object' && 'active' in value && 'direction' in value) {
1435
+ const valAsSort = value;
1436
+ return valAsSort.direction ? `${valAsSort.active}:${valAsSort.direction}` : null;
1437
+ }
1438
+ return null;
1439
+ };
1417
1440
 
1418
1441
  /**
1419
1442
  * Generated bundle index. Do not edit.
1420
1443
  */
1421
1444
 
1422
- export { BasicAuthProvider, BearerAuthProvider, CustomHeaderAuthProvider, INFINITY_QUERY_TOKEN, InfinityQuery, InfinityQueryDirective, InfinityQueryTriggerDirective, Query, QueryClient, QueryDirective, QueryError, QueryField, QueryForm, QueryStore, buildBody, buildErrorMessage, buildGqlCacheKey, buildQueryArrayString, buildQueryString, buildRequestError, buildRoute, buildTimestampFromSeconds, createInfinityQueryConfig, decryptBearer, deepFreeze, def, extractExpiresInSeconds, filterFailure, filterInvalidParams, filterSuccess, gql, guessContentType, invalidBaseRouteError, invalidBodyError, invalidRouteError, isAbortRequestError, isBasicAuthProvider, isBearerAuthProvider, isCustomHeaderAuthProvider, isFetchResponse, isGqlQueryConfig, isParamValid, isQueryStateCancelled, isQueryStateFailure, isQueryStateLoading, isQueryStatePrepared, isQueryStateSuccess, isRequestError, mergeHeaders, pathParamsMissingInRouteFunctionError, queryStateAlreadyHasKeyError, queryStateCannotTransformError, queryStateDoesNotContainKeyError, request, shouldCacheQuery, skipPaginationPageParamCalculator, takeUntilResponse, transformGql, transformMethod, transformToBoolean, transformToBooleanArray, transformToDate, transformToDateArray, transformToNumber, transformToNumberArray, transformToString, transformToStringArray };
1445
+ export { BasicAuthProvider, BearerAuthProvider, CustomHeaderAuthProvider, INFINITY_QUERY_TOKEN, InfinityQuery, InfinityQueryDirective, InfinityQueryTriggerDirective, Query, QueryClient, QueryDirective, QueryError, QueryField, QueryForm, QueryStore, buildBody, buildErrorMessage, buildGqlCacheKey, buildQueryArrayString, buildQueryString, buildRequestError, buildRoute, buildTimestampFromSeconds, createInfinityQueryConfig, decryptBearer, deepFreeze, def, extractExpiresInSeconds, filterFailure, filterInvalidParams, filterSuccess, gql, guessContentType, invalidBaseRouteError, invalidBodyError, invalidRouteError, isAbortRequestError, isBasicAuthProvider, isBearerAuthProvider, isCustomHeaderAuthProvider, isFetchResponse, isGqlQueryConfig, isParamValid, isQueryStateCancelled, isQueryStateFailure, isQueryStateLoading, isQueryStatePrepared, isQueryStateSuccess, isRequestError, mergeHeaders, pathParamsMissingInRouteFunctionError, queryStateAlreadyHasKeyError, queryStateCannotTransformError, queryStateDoesNotContainKeyError, request, shouldCacheQuery, skipPaginationPageParamCalculator, takeUntilResponse, transformGql, transformMethod, transformToBoolean, transformToBooleanArray, transformToDate, transformToDateArray, transformToNumber, transformToNumberArray, transformToSort, transformToSortQueryParam, transformToString, transformToStringArray };
1423
1446
  //# sourceMappingURL=ethlete-query.mjs.map