@fluixi/reactive 1.0.0-alpha.84 → 1.0.0-alpha.86

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.
Files changed (70) hide show
  1. package/dist/cdn/reactive.cjs +52 -3
  2. package/dist/cdn/reactive.global.js +2 -2
  3. package/dist/cdn/reactive.mjs +52 -3
  4. package/dist/cdn/signal.cjs +1 -1
  5. package/dist/cdn/signal.global.js +2 -2
  6. package/dist/cdn/signal.mjs +1 -1
  7. package/dist/index.cjs +52 -3
  8. package/dist/index.mjs +52 -3
  9. package/dist/lib/index.cjs +53 -4
  10. package/dist/lib/index.mjs +53 -4
  11. package/dist/lib/observable/index.cjs +1 -1
  12. package/dist/lib/observable/index.mjs +1 -1
  13. package/dist/lib/signal/api.cjs +1 -1
  14. package/dist/lib/signal/api.mjs +1 -1
  15. package/dist/lib/signal/cached-resource.cjs +2 -2
  16. package/dist/lib/signal/cached-resource.mjs +2 -2
  17. package/dist/lib/signal/graph/children.cjs +1 -1
  18. package/dist/lib/signal/graph/children.mjs +1 -1
  19. package/dist/lib/signal/graph/compat.cjs +2 -2
  20. package/dist/lib/signal/graph/compat.mjs +2 -2
  21. package/dist/lib/signal/graph/core.cjs +2 -2
  22. package/dist/lib/signal/graph/core.mjs +2 -2
  23. package/dist/lib/signal/graph/debounced.cjs +1 -1
  24. package/dist/lib/signal/graph/debounced.mjs +1 -1
  25. package/dist/lib/signal/graph/derived.cjs +1 -1
  26. package/dist/lib/signal/graph/derived.mjs +1 -1
  27. package/dist/lib/signal/graph/error-boundary.cjs +1 -1
  28. package/dist/lib/signal/graph/error-boundary.mjs +1 -1
  29. package/dist/lib/signal/graph/index.cjs +2 -2
  30. package/dist/lib/signal/graph/index.mjs +2 -2
  31. package/dist/lib/signal/graph/observe.cjs +1 -1
  32. package/dist/lib/signal/graph/observe.mjs +1 -1
  33. package/dist/lib/signal/graph/resource.cjs +1 -1
  34. package/dist/lib/signal/graph/resource.mjs +1 -1
  35. package/dist/lib/signal/graph/runtime.cjs +1 -1
  36. package/dist/lib/signal/graph/runtime.mjs +1 -1
  37. package/dist/lib/signal/graph/signal-next.cjs +2 -2
  38. package/dist/lib/signal/graph/signal-next.mjs +2 -2
  39. package/dist/lib/signal/graph/state.cjs +1 -1
  40. package/dist/lib/signal/graph/state.mjs +1 -1
  41. package/dist/lib/signal/graph/suspense.cjs +1 -1
  42. package/dist/lib/signal/graph/suspense.mjs +1 -1
  43. package/dist/lib/signal/index-legacy.cjs +2 -2
  44. package/dist/lib/signal/index-legacy.mjs +2 -2
  45. package/dist/lib/signal/index.cjs +2 -2
  46. package/dist/lib/signal/index.mjs +2 -2
  47. package/dist/lib/signal/list.cjs +1 -1
  48. package/dist/lib/signal/list.mjs +1 -1
  49. package/dist/lib/signal/resource-api.cjs +1 -1
  50. package/dist/lib/signal/resource-api.d.ts +14 -22
  51. package/dist/lib/signal/resource-api.d.ts.map +1 -1
  52. package/dist/lib/signal/resource-api.mjs +1 -1
  53. package/dist/lib/signal/signal.cjs +1 -1
  54. package/dist/lib/signal/signal.mjs +1 -1
  55. package/dist/lib/signal/utilities.cjs +2 -2
  56. package/dist/lib/signal/utilities.mjs +2 -2
  57. package/dist/lib/store/api.cjs +52 -3
  58. package/dist/lib/store/api.mjs +52 -3
  59. package/dist/lib/store/index.cjs +53 -4
  60. package/dist/lib/store/index.mjs +53 -4
  61. package/dist/lib/store/store.cjs +52 -3
  62. package/dist/lib/store/store.d.ts.map +1 -1
  63. package/dist/lib/store/store.js +90 -3
  64. package/dist/lib/store/store.mjs +52 -3
  65. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  66. package/dist/version.generated.cjs +2 -2
  67. package/dist/version.generated.d.ts +1 -1
  68. package/dist/version.generated.js +1 -1
  69. package/dist/version.generated.mjs +2 -2
  70. package/package.json +2 -2
