ctx-core 5.30.0 → 5.31.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.
@@ -17,6 +17,7 @@ export declare function rmemo__add<val_T, listener_val_T, E = unknown>(
17
17
  rmemo:rmemo_T<val_T, E>,
18
18
  listener:(sig:sig_T<val_T, E>)=>listener_val_T
19
19
  ):()=>void
20
+ export declare function rmemo__unset(rmemo:rmemo_T<unknown>):void
20
21
  export type rmemo_T<val_T, E = unknown> = memo_T<val_T, E>|sig_T<val_T, E>|lock_memosig_T<val_T, E>
21
22
  export type circular_rmemo_T<E = unknown> =
22
23
  (circular_memo_T|circular_sig_T|circular_lock_memosig_T)&E
@@ -208,3 +208,9 @@ export function rmemo__add(memo, add_def) {
208
208
  if (val instanceof Object) memo.a.splice(memo.a.indexOf(val), 1)
209
209
  }
210
210
  }
211
+ /**
212
+ * @param {rmemo_T}rmemo
213
+ */
214
+ export function rmemo__unset(rmemo) {
215
+ delete rmemo.val
216
+ }
@@ -12,7 +12,7 @@ import {
12
12
  rmemo__add,
13
13
  rmemo__off,
14
14
  rmemo__off__add,
15
- rmemo__on,
15
+ rmemo__on, rmemo__unset,
16
16
  type rmemo_T,
17
17
  sig_,
18
18
  type sig_T
@@ -565,4 +565,13 @@ test('rmemo__add', ()=>{
565
565
  base$._ = 3
566
566
  equal(add_arg_aa_val_aaa, [[[base$], undefined, 1], [[base$], 'val-1', 2]])
567
567
  })
568
+ test('rmemo__unset', ()=>{
569
+ const base$ = sig_(1)
570
+ equal('val' in base$, false)
571
+ equal(base$(), 1)
572
+ equal(base$.val, 1)
573
+ equal('val' in base$, true)
574
+ rmemo__unset(base$)
575
+ equal('val' in base$, false)
576
+ })
568
577
  test.run()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ctx-core",
3
- "version": "5.30.0",
3
+ "version": "5.31.0",
4
4
  "description": "ctx-core core library",
5
5
  "keywords": [
6
6
  "ctx-core",
@@ -137,7 +137,7 @@
137
137
  "@arethetypeswrong/cli": "^0.13.6",
138
138
  "@ctx-core/preprocess": "^0.1.1",
139
139
  "@size-limit/preset-small-lib": "^11.0.2",
140
- "@types/node": "^20.11.6",
140
+ "@types/node": "^20.11.7",
141
141
  "@types/sinon": "^17.0.3",
142
142
  "c8": "^9.1.0",
143
143
  "check-dts": "^0.7.2",
@@ -216,7 +216,7 @@
216
216
  "import": {
217
217
  "./rmemo": "{ sig_, memo_, be_, ctx_ }"
218
218
  },
219
- "limit": "471 B"
219
+ "limit": "470 B"
220
220
  },
221
221
  {
222
222
  "name": "memo_ sig_ be_ ctx_ be_memo_pair_ be_sig_triple_",