clava 0.0.2 → 0.1.1
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 +12 -0
- package/dist/index.d.ts +28 -19
- package/dist/index.js +24 -12
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +39 -45
- package/src/test-react.ts +40 -0
- package/src/test-solid.ts +36 -0
- package/src/test.ts +141 -41
- package/src/types.ts +43 -285
- package/src/utils.ts +0 -1
package/src/types.ts
CHANGED
|
@@ -69,335 +69,137 @@ type SourceDefaults<S> = S extends { getVariants: () => infer Defaults }
|
|
|
69
69
|
type SourceResult<T, S> = Pick<T, Extract<keyof T, SourceKeys<S>>> &
|
|
70
70
|
Omit<SourceDefaults<S>, keyof T>;
|
|
71
71
|
|
|
72
|
-
//
|
|
73
|
-
type
|
|
74
|
-
Omit<Defaults, keyof T>;
|
|
75
|
-
|
|
76
|
-
// All possible keys from ComponentResult (class, className, style)
|
|
77
|
-
type ComponentResultKeys =
|
|
78
|
-
| keyof JSXProps
|
|
79
|
-
| keyof HTMLProps
|
|
80
|
-
| keyof HTMLObjProps;
|
|
81
|
-
|
|
82
|
-
// Build result tuple based on number of sources
|
|
83
|
-
type SplitPropsResult<
|
|
72
|
+
// Standalone splitProps function type - first source is required
|
|
73
|
+
export type SplitPropsFunction = <
|
|
84
74
|
T,
|
|
85
|
-
|
|
86
|
-
D,
|
|
87
|
-
Sources extends readonly KeySource[],
|
|
88
|
-
> = Sources extends readonly []
|
|
89
|
-
? [
|
|
90
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
91
|
-
Omit<T, keyof V | ComponentResultKeys>,
|
|
92
|
-
]
|
|
93
|
-
: Sources extends readonly [infer S1 extends KeySource]
|
|
94
|
-
? [
|
|
95
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
96
|
-
SourceResult<T, S1>,
|
|
97
|
-
Omit<T, keyof V | ComponentResultKeys | SourceKeys<S1>>,
|
|
98
|
-
]
|
|
99
|
-
: Sources extends readonly [
|
|
100
|
-
infer S1 extends KeySource,
|
|
101
|
-
infer S2 extends KeySource,
|
|
102
|
-
]
|
|
103
|
-
? [
|
|
104
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
105
|
-
SourceResult<T, S1>,
|
|
106
|
-
SourceResult<T, S2>,
|
|
107
|
-
Omit<
|
|
108
|
-
T,
|
|
109
|
-
keyof V | ComponentResultKeys | SourceKeys<S1> | SourceKeys<S2>
|
|
110
|
-
>,
|
|
111
|
-
]
|
|
112
|
-
: Sources extends readonly [
|
|
113
|
-
infer S1 extends KeySource,
|
|
114
|
-
infer S2 extends KeySource,
|
|
115
|
-
infer S3 extends KeySource,
|
|
116
|
-
]
|
|
117
|
-
? [
|
|
118
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
119
|
-
SourceResult<T, S1>,
|
|
120
|
-
SourceResult<T, S2>,
|
|
121
|
-
SourceResult<T, S3>,
|
|
122
|
-
Omit<
|
|
123
|
-
T,
|
|
124
|
-
| keyof V
|
|
125
|
-
| ComponentResultKeys
|
|
126
|
-
| SourceKeys<S1>
|
|
127
|
-
| SourceKeys<S2>
|
|
128
|
-
| SourceKeys<S3>
|
|
129
|
-
>,
|
|
130
|
-
]
|
|
131
|
-
: Sources extends readonly [
|
|
132
|
-
infer S1 extends KeySource,
|
|
133
|
-
infer S2 extends KeySource,
|
|
134
|
-
infer S3 extends KeySource,
|
|
135
|
-
infer S4 extends KeySource,
|
|
136
|
-
]
|
|
137
|
-
? [
|
|
138
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
139
|
-
SourceResult<T, S1>,
|
|
140
|
-
SourceResult<T, S2>,
|
|
141
|
-
SourceResult<T, S3>,
|
|
142
|
-
SourceResult<T, S4>,
|
|
143
|
-
Omit<
|
|
144
|
-
T,
|
|
145
|
-
| keyof V
|
|
146
|
-
| ComponentResultKeys
|
|
147
|
-
| SourceKeys<S1>
|
|
148
|
-
| SourceKeys<S2>
|
|
149
|
-
| SourceKeys<S3>
|
|
150
|
-
| SourceKeys<S4>
|
|
151
|
-
>,
|
|
152
|
-
]
|
|
153
|
-
: Sources extends readonly [
|
|
154
|
-
infer S1 extends KeySource,
|
|
155
|
-
infer S2 extends KeySource,
|
|
156
|
-
infer S3 extends KeySource,
|
|
157
|
-
infer S4 extends KeySource,
|
|
158
|
-
infer S5 extends KeySource,
|
|
159
|
-
]
|
|
160
|
-
? [
|
|
161
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
162
|
-
SourceResult<T, S1>,
|
|
163
|
-
SourceResult<T, S2>,
|
|
164
|
-
SourceResult<T, S3>,
|
|
165
|
-
SourceResult<T, S4>,
|
|
166
|
-
SourceResult<T, S5>,
|
|
167
|
-
Omit<
|
|
168
|
-
T,
|
|
169
|
-
| keyof V
|
|
170
|
-
| ComponentResultKeys
|
|
171
|
-
| SourceKeys<S1>
|
|
172
|
-
| SourceKeys<S2>
|
|
173
|
-
| SourceKeys<S3>
|
|
174
|
-
| SourceKeys<S4>
|
|
175
|
-
| SourceKeys<S5>
|
|
176
|
-
>,
|
|
177
|
-
]
|
|
178
|
-
: Sources extends readonly [
|
|
179
|
-
infer S1 extends KeySource,
|
|
180
|
-
infer S2 extends KeySource,
|
|
181
|
-
infer S3 extends KeySource,
|
|
182
|
-
infer S4 extends KeySource,
|
|
183
|
-
infer S5 extends KeySource,
|
|
184
|
-
infer S6 extends KeySource,
|
|
185
|
-
]
|
|
186
|
-
? [
|
|
187
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
188
|
-
SourceResult<T, S1>,
|
|
189
|
-
SourceResult<T, S2>,
|
|
190
|
-
SourceResult<T, S3>,
|
|
191
|
-
SourceResult<T, S4>,
|
|
192
|
-
SourceResult<T, S5>,
|
|
193
|
-
SourceResult<T, S6>,
|
|
194
|
-
Omit<
|
|
195
|
-
T,
|
|
196
|
-
| keyof V
|
|
197
|
-
| ComponentResultKeys
|
|
198
|
-
| SourceKeys<S1>
|
|
199
|
-
| SourceKeys<S2>
|
|
200
|
-
| SourceKeys<S3>
|
|
201
|
-
| SourceKeys<S4>
|
|
202
|
-
| SourceKeys<S5>
|
|
203
|
-
| SourceKeys<S6>
|
|
204
|
-
>,
|
|
205
|
-
]
|
|
206
|
-
: Sources extends readonly [
|
|
207
|
-
infer S1 extends KeySource,
|
|
208
|
-
infer S2 extends KeySource,
|
|
209
|
-
infer S3 extends KeySource,
|
|
210
|
-
infer S4 extends KeySource,
|
|
211
|
-
infer S5 extends KeySource,
|
|
212
|
-
infer S6 extends KeySource,
|
|
213
|
-
infer S7 extends KeySource,
|
|
214
|
-
]
|
|
215
|
-
? [
|
|
216
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
217
|
-
SourceResult<T, S1>,
|
|
218
|
-
SourceResult<T, S2>,
|
|
219
|
-
SourceResult<T, S3>,
|
|
220
|
-
SourceResult<T, S4>,
|
|
221
|
-
SourceResult<T, S5>,
|
|
222
|
-
SourceResult<T, S6>,
|
|
223
|
-
SourceResult<T, S7>,
|
|
224
|
-
Omit<
|
|
225
|
-
T,
|
|
226
|
-
| keyof V
|
|
227
|
-
| ComponentResultKeys
|
|
228
|
-
| SourceKeys<S1>
|
|
229
|
-
| SourceKeys<S2>
|
|
230
|
-
| SourceKeys<S3>
|
|
231
|
-
| SourceKeys<S4>
|
|
232
|
-
| SourceKeys<S5>
|
|
233
|
-
| SourceKeys<S6>
|
|
234
|
-
| SourceKeys<S7>
|
|
235
|
-
>,
|
|
236
|
-
]
|
|
237
|
-
: Sources extends readonly [
|
|
238
|
-
infer S1 extends KeySource,
|
|
239
|
-
infer S2 extends KeySource,
|
|
240
|
-
infer S3 extends KeySource,
|
|
241
|
-
infer S4 extends KeySource,
|
|
242
|
-
infer S5 extends KeySource,
|
|
243
|
-
infer S6 extends KeySource,
|
|
244
|
-
infer S7 extends KeySource,
|
|
245
|
-
infer S8 extends KeySource,
|
|
246
|
-
]
|
|
247
|
-
? [
|
|
248
|
-
SelfResult<T, keyof V | ComponentResultKeys, D>,
|
|
249
|
-
SourceResult<T, S1>,
|
|
250
|
-
SourceResult<T, S2>,
|
|
251
|
-
SourceResult<T, S3>,
|
|
252
|
-
SourceResult<T, S4>,
|
|
253
|
-
SourceResult<T, S5>,
|
|
254
|
-
SourceResult<T, S6>,
|
|
255
|
-
SourceResult<T, S7>,
|
|
256
|
-
SourceResult<T, S8>,
|
|
257
|
-
Omit<
|
|
258
|
-
T,
|
|
259
|
-
| keyof V
|
|
260
|
-
| ComponentResultKeys
|
|
261
|
-
| SourceKeys<S1>
|
|
262
|
-
| SourceKeys<S2>
|
|
263
|
-
| SourceKeys<S3>
|
|
264
|
-
| SourceKeys<S4>
|
|
265
|
-
| SourceKeys<S5>
|
|
266
|
-
| SourceKeys<S6>
|
|
267
|
-
| SourceKeys<S7>
|
|
268
|
-
| SourceKeys<S8>
|
|
269
|
-
>,
|
|
270
|
-
]
|
|
271
|
-
: unknown[];
|
|
272
|
-
|
|
273
|
-
// SplitProps as a single generic function type
|
|
274
|
-
export type SplitProps<V, D, _R extends ComponentResult> = <
|
|
275
|
-
const T extends Record<string, unknown>,
|
|
75
|
+
const S1 extends KeySource,
|
|
276
76
|
const Sources extends readonly KeySource[],
|
|
277
77
|
>(
|
|
278
78
|
props: T,
|
|
79
|
+
source1: S1,
|
|
279
80
|
...sources: Sources
|
|
280
|
-
) =>
|
|
81
|
+
) => SplitPropsFunctionResult<T, S1, Sources>;
|
|
281
82
|
|
|
282
|
-
//
|
|
283
|
-
type
|
|
83
|
+
// Result type for standalone splitProps function
|
|
84
|
+
type SplitPropsFunctionResult<
|
|
284
85
|
T,
|
|
285
|
-
|
|
286
|
-
D,
|
|
86
|
+
S1 extends KeySource,
|
|
287
87
|
Sources extends readonly KeySource[],
|
|
288
88
|
> = Sources extends readonly []
|
|
289
|
-
? [
|
|
290
|
-
: Sources extends readonly [infer
|
|
89
|
+
? [SourceResult<T, S1>, Omit<T, SourceKeys<S1>>]
|
|
90
|
+
: Sources extends readonly [infer S2 extends KeySource]
|
|
291
91
|
? [
|
|
292
|
-
SelfResult<T, keyof V, D>,
|
|
293
92
|
SourceResult<T, S1>,
|
|
294
|
-
|
|
93
|
+
SourceResult<T, S2>,
|
|
94
|
+
Omit<T, SourceKeys<S1> | SourceKeys<S2>>,
|
|
295
95
|
]
|
|
296
96
|
: Sources extends readonly [
|
|
297
|
-
infer S1 extends KeySource,
|
|
298
97
|
infer S2 extends KeySource,
|
|
98
|
+
infer S3 extends KeySource,
|
|
299
99
|
]
|
|
300
100
|
? [
|
|
301
|
-
SelfResult<T, keyof V, D>,
|
|
302
101
|
SourceResult<T, S1>,
|
|
303
102
|
SourceResult<T, S2>,
|
|
304
|
-
|
|
103
|
+
SourceResult<T, S3>,
|
|
104
|
+
Omit<T, SourceKeys<S1> | SourceKeys<S2> | SourceKeys<S3>>,
|
|
305
105
|
]
|
|
306
106
|
: Sources extends readonly [
|
|
307
|
-
infer S1 extends KeySource,
|
|
308
107
|
infer S2 extends KeySource,
|
|
309
108
|
infer S3 extends KeySource,
|
|
109
|
+
infer S4 extends KeySource,
|
|
310
110
|
]
|
|
311
111
|
? [
|
|
312
|
-
SelfResult<T, keyof V, D>,
|
|
313
112
|
SourceResult<T, S1>,
|
|
314
113
|
SourceResult<T, S2>,
|
|
315
114
|
SourceResult<T, S3>,
|
|
316
|
-
|
|
115
|
+
SourceResult<T, S4>,
|
|
116
|
+
Omit<
|
|
117
|
+
T,
|
|
118
|
+
SourceKeys<S1> | SourceKeys<S2> | SourceKeys<S3> | SourceKeys<S4>
|
|
119
|
+
>,
|
|
317
120
|
]
|
|
318
121
|
: Sources extends readonly [
|
|
319
|
-
infer S1 extends KeySource,
|
|
320
122
|
infer S2 extends KeySource,
|
|
321
123
|
infer S3 extends KeySource,
|
|
322
124
|
infer S4 extends KeySource,
|
|
125
|
+
infer S5 extends KeySource,
|
|
323
126
|
]
|
|
324
127
|
? [
|
|
325
|
-
SelfResult<T, keyof V, D>,
|
|
326
128
|
SourceResult<T, S1>,
|
|
327
129
|
SourceResult<T, S2>,
|
|
328
130
|
SourceResult<T, S3>,
|
|
329
131
|
SourceResult<T, S4>,
|
|
132
|
+
SourceResult<T, S5>,
|
|
330
133
|
Omit<
|
|
331
134
|
T,
|
|
332
|
-
| keyof V
|
|
333
135
|
| SourceKeys<S1>
|
|
334
136
|
| SourceKeys<S2>
|
|
335
137
|
| SourceKeys<S3>
|
|
336
138
|
| SourceKeys<S4>
|
|
139
|
+
| SourceKeys<S5>
|
|
337
140
|
>,
|
|
338
141
|
]
|
|
339
142
|
: Sources extends readonly [
|
|
340
|
-
infer S1 extends KeySource,
|
|
341
143
|
infer S2 extends KeySource,
|
|
342
144
|
infer S3 extends KeySource,
|
|
343
145
|
infer S4 extends KeySource,
|
|
344
146
|
infer S5 extends KeySource,
|
|
147
|
+
infer S6 extends KeySource,
|
|
345
148
|
]
|
|
346
149
|
? [
|
|
347
|
-
SelfResult<T, keyof V, D>,
|
|
348
150
|
SourceResult<T, S1>,
|
|
349
151
|
SourceResult<T, S2>,
|
|
350
152
|
SourceResult<T, S3>,
|
|
351
153
|
SourceResult<T, S4>,
|
|
352
154
|
SourceResult<T, S5>,
|
|
155
|
+
SourceResult<T, S6>,
|
|
353
156
|
Omit<
|
|
354
157
|
T,
|
|
355
|
-
| keyof V
|
|
356
158
|
| SourceKeys<S1>
|
|
357
159
|
| SourceKeys<S2>
|
|
358
160
|
| SourceKeys<S3>
|
|
359
161
|
| SourceKeys<S4>
|
|
360
162
|
| SourceKeys<S5>
|
|
163
|
+
| SourceKeys<S6>
|
|
361
164
|
>,
|
|
362
165
|
]
|
|
363
166
|
: Sources extends readonly [
|
|
364
|
-
infer S1 extends KeySource,
|
|
365
167
|
infer S2 extends KeySource,
|
|
366
168
|
infer S3 extends KeySource,
|
|
367
169
|
infer S4 extends KeySource,
|
|
368
170
|
infer S5 extends KeySource,
|
|
369
171
|
infer S6 extends KeySource,
|
|
172
|
+
infer S7 extends KeySource,
|
|
370
173
|
]
|
|
371
174
|
? [
|
|
372
|
-
SelfResult<T, keyof V, D>,
|
|
373
175
|
SourceResult<T, S1>,
|
|
374
176
|
SourceResult<T, S2>,
|
|
375
177
|
SourceResult<T, S3>,
|
|
376
178
|
SourceResult<T, S4>,
|
|
377
179
|
SourceResult<T, S5>,
|
|
378
180
|
SourceResult<T, S6>,
|
|
181
|
+
SourceResult<T, S7>,
|
|
379
182
|
Omit<
|
|
380
183
|
T,
|
|
381
|
-
| keyof V
|
|
382
184
|
| SourceKeys<S1>
|
|
383
185
|
| SourceKeys<S2>
|
|
384
186
|
| SourceKeys<S3>
|
|
385
187
|
| SourceKeys<S4>
|
|
386
188
|
| SourceKeys<S5>
|
|
387
189
|
| SourceKeys<S6>
|
|
190
|
+
| SourceKeys<S7>
|
|
388
191
|
>,
|
|
389
192
|
]
|
|
390
193
|
: Sources extends readonly [
|
|
391
|
-
infer S1 extends KeySource,
|
|
392
194
|
infer S2 extends KeySource,
|
|
393
195
|
infer S3 extends KeySource,
|
|
394
196
|
infer S4 extends KeySource,
|
|
395
197
|
infer S5 extends KeySource,
|
|
396
198
|
infer S6 extends KeySource,
|
|
397
199
|
infer S7 extends KeySource,
|
|
200
|
+
infer S8 extends KeySource,
|
|
398
201
|
]
|
|
399
202
|
? [
|
|
400
|
-
SelfResult<T, keyof V, D>,
|
|
401
203
|
SourceResult<T, S1>,
|
|
402
204
|
SourceResult<T, S2>,
|
|
403
205
|
SourceResult<T, S3>,
|
|
@@ -405,9 +207,9 @@ type OnlyVariantsSplitPropsResult<
|
|
|
405
207
|
SourceResult<T, S5>,
|
|
406
208
|
SourceResult<T, S6>,
|
|
407
209
|
SourceResult<T, S7>,
|
|
210
|
+
SourceResult<T, S8>,
|
|
408
211
|
Omit<
|
|
409
212
|
T,
|
|
410
|
-
| keyof V
|
|
411
213
|
| SourceKeys<S1>
|
|
412
214
|
| SourceKeys<S2>
|
|
413
215
|
| SourceKeys<S3>
|
|
@@ -415,66 +217,23 @@ type OnlyVariantsSplitPropsResult<
|
|
|
415
217
|
| SourceKeys<S5>
|
|
416
218
|
| SourceKeys<S6>
|
|
417
219
|
| SourceKeys<S7>
|
|
220
|
+
| SourceKeys<S8>
|
|
418
221
|
>,
|
|
419
222
|
]
|
|
420
|
-
:
|
|
421
|
-
infer S1 extends KeySource,
|
|
422
|
-
infer S2 extends KeySource,
|
|
423
|
-
infer S3 extends KeySource,
|
|
424
|
-
infer S4 extends KeySource,
|
|
425
|
-
infer S5 extends KeySource,
|
|
426
|
-
infer S6 extends KeySource,
|
|
427
|
-
infer S7 extends KeySource,
|
|
428
|
-
infer S8 extends KeySource,
|
|
429
|
-
]
|
|
430
|
-
? [
|
|
431
|
-
SelfResult<T, keyof V, D>,
|
|
432
|
-
SourceResult<T, S1>,
|
|
433
|
-
SourceResult<T, S2>,
|
|
434
|
-
SourceResult<T, S3>,
|
|
435
|
-
SourceResult<T, S4>,
|
|
436
|
-
SourceResult<T, S5>,
|
|
437
|
-
SourceResult<T, S6>,
|
|
438
|
-
SourceResult<T, S7>,
|
|
439
|
-
SourceResult<T, S8>,
|
|
440
|
-
Omit<
|
|
441
|
-
T,
|
|
442
|
-
| keyof V
|
|
443
|
-
| SourceKeys<S1>
|
|
444
|
-
| SourceKeys<S2>
|
|
445
|
-
| SourceKeys<S3>
|
|
446
|
-
| SourceKeys<S4>
|
|
447
|
-
| SourceKeys<S5>
|
|
448
|
-
| SourceKeys<S6>
|
|
449
|
-
| SourceKeys<S7>
|
|
450
|
-
| SourceKeys<S8>
|
|
451
|
-
>,
|
|
452
|
-
]
|
|
453
|
-
: unknown[];
|
|
454
|
-
|
|
455
|
-
// OnlyVariantsSplitProps as a single generic function type
|
|
456
|
-
export type OnlyVariantsSplitProps<V, D> = <
|
|
457
|
-
const T extends Record<string, unknown>,
|
|
458
|
-
const Sources extends readonly KeySource[],
|
|
459
|
-
>(
|
|
460
|
-
props: T,
|
|
461
|
-
...sources: Sources
|
|
462
|
-
) => OnlyVariantsSplitPropsResult<T, V, D, Sources>;
|
|
223
|
+
: unknown[];
|
|
463
224
|
|
|
464
|
-
export interface OnlyVariantsComponent<V
|
|
465
|
-
splitProps: OnlyVariantsSplitProps<V, D>;
|
|
225
|
+
export interface OnlyVariantsComponent<V> {
|
|
466
226
|
getVariants: GetVariants<V>;
|
|
467
227
|
keys: (keyof V)[];
|
|
468
228
|
}
|
|
469
229
|
|
|
470
|
-
export interface ModalComponent<V,
|
|
230
|
+
export interface ModalComponent<V, R extends ComponentResult> {
|
|
471
231
|
(props?: ComponentProps<V>): R;
|
|
472
232
|
class: (props?: ComponentProps<V>) => string;
|
|
473
233
|
style: (props?: ComponentProps<V>) => R["style"];
|
|
474
|
-
splitProps: SplitProps<V, D, R>;
|
|
475
234
|
getVariants: GetVariants<V>;
|
|
476
235
|
keys: (keyof V | keyof R)[];
|
|
477
|
-
onlyVariants: OnlyVariantsComponent<V
|
|
236
|
+
onlyVariants: OnlyVariantsComponent<V>;
|
|
478
237
|
/** @internal Base class without variants */
|
|
479
238
|
_baseClass: string;
|
|
480
239
|
}
|
|
@@ -484,16 +243,15 @@ export interface Component<
|
|
|
484
243
|
CV extends ComputedVariants = {},
|
|
485
244
|
E extends AnyComponent[] = [],
|
|
486
245
|
R extends ComponentResult = ComponentResult,
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
htmlObj: ModalComponent<MergeVariants<V, CV, E>, D, HTMLObjProps>;
|
|
246
|
+
> extends ModalComponent<MergeVariants<V, CV, E>, R> {
|
|
247
|
+
jsx: ModalComponent<MergeVariants<V, CV, E>, JSXProps>;
|
|
248
|
+
html: ModalComponent<MergeVariants<V, CV, E>, HTMLProps>;
|
|
249
|
+
htmlObj: ModalComponent<MergeVariants<V, CV, E>, HTMLObjProps>;
|
|
492
250
|
}
|
|
493
251
|
|
|
494
252
|
export type AnyComponent =
|
|
495
|
-
| Component<any, any, any, any
|
|
496
|
-
| ModalComponent<any, any
|
|
253
|
+
| Component<any, any, any, any>
|
|
254
|
+
| ModalComponent<any, any>;
|
|
497
255
|
|
|
498
256
|
type MergeExtendedVariants<T> = T extends readonly [infer First, ...infer Rest]
|
|
499
257
|
? ExtractVariants<First> & MergeExtendedVariants<Rest>
|