@modular-component/core 0.1.3 → 0.1.4

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.
Files changed (67) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/index.d.ts +304 -91
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +107 -53
  5. package/dist/index.js.map +1 -1
  6. package/dist/types/arguments.d.ts +33 -0
  7. package/dist/types/arguments.d.ts.map +1 -0
  8. package/dist/types/arguments.js +6 -0
  9. package/dist/types/arguments.js.map +1 -0
  10. package/dist/types/methods/add.d.ts +23 -0
  11. package/dist/types/methods/add.d.ts.map +1 -0
  12. package/dist/types/methods/add.js +8 -0
  13. package/dist/types/methods/add.js.map +1 -0
  14. package/dist/types/methods/at.d.ts +22 -0
  15. package/dist/types/methods/at.d.ts.map +1 -0
  16. package/dist/types/methods/at.js +7 -0
  17. package/dist/types/methods/at.js.map +1 -0
  18. package/dist/types/methods/hook.d.ts +14 -0
  19. package/dist/types/methods/hook.d.ts.map +1 -0
  20. package/dist/types/methods/hook.js +7 -0
  21. package/dist/types/methods/hook.js.map +1 -0
  22. package/dist/types/methods/mock.d.ts +26 -0
  23. package/dist/types/methods/mock.d.ts.map +1 -0
  24. package/dist/types/methods/mock.js +6 -0
  25. package/dist/types/methods/mock.js.map +1 -0
  26. package/dist/types/methods/with.d.ts +44 -0
  27. package/dist/types/methods/with.d.ts.map +1 -0
  28. package/dist/types/methods/with.js +8 -0
  29. package/dist/types/methods/with.js.map +1 -0
  30. package/dist/types/methods.d.ts +10 -0
  31. package/dist/types/methods.d.ts.map +1 -0
  32. package/dist/types/methods.js +5 -0
  33. package/dist/types/methods.js.map +1 -0
  34. package/dist/types/modular-component.d.ts +15 -0
  35. package/dist/types/modular-component.d.ts.map +1 -0
  36. package/dist/types/modular-component.js +5 -0
  37. package/dist/types/modular-component.js.map +1 -0
  38. package/dist/types/stage.d.ts +41 -0
  39. package/dist/types/stage.d.ts.map +1 -0
  40. package/dist/types/stage.js +5 -0
  41. package/dist/types/stage.js.map +1 -0
  42. package/dist/types/utils.d.ts +24 -0
  43. package/dist/types/utils.d.ts.map +1 -0
  44. package/dist/types/utils.js +5 -0
  45. package/dist/types/utils.js.map +1 -0
  46. package/dist/types/validation.d.ts +4 -0
  47. package/dist/types/validation.d.ts.map +1 -0
  48. package/dist/types/validation.js +2 -0
  49. package/dist/types/validation.js.map +1 -0
  50. package/package.json +1 -1
  51. package/src/index.ts +185 -83
  52. package/src/types/arguments.ts +55 -0
  53. package/src/types/methods/add.ts +50 -0
  54. package/src/types/methods/at.ts +64 -0
  55. package/src/types/methods/hook.ts +27 -0
  56. package/src/types/methods/mock.ts +90 -0
  57. package/src/types/methods/with.ts +153 -0
  58. package/src/types/methods.ts +11 -0
  59. package/src/types/modular-component.ts +25 -0
  60. package/src/types/stage.ts +91 -0
  61. package/src/types/utils.ts +63 -0
  62. package/src/types/validation.ts +13 -0
  63. package/dist/types.d.ts +0 -79
  64. package/dist/types.d.ts.map +0 -1
  65. package/dist/types.js +0 -2
  66. package/dist/types.js.map +0 -1
  67. package/src/types.ts +0 -279
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @modular-component/core
2
2
 
3
+ ## 0.1.4
4
+
5
+ ### Patch Changes
6
+
7
+ - f7af9ea: Add a mockStage function to easily mock stage by value instead of parameter
8
+ - 820a836: Refactor tuple system for better typescript performance
9
+
3
10
  ## 0.1.3
4
11
 
5
12
  ### Patch Changes