@@ -1,7 +1,7 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/version.generated.ts
4
- var VERSION = "1.0.0-alpha.84";
4
+ var VERSION = "1.0.0-alpha.86";
5
5
 
6
6
  // src/lib/predicates.ts
7
7
  function isFunction(value) {
@@ -1888,12 +1888,61 @@ function applySet(root2, args) {
1888
1888
  mergeInto(root2, first);
1889
1889
  return;
1890
1890
  }
1891
- if (Array.isArray(args[1]) && args.length >= 3) {
1892
- applyPath(root2, `${first}.${args[1].join(".")}`, args[2]);
1891
+ if (args.length >= 3) {
1892
+ setDeep(root2, args.slice(0, -1), args[args.length - 1]);
1893
1893
  return;
1894
1894
  }
1895
1895
  applyPath(root2, String(first), args[1]);
1896
1896
  }
1897
+ function selectKeys(current, selector) {
1898
+ if (typeof selector === "function") {
1899
+ if (!Array.isArray(current)) return [];
1900
+ const keys = [];
1901
+ for (let i = 0; i < current.length; i++) if (selector(current[i], i)) keys.push(i);
1902
+ return keys;
1903
+ }
1904
+ if (Array.isArray(selector)) {
1905
+ return Array.isArray(current) ? selector.map(Number) : selector.map(String);
1906
+ }
1907
+ if (selector && typeof selector === "object" && ("from" in selector || "to" in selector || "by" in selector)) {
1908
+ if (!Array.isArray(current)) return [];
1909
+ const by = selector.by ?? 1;
1910
+ const from = selector.from ?? 0;
1911
+ const to = selector.to ?? current.length - 1;
1912
+ const keys = [];
1913
+ for (let i = from; i <= to; i += by) if (i >= 0 && i < current.length) keys.push(i);
1914
+ return keys;
1915
+ }
1916
+ if (selector === "*") {
1917
+ return Array.isArray(current) ? current.map((_, i) => i) : Object.keys(current ?? {});
1918
+ }
1919
+ return [selector];
1920
+ }
1921
+ function setDeep(current, selectors, value) {
1922
+ if (current == null) return;
1923
+ const [head, ...rest] = selectors;
1924
+ if (typeof head === "string") {
1925
+ const parts = parsePath(head);
1926
+ if (parts.length > 1) {
1927
+ setDeep(current, [...parts, ...rest], value);
1928
+ return;
1929
+ }
1930
+ }
1931
+ const keys = selectKeys(current, head);
1932
+ if (rest.length === 0) {
1933
+ for (const key of keys) writeKey(current, key, nextValue(value, current[key]));
1934
+ return;
1935
+ }
1936
+ for (const key of keys) {
1937
+ let next = current[key];
1938
+ if (next == null || typeof next !== "object") {
1939
+ const lookahead = rest[0];
1940
+ next = typeof lookahead === "number" || /^\d+$/.test(String(lookahead)) ? [] : {};
1941
+ writeKey(current, key, next);
1942
+ }
1943
+ setDeep(next, rest, value);
1944
+ }
1945
+ }
1897
1946
  function clone(value) {
1898
1947
  if (value == null || typeof value !== "object") return value;
1899
1948
  if (Array.isArray(value)) return value.map(clone);
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/lib/predicates.ts
4
4
  function isFunction(value) {
@@ -32,7 +32,7 @@ __export(api_exports, {
32
32
  module.exports = __toCommonJS(api_exports);
33
33
 
34
34
  // src/version.generated.ts
35
- var VERSION = "1.0.0-alpha.84";
35
+ var VERSION = "1.0.0-alpha.86";
36
36
 
37
37
  // src/lib/signal/graph/state.ts
38
38
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -28,7 +28,7 @@ __export(cached_resource_exports, {
28
28
  module.exports = __toCommonJS(cached_resource_exports);
29
29
 
30
30
  // src/version.generated.ts
31
- var VERSION = "1.0.0-alpha.84";
31
+ var VERSION = "1.0.0-alpha.86";
32
32
 
33
33
  // src/lib/signal/graph/state.ts
34
34
  var MAJOR = VERSION.split(".")[0];
@@ -1,7 +1,7 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/version.generated.ts
4
- var VERSION = "1.0.0-alpha.84";
4
+ var VERSION = "1.0.0-alpha.86";
5
5
 
6
6
  // src/lib/signal/graph/state.ts
7
7
  var MAJOR = VERSION.split(".")[0];
@@ -25,7 +25,7 @@ __export(children_exports, {
25
25
  module.exports = __toCommonJS(children_exports);
26
26
 
27
27
  // src/version.generated.ts
28
- var VERSION = "1.0.0-alpha.84";
28
+ var VERSION = "1.0.0-alpha.86";
29
29
 
30
30
  // src/lib/signal/graph/state.ts
31
31
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -42,7 +42,7 @@ __export(compat_exports, {
42
42
  module.exports = __toCommonJS(compat_exports);
43
43
 
44
44
  // src/version.generated.ts
45
- var VERSION = "1.0.0-alpha.84";
45
+ var VERSION = "1.0.0-alpha.86";
46
46
 
47
47
  // src/lib/signal/graph/state.ts
48
48
  var MAJOR = VERSION.split(".")[0];
@@ -1,7 +1,7 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/version.generated.ts
4
- var VERSION = "1.0.0-alpha.84";
4
+ var VERSION = "1.0.0-alpha.86";
5
5
 
6
6
  // src/lib/signal/graph/state.ts
7
7
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -31,7 +31,7 @@ __export(core_exports, {
31
31
  module.exports = __toCommonJS(core_exports);
32
32
 
33
33
  // src/version.generated.ts
34
- var VERSION = "1.0.0-alpha.84";
34
+ var VERSION = "1.0.0-alpha.86";
35
35
 
36
36
  // src/lib/signal/graph/state.ts
37
37
  var MAJOR = VERSION.split(".")[0];
@@ -1,7 +1,7 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/version.generated.ts
4
- var VERSION = "1.0.0-alpha.84";
4
+ var VERSION = "1.0.0-alpha.86";
5
5
 
6
6
  // src/lib/signal/graph/state.ts
7
7
  var MAJOR = VERSION.split(".")[0];
@@ -26,7 +26,7 @@ __export(debounced_exports, {
26
26
  module.exports = __toCommonJS(debounced_exports);
27
27
 
28
28
  // src/version.generated.ts
29
- var VERSION = "1.0.0-alpha.84";
29
+ var VERSION = "1.0.0-alpha.86";
30
30
 
31
31
  // src/lib/signal/graph/state.ts
32
32
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -27,7 +27,7 @@ __export(derived_exports, {
27
27
  module.exports = __toCommonJS(derived_exports);
28
28
 
29
29
  // src/version.generated.ts
30
- var VERSION = "1.0.0-alpha.84";
30
+ var VERSION = "1.0.0-alpha.86";
31
31
 
32
32
  // src/lib/signal/graph/state.ts
33
33
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -27,7 +27,7 @@ __export(error_boundary_exports, {
27
27
  module.exports = __toCommonJS(error_boundary_exports);
28
28
 
29
29
  // src/version.generated.ts
30
- var VERSION = "1.0.0-alpha.84";
30
+ var VERSION = "1.0.0-alpha.86";
31
31
 
32
32
  // src/lib/signal/graph/state.ts
33
33
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -29,7 +29,7 @@ __export(index_exports, {
29
29
  module.exports = __toCommonJS(index_exports);
30
30
 
31
31
  // src/version.generated.ts
32
- var VERSION = "1.0.0-alpha.84";
32
+ var VERSION = "1.0.0-alpha.86";
33
33
 
34
34
  // src/lib/signal/graph/state.ts
35
35
  var MAJOR = VERSION.split(".")[0];
@@ -1,7 +1,7 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/version.generated.ts
4
- var VERSION = "1.0.0-alpha.84";
4
+ var VERSION = "1.0.0-alpha.86";
5
5
 
6
6
  // src/lib/signal/graph/state.ts
7
7
  var MAJOR = VERSION.split(".")[0];
@@ -39,7 +39,7 @@ __export(observe_exports, {
39
39
  module.exports = __toCommonJS(observe_exports);
40
40
 
41
41
  // src/version.generated.ts
42
- var VERSION = "1.0.0-alpha.84";
42
+ var VERSION = "1.0.0-alpha.86";
43
43
 
44
44
  // src/lib/signal/graph/state.ts
45
45
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -25,7 +25,7 @@ __export(resource_exports, {
25
25
  module.exports = __toCommonJS(resource_exports);
26
26
 
27
27
  // src/version.generated.ts
28
- var VERSION = "1.0.0-alpha.84";
28
+ var VERSION = "1.0.0-alpha.86";
29
29
 
30
30
  // src/lib/signal/graph/state.ts
31
31
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -44,7 +44,7 @@ __export(runtime_exports, {
44
44
  module.exports = __toCommonJS(runtime_exports);
45
45
 
46
46
  // src/version.generated.ts
47
- var VERSION = "1.0.0-alpha.84";
47
+ var VERSION = "1.0.0-alpha.86";
48
48
 
49
49
  // src/lib/signal/graph/state.ts
50
50
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -81,7 +81,7 @@ __export(signal_next_exports, {
81
81
  module.exports = __toCommonJS(signal_next_exports);
82
82
 
83
83
  // src/version.generated.ts
84
- var VERSION = "1.0.0-alpha.84";
84
+ var VERSION = "1.0.0-alpha.86";
85
85
 
86
86
  // src/lib/signal/graph/state.ts
87
87
  var MAJOR = VERSION.split(".")[0];
@@ -1,7 +1,7 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/version.generated.ts
4
- var VERSION = "1.0.0-alpha.84";
4
+ var VERSION = "1.0.0-alpha.86";
5
5
 
6
6
  // src/lib/signal/graph/state.ts
7
7
  var MAJOR = VERSION.split(".")[0];
@@ -27,7 +27,7 @@ __export(state_exports, {
27
27
  module.exports = __toCommonJS(state_exports);
28
28
 
29
29
  // src/version.generated.ts
30
- var VERSION = "1.0.0-alpha.84";
30
+ var VERSION = "1.0.0-alpha.86";
31
31
 
32
32
  // src/lib/signal/graph/state.ts
33
33
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -27,7 +27,7 @@ __export(suspense_exports, {
27
27
  module.exports = __toCommonJS(suspense_exports);
28
28
 
29
29
  // src/version.generated.ts
30
- var VERSION = "1.0.0-alpha.84";
30
+ var VERSION = "1.0.0-alpha.86";
31
31
 
32
32
  // src/lib/signal/graph/state.ts
33
33
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -494,7 +494,7 @@ function makeArrayFlat(values) {
494
494
  }
495
495
 
496
496
  // src/version.generated.ts
497
- var VERSION = "1.0.0-alpha.84";
497
+ var VERSION = "1.0.0-alpha.86";
498
498
 
499
499
  // src/lib/signal/graph/state.ts
500
500
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/lib/predicates.ts
4
4
  function isFunction(value) {
@@ -392,7 +392,7 @@ function makeArrayFlat(values) {
392
392
  }
393
393
 
394
394
  // src/version.generated.ts
395
- var VERSION = "1.0.0-alpha.84";
395
+ var VERSION = "1.0.0-alpha.86";
396
396
 
397
397
  // src/lib/signal/graph/state.ts
398
398
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -97,7 +97,7 @@ __export(index_exports, {
97
97
  module.exports = __toCommonJS(index_exports);
98
98
 
99
99
  // src/version.generated.ts
100
- var VERSION = "1.0.0-alpha.84";
100
+ var VERSION = "1.0.0-alpha.86";
101
101
 
102
102
  // src/lib/signal/graph/state.ts
103
103
  var MAJOR = VERSION.split(".")[0];
@@ -1,7 +1,7 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/version.generated.ts
4
- var VERSION = "1.0.0-alpha.84";
4
+ var VERSION = "1.0.0-alpha.86";
5
5
 
6
6
  // src/lib/signal/graph/state.ts
7
7
  var MAJOR = VERSION.split(".")[0];
@@ -27,7 +27,7 @@ __export(list_exports, {
27
27
  module.exports = __toCommonJS(list_exports);
28
28
 
29
29
  // src/version.generated.ts
30
- var VERSION = "1.0.0-alpha.84";
30
+ var VERSION = "1.0.0-alpha.86";
31
31
 
32
32
  // src/lib/signal/graph/state.ts
33
33
  var MAJOR = VERSION.split(".")[0];
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -25,7 +25,7 @@ __export(resource_api_exports, {
25
25
  module.exports = __toCommonJS(resource_api_exports);
26
26
 
27
27
  // src/version.generated.ts
28
- var VERSION = "1.0.0-alpha.84";
28
+ var VERSION = "1.0.0-alpha.86";
29
29
 
30
30
  // src/lib/signal/graph/state.ts
31
31
  var MAJOR = VERSION.split(".")[0];
@@ -1,27 +1,19 @@
1
+ import type { ResourceActions, ResourceFetcherInfo, ResourceReturn } from './graph/resource.js';
2
+ type ResourceOptions<T> = {
3
+ initialValue?: T;
4
+ name?: string;
5
+ transport?: boolean;
6
+ };
7
+ type ResourceAccessor<T> = ResourceReturn<T>[0];
8
+ export type ResourceHandle<T> = ResourceAccessor<T> & ResourceActions<T>;
1
9
  /**
2
- * `resource`: `createResource` as one binding instead of a tuple.
3
- *
4
- * const user = resource(userId, fetchUser);
5
- *
6
- * user(); // the value: suspends under <Suspense>, exactly as before
7
- * user.latest; // last settled value, kept across a refetch
8
- * user.loading; // boolean
9
- * user.error;
10
- * user.refetch();
11
- * user.mutate(next);
10
+ * The overloads are restated rather than borrowed from `createResource`.
12
11
  *
13
- * `createResource` already hands back a callable carrying `loading`/`error`/`latest`,
14
- * with only the two actions split into a second tuple slot, so this mostly folds that
15
- * split away.
16
- *
17
- * The returned function is the accessor `createResource` gave back, with the two actions
18
- * assigned onto it, so suspending, tracking and SSR seeding are untouched, and a read is
19
- * the same call it always was.
12
+ * `Parameters<typeof createResource>` collapses an overloaded function to its **last**
13
+ * signature, which is the one taking a source, so `resource(fetcher)` was rejected for
14
+ * missing an argument even though the underlying call accepts it.
20
15
  */
21
- import { createResource } from './graph/resource.js';
22
- import type { ResourceActions, ResourceReturn } from './graph/resource.js';
23
- type ResourceAccessor<T> = ResourceReturn<T>[0];
24
- export type ResourceHandle<T> = ResourceAccessor<T> & ResourceActions<T>;
25
- export declare function resource<T>(...args: Parameters<typeof createResource>): ResourceHandle<T>;
16
+ export declare function resource<T>(fetcher: (k: true, info: ResourceFetcherInfo<T>) => T | Promise<T>, options?: ResourceOptions<T>): ResourceHandle<T>;
17
+ export declare function resource<T, S>(source: S | false | null | undefined | (() => S | false | null | undefined), fetcher: (k: S, info: ResourceFetcherInfo<T>) => T | Promise<T>, options?: ResourceOptions<T>): ResourceHandle<T>;
26
18
  export {};
27
19
  //# sourceMappingURL=resource-api.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-api.d.ts","sourceRoot":"","sources":["../../../src/lib/signal/resource-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE3E,KAAK,gBAAgB,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhD,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;AAEzE,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAMzF"}
1
+ {"version":3,"file":"resource-api.d.ts","sourceRoot":"","sources":["../../../src/lib/signal/resource-api.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAE7B,KAAK,eAAe,CAAC,CAAC,IAAI;IAAE,YAAY,CAAC,EAAE,CAAC,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnF,KAAK,gBAAgB,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEhD,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;AAEzE;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EACxB,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EAClE,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAC3B,cAAc,CAAC,CAAC,CAAC,CAAC;AACrB,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAC3B,MAAM,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,GAAG,CAAC,MAAM,CAAC,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC,EAC3E,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EAC/D,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAC3B,cAAc,CAAC,CAAC,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  // src/version.generated.ts
2
- var VERSION = "1.0.0-alpha.84";
2
+ var VERSION = "1.0.0-alpha.86";
3
3
 
4
4
  // src/lib/signal/graph/state.ts
5
5
  var MAJOR = VERSION.split(".")[0];
@@ -468,7 +468,7 @@ function makeArrayFlat(values) {
468
468
  }
469
469
 
470
470
  // src/version.generated.ts
471
- var VERSION = "1.0.0-alpha.84";
471
+ var VERSION = "1.0.0-alpha.86";
472
472
 
473
473
  // src/lib/signal/graph/state.ts
474
474
  var MAJOR = VERSION.split(".")[0];
@@ -390,7 +390,7 @@ function makeArrayFlat(values) {
390
390
  }
391
391
 
392
392
  // src/version.generated.ts
393
- var VERSION = "1.0.0-alpha.84";
393
+ var VERSION = "1.0.0-alpha.86";
394
394
 
395
395
  // src/lib/signal/graph/state.ts
396
396
  var MAJOR = VERSION.split(".")[0];
@@ -1,4 +1,4 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
  "use strict";
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -45,7 +45,7 @@ __export(utilities_exports, {
45
45
  module.exports = __toCommonJS(utilities_exports);
46
46
 
47
47
  // src/version.generated.ts
48
- var VERSION = "1.0.0-alpha.84";
48
+ var VERSION = "1.0.0-alpha.86";
49
49
 
50
50
  // src/lib/signal/graph/state.ts
51
51
  var MAJOR = VERSION.split(".")[0];
@@ -1,7 +1,7 @@
1
- /*! @fluixi/reactive v1.0.0-alpha.84 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
1
+ /*! @fluixi/reactive v1.0.0-alpha.86 | (c) 2026 Ibrahima Touré and Fluixi contributors | MIT */
2
2
 
3
3
  // src/version.generated.ts
4
- var VERSION = "1.0.0-alpha.84";
4
+ var VERSION = "1.0.0-alpha.86";
5
5
 
6
6
  // src/lib/signal/graph/state.ts
7
7
  var MAJOR = VERSION.split(".")[0];