@web-ts-toolkit/access-router-client 0.24.0 → 0.26.0

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.mts CHANGED
@@ -538,6 +538,8 @@ interface AdapterOptions {
538
538
  onFailure?: ResponseCallback;
539
539
  throwOnError?: boolean;
540
540
  cacheTTL?: number;
541
+ modelDefaults?: Defaults;
542
+ dataDefaults?: DataDefaults;
541
543
  }
542
544
  interface ModelServiceOptions {
543
545
  modelName: string;
package/index.d.ts CHANGED
@@ -538,6 +538,8 @@ interface AdapterOptions {
538
538
  onFailure?: ResponseCallback;
539
539
  throwOnError?: boolean;
540
540
  cacheTTL?: number;
541
+ modelDefaults?: Defaults;
542
+ dataDefaults?: DataDefaults;
541
543
  }
542
544
  interface ModelServiceOptions {
543
545
  modelName: string;
package/index.js CHANGED
@@ -1749,6 +1749,27 @@ var defaultAxiosConfig = Object.freeze({
1749
1749
  });
1750
1750
  var isModelQuery = (query) => query.target === "model";
1751
1751
  var serializeRequestConfig = (config) => JSON.stringify(normalizeConfigValue(config ?? {}));
1752
+ var isObjectRecord = (value) => value != null && typeof value === "object" && !Array.isArray(value);
1753
+ var mergeServiceDefaults = (adapterDefaults, serviceDefaults) => {
1754
+ if (!adapterDefaults && !serviceDefaults) return void 0;
1755
+ const merged = {};
1756
+ const adapterDefaultsRecord = adapterDefaults ?? {};
1757
+ const serviceDefaultsRecord = serviceDefaults ?? {};
1758
+ const keys = /* @__PURE__ */ new Set([...Object.keys(adapterDefaultsRecord), ...Object.keys(serviceDefaultsRecord)]);
1759
+ for (const key of keys) {
1760
+ const adapterValue = adapterDefaultsRecord[key];
1761
+ const serviceValue = serviceDefaultsRecord[key];
1762
+ if (isObjectRecord(adapterValue) || isObjectRecord(serviceValue)) {
1763
+ merged[key] = {
1764
+ ...isObjectRecord(adapterValue) ? adapterValue : {},
1765
+ ...isObjectRecord(serviceValue) ? serviceValue : {}
1766
+ };
1767
+ continue;
1768
+ }
1769
+ merged[key] = serviceValue ?? adapterValue;
1770
+ }
1771
+ return merged;
1772
+ };
1752
1773
  function createAdapter(axiosConfig, adapterOptions) {
1753
1774
  const merged = (0, import_axios8.mergeConfig)(defaultAxiosConfig, axiosConfig ?? {});
1754
1775
  const instance = import_axios8.default.create(merged);
@@ -1757,7 +1778,9 @@ function createAdapter(axiosConfig, adapterOptions) {
1757
1778
  onSuccess: onSuccessRoot,
1758
1779
  onFailure: onFailureRoot,
1759
1780
  throwOnError: throwOnErrorRoot,
1760
- cacheTTL = 0
1781
+ cacheTTL = 0,
1782
+ modelDefaults: adapterModelDefaults,
1783
+ dataDefaults: adapterDataDefaults
1761
1784
  } = adapterOptions ?? {};
1762
1785
  if (cacheTTL > 0) useCacheInterceptors(instance, cacheTTL);
1763
1786
  const wraps = createWrapHelper(instance);
@@ -1783,7 +1806,7 @@ function createAdapter(axiosConfig, adapterOptions) {
1783
1806
  onFailure: onFailure ?? onFailureRoot,
1784
1807
  throwOnError: throwOnError ?? throwOnErrorRoot ?? false
1785
1808
  },
1786
- defaults
1809
+ mergeServiceDefaults(adapterModelDefaults, defaults)
1787
1810
  );
1788
1811
  },
1789
1812
  createDataService: ({ dataName, basePath, queryPath = "__query", onSuccess, onFailure, throwOnError }, defaults) => {
@@ -1797,7 +1820,7 @@ function createAdapter(axiosConfig, adapterOptions) {
1797
1820
  onFailure: onFailure ?? onFailureRoot,
1798
1821
  throwOnError: throwOnError ?? throwOnErrorRoot ?? false
1799
1822
  },
1800
- defaults
1823
+ mergeServiceDefaults(adapterDataDefaults, defaults)
1801
1824
  );
1802
1825
  },
