@modular-component/core 0.1.4 → 0.1.6

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @modular-component/core
2
2
 
3
+ ## 0.1.6
4
+
5
+ ### Patch Changes
6
+
7
+ - 5b8bc33: Use transform value for stage validation when validate is not set
8
+
9
+ ## 0.1.5
10
+
11
+ ### Patch Changes
12
+
13
+ - bf87a1c: Fix with and add signature when restrict accepts undefined
14
+
3
15
  ## 0.1.4
4
16
 
5
17
  ### Patch Changes
@@ -1 +1 @@
1
- {"version":3,"file":"arguments.d.ts","sourceRoot":"","sources":["../../src/types/arguments.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAE7C,oBAAY,gBAAgB,CAC1B,KAAK,SAAS,EAAE,EAChB,GAAG,EACH,OAAO,SAAS,MAAM,CACpB,MAAM,EACN;IAAE,MAAM,EAAE,MAAM,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAC/C,EACD,MAAM,SAAS,UAAU,EACzB,aAAa,SAAS,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,EACxD,UAAU,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC,IACjC;IACF,KAAK,EAAE,KAAK,SAAS;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,GAAG,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IAC7E,GAAG,EAAE,GAAG,CAAA;IACR,QAAQ,EAAE,KAAK,SAAS;QAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,CAAC,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;CAClF,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,GAC3B,EAAE,GACF,mBAAmB,CACjB;KACG,GAAG,IAAI,MAAM,aAAa,GAAG,UAAU,SAAS;QAC/C,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAA;QACnC,KAAK,EAAE,MAAM,CAAC,CAAA;KACf,GACG;SACG,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK,GAAG,aAAa,CAChD,gBAAgB,CACd,KAAK,EACL,GAAG,EACH,OAAO,EACP,WAAW,CAAC,aAAa,EAAE,GAAG,CAAC,CAChC,EACD,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAC5B,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS;YAAE,SAAS,EAAE,MAAM,CAAC,CAAA;SAAE,GACzD,CAAC,GACD,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;KAChC,GACD,KAAK;CACV,CAAC,MAAM,CAAC,CACV,CAAC,SAAS,MAAM,CAAC,GAClB;KACG,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpD,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GACpB;SAAG,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;KAAE,GAC5B,KAAK,GACP,CAAC,CAAC,GAAG,CAAC;CACX,GACD,KAAK,CAAA"}
1
+ {"version":3,"file":"arguments.d.ts","sourceRoot":"","sources":["../../src/types/arguments.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAE7C,oBAAY,gBAAgB,CAC1B,KAAK,SAAS,EAAE,EAChB,GAAG,EACH,OAAO,SAAS,MAAM,CACpB,MAAM,EACN;IAAE,MAAM,EAAE,MAAM,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAC/C,EACD,MAAM,SAAS,UAAU,EACzB,aAAa,SAAS,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,EACxD,UAAU,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC,IACjC;IACF,KAAK,EAAE,KAAK,SAAS;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE,GAAG,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IAC7E,GAAG,EAAE,GAAG,CAAA;IACR,QAAQ,EAAE,KAAK,SAAS;QAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;KAAE,GACzC,CAAC,GACD,iBAAiB,CAAC,UAAU,CAAC,CAAA;CAClC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,GAC3B,EAAE,GACF,mBAAmB,CACjB;KACG,GAAG,IAAI,MAAM,aAAa,GAAG,UAAU,SAAS;QAC/C,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAA;QACnC,KAAK,EAAE,MAAM,CAAC,CAAA;KACf,GACG;SACG,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK,GAAG,aAAa,CAChD,gBAAgB,CACd,KAAK,EACL,GAAG,EACH,OAAO,EACP,WAAW,CAAC,aAAa,EAAE,GAAG,CAAC,CAChC,EACD,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAC5B,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS;YAAE,SAAS,EAAE,MAAM,CAAC,CAAA;SAAE,GACzD,CAAC,GACD,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;KAChC,GACD,KAAK;CACV,CAAC,MAAM,CAAC,CACV,CAAC,SAAS,MAAM,CAAC,GAClB;KACG,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpD,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GACpB;SAAG,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;KAAE,GAC5B,KAAK,GACP,CAAC,CAAC,GAAG,CAAC;CACX,GACD,KAAK,CAAA"}
@@ -11,7 +11,7 @@ import { RestrictValue } from '../validation';
11
11
  import { MethodRecord } from '../methods';
12
12
  import { FilterNever } from '../utils';
13
13
  interface ModularAddMethod<Props extends {}, Ref, Methods extends Record<string, MethodRecord>, Stages extends StageTuple, Method extends keyof Methods, Symbol extends keyof ModularStages = Methods[Method]['symbol']> {
14
- <Value extends RestrictValue<Arguments, Symbol>, Arguments extends ComputeArguments<Props, Ref, Methods, Stages>>(value: Value): ModularComponent<Props, Ref, Methods, AddStage<Stages, {
14
+ <Value extends RestrictValue<Arguments, Symbol>, Arguments extends ComputeArguments<Props, Ref, Methods, Stages>>(...args: undefined extends RestrictValue<Arguments, Symbol> ? [value?: Value] : [value: Value]): ModularComponent<Props, Ref, Methods, AddStage<Stages, {
15
15
  stage: Symbol;
16
16
  value: Value;
17
17
  }>>;
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/types/methods/add.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAEtC,UAAU,gBAAgB,CACxB,KAAK,SAAS,EAAE,EAChB,GAAG,EACH,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,EAC5C,MAAM,SAAS,UAAU,EACzB,MAAM,SAAS,MAAM,OAAO,EAC5B,MAAM,SAAS,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;IAE9D,CACE,KAAK,SAAS,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,EAC9C,SAAS,SAAS,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,EAE/D,KAAK,EAAE,KAAK,GACX,gBAAgB,CACjB,KAAK,EACL,GAAG,EACH,OAAO,EACP,QAAQ,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,CAClD,CAAA;CACF;AAED,oBAAY,iBAAiB,CAC3B,KAAK,SAAS,EAAE,EAChB,GAAG,EACH,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,EAC5C,MAAM,SAAS,UAAU,IACvB,WAAW,CAAC;KACb,MAAM,IAAI,MAAM,OAAO,IAAI,MAAM,MAAM,SAAS,MAAM,GACnD,MAAM,GACN,KAAK,EAAE,GAAG,YAAY,CACxB,MAAM,EACN,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAC1B,CAAC,QAAQ,CAAC,SAAS,CAAC,GACjB,KAAK,GACL,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;CAC1D,CAAC,CAAA"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/types/methods/add.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAEtC,UAAU,gBAAgB,CACxB,KAAK,SAAS,EAAE,EAChB,GAAG,EACH,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,EAC5C,MAAM,SAAS,UAAU,EACzB,MAAM,SAAS,MAAM,OAAO,EAC5B,MAAM,SAAS,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC;IAE9D,CACE,KAAK,SAAS,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,EAC9C,SAAS,SAAS,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,EAE/D,GAAG,IAAI,EAAE,SAAS,SAAS,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,GACvD,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,GACf,CAAC,KAAK,EAAE,KAAK,CAAC,GACjB,gBAAgB,CACjB,KAAK,EACL,GAAG,EACH,OAAO,EACP,QAAQ,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,CAClD,CAAA;CACF;AAED,oBAAY,iBAAiB,CAC3B,KAAK,SAAS,EAAE,EAChB,GAAG,EACH,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,EAC5C,MAAM,SAAS,UAAU,IACvB,WAAW,CAAC;KACb,MAAM,IAAI,MAAM,OAAO,IAAI,MAAM,MAAM,SAAS,MAAM,GACnD,MAAM,GACN,KAAK,EAAE,GAAG,YAAY,CACxB,MAAM,EACN,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAC1B,CAAC,QAAQ,CAAC,SAAS,CAAC,GACjB,KAAK,GACL,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;CAC1D,CAAC,CAAA"}
@@ -11,7 +11,7 @@ import { MethodRecord } from '../methods';
11
11
  import { ComputeArguments } from '../arguments';
12
12
  import { RestrictValue, ValidateIndex } from '../validation';
13
13
  interface ModularWithMethodDefault<Props extends {}, Ref, Methods extends Record<string, MethodRecord>, Stages extends StageTuple, Method extends keyof Methods, Symbol extends keyof ModularStages = Methods[Method]['symbol'], Arguments extends {} = ComputeArguments<Props, Ref, Methods, Stages>> {
14
- <Value extends RestrictValue<Arguments, Symbol>>(value: Value): ModularComponent<Props, Ref, Methods, UpsertStage<Stages, {
14
+ <Value extends RestrictValue<Arguments, Symbol>>(...args: undefined extends RestrictValue<Arguments, Symbol> ? [value?: Value] : [value: Value]): ModularComponent<Props, Ref, Methods, UpsertStage<Stages, {
15
15
  stage: Symbol;
16
16
  value: Value;
17
17
  }>>;
@@ -19,8 +19,12 @@ interface ModularWithMethodDefault<Props extends {}, Ref, Methods extends Record
19
19
  interface ModularWithMethodIndices<Props extends {}, Ref, Methods extends Record<string, MethodRecord>, Stages extends StageTuple, Method extends keyof Methods, Indices extends number[], Symbol extends keyof ModularStages = Methods[Method]['symbol']> {
20
20
  <Arguments extends ComputeArguments<Props, Ref, Methods, BeforeStage<Stages, StageIndex>>, Value extends RestrictValue<Arguments, Symbol>, PreviousValue extends Stages[StageIndex]['value'], Valid extends ModularStages<Arguments, Value>[Symbol] extends {
21
21
  validate: infer V;
22
+ } ? V : ModularStages<Arguments, Value>[Symbol] extends {
23
+ transform: infer V;
22
24
  } ? V : Value, PreviousValid extends ModularStages<Arguments, PreviousValue>[Symbol] extends {
23
25
  validate: infer V;
26
+ } ? V : ModularStages<Arguments, PreviousValue>[Symbol] extends {
27
+ transform: infer V;
24
28
  } ? V : PreviousValue, ValidValue extends [Valid] extends [PreviousValid] ? true : false, StageIndex extends Index extends number ? Indices[Index] : Last<Indices>, ValidIndex extends ValidateIndex<Index, ToIndices<Indices>>, Index extends number>(value: ValidValue extends true ? Value : PreviousValue, index: ValidIndex extends true ? Index : ToIndices<Indices>): ModularComponent<Props, Ref, Methods, UpsertStage<Stages, {
25
29
  stage: Symbol;
26
30
  value: Value;
@@ -29,9 +33,13 @@ interface ModularWithMethodIndices<Props extends {}, Ref, Methods extends Record
29
33
  interface ModularWithMethodLast<Props extends {}, Ref, Methods extends Record<string, MethodRecord>, Stages extends StageTuple, Method extends keyof Methods, Index extends number, Symbol extends keyof ModularStages = Methods[Method]['symbol'], Arguments extends {} = ComputeArguments<Props, Ref, Methods, BeforeStage<Stages, Index>>> {
30
34
  <Value extends RestrictValue<Arguments, Symbol>, PreviousValue extends Stages[Index]['value'], Valid extends ModularStages<Arguments, Value>[Symbol] extends {
31
35
  validate: infer V;
36
+ } ? V : ModularStages<Arguments, Value>[Symbol] extends {
37
+ transform: infer V;
32
38
  } ? V : Value, PreviousValid extends ModularStages<Arguments, PreviousValue>[Symbol] extends {
33
39
  validate: infer V;
34
- } ? V : PreviousValue, ValidValue extends [Valid] extends [PreviousValid] ? true : false>(value: ValidValue extends true ? Value : PreviousValue): ModularComponent<Props, Ref, Methods, UpsertStage<Stages, {
40
+ } ? V : ModularStages<Arguments, PreviousValue>[Symbol] extends {
41
+ transform: infer V;
42
+ } ? V : PreviousValue, ValidValue extends [Valid] extends [PreviousValid] ? true : false>(...args: undefined extends PreviousValue ? [value?: ValidValue extends true ? Value : PreviousValue] : [value: ValidValue extends true ? Value : PreviousValue]): ModularComponent<Props, Ref, Methods, UpsertStage<Stages, {
35
43
  stage: Symbol;
36
44
  value: Value;
37
45
  }, Index>>;
@@ -1 +1 @@
1
- {"version":3,"file":"with.d.ts","sourceRoot":"","sources":["../../../src/types/methods/with.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"with.d.ts","sourceRoot":"","sources":["../../../src/types/methods/with.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "Factory",
8
8
  "Test"
9
9
  ],
10
- "version": "0.1.4",
10
+ "version": "0.1.6",
11
11
  "type": "module",
12
12
  "license": "MIT",
13
13
  "publishConfig": {
@@ -20,7 +20,9 @@ export type ComputeArguments<
20
20
  > = {
21
21
  props: Props extends { children: unknown } ? Props : PropsWithChildren<Props>
22
22
  ref: Ref
23
- children: Props extends { children: infer C } ? C : PropsWithChildren['children']
23
+ children: Props extends { children: infer C }
24
+ ? C
25
+ : PropsWithChildren['children']
24
26
  } & (Stages['length'] extends 0
25
27
  ? {}
26
28
  : UnionToIntersection<
@@ -24,7 +24,9 @@ interface ModularAddMethod<
24
24
  Value extends RestrictValue<Arguments, Symbol>,
25
25
  Arguments extends ComputeArguments<Props, Ref, Methods, Stages>,
26
26
  >(
27
- value: Value,
27
+ ...args: undefined extends RestrictValue<Arguments, Symbol>
28
+ ? [value?: Value]
29
+ : [value: Value]
28
30
  ): ModularComponent<
29
31
  Props,
30
32
  Ref,
@@ -28,7 +28,9 @@ interface ModularWithMethodDefault<
28
28
  Arguments extends {} = ComputeArguments<Props, Ref, Methods, Stages>,
29
29
  > {
30
30
  <Value extends RestrictValue<Arguments, Symbol>>(
31
- value: Value,
31
+ ...args: undefined extends RestrictValue<Arguments, Symbol>
32
+ ? [value?: Value]
33
+ : [value: Value]
32
34
  ): ModularComponent<
33
35
  Props,
34
36
  Ref,
@@ -60,6 +62,10 @@ interface ModularWithMethodIndices<
60
62
  validate: infer V
61
63
  }
62
64
  ? V
65
+ : ModularStages<Arguments, Value>[Symbol] extends {
66
+ transform: infer V
67
+ }
68
+ ? V
63
69
  : Value,
64
70
  PreviousValid extends ModularStages<
65
71
  Arguments,
@@ -68,6 +74,10 @@ interface ModularWithMethodIndices<
68
74
  validate: infer V
69
75
  }
70
76
  ? V
77
+ : ModularStages<Arguments, PreviousValue>[Symbol] extends {
78
+ transform: infer V
79
+ }
80
+ ? V
71
81
  : PreviousValue,
72
82
  ValidValue extends [Valid] extends [PreviousValid] ? true : false,
73
83
  // Validate index
@@ -108,6 +118,10 @@ interface ModularWithMethodLast<
108
118
  validate: infer V
109
119
  }
110
120
  ? V
121
+ : ModularStages<Arguments, Value>[Symbol] extends {
122
+ transform: infer V
123
+ }
124
+ ? V
111
125
  : Value,
112
126
  PreviousValid extends ModularStages<
113
127
  Arguments,
@@ -116,10 +130,16 @@ interface ModularWithMethodLast<
116
130
  validate: infer V
117
131
  }
118
132
  ? V
133
+ : ModularStages<Arguments, PreviousValue>[Symbol] extends {
134
+ transform: infer V
135
+ }
136
+ ? V
119
137
  : PreviousValue,
120
138
  ValidValue extends [Valid] extends [PreviousValid] ? true : false,
121
139
  >(
122
- value: ValidValue extends true ? Value : PreviousValue,
140
+ ...args: undefined extends PreviousValue
141
+ ? [value?: ValidValue extends true ? Value : PreviousValue]
142
+ : [value: ValidValue extends true ? Value : PreviousValue]
123
143
  ): ModularComponent<
124
144
  Props,
125
145
  Ref,