Releases: kshutkin/slimlib
Releases · kshutkin/slimlib
@slimlib/store@2.0.1
Patch Changes
- 252ad95: readme updates
@slimlib/smart-mock@1.0.1
Patch Changes
- 252ad95: readme updates
@slimlib/refine-partition@2.0.1
Patch Changes
- 252ad95: readme updates
@slimlib/list@2.0.1
Patch Changes
- 252ad95: readme updates
@slimlib/injector@2.0.1
Patch Changes
- 252ad95: readme updates
@slimlib/store@2.0.0
Major Changes
-
ac961c9: Complete rewrite with new reactive primitives API:
state()replacescreateStore()for creating reactive proxieseffect()for reactive subscriptions (replaces callback-based subscriptions)computed()for lazy, cached derived valuessignal()for simple reactive valuesflushEffects()for synchronous effect executionsetScheduler()for custom schedulinguntracked()to read values without tracking- Automatic batching of synchronous updates
- Fine-grained dependency tracking
- Liveliness memory management for computeds
- Diamond problem solved (effects run once per batch)
- ESM only, removed CJS and UMD builds
Minor Changes
- c92a780: allow Set, Map and potentially other native containers to be proxied correctly
@slimlib/smart-mock@1.0.0
Major Changes
- ac961c9: Increased minimum Node.js version from 15 to 20
@slimlib/refine-partition@2.0.0
Major Changes
- ac961c9: - use new Set methods (
intersection,difference)- require Node.js >= 22
- ESM only (removed CJS and UMD)
@slimlib/list@2.0.0
Major Changes
- c01aab2: move to ES only format
@slimlib/injector@2.0.0
Major Changes
- ac961c9: new build and new get parameters name implementation
Minor Changes
-
ac961c9: Changed from default export to named export. Import using
{ createInject }instead of the default import.Before:
import createInject from "@slimlib/injector";
After:
import { createInject } from "@slimlib/injector";
Added
createInjectAnnotatedfunction for minification-safe dependency injection using AngularJS-style array annotation.import { createInjectAnnotated } from "@slimlib/injector"; const inject = createInjectAnnotated(); inject([ "$provide", ($provide) => { $provide("config", { url: "http://example.com" }); }, ]); inject([ "config", (config) => { console.log(config.url); }, ]);