package/dist/index.d.ts CHANGED
@@ -1,134 +1,347 @@
1
- /// <reference types="react" />
2
- import { MethodRecord, Modular, StageEntry } from './types';
3
- export type { Modular, ModularStageTransform, MethodRecord } from './types';
4
- export declare const modularFactory: {
5
- build: <Stages extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props = {}>(displayName?: string) => Modular<Props, {
6
- readonly withRender: {
7
- readonly field: "render";
8
- readonly restrict: import("react").ReactElement<any, any> | null;
1
+ import { FunctionComponent } from 'react';
2
+ import { ModularComponent } from './types/modular-component';
3
+ import { MethodRecord } from './types/methods';
4
+ import { StageTuple } from './types/stage';
5
+ export type { ModularStages } from './types/stage';
6
+ declare const withRender: unique symbol;
7
+ declare module './types/stage' {
8
+ interface ModularStages<Args, Value> {
9
+ [withRender]: {
10
+ restrict: FunctionComponent<Args>;
11
+ transform: ReturnType<Value extends FunctionComponent<Args> ? Value : never>;
9
12
  };
10
- }, Stages>;
11
- extend: <_Methods extends MethodRecord>(_methods: _Methods) => {
12
- build: <Stages_1 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_1 = {}>(displayName?: string) => Modular<Props_1, {
13
- readonly withRender: {
13
+ }
14
+ }
15
+ export declare const modularFactory: {
16
+ build: <Stages extends StageTuple = []>(stages?: StageTuple) => {
17
+ <Props extends {} = {}, Ref = FunctionComponent<Props>>(displayName?: string, options?: {
18
+ memo: boolean;
19
+ } | undefined): ModularComponent<Props, Ref, {
20
+ readonly Render: {
21
+ readonly symbol: typeof withRender;
14
22
  readonly field: "render";
15
- readonly restrict: import("react").ReactElement<any, any> | null;
23
+ readonly transform: (args: any, useStage: any) => any;
16
24
  };
17
- } & _Methods extends infer T ? T extends {
18
- readonly withRender: {
25
+ }, Stages>;
26
+ memo<Props_1 extends {} = {}, Ref_1 = FunctionComponent<Props_1>>(displayName?: string): ModularComponent<Props_1, Ref_1, {
27
+ readonly Render: {
28
+ readonly symbol: typeof withRender;
19
29
  readonly field: "render";
20
- readonly restrict: import("react").ReactElement<any, any> | null;
30
+ readonly transform: (args: any, useStage: any) => any;
21
31
  };
22
- } & _Methods ? T extends infer U ? { [key in keyof U]: U[key]; } : never : never : never, Stages_1>;
23
- extend: <_Methods_1 extends MethodRecord>(_methods: _Methods_1) => {
24
- build: <Stages_2 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_2 = {}>(displayName?: string) => Modular<Props_2, {
25
- readonly withRender: {
32
+ }, Stages>;
33
+ };
34
+ extend: <_Methods extends Record<string, MethodRecord>>(_methods: _Methods) => {
35
+ build: <Stages_1 extends StageTuple = []>(stages?: StageTuple) => {
36
+ <Props_2 extends {} = {}, Ref_2 = FunctionComponent<Props_2>>(displayName?: string, options?: {
37
+ memo: boolean;
38
+ } | undefined): ModularComponent<Props_2, Ref_2, {
39
+ readonly Render: {
40
+ readonly symbol: typeof withRender;
41
+ readonly field: "render";
42
+ readonly transform: (args: any, useStage: any) => any;
43
+ };
44
+ } & _Methods extends infer T ? T extends {
45
+ readonly Render: {
46
+ readonly symbol: typeof withRender;
47
+ readonly field: "render";
48
+ readonly transform: (args: any, useStage: any) => any;
49
+ };
50
+ } & _Methods ? T extends infer U ? { [key in keyof U]: U[key]; } : never : never : never, Stages_1>;
51
+ memo<Props_3 extends {} = {}, Ref_3 = FunctionComponent<Props_3>>(displayName?: string): ModularComponent<Props_3, Ref_3, {
52
+ readonly Render: {
53
+ readonly symbol: typeof withRender;
26
54
  readonly field: "render";
27
- readonly restrict: import("react").ReactElement<any, any> | null;
55
+ readonly transform: (args: any, useStage: any) => any;
28
56
  };
29
- } & _Methods & _Methods_1 extends infer T_1 ? T_1 extends {
30
- readonly withRender: {
57
+ } & _Methods extends infer T ? T extends {
58
+ readonly Render: {
59
+ readonly symbol: typeof withRender;
31
60
  readonly field: "render";
32
- readonly restrict: import("react").ReactElement<any, any> | null;
61
+ readonly transform: (args: any, useStage: any) => any;
33
62
  };
34
- } & _Methods & _Methods_1 ? T_1 extends infer U ? { [key_1 in keyof U]: U[key_1]; } : never : never : never, Stages_2>;
35
- extend: <_Methods_2 extends MethodRecord>(_methods: _Methods_2) => {
36
- build: <Stages_3 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_3 = {}>(displayName?: string) => Modular<Props_3, {
37
- readonly withRender: {
63
+ } & _Methods ? T extends infer U ? { [key in keyof U]: U[key]; } : never : never : never, Stages_1>;
64
+ };
65
+ extend: <_Methods_1 extends Record<string, MethodRecord>>(_methods: _Methods_1) => {
66
+ build: <Stages_2 extends StageTuple = []>(stages?: StageTuple) => {
67
+ <Props_4 extends {} = {}, Ref_4 = FunctionComponent<Props_4>>(displayName?: string, options?: {
68
+ memo: boolean;
69
+ } | undefined): ModularComponent<Props_4, Ref_4, {
70
+ readonly Render: {
71
+ readonly symbol: typeof withRender;
72
+ readonly field: "render";
73
+ readonly transform: (args: any, useStage: any) => any;
74
+ };
75
+ } & _Methods & _Methods_1 extends infer T_1 ? T_1 extends {
76
+ readonly Render: {
77
+ readonly symbol: typeof withRender;
38
78
  readonly field: "render";
39
- readonly restrict: import("react").ReactElement<any, any> | null;
79
+ readonly transform: (args: any, useStage: any) => any;
40
80
  };
41
- } & _Methods & _Methods_1 & _Methods_2 extends infer T_2 ? T_2 extends {
42
- readonly withRender: {
81
+ } & _Methods & _Methods_1 ? T_1 extends infer U ? { [key_1 in keyof U]: U[key_1]; } : never : never : never, Stages_2>;
82
+ memo<Props_5 extends {} = {}, Ref_5 = FunctionComponent<Props_5>>(displayName?: string): ModularComponent<Props_5, Ref_5, {
83
+ readonly Render: {
84
+ readonly symbol: typeof withRender;
43
85
  readonly field: "render";
44
- readonly restrict: import("react").ReactElement<any, any> | null;
86
+ readonly transform: (args: any, useStage: any) => any;
45
87
  };
46
- } & _Methods & _Methods_1 & _Methods_2 ? T_2 extends infer U ? { [key_2 in keyof U]: U[key_2]; } : never : never : never, Stages_3>;
47
- extend: <_Methods_3 extends MethodRecord>(_methods: _Methods_3) => {
48
- build: <Stages_4 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_4 = {}>(displayName?: string) => Modular<Props_4, {
49
- readonly withRender: {
88
+ } & _Methods & _Methods_1 extends infer T_1 ? T_1 extends {
89
+ readonly Render: {
90
+ readonly symbol: typeof withRender;
91
+ readonly field: "render";
92
+ readonly transform: (args: any, useStage: any) => any;
93
+ };
94
+ } & _Methods & _Methods_1 ? T_1 extends infer U ? { [key_1 in keyof U]: U[key_1]; } : never : never : never, Stages_2>;
95
+ };
96
+ extend: <_Methods_2 extends Record<string, MethodRecord>>(_methods: _Methods_2) => {
97
+ build: <Stages_3 extends StageTuple = []>(stages?: StageTuple) => {
98
+ <Props_6 extends {} = {}, Ref_6 = FunctionComponent<Props_6>>(displayName?: string, options?: {
99
+ memo: boolean;
100
+ } | undefined): ModularComponent<Props_6, Ref_6, {
101
+ readonly Render: {
102
+ readonly symbol: typeof withRender;
50
103
  readonly field: "render";
51
- readonly restrict: import("react").ReactElement<any, any> | null;
104
+ readonly transform: (args: any, useStage: any) => any;
52
105
  };
53
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 extends infer T_3 ? T_3 extends {
54
- readonly withRender: {
106
+ } & _Methods & _Methods_1 & _Methods_2 extends infer T_2 ? T_2 extends {
107
+ readonly Render: {
108
+ readonly symbol: typeof withRender;
55
109
  readonly field: "render";
56
- readonly restrict: import("react").ReactElement<any, any> | null;
110
+ readonly transform: (args: any, useStage: any) => any;
57
111
  };
58
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 ? T_3 extends infer U ? { [key_3 in keyof U]: U[key_3]; } : never : never : never, Stages_4>;
59
- extend: <_Methods_4 extends MethodRecord>(_methods: _Methods_4) => {
60
- build: <Stages_5 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_5 = {}>(displayName?: string) => Modular<Props_5, {
61
- readonly withRender: {
112
+ } & _Methods & _Methods_1 & _Methods_2 ? T_2 extends infer U ? { [key_2 in keyof U]: U[key_2]; } : never : never : never, Stages_3>;
113
+ memo<Props_7 extends {} = {}, Ref_7 = FunctionComponent<Props_7>>(displayName?: string): ModularComponent<Props_7, Ref_7, {
114
+ readonly Render: {
115
+ readonly symbol: typeof withRender;
116
+ readonly field: "render";
117
+ readonly transform: (args: any, useStage: any) => any;
118
+ };
119
+ } & _Methods & _Methods_1 & _Methods_2 extends infer T_2 ? T_2 extends {
120
+ readonly Render: {
121
+ readonly symbol: typeof withRender;
122
+ readonly field: "render";
123
+ readonly transform: (args: any, useStage: any) => any;
124
+ };
125
+ } & _Methods & _Methods_1 & _Methods_2 ? T_2 extends infer U ? { [key_2 in keyof U]: U[key_2]; } : never : never : never, Stages_3>;
126
+ };
127
+ extend: <_Methods_3 extends Record<string, MethodRecord>>(_methods: _Methods_3) => {
128
+ build: <Stages_4 extends StageTuple = []>(stages?: StageTuple) => {
129
+ <Props_8 extends {} = {}, Ref_8 = FunctionComponent<Props_8>>(displayName?: string, options?: {
130
+ memo: boolean;
131
+ } | undefined): ModularComponent<Props_8, Ref_8, {
132
+ readonly Render: {
133
+ readonly symbol: typeof withRender;
134
+ readonly field: "render";
135
+ readonly transform: (args: any, useStage: any) => any;
136
+ };
137
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 extends infer T_3 ? T_3 extends {
138
+ readonly Render: {
139
+ readonly symbol: typeof withRender;
140
+ readonly field: "render";
141
+ readonly transform: (args: any, useStage: any) => any;
142
+ };
143
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 ? T_3 extends infer U ? { [key_3 in keyof U]: U[key_3]; } : never : never : never, Stages_4>;
144
+ memo<Props_9 extends {} = {}, Ref_9 = FunctionComponent<Props_9>>(displayName?: string): ModularComponent<Props_9, Ref_9, {
145
+ readonly Render: {
146
+ readonly symbol: typeof withRender;
62
147
  readonly field: "render";
63
- readonly restrict: import("react").ReactElement<any, any> | null;
148
+ readonly transform: (args: any, useStage: any) => any;
64
149
  };
65
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 extends infer T_4 ? T_4 extends {
66
- readonly withRender: {
150
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 extends infer T_3 ? T_3 extends {
151
+ readonly Render: {
152
+ readonly symbol: typeof withRender;
67
153
  readonly field: "render";
68
- readonly restrict: import("react").ReactElement<any, any> | null;
154
+ readonly transform: (args: any, useStage: any) => any;
69
155
  };
70
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 ? T_4 extends infer U ? { [key_4 in keyof U]: U[key_4]; } : never : never : never, Stages_5>;
71
- extend: <_Methods_5 extends MethodRecord>(_methods: _Methods_5) => {
72
- build: <Stages_6 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_6 = {}>(displayName?: string) => Modular<Props_6, {
73
- readonly withRender: {
156
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 ? T_3 extends infer U ? { [key_3 in keyof U]: U[key_3]; } : never : never : never, Stages_4>;
157
+ };
158
+ extend: <_Methods_4 extends Record<string, MethodRecord>>(_methods: _Methods_4) => {
159
+ build: <Stages_5 extends StageTuple = []>(stages?: StageTuple) => {
160
+ <Props_10 extends {} = {}, Ref_10 = FunctionComponent<Props_10>>(displayName?: string, options?: {
161
+ memo: boolean;
162
+ } | undefined): ModularComponent<Props_10, Ref_10, {
163
+ readonly Render: {
164
+ readonly symbol: typeof withRender;
165
+ readonly field: "render";
166
+ readonly transform: (args: any, useStage: any) => any;
167
+ };
168
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 extends infer T_4 ? T_4 extends {
169
+ readonly Render: {
170
+ readonly symbol: typeof withRender;
74
171
  readonly field: "render";
75
- readonly restrict: import("react").ReactElement<any, any> | null;
172
+ readonly transform: (args: any, useStage: any) => any;
76
173
  };
77
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 extends infer T_5 ? T_5 extends {
78
- readonly withRender: {
174
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 ? T_4 extends infer U ? { [key_4 in keyof U]: U[key_4]; } : never : never : never, Stages_5>;
175
+ memo<Props_11 extends {} = {}, Ref_11 = FunctionComponent<Props_11>>(displayName?: string): ModularComponent<Props_11, Ref_11, {
176
+ readonly Render: {
177
+ readonly symbol: typeof withRender;
79
178
  readonly field: "render";
80
- readonly restrict: import("react").ReactElement<any, any> | null;
179
+ readonly transform: (args: any, useStage: any) => any;
81
180
  };
82
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 ? T_5 extends infer U ? { [key_5 in keyof U]: U[key_5]; } : never : never : never, Stages_6>;
83
- extend: <_Methods_6 extends MethodRecord>(_methods: _Methods_6) => {
84
- build: <Stages_7 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_7 = {}>(displayName?: string) => Modular<Props_7, {
85
- readonly withRender: {
181
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 extends infer T_4 ? T_4 extends {
182
+ readonly Render: {
183
+ readonly symbol: typeof withRender;
184
+ readonly field: "render";
185
+ readonly transform: (args: any, useStage: any) => any;
186
+ };
187
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 ? T_4 extends infer U ? { [key_4 in keyof U]: U[key_4]; } : never : never : never, Stages_5>;
188
+ };
189
+ extend: <_Methods_5 extends Record<string, MethodRecord>>(_methods: _Methods_5) => {
190
+ build: <Stages_6 extends StageTuple = []>(stages?: StageTuple) => {
191
+ <Props_12 extends {} = {}, Ref_12 = FunctionComponent<Props_12>>(displayName?: string, options?: {
192
+ memo: boolean;
193
+ } | undefined): ModularComponent<Props_12, Ref_12, {
194
+ readonly Render: {
195
+ readonly symbol: typeof withRender;
196
+ readonly field: "render";
197
+ readonly transform: (args: any, useStage: any) => any;
198
+ };
199
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 extends infer T_5 ? T_5 extends {
200
+ readonly Render: {
201
+ readonly symbol: typeof withRender;
202
+ readonly field: "render";
203
+ readonly transform: (args: any, useStage: any) => any;
204
+ };
205
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 ? T_5 extends infer U ? { [key_5 in keyof U]: U[key_5]; } : never : never : never, Stages_6>;
206
+ memo<Props_13 extends {} = {}, Ref_13 = FunctionComponent<Props_13>>(displayName?: string): ModularComponent<Props_13, Ref_13, {
207
+ readonly Render: {
208
+ readonly symbol: typeof withRender;
86
209
  readonly field: "render";
87
- readonly restrict: import("react").ReactElement<any, any> | null;
210
+ readonly transform: (args: any, useStage: any) => any;
88
211
  };
89
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 extends infer T_6 ? T_6 extends {
90
- readonly withRender: {
212
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 extends infer T_5 ? T_5 extends {
213
+ readonly Render: {
214
+ readonly symbol: typeof withRender;
91
215
  readonly field: "render";
92
- readonly restrict: import("react").ReactElement<any, any> | null;
216
+ readonly transform: (args: any, useStage: any) => any;
93
217
  };
94
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 ? T_6 extends infer U ? { [key_6 in keyof U]: U[key_6]; } : never : never : never, Stages_7>;
95
- extend: <_Methods_7 extends MethodRecord>(_methods: _Methods_7) => {
96
- build: <Stages_8 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_8 = {}>(displayName?: string) => Modular<Props_8, {
97
- readonly withRender: {
218
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 ? T_5 extends infer U ? { [key_5 in keyof U]: U[key_5]; } : never : never : never, Stages_6>;
219
+ };
220
+ extend: <_Methods_6 extends Record<string, MethodRecord>>(_methods: _Methods_6) => {
221
+ build: <Stages_7 extends StageTuple = []>(stages?: StageTuple) => {
222
+ <Props_14 extends {} = {}, Ref_14 = FunctionComponent<Props_14>>(displayName?: string, options?: {
223
+ memo: boolean;
224
+ } | undefined): ModularComponent<Props_14, Ref_14, {
225
+ readonly Render: {
226
+ readonly symbol: typeof withRender;
227
+ readonly field: "render";
228
+ readonly transform: (args: any, useStage: any) => any;
229
+ };
230
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 extends infer T_6 ? T_6 extends {
231
+ readonly Render: {
232
+ readonly symbol: typeof withRender;
233
+ readonly field: "render";
234
+ readonly transform: (args: any, useStage: any) => any;
235
+ };
236
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 ? T_6 extends infer U ? { [key_6 in keyof U]: U[key_6]; } : never : never : never, Stages_7>;
237
+ memo<Props_15 extends {} = {}, Ref_15 = FunctionComponent<Props_15>>(displayName?: string): ModularComponent<Props_15, Ref_15, {
238
+ readonly Render: {
239
+ readonly symbol: typeof withRender;
98
240
  readonly field: "render";
99
- readonly restrict: import("react").ReactElement<any, any> | null;
241
+ readonly transform: (args: any, useStage: any) => any;
100
242
  };
101
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 extends infer T_7 ? T_7 extends {
102
- readonly withRender: {
243
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 extends infer T_6 ? T_6 extends {
244
+ readonly Render: {
245
+ readonly symbol: typeof withRender;
103
246
  readonly field: "render";
104
- readonly restrict: import("react").ReactElement<any, any> | null;
247
+ readonly transform: (args: any, useStage: any) => any;
105
248
  };
106
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 ? T_7 extends infer U ? { [key_7 in keyof U]: U[key_7]; } : never : never : never, Stages_8>;
107
- extend: <_Methods_8 extends MethodRecord>(_methods: _Methods_8) => {
108
- build: <Stages_9 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_9 = {}>(displayName?: string) => Modular<Props_9, {
109
- readonly withRender: {
249
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 ? T_6 extends infer U ? { [key_6 in keyof U]: U[key_6]; } : never : never : never, Stages_7>;
250
+ };
251
+ extend: <_Methods_7 extends Record<string, MethodRecord>>(_methods: _Methods_7) => {
252
+ build: <Stages_8 extends StageTuple = []>(stages?: StageTuple) => {
253
+ <Props_16 extends {} = {}, Ref_16 = FunctionComponent<Props_16>>(displayName?: string, options?: {
254
+ memo: boolean;
255
+ } | undefined): ModularComponent<Props_16, Ref_16, {
256
+ readonly Render: {
257
+ readonly symbol: typeof withRender;
258
+ readonly field: "render";
259
+ readonly transform: (args: any, useStage: any) => any;
260
+ };
261
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 extends infer T_7 ? T_7 extends {
262
+ readonly Render: {
263
+ readonly symbol: typeof withRender;
110
264
  readonly field: "render";
111
- readonly restrict: import("react").ReactElement<any, any> | null;
265
+ readonly transform: (args: any, useStage: any) => any;
112
266
  };
113
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 extends infer T_8 ? T_8 extends {
114
- readonly withRender: {
267
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 ? T_7 extends infer U ? { [key_7 in keyof U]: U[key_7]; } : never : never : never, Stages_8>;
268
+ memo<Props_17 extends {} = {}, Ref_17 = FunctionComponent<Props_17>>(displayName?: string): ModularComponent<Props_17, Ref_17, {
269
+ readonly Render: {
270
+ readonly symbol: typeof withRender;
115
271
  readonly field: "render";
116
- readonly restrict: import("react").ReactElement<any, any> | null;
272
+ readonly transform: (args: any, useStage: any) => any;
117
273
  };
118
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 ? T_8 extends infer U ? { [key_8 in keyof U]: U[key_8]; } : never : never : never, Stages_9>;
119
- extend: <_Methods_9 extends MethodRecord>(_methods: _Methods_9) => {
120
- build: <Stages_10 extends StageEntry[] = []>(stages?: Omit<StageEntry, 'stages'>[]) => <Props_10 = {}>(displayName?: string) => Modular<Props_10, {
121
- readonly withRender: {
274
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 extends infer T_7 ? T_7 extends {
275
+ readonly Render: {
276
+ readonly symbol: typeof withRender;
277
+ readonly field: "render";
278
+ readonly transform: (args: any, useStage: any) => any;
279
+ };
280
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 ? T_7 extends infer U ? { [key_7 in keyof U]: U[key_7]; } : never : never : never, Stages_8>;
281
+ };
282
+ extend: <_Methods_8 extends Record<string, MethodRecord>>(_methods: _Methods_8) => {
283
+ build: <Stages_9 extends StageTuple = []>(stages?: StageTuple) => {
284
+ <Props_18 extends {} = {}, Ref_18 = FunctionComponent<Props_18>>(displayName?: string, options?: {
285
+ memo: boolean;
286
+ } | undefined): ModularComponent<Props_18, Ref_18, {
287
+ readonly Render: {
288
+ readonly symbol: typeof withRender;
122
289
  readonly field: "render";
123
- readonly restrict: import("react").ReactElement<any, any> | null;
290
+ readonly transform: (args: any, useStage: any) => any;
124
291
  };
125
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 & _Methods_9 extends infer T_9 ? T_9 extends {
126
- readonly withRender: {
292
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 extends infer T_8 ? T_8 extends {
293
+ readonly Render: {
294
+ readonly symbol: typeof withRender;
127
295
  readonly field: "render";
128
- readonly restrict: import("react").ReactElement<any, any> | null;
296
+ readonly transform: (args: any, useStage: any) => any;
129
297
  };
130
- } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 & _Methods_9 ? T_9 extends infer U ? { [key_9 in keyof U]: U[key_9]; } : never : never : never, Stages_10>;
131
- extend: <_Methods_10 extends MethodRecord>(_methods: _Methods_10) => any;
298
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 ? T_8 extends infer U ? { [key_8 in keyof U]: U[key_8]; } : never : never : never, Stages_9>;
299
+ memo<Props_19 extends {} = {}, Ref_19 = FunctionComponent<Props_19>>(displayName?: string): ModularComponent<Props_19, Ref_19, {
300
+ readonly Render: {
301
+ readonly symbol: typeof withRender;
302
+ readonly field: "render";
303
+ readonly transform: (args: any, useStage: any) => any;
304
+ };
305
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 extends infer T_8 ? T_8 extends {
306
+ readonly Render: {
307
+ readonly symbol: typeof withRender;
308
+ readonly field: "render";
309
+ readonly transform: (args: any, useStage: any) => any;
310
+ };
311
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 ? T_8 extends infer U ? { [key_8 in keyof U]: U[key_8]; } : never : never : never, Stages_9>;
312
+ };
313
+ extend: <_Methods_9 extends Record<string, MethodRecord>>(_methods: _Methods_9) => {
314
+ build: <Stages_10 extends StageTuple = []>(stages?: StageTuple) => {
315
+ <Props_20 extends {} = {}, Ref_20 = FunctionComponent<Props_20>>(displayName?: string, options?: {
316
+ memo: boolean;
317
+ } | undefined): ModularComponent<Props_20, Ref_20, {
318
+ readonly Render: {
319
+ readonly symbol: typeof withRender;
320
+ readonly field: "render";
321
+ readonly transform: (args: any, useStage: any) => any;
322
+ };
323
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 & _Methods_9 extends infer T_9 ? T_9 extends {
324
+ readonly Render: {
325
+ readonly symbol: typeof withRender;
326
+ readonly field: "render";
327
+ readonly transform: (args: any, useStage: any) => any;
328
+ };
329
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 & _Methods_9 ? T_9 extends infer U ? { [key_9 in keyof U]: U[key_9]; } : never : never : never, Stages_10>;
330
+ memo<Props_21 extends {} = {}, Ref_21 = FunctionComponent<Props_21>>(displayName?: string): ModularComponent<Props_21, Ref_21, {
331
+ readonly Render: {
332
+ readonly symbol: typeof withRender;
333
+ readonly field: "render";
334
+ readonly transform: (args: any, useStage: any) => any;
335
+ };
336
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 & _Methods_9 extends infer T_9 ? T_9 extends {
337
+ readonly Render: {
338
+ readonly symbol: typeof withRender;
339
+ readonly field: "render";
340
+ readonly transform: (args: any, useStage: any) => any;
341
+ };
342
+ } & _Methods & _Methods_1 & _Methods_2 & _Methods_3 & _Methods_4 & _Methods_5 & _Methods_6 & _Methods_7 & _Methods_8 & _Methods_9 ? T_9 extends infer U ? { [key_9 in keyof U]: U[key_9]; } : never : never : never, Stages_10>;
343
+ };
344
+ extend: <_Methods_10 extends Record<string, MethodRecord>>(_methods: _Methods_10) => any;
132
345
  };
133
346
  };
134
347
  };
@@ -140,5 +353,5 @@ export declare const modularFactory: {
140
353
  };
141
354
  };
142
355
  };
143
- export declare function createMethodRecord<R extends MethodRecord>(record: R): R;
356
+ export declare function createMethodRecord<R extends Record<string, MethodRecord>>(record: R): R;
144
357
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAc,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAGvE,YAAY,EAAE,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AA4H3E,eAAO,MAAM,cAAc;uDAnHb,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,gCAEF,MAAM;;;;;;;6DAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;iEAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;qEAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;yEAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;6EAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;iFAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;qFAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;yFAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;6FAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,kCAEF,MAAM;;;;;;;;;;;;kGAFhC,KAAK,UAAU,EAAE,QAAQ,CAAC,EAAE,mCAEF,MAAM;;;;;;;;;;;;;;;;;;;;;;CAsHnC,CAAA;AAEX,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAEvE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,iBAAiB,EAAoB,MAAM,OAAO,CAAA;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AA+MlD,QAAA,MAAM,UAAU,eAAW,CAAA;AAE3B,OAAO,QAAQ,eAAe,CAAC;IAC7B,UAAiB,aAAa,CAAC,IAAI,EAAE,KAAK;QACxC,CAAC,UAAU,CAAC,EAAE;YACZ,QAAQ,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAA;YACjC,SAAS,EAAE,UAAU,CACnB,KAAK,SAAS,iBAAiB,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,KAAK,CACtD,CAAA;SACF,CAAA;KACF;CACF;AAED,eAAO,MAAM,cAAc;;8EAhNL,MAAM;kBACF,OAAO;;;;;;;;wFAkLX,MAAM;;;;;;;;;;wFAnLN,MAAM;sBACF,OAAO;;;;;;;;;;;;;;4FAkLX,MAAM;;;;;;;;;;;;;;;;4FAnLN,MAAM;0BACF,OAAO;;;;;;;;;;;;;;gGAkLX,MAAM;;;;;;;;;;;;;;;;gGAnLN,MAAM;8BACF,OAAO;;;;;;;;;;;;;;oGAkLX,MAAM;;;;;;;;;;;;;;;;oGAnLN,MAAM;kCACF,OAAO;;;;;;;;;;;;;;wGAkLX,MAAM;;;;;;;;;;;;;;;;2GAnLN,MAAM;sCACF,OAAO;;;;;;;;;;;;;;+GAkLX,MAAM;;;;;;;;;;;;;;;;+GAnLN,MAAM;0CACF,OAAO;;;;;;;;;;;;;;mHAkLX,MAAM;;;;;;;;;;;;;;;;mHAnLN,MAAM;8CACF,OAAO;;;;;;;;;;;;;;uHAkLX,MAAM;;;;;;;;;;;;;;;;uHAnLN,MAAM;kDACF,OAAO;;;;;;;;;;;;;;2HAkLX,MAAM;;;;;;;;;;;;;;;;2HAnLN,MAAM;sDACF,OAAO;;;;;;;;;;;;;;+HAkLX,MAAM;;;;;;;;;;;;;;;;+HAnLN,MAAM;0DACF,OAAO;;;;;;;;;;;;;;mIAkLX,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;CAmCjB,CAAA;AAEX,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,EACvE,MAAM,EAAE,CAAC,GACR,CAAC,CAEH"}