@mintjamsinc/ichigojs 0.1.69 → 0.1.70

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.
@@ -78,6 +78,33 @@ export declare class VBindings {
78
78
  * @param setter The setter function to invoke on assignment.
79
79
  */
80
80
  registerWritableComputed(key: string, setter: (value: any) => void): void;
81
+ /**
82
+ * Registers a computed property for pull-based (lazy) evaluation. The provided recompute
83
+ * callback is invoked the first time the property is read after it has been marked dirty
84
+ * (or during the pre-render flush), and is expected to update the cached value (typically
85
+ * via setSilent).
86
+ * @param key The computed property name.
87
+ * @param recompute The callback that recomputes and caches the property's value.
88
+ */
89
+ registerComputed(key: string, recompute: () => void): void;
90
+ /**
91
+ * Marks a computed property as dirty so it will be recomputed on next access.
92
+ * @param key The computed property name.
93
+ */
94
+ markComputedDirty(key: string): void;
95
+ /**
96
+ * Reads the currently cached value of a computed property without triggering pull-based
97
+ * re-evaluation. Used by the recompute routine to obtain the previous value for change
98
+ * detection. Falls back to the parent bindings when the key is not stored locally.
99
+ * @param key The computed property name.
100
+ * @returns The cached value, or undefined if not cached.
101
+ */
102
+ peekComputed(key: string): any;
103
+ /**
104
+ * Forces resolution of every computed property currently marked dirty. Called before the DOM
105
+ * diff and watcher notification so that the set of changed identifiers is complete.
106
+ */
107
+ flushDirtyComputeds(): void;
81
108
  /**
82
109
  * Manually adds an identifier to the set of changed identifiers.
83
110
  * This is useful for computed properties that need to mark themselves as changed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mintjamsinc/ichigojs",
3
- "version": "0.1.69",
3
+ "version": "0.1.70",
4
4
  "description": "ichigo.js - Simple and intuitive reactive framework. Lightweight, fast, and user-friendly virtual DOM library",
5
5
  "main": "./dist/ichigo.cjs",
6
6
  "module": "./dist/ichigo.esm.js",