@rx-signals/store
Advanced tools
Comparing version 3.0.0-rc25 to 3.0.0-rc26
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.isResultWithInput = exports.merge = void 0; | ||
/* eslint-disable @typescript-eslint/naming-convention */ | ||
const store_utils_1 = require("./store-utils"); | ||
@@ -5,0 +6,0 @@ /** |
@@ -65,3 +65,3 @@ import { NoValueType } from './store-utils'; | ||
*/ | ||
export type Merged<T1 extends Record<string, any>, T2 extends Record<string, any>> = MergeResult<T1, T2>; | ||
export type Merged<T1 extends Record<string, any>, T2 extends Record<string, any>> = _MergeResult<T1, T2>; | ||
/** | ||
@@ -76,3 +76,3 @@ * This function merges two Record\<string, any\> T1 and T2, resulting in Merged\<T1, T2\> | ||
*/ | ||
export declare const merge: <T1 extends Record<string, any>, T2 extends Record<string, any>>(t1: T1, t2: T2) => MergeResult<T1, T2>; | ||
export declare const merge: <T1 extends Record<string, any>, T2 extends Record<string, any>>(t1: T1, t2: T2) => _MergeResult<T1, T2>; | ||
/** | ||
@@ -87,3 +87,3 @@ * Just a type alias for Record\<string, any\> | ||
*/ | ||
export type MergedConfiguration<T1 extends Configuration, T2 extends Configuration> = keyof T1 extends never ? NM<T1, T2> : keyof T2 extends never ? NM<T1, T2> : { | ||
export type MergedConfiguration<T1 extends Configuration, T2 extends Configuration> = keyof T1 extends never ? _NM<T1, T2> : keyof T2 extends never ? _NM<T1, T2> : { | ||
c1: T1; | ||
@@ -90,0 +90,0 @@ c2: T2; |
@@ -0,1 +1,2 @@ | ||
/* eslint-disable @typescript-eslint/naming-convention */ | ||
import { NO_VALUE } from './store-utils'; | ||
@@ -2,0 +3,0 @@ /** |
{ | ||
"name": "@rx-signals/store", | ||
"version": "3.0.0-rc25", | ||
"version": "3.0.0-rc26", | ||
"description": "Reactive state- and effects-management with behaviors and event streams", | ||
@@ -5,0 +5,0 @@ "author": "Gerd Neudert", |
@@ -6,6 +6,6 @@ # _@rx-signals/store_ | ||
:warning: This documentation is work in progress for the upcoming 3.0.0 version. | ||
There is however no good reason to use 2.x over 3.0.0-rc25, so please start with the rc-version (3.0.0 will be the first version I'm going to advertise publicly, so it's more like a 1.0 in reality.). | ||
There is however no good reason to use 2.x over 3.0.0-rc26, so please start with the rc-version (3.0.0 will be the first version I'm going to advertise publicly, so it's more like a 1.0 in reality.). | ||
2.x is deprecated and will NOT be maintained in any way. | ||
3.0.0-rc25 is better than 2.x in any aspect and the implementation is production-ready. | ||
3.0.0-rc26 is better than 2.x in any aspect and the implementation is production-ready. | ||
It's mainly documentation that needs improvement for a final realease. | ||
@@ -16,3 +16,3 @@ It is however possible that I will introduce minor breaking changes until 3.0.0 is finally released. | ||
**`npm install --save @rx-signals/store@3.0.0-rc24`** | ||
**`npm install --save @rx-signals/store@3.0.0-rc26`** | ||
@@ -19,0 +19,0 @@ ## Dependencies |
@@ -0,1 +1,2 @@ | ||
/* eslint-disable @typescript-eslint/naming-convention */ | ||
import { NO_VALUE, NoValueType } from './store-utils'; | ||
@@ -6,3 +7,3 @@ | ||
*/ | ||
type ConflictKeys<T1 extends Record<string, any>, T2 extends Record<string, any>> = { | ||
export type _ConflictKeys<T1 extends Record<string, any>, T2 extends Record<string, any>> = { | ||
[K in keyof T1]: K extends keyof T2 ? K : never; | ||
@@ -14,3 +15,3 @@ }[keyof T1]; | ||
*/ | ||
type NoConflictKeys<T1 extends Record<string, any>, T2 extends Record<string, any>> = { | ||
export type _NoConflictKeys<T1 extends Record<string, any>, T2 extends Record<string, any>> = { | ||
[K in keyof T1]: K extends keyof T2 ? never : K; | ||
@@ -22,4 +23,4 @@ }[keyof T1]; | ||
*/ | ||
type Conflicts<T1 extends Record<string, any>, T2 extends Record<string, any>> = { | ||
[K in ConflictKeys<T1, T2>]: T1[K]; | ||
export type _Conflicts<T1 extends Record<string, any>, T2 extends Record<string, any>> = { | ||
[K in _ConflictKeys<T1, T2>]: T1[K]; | ||
}; | ||
@@ -30,4 +31,4 @@ | ||
*/ | ||
type NoConflicts<T1 extends Record<string, any>, T2 extends Record<string, any>> = { | ||
[K in NoConflictKeys<Omit<T1, 'conflicts1' | 'conflicts2'>, T2>]: T1[K]; | ||
export type _NoConflicts<T1 extends Record<string, any>, T2 extends Record<string, any>> = { | ||
[K in _NoConflictKeys<Omit<T1, 'conflicts1' | 'conflicts2'>, T2>]: T1[K]; | ||
}; | ||
@@ -38,13 +39,13 @@ | ||
*/ | ||
type MergeResult<T1 extends Record<string, any>, T2 extends Record<string, any>> = ConflictKeys< | ||
T1, | ||
T2 | ||
> extends never | ||
export type _MergeResult< | ||
T1 extends Record<string, any>, | ||
T2 extends Record<string, any>, | ||
> = _ConflictKeys<T1, T2> extends never | ||
? T1 & T2 | ||
: NoConflicts<T1, T2> & | ||
NoConflicts<T2, T1> & { | ||
conflicts1: Conflicts<T1, T2> & | ||
: _NoConflicts<T1, T2> & | ||
_NoConflicts<T2, T1> & { | ||
conflicts1: _Conflicts<T1, T2> & | ||
('conflicts1' extends keyof T1 ? { conflicts1: T1['conflicts1'] } : {}) & | ||
('conflicts2' extends keyof T1 ? { conflicts2: T1['conflicts2'] } : {}); | ||
conflicts2: Conflicts<T2, T1> & | ||
conflicts2: _Conflicts<T2, T1> & | ||
('conflicts1' extends keyof T2 ? { conflicts1: T2['conflicts1'] } : {}) & | ||
@@ -117,3 +118,3 @@ ('conflicts2' extends keyof T2 ? { conflicts2: T2['conflicts2'] } : {}); | ||
*/ | ||
export type Merged<T1 extends Record<string, any>, T2 extends Record<string, any>> = MergeResult< | ||
export type Merged<T1 extends Record<string, any>, T2 extends Record<string, any>> = _MergeResult< | ||
T1, | ||
@@ -203,3 +204,3 @@ T2 | ||
*/ | ||
type NM<T1 extends Configuration, T2 extends Configuration> = T1 & T2; | ||
export type _NM<T1 extends Configuration, T2 extends Configuration> = T1 & T2; | ||
@@ -215,5 +216,5 @@ /** | ||
> = keyof T1 extends never | ||
? NM<T1, T2> | ||
? _NM<T1, T2> | ||
: keyof T2 extends never | ||
? NM<T1, T2> | ||
? _NM<T1, T2> | ||
: { | ||
@@ -220,0 +221,0 @@ c1: T1; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
563343
9250