1803
1826
  wrapGet: wraps.wrapGet,
package/index.mjs CHANGED
@@ -1705,6 +1705,27 @@ var defaultAxiosConfig = Object.freeze({
1705
1705
  });
1706
1706
  var isModelQuery = (query) => query.target === "model";
1707
1707
  var serializeRequestConfig = (config) => JSON.stringify(normalizeConfigValue(config ?? {}));
1708
+ var isObjectRecord = (value) => value != null && typeof value === "object" && !Array.isArray(value);
1709
+ var mergeServiceDefaults = (adapterDefaults, serviceDefaults) => {
1710
+ if (!adapterDefaults && !serviceDefaults) return void 0;
1711
+ const merged = {};
1712
+ const adapterDefaultsRecord = adapterDefaults ?? {};
1713
+ const serviceDefaultsRecord = serviceDefaults ?? {};
1714
+ const keys = /* @__PURE__ */ new Set([...Object.keys(adapterDefaultsRecord), ...Object.keys(serviceDefaultsRecord)]);
1715
+ for (const key of keys) {
1716
+ const adapterValue = adapterDefaultsRecord[key];
1717
+ const serviceValue = serviceDefaultsRecord[key];
1718
+ if (isObjectRecord(adapterValue) || isObjectRecord(serviceValue)) {
1719
+ merged[key] = {
1720
+ ...isObjectRecord(adapterValue) ? adapterValue : {},
1721
+ ...isObjectRecord(serviceValue) ? serviceValue : {}
1722
+ };
1723
+ continue;
1724
+ }
1725
+ merged[key] = serviceValue ?? adapterValue;
1726
+ }
1727
+ return merged;
1728
+ };
1708
1729
  function createAdapter(axiosConfig, adapterOptions) {
1709
1730
  const merged = mergeConfig5(defaultAxiosConfig, axiosConfig ?? {});
1710
1731
  const instance = axios.create(merged);
@@ -1713,7 +1734,9 @@ function createAdapter(axiosConfig, adapterOptions) {
1713
1734
  onSuccess: onSuccessRoot,
1714
1735
  onFailure: onFailureRoot,
1715
1736
  throwOnError: throwOnErrorRoot,
1716
- cacheTTL = 0
1737
+ cacheTTL = 0,
1738
+ modelDefaults: adapterModelDefaults,
1739
+ dataDefaults: adapterDataDefaults
1717
1740
  } = adapterOptions ?? {};
1718
1741
  if (cacheTTL > 0) useCacheInterceptors(instance, cacheTTL);
1719
1742
  const wraps = createWrapHelper(instance);
@@ -1739,7 +1762,7 @@ function createAdapter(axiosConfig, adapterOptions) {
1739
1762
  onFailure: onFailure ?? onFailureRoot,
1740
1763
  throwOnError: throwOnError ?? throwOnErrorRoot ?? false
1741
1764
  },
1742
- defaults
1765
+ mergeServiceDefaults(adapterModelDefaults, defaults)
1743
1766
  );
1744
1767
  },
1745
1768
  createDataService: ({ dataName, basePath, queryPath = "__query", onSuccess, onFailure, throwOnError }, defaults) => {
@@ -1753,7 +1776,7 @@ function createAdapter(axiosConfig, adapterOptions) {
1753
1776
  onFailure: onFailure ?? onFailureRoot,
1754
1777
  throwOnError: throwOnError ?? throwOnErrorRoot ?? false
1755
1778
  },
1756
- defaults
1779
+ mergeServiceDefaults(adapterDataDefaults, defaults)
1757
1780
  );
1758
1781
  },
1759
1782
  wrapGet: wraps.wrapGet,
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@web-ts-toolkit/access-router-client",
3
3
  "description": "Typed client utilities for @web-ts-toolkit/access-router APIs",
4
4
  "homepage": "https://web-ts-toolkit.pages.dev/docs/packages/access-router-client",
5
- "version": "0.24.0",
5
+ "version": "0.26.0",
6
6
  "sideEffects": false,
7
7
  "keywords": [
8
8
  "axios",
@@ -26,7 +26,7 @@
26
26
  "node": ">=20"
27
27
  },
28
28
  "dependencies": {
29
- "@web-ts-toolkit/utils": "0.24.0",
29
+ "@web-ts-toolkit/utils": "0.26.0",
30
30
  "axios": "^1.7.9"
31
31
  },
32
32
  "files": [