gql.tada 1.3.0 → 1.3.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/dist/gql-tada.d.ts +640 -382
- package/package.json +1 -1
package/dist/gql-tada.d.ts
CHANGED
|
@@ -259,6 +259,30 @@ type IntrospectionLikeType = {
|
|
|
259
259
|
};
|
|
260
260
|
};
|
|
261
261
|
|
|
262
|
+
declare const enum Token {
|
|
263
|
+
Name = 0,
|
|
264
|
+
Var = 1,
|
|
265
|
+
Directive = 2,
|
|
266
|
+
Spread = 3,
|
|
267
|
+
Exclam = 4,
|
|
268
|
+
Equal = 5,
|
|
269
|
+
Colon = 6,
|
|
270
|
+
BraceOpen = 7,
|
|
271
|
+
BraceClose = 8,
|
|
272
|
+
ParenOpen = 9,
|
|
273
|
+
ParenClose = 10,
|
|
274
|
+
BracketOpen = 11,
|
|
275
|
+
BracketClose = 12,
|
|
276
|
+
BlockString = 13,
|
|
277
|
+
String = 14,
|
|
278
|
+
Integer = 15,
|
|
279
|
+
Float = 16,
|
|
280
|
+
}
|
|
281
|
+
interface _match$1<Out extends string, In extends string> {
|
|
282
|
+
out: Out;
|
|
283
|
+
in: In;
|
|
284
|
+
}
|
|
285
|
+
type ignored = ' ' | '\n' | '\t' | '\r' | ',' | '\ufeff';
|
|
262
286
|
type digit = '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9';
|
|
263
287
|
type letter =
|
|
264
288
|
| 'A'
|
|
@@ -313,291 +337,423 @@ type letter =
|
|
|
313
337
|
| 'x'
|
|
314
338
|
| 'y'
|
|
315
339
|
| 'z';
|
|
316
|
-
type skipIgnored<In> = In extends `#${infer _}\n${infer In}`
|
|
317
|
-
? skipIgnored<In>
|
|
318
|
-
: In extends `${' ' | '\n' | '\t' | '\r' | ',' | '\ufeff'}${infer In}`
|
|
319
|
-
? skipIgnored<In>
|
|
320
|
-
: In extends string
|
|
321
|
-
? In
|
|
322
|
-
: never;
|
|
323
340
|
type skipDigits<In> = In extends `${digit}${infer In}` ? skipDigits<In> : In;
|
|
324
|
-
type skipInt<In> = In extends `${'-'}${digit}${infer In}`
|
|
325
|
-
? skipDigits<In>
|
|
326
|
-
: In extends `${digit}${infer In}`
|
|
327
|
-
? skipDigits<In>
|
|
328
|
-
: void;
|
|
329
|
-
type skipExponent<In> = In extends `${'e' | 'E'}${'+' | '-'}${infer In}`
|
|
330
|
-
? skipDigits<In>
|
|
331
|
-
: In extends `${'e' | 'E'}${infer In}`
|
|
332
|
-
? skipDigits<In>
|
|
333
|
-
: In;
|
|
334
341
|
type skipFloat<In> = In extends `${'.'}${infer In}`
|
|
335
342
|
? In extends `${digit}${infer In}`
|
|
336
|
-
?
|
|
343
|
+
? In extends `${'e' | 'E'}${infer In}`
|
|
344
|
+
? skipDigits<In extends `${'+' | '-'}${infer In}` ? In : In>
|
|
345
|
+
: In
|
|
337
346
|
: void
|
|
338
|
-
: In extends `${'e' | 'E'}${infer
|
|
339
|
-
?
|
|
347
|
+
: In extends `${'e' | 'E'}${infer In}`
|
|
348
|
+
? skipDigits<In extends `${'+' | '-'}${infer In}` ? In : In>
|
|
340
349
|
: void;
|
|
341
350
|
type skipBlockString<In> = In extends `${infer Hd}${'"""'}${infer In}`
|
|
342
|
-
? Hd extends `${
|
|
343
|
-
? skipBlockString<
|
|
351
|
+
? Hd extends `${string}${'\\'}`
|
|
352
|
+
? skipBlockString<In>
|
|
344
353
|
: In
|
|
345
|
-
:
|
|
354
|
+
: In;
|
|
346
355
|
type skipString<In> = In extends `${infer Hd}${'"'}${infer In}`
|
|
347
|
-
? Hd extends `${
|
|
356
|
+
? Hd extends `${string}${'\\'}`
|
|
348
357
|
? skipString<In>
|
|
349
358
|
: In
|
|
350
|
-
:
|
|
351
|
-
type
|
|
359
|
+
: In;
|
|
360
|
+
type takeNameLiteralRec<
|
|
361
|
+
PrevMatch extends string,
|
|
362
|
+
In extends string,
|
|
363
|
+
> = In extends `${infer Match}${infer Out}`
|
|
352
364
|
? Match extends letter | digit | '_'
|
|
353
|
-
?
|
|
354
|
-
:
|
|
355
|
-
:
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
365
|
+
? takeNameLiteralRec<`${PrevMatch}${Match}`, Out>
|
|
366
|
+
: _match$1<PrevMatch, In>
|
|
367
|
+
: _match$1<PrevMatch, In>;
|
|
368
|
+
interface VarTokenNode<Name extends string = string> {
|
|
369
|
+
kind: Token.Var;
|
|
370
|
+
name: Name;
|
|
371
|
+
}
|
|
372
|
+
interface NameTokenNode<Name extends string = string> {
|
|
373
|
+
kind: Token.Name;
|
|
374
|
+
name: Name;
|
|
375
|
+
}
|
|
376
|
+
interface DirectiveTokenNode<Name extends string = string> {
|
|
377
|
+
kind: Token.Directive;
|
|
378
|
+
name: Name;
|
|
379
|
+
}
|
|
380
|
+
type TokenNode = Token | NameTokenNode | VarTokenNode | DirectiveTokenNode;
|
|
381
|
+
interface _state<In extends string, Out extends TokenNode[]> {
|
|
382
|
+
out: Out;
|
|
383
|
+
in: In;
|
|
384
|
+
}
|
|
385
|
+
type tokenizeRec<State> = State extends _state<'', any>
|
|
386
|
+
? State['out']
|
|
387
|
+
: State extends _state<infer In, infer Out>
|
|
388
|
+
? tokenizeRec<
|
|
389
|
+
In extends `#${string}\n${infer In}`
|
|
390
|
+
? _state<In, Out>
|
|
391
|
+
: In extends `${ignored}${infer In}`
|
|
392
|
+
? _state<In, Out>
|
|
393
|
+
: In extends `...${infer In}`
|
|
394
|
+
? _state<In, [...Out, Token.Spread]>
|
|
395
|
+
: In extends `!${infer In}`
|
|
396
|
+
? _state<In, [...Out, Token.Exclam]>
|
|
397
|
+
: In extends `=${infer In}`
|
|
398
|
+
? _state<In, [...Out, Token.Equal]>
|
|
399
|
+
: In extends `:${infer In}`
|
|
400
|
+
? _state<In, [...Out, Token.Colon]>
|
|
401
|
+
: In extends `{${infer In}`
|
|
402
|
+
? _state<In, [...Out, Token.BraceOpen]>
|
|
403
|
+
: In extends `}${infer In}`
|
|
404
|
+
? _state<In, [...Out, Token.BraceClose]>
|
|
405
|
+
: In extends `(${infer In}`
|
|
406
|
+
? _state<In, [...Out, Token.ParenOpen]>
|
|
407
|
+
: In extends `)${infer In}`
|
|
408
|
+
? _state<In, [...Out, Token.ParenClose]>
|
|
409
|
+
: In extends `[${infer In}`
|
|
410
|
+
? _state<In, [...Out, Token.BracketOpen]>
|
|
411
|
+
: In extends `]${infer In}`
|
|
412
|
+
? _state<In, [...Out, Token.BracketClose]>
|
|
413
|
+
: In extends `"""${infer In}`
|
|
414
|
+
? _state<skipBlockString<In>, [...Out, Token.BlockString]>
|
|
415
|
+
: In extends `"${infer In}`
|
|
416
|
+
? _state<skipString<In>, [...Out, Token.String]>
|
|
417
|
+
: In extends `-${digit}${infer In}`
|
|
418
|
+
? skipFloat<skipDigits<In>> extends `${infer In}`
|
|
419
|
+
? _state<In, [...Out, Token.Float]>
|
|
420
|
+
: _state<skipDigits<In>, [...Out, Token.Integer]>
|
|
421
|
+
: In extends `${digit}${infer In}`
|
|
422
|
+
? skipFloat<skipDigits<In>> extends `${infer In}`
|
|
423
|
+
? _state<In, [...Out, Token.Float]>
|
|
424
|
+
: _state<skipDigits<In>, [...Out, Token.Integer]>
|
|
425
|
+
: In extends `$${infer In}`
|
|
426
|
+
? takeNameLiteralRec<'', In> extends _match$1<
|
|
427
|
+
infer Match,
|
|
428
|
+
infer In
|
|
429
|
+
>
|
|
430
|
+
? _state<In, [...Out, VarTokenNode<Match>]>
|
|
431
|
+
: void
|
|
432
|
+
: In extends `@${infer In}`
|
|
433
|
+
? takeNameLiteralRec<'', In> extends _match$1<
|
|
434
|
+
infer Match,
|
|
435
|
+
infer In
|
|
436
|
+
>
|
|
437
|
+
? _state<In, [...Out, DirectiveTokenNode<Match>]>
|
|
438
|
+
: void
|
|
439
|
+
: In extends `${letter | '_'}${string}`
|
|
440
|
+
? takeNameLiteralRec<'', In> extends _match$1<
|
|
441
|
+
infer Match,
|
|
442
|
+
infer In
|
|
443
|
+
>
|
|
444
|
+
? _state<In, [...Out, NameTokenNode<Match>]>
|
|
445
|
+
: void
|
|
446
|
+
: void
|
|
447
|
+
>
|
|
448
|
+
: [];
|
|
449
|
+
type tokenize<In extends string> = tokenizeRec<_state<In, []>>;
|
|
450
|
+
|
|
451
|
+
interface _match<Out, In extends any[]> {
|
|
452
|
+
out: Out;
|
|
453
|
+
in: In;
|
|
454
|
+
}
|
|
455
|
+
type takeOptionalName<In extends any[]> = In extends [
|
|
456
|
+
{
|
|
457
|
+
kind: Token.Name;
|
|
458
|
+
name: infer Name;
|
|
459
|
+
},
|
|
460
|
+
...infer In,
|
|
461
|
+
]
|
|
462
|
+
? _match<
|
|
372
463
|
{
|
|
373
464
|
kind: Kind.NAME;
|
|
374
|
-
value:
|
|
465
|
+
value: Name;
|
|
375
466
|
},
|
|
376
|
-
In
|
|
377
|
-
|
|
378
|
-
:
|
|
379
|
-
type
|
|
380
|
-
?
|
|
467
|
+
In
|
|
468
|
+
>
|
|
469
|
+
: _match<undefined, In>;
|
|
470
|
+
type takeValue<In extends any[], Const extends boolean> = In extends [Token.Float, ...infer In]
|
|
471
|
+
? _match<
|
|
381
472
|
{
|
|
382
|
-
kind: Kind.
|
|
383
|
-
value:
|
|
473
|
+
kind: Kind.FLOAT;
|
|
474
|
+
value: string;
|
|
384
475
|
},
|
|
385
|
-
In
|
|
386
|
-
|
|
387
|
-
:
|
|
388
|
-
|
|
389
|
-
? In extends `${'$'}${infer In}`
|
|
390
|
-
? takeNameLiteral<In> extends [infer Out, infer In]
|
|
391
|
-
? [
|
|
392
|
-
{
|
|
393
|
-
kind: Kind.VARIABLE;
|
|
394
|
-
name: {
|
|
395
|
-
kind: Kind.NAME;
|
|
396
|
-
value: Out;
|
|
397
|
-
};
|
|
398
|
-
},
|
|
399
|
-
In,
|
|
400
|
-
]
|
|
401
|
-
: void
|
|
402
|
-
: void
|
|
403
|
-
: void;
|
|
404
|
-
type takeNumber<In> = skipInt<In> extends `${infer In}`
|
|
405
|
-
? skipFloat<In> extends `${infer In}`
|
|
406
|
-
? [
|
|
407
|
-
{
|
|
408
|
-
kind: Kind.FLOAT;
|
|
409
|
-
value: string;
|
|
410
|
-
},
|
|
411
|
-
In,
|
|
412
|
-
]
|
|
413
|
-
: [
|
|
476
|
+
In
|
|
477
|
+
>
|
|
478
|
+
: In extends [Token.Integer, ...infer In]
|
|
479
|
+
? _match<
|
|
414
480
|
{
|
|
415
481
|
kind: Kind.INT;
|
|
416
482
|
value: string;
|
|
417
483
|
},
|
|
418
|
-
In
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
? skipBlockString<In> extends `${infer In}`
|
|
423
|
-
? [
|
|
424
|
-
{
|
|
425
|
-
kind: Kind.STRING;
|
|
426
|
-
value: string;
|
|
427
|
-
block: true;
|
|
428
|
-
},
|
|
429
|
-
In,
|
|
430
|
-
]
|
|
431
|
-
: void
|
|
432
|
-
: In extends `${'"'}${infer In}`
|
|
433
|
-
? skipString<In> extends `${infer In}`
|
|
434
|
-
? [
|
|
484
|
+
In
|
|
485
|
+
>
|
|
486
|
+
: In extends [Token.String, ...infer In]
|
|
487
|
+
? _match<
|
|
435
488
|
{
|
|
436
489
|
kind: Kind.STRING;
|
|
437
490
|
value: string;
|
|
438
491
|
block: false;
|
|
439
492
|
},
|
|
440
|
-
In
|
|
441
|
-
|
|
442
|
-
:
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
?
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
493
|
+
In
|
|
494
|
+
>
|
|
495
|
+
: In extends [Token.BlockString, ...infer In]
|
|
496
|
+
? _match<
|
|
497
|
+
{
|
|
498
|
+
kind: Kind.STRING;
|
|
499
|
+
value: string;
|
|
500
|
+
block: true;
|
|
501
|
+
},
|
|
502
|
+
In
|
|
503
|
+
>
|
|
504
|
+
: In extends [
|
|
505
|
+
{
|
|
506
|
+
kind: Token.Name;
|
|
507
|
+
name: 'null';
|
|
508
|
+
},
|
|
509
|
+
...infer In,
|
|
510
|
+
]
|
|
511
|
+
? _match<
|
|
512
|
+
{
|
|
513
|
+
kind: Kind.NULL;
|
|
514
|
+
},
|
|
515
|
+
In
|
|
516
|
+
>
|
|
517
|
+
: In extends [
|
|
518
|
+
{
|
|
519
|
+
kind: Token.Name;
|
|
520
|
+
name: 'true' | 'false';
|
|
521
|
+
},
|
|
522
|
+
...infer In,
|
|
523
|
+
]
|
|
524
|
+
? _match<
|
|
525
|
+
{
|
|
526
|
+
kind: Kind.BOOLEAN;
|
|
527
|
+
value: boolean;
|
|
528
|
+
},
|
|
529
|
+
In
|
|
530
|
+
>
|
|
531
|
+
: In extends [
|
|
532
|
+
{
|
|
533
|
+
kind: Token.Name;
|
|
534
|
+
name: infer Name;
|
|
535
|
+
},
|
|
536
|
+
...infer In,
|
|
537
|
+
]
|
|
538
|
+
? _match<
|
|
539
|
+
{
|
|
540
|
+
kind: Kind.ENUM;
|
|
541
|
+
value: Name;
|
|
542
|
+
},
|
|
543
|
+
In
|
|
544
|
+
>
|
|
545
|
+
: In extends [Token.BracketOpen, ...infer In]
|
|
546
|
+
? takeListRec<[], In, Const>
|
|
547
|
+
: In extends [Token.BraceOpen, ...infer In]
|
|
548
|
+
? takeObjectRec<[], In, Const>
|
|
549
|
+
: Const extends false
|
|
550
|
+
? In extends [
|
|
551
|
+
{
|
|
552
|
+
kind: Token.Var;
|
|
553
|
+
name: infer Name;
|
|
554
|
+
},
|
|
555
|
+
...infer In,
|
|
556
|
+
]
|
|
557
|
+
? _match<
|
|
558
|
+
{
|
|
559
|
+
kind: Kind.VARIABLE;
|
|
560
|
+
name: {
|
|
561
|
+
kind: Kind.NAME;
|
|
562
|
+
value: Name;
|
|
563
|
+
};
|
|
564
|
+
},
|
|
565
|
+
In
|
|
566
|
+
>
|
|
567
|
+
: void
|
|
568
|
+
: void;
|
|
569
|
+
type takeListRec<Nodes extends any[], In extends any[], Const extends boolean> = In extends [
|
|
570
|
+
Token.BracketClose,
|
|
571
|
+
...infer In,
|
|
572
|
+
]
|
|
573
|
+
? _match<
|
|
477
574
|
{
|
|
478
575
|
kind: Kind.LIST;
|
|
479
576
|
values: Nodes;
|
|
480
577
|
},
|
|
481
|
-
In
|
|
482
|
-
|
|
483
|
-
: takeValue<
|
|
484
|
-
?
|
|
578
|
+
In
|
|
579
|
+
>
|
|
580
|
+
: takeValue<In, Const> extends _match<infer Node, infer In>
|
|
581
|
+
? takeListRec<[...Nodes, Node], In, Const>
|
|
485
582
|
: void;
|
|
486
|
-
type
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
583
|
+
type takeObjectField<In extends any[], Const extends boolean> = In extends [
|
|
584
|
+
{
|
|
585
|
+
kind: Token.Name;
|
|
586
|
+
name: infer FieldName;
|
|
587
|
+
},
|
|
588
|
+
Token.Colon,
|
|
589
|
+
...infer In,
|
|
590
|
+
]
|
|
591
|
+
? takeValue<In, Const> extends _match<infer Value, infer In>
|
|
592
|
+
? _match<
|
|
593
|
+
{
|
|
594
|
+
kind: Kind.OBJECT_FIELD;
|
|
595
|
+
name: {
|
|
596
|
+
kind: Kind.NAME;
|
|
597
|
+
value: FieldName;
|
|
598
|
+
};
|
|
599
|
+
value: Value;
|
|
600
|
+
},
|
|
601
|
+
In
|
|
602
|
+
>
|
|
501
603
|
: void
|
|
502
604
|
: void;
|
|
503
|
-
type
|
|
504
|
-
|
|
605
|
+
type takeObjectRec<Fields extends any[], In extends any[], Const extends boolean> = In extends [
|
|
606
|
+
Token.BraceClose,
|
|
607
|
+
...infer In,
|
|
608
|
+
]
|
|
609
|
+
? _match<
|
|
505
610
|
{
|
|
506
611
|
kind: Kind.OBJECT;
|
|
507
612
|
fields: Fields;
|
|
508
613
|
},
|
|
509
|
-
In
|
|
510
|
-
|
|
511
|
-
: takeObjectField<
|
|
512
|
-
?
|
|
614
|
+
In
|
|
615
|
+
>
|
|
616
|
+
: takeObjectField<In, Const> extends _match<infer Field, infer In>
|
|
617
|
+
? takeObjectRec<[...Fields, Field], In, Const>
|
|
513
618
|
: void;
|
|
514
|
-
type
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
619
|
+
type takeArgument<In extends any[], Const extends boolean> = In extends [
|
|
620
|
+
{
|
|
621
|
+
kind: Token.Name;
|
|
622
|
+
name: infer ArgName;
|
|
623
|
+
},
|
|
624
|
+
Token.Colon,
|
|
625
|
+
...infer In,
|
|
626
|
+
]
|
|
627
|
+
? takeValue<In, Const> extends _match<infer Value, infer In>
|
|
628
|
+
? _match<
|
|
629
|
+
{
|
|
630
|
+
kind: Kind.ARGUMENT;
|
|
631
|
+
name: {
|
|
632
|
+
kind: Kind.NAME;
|
|
633
|
+
value: ArgName;
|
|
634
|
+
};
|
|
635
|
+
value: Value;
|
|
636
|
+
},
|
|
637
|
+
In
|
|
638
|
+
>
|
|
529
639
|
: void
|
|
530
640
|
: void;
|
|
531
|
-
type _takeArgumentsRec<
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
641
|
+
type _takeArgumentsRec<
|
|
642
|
+
Arguments extends any[],
|
|
643
|
+
In extends any[],
|
|
644
|
+
Const extends boolean,
|
|
645
|
+
> = In extends [Token.ParenClose, ...infer In]
|
|
646
|
+
? _match<Arguments, In>
|
|
647
|
+
: takeArgument<In, Const> extends _match<infer Argument, infer In>
|
|
648
|
+
? _takeArgumentsRec<[...Arguments, Argument], In, Const>
|
|
537
649
|
: void;
|
|
538
|
-
type takeArguments<In, Const> = In extends
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
?
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
650
|
+
type takeArguments<In extends any[], Const extends boolean> = In extends [
|
|
651
|
+
Token.ParenOpen,
|
|
652
|
+
...infer In,
|
|
653
|
+
]
|
|
654
|
+
? _takeArgumentsRec<[], In, Const>
|
|
655
|
+
: _match<[], In>;
|
|
656
|
+
type takeDirective<In extends any[], Const extends boolean> = In extends [
|
|
657
|
+
{
|
|
658
|
+
kind: Token.Directive;
|
|
659
|
+
name: infer DirectiveName;
|
|
660
|
+
},
|
|
661
|
+
...infer In,
|
|
662
|
+
]
|
|
663
|
+
? takeArguments<In, Const> extends _match<infer Arguments, infer In>
|
|
664
|
+
? _match<
|
|
665
|
+
{
|
|
666
|
+
kind: Kind.DIRECTIVE;
|
|
667
|
+
name: {
|
|
668
|
+
kind: Kind.NAME;
|
|
669
|
+
value: DirectiveName;
|
|
670
|
+
};
|
|
671
|
+
arguments: Arguments;
|
|
672
|
+
},
|
|
673
|
+
In
|
|
674
|
+
>
|
|
553
675
|
: void
|
|
554
676
|
: void;
|
|
555
|
-
type takeDirectives<
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
:
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
677
|
+
type takeDirectives<
|
|
678
|
+
In extends any[],
|
|
679
|
+
Const extends boolean,
|
|
680
|
+
Directives extends any[] = [],
|
|
681
|
+
> = takeDirective<In, Const> extends _match<infer Directive, infer In>
|
|
682
|
+
? takeDirectives<In, Const, [...Directives, Directive]>
|
|
683
|
+
: _match<Directives, In>;
|
|
684
|
+
type _takeField<In extends any[], Alias> = In extends [
|
|
685
|
+
Token.Colon,
|
|
686
|
+
{
|
|
687
|
+
kind: Token.Name;
|
|
688
|
+
name: infer Name;
|
|
689
|
+
},
|
|
690
|
+
...infer In,
|
|
691
|
+
]
|
|
692
|
+
? takeArguments<In, false> extends _match<infer Arguments, infer In>
|
|
693
|
+
? takeDirectives<In, false> extends _match<infer Directives, infer In>
|
|
694
|
+
? takeSelectionSet<In> extends _match<infer SelectionSet, infer In>
|
|
695
|
+
? _match<
|
|
572
696
|
{
|
|
573
697
|
kind: Kind.FIELD;
|
|
574
698
|
alias: Alias;
|
|
575
|
-
name:
|
|
699
|
+
name: {
|
|
700
|
+
kind: Kind.NAME;
|
|
701
|
+
value: Name;
|
|
702
|
+
};
|
|
576
703
|
arguments: Arguments;
|
|
577
704
|
directives: Directives;
|
|
578
705
|
selectionSet: SelectionSet;
|
|
579
706
|
},
|
|
580
|
-
In
|
|
581
|
-
|
|
582
|
-
:
|
|
707
|
+
In
|
|
708
|
+
>
|
|
709
|
+
: _match<
|
|
583
710
|
{
|
|
584
711
|
kind: Kind.FIELD;
|
|
585
712
|
alias: Alias;
|
|
586
|
-
name:
|
|
713
|
+
name: {
|
|
714
|
+
kind: Kind.NAME;
|
|
715
|
+
value: Name;
|
|
716
|
+
};
|
|
587
717
|
arguments: Arguments;
|
|
588
718
|
directives: Directives;
|
|
589
719
|
selectionSet: undefined;
|
|
590
720
|
},
|
|
591
|
-
In
|
|
592
|
-
|
|
721
|
+
In
|
|
722
|
+
>
|
|
593
723
|
: void
|
|
594
724
|
: void
|
|
595
|
-
:
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
725
|
+
: takeArguments<In, false> extends _match<infer Arguments, infer In>
|
|
726
|
+
? takeDirectives<In, false> extends _match<infer Directives, infer In>
|
|
727
|
+
? takeSelectionSet<In> extends _match<infer SelectionSet, infer In>
|
|
728
|
+
? _match<
|
|
729
|
+
{
|
|
730
|
+
kind: Kind.FIELD;
|
|
731
|
+
alias: undefined;
|
|
732
|
+
name: Alias;
|
|
733
|
+
arguments: Arguments;
|
|
734
|
+
directives: Directives;
|
|
735
|
+
selectionSet: SelectionSet;
|
|
736
|
+
},
|
|
737
|
+
In
|
|
738
|
+
>
|
|
739
|
+
: _match<
|
|
740
|
+
{
|
|
741
|
+
kind: Kind.FIELD;
|
|
742
|
+
alias: undefined;
|
|
743
|
+
name: Alias;
|
|
744
|
+
arguments: Arguments;
|
|
745
|
+
directives: Directives;
|
|
746
|
+
selectionSet: undefined;
|
|
747
|
+
},
|
|
748
|
+
In
|
|
749
|
+
>
|
|
750
|
+
: void
|
|
751
|
+
: void;
|
|
752
|
+
type takeType<In extends any[]> = In extends [Token.BracketOpen, ...infer In]
|
|
753
|
+
? takeType<In> extends _match<infer Subtype, infer In>
|
|
754
|
+
? In extends [Token.BracketClose, ...infer In]
|
|
755
|
+
? In extends [Token.Exclam, ...infer In]
|
|
756
|
+
? _match<
|
|
601
757
|
{
|
|
602
758
|
kind: Kind.NON_NULL_TYPE;
|
|
603
759
|
type: {
|
|
@@ -605,183 +761,285 @@ type takeType<In> = In extends `${'['}${infer In}`
|
|
|
605
761
|
type: Subtype;
|
|
606
762
|
};
|
|
607
763
|
},
|
|
608
|
-
In
|
|
609
|
-
|
|
610
|
-
:
|
|
764
|
+
In
|
|
765
|
+
>
|
|
766
|
+
: _match<
|
|
611
767
|
{
|
|
612
768
|
kind: Kind.LIST_TYPE;
|
|
613
769
|
type: Subtype;
|
|
614
770
|
},
|
|
615
|
-
In
|
|
616
|
-
|
|
771
|
+
In
|
|
772
|
+
>
|
|
617
773
|
: void
|
|
618
774
|
: void
|
|
619
|
-
:
|
|
620
|
-
|
|
621
|
-
|
|
775
|
+
: In extends [
|
|
776
|
+
{
|
|
777
|
+
kind: Token.Name;
|
|
778
|
+
name: infer Name;
|
|
779
|
+
},
|
|
780
|
+
...infer In,
|
|
781
|
+
]
|
|
782
|
+
? In extends [Token.Exclam, ...infer In]
|
|
783
|
+
? _match<
|
|
622
784
|
{
|
|
623
785
|
kind: Kind.NON_NULL_TYPE;
|
|
624
786
|
type: {
|
|
625
787
|
kind: Kind.NAMED_TYPE;
|
|
626
|
-
name:
|
|
788
|
+
name: {
|
|
789
|
+
kind: Kind.NAME;
|
|
790
|
+
value: Name;
|
|
791
|
+
};
|
|
627
792
|
};
|
|
628
793
|
},
|
|
629
|
-
In
|
|
630
|
-
|
|
631
|
-
:
|
|
794
|
+
In
|
|
795
|
+
>
|
|
796
|
+
: _match<
|
|
632
797
|
{
|
|
633
798
|
kind: Kind.NAMED_TYPE;
|
|
634
|
-
name:
|
|
799
|
+
name: {
|
|
800
|
+
kind: Kind.NAME;
|
|
801
|
+
value: Name;
|
|
802
|
+
};
|
|
635
803
|
},
|
|
636
|
-
In
|
|
637
|
-
|
|
804
|
+
In
|
|
805
|
+
>
|
|
638
806
|
: void;
|
|
639
|
-
type
|
|
640
|
-
|
|
641
|
-
|
|
807
|
+
type _takeFragmentSpread<In extends any[]> = In extends [
|
|
808
|
+
{
|
|
809
|
+
kind: Token.Name;
|
|
810
|
+
name: 'on';
|
|
811
|
+
},
|
|
812
|
+
{
|
|
813
|
+
kind: Token.Name;
|
|
814
|
+
name: infer Type;
|
|
815
|
+
},
|
|
816
|
+
...infer In,
|
|
817
|
+
]
|
|
818
|
+
? takeDirectives<In, false> extends _match<infer Directives, infer In>
|
|
819
|
+
? takeSelectionSet<In> extends _match<infer SelectionSet, infer In>
|
|
820
|
+
? _match<
|
|
821
|
+
{
|
|
822
|
+
kind: Kind.INLINE_FRAGMENT;
|
|
823
|
+
typeCondition: {
|
|
824
|
+
kind: Kind.NAMED_TYPE;
|
|
825
|
+
name: {
|
|
826
|
+
kind: Kind.NAME;
|
|
827
|
+
value: Type;
|
|
828
|
+
};
|
|
829
|
+
};
|
|
830
|
+
directives: Directives;
|
|
831
|
+
selectionSet: SelectionSet;
|
|
832
|
+
},
|
|
833
|
+
In
|
|
834
|
+
>
|
|
835
|
+
: void
|
|
836
|
+
: void
|
|
837
|
+
: In extends [
|
|
642
838
|
{
|
|
643
|
-
kind:
|
|
644
|
-
name: Name;
|
|
839
|
+
kind: Token.Name;
|
|
840
|
+
name: infer Name;
|
|
645
841
|
},
|
|
646
|
-
In,
|
|
842
|
+
...infer In,
|
|
647
843
|
]
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
name: Name;
|
|
661
|
-
};
|
|
662
|
-
directives: Directives;
|
|
663
|
-
selectionSet: SelectionSet;
|
|
664
|
-
},
|
|
665
|
-
In,
|
|
666
|
-
]
|
|
667
|
-
: void
|
|
668
|
-
: void
|
|
844
|
+
? takeDirectives<In, false> extends _match<infer Directives, infer In>
|
|
845
|
+
? _match<
|
|
846
|
+
{
|
|
847
|
+
kind: Kind.FRAGMENT_SPREAD;
|
|
848
|
+
name: {
|
|
849
|
+
kind: Kind.NAME;
|
|
850
|
+
value: Name;
|
|
851
|
+
};
|
|
852
|
+
directives: Directives;
|
|
853
|
+
},
|
|
854
|
+
In
|
|
855
|
+
>
|
|
669
856
|
: void
|
|
670
|
-
:
|
|
671
|
-
?
|
|
672
|
-
?
|
|
857
|
+
: takeDirectives<In, false> extends _match<infer Directives, infer In>
|
|
858
|
+
? takeSelectionSet<In> extends _match<infer SelectionSet, infer In>
|
|
859
|
+
? _match<
|
|
673
860
|
{
|
|
674
|
-
kind: Kind.
|
|
675
|
-
|
|
861
|
+
kind: Kind.INLINE_FRAGMENT;
|
|
862
|
+
typeCondition: undefined;
|
|
676
863
|
directives: Directives;
|
|
864
|
+
selectionSet: SelectionSet;
|
|
677
865
|
},
|
|
678
|
-
In
|
|
679
|
-
|
|
680
|
-
: void
|
|
681
|
-
: takeDirectives<skipIgnored<In>, false> extends [infer Directives, infer In]
|
|
682
|
-
? takeSelectionSet<skipIgnored<In>> extends [infer SelectionSet, infer In]
|
|
683
|
-
? [
|
|
684
|
-
{
|
|
685
|
-
kind: Kind.INLINE_FRAGMENT;
|
|
686
|
-
typeCondition: undefined;
|
|
687
|
-
directives: Directives;
|
|
688
|
-
selectionSet: SelectionSet;
|
|
689
|
-
},
|
|
690
|
-
In,
|
|
691
|
-
]
|
|
692
|
-
: void
|
|
866
|
+
In
|
|
867
|
+
>
|
|
693
868
|
: void
|
|
694
|
-
: void;
|
|
695
|
-
type _takeSelectionRec<Selections extends any[], In> = In extends `${'}'}${infer In}`
|
|
696
|
-
? [
|
|
697
|
-
{
|
|
698
|
-
kind: Kind.SELECTION_SET;
|
|
699
|
-
selections: Selections;
|
|
700
|
-
},
|
|
701
|
-
In,
|
|
702
|
-
]
|
|
703
|
-
: takeFragmentSpread<skipIgnored<In>> extends [infer Selection, infer In]
|
|
704
|
-
? _takeSelectionRec<[...Selections, Selection], skipIgnored<In>>
|
|
705
|
-
: takeField<skipIgnored<In>> extends [infer Selection, infer In]
|
|
706
|
-
? _takeSelectionRec<[...Selections, Selection], skipIgnored<In>>
|
|
707
869
|
: void;
|
|
708
|
-
type
|
|
709
|
-
|
|
870
|
+
type _takeSelectionRec<Selections extends any[], In extends any[]> = In extends [
|
|
871
|
+
Token.Spread,
|
|
872
|
+
...infer In,
|
|
873
|
+
]
|
|
874
|
+
? _takeFragmentSpread<In> extends _match<infer Selection, infer In>
|
|
875
|
+
? _takeSelectionRec<[...Selections, Selection], In>
|
|
876
|
+
: void
|
|
877
|
+
: In extends [
|
|
878
|
+
{
|
|
879
|
+
kind: Token.Name;
|
|
880
|
+
name: infer Alias;
|
|
881
|
+
},
|
|
882
|
+
...infer In,
|
|
883
|
+
]
|
|
884
|
+
? _takeField<
|
|
885
|
+
In,
|
|
886
|
+
{
|
|
887
|
+
kind: Kind.NAME;
|
|
888
|
+
value: Alias;
|
|
889
|
+
}
|
|
890
|
+
> extends _match<infer Selection, infer In>
|
|
891
|
+
? _takeSelectionRec<[...Selections, Selection], In>
|
|
892
|
+
: void
|
|
893
|
+
: In extends [Token.BraceClose, ...infer In]
|
|
894
|
+
? _match<
|
|
895
|
+
{
|
|
896
|
+
kind: Kind.SELECTION_SET;
|
|
897
|
+
selections: Selections;
|
|
898
|
+
},
|
|
899
|
+
In
|
|
900
|
+
>
|
|
901
|
+
: void;
|
|
902
|
+
type takeSelectionSet<In extends any[]> = In extends [Token.BraceOpen, ...infer In]
|
|
903
|
+
? _takeSelectionRec<[], In>
|
|
710
904
|
: void;
|
|
711
|
-
type takeVarDefinition<In> =
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
},
|
|
725
|
-
In,
|
|
726
|
-
]
|
|
727
|
-
: void
|
|
728
|
-
: void
|
|
729
|
-
: takeDirectives<skipIgnored<In>, true> extends [infer Directives, infer In]
|
|
730
|
-
? [
|
|
905
|
+
type takeVarDefinition<In extends any[]> = In extends [
|
|
906
|
+
{
|
|
907
|
+
kind: Token.Var;
|
|
908
|
+
name: infer VarName;
|
|
909
|
+
},
|
|
910
|
+
Token.Colon,
|
|
911
|
+
...infer In,
|
|
912
|
+
]
|
|
913
|
+
? takeType<In> extends _match<infer Type, infer In>
|
|
914
|
+
? In extends [Token.Equal, ...infer In]
|
|
915
|
+
? takeValue<In, true> extends _match<infer DefaultValue, infer In>
|
|
916
|
+
? takeDirectives<In, true> extends _match<infer Directives, infer In>
|
|
917
|
+
? _match<
|
|
731
918
|
{
|
|
732
919
|
kind: Kind.VARIABLE_DEFINITION;
|
|
733
|
-
variable:
|
|
920
|
+
variable: {
|
|
921
|
+
kind: Kind.VARIABLE;
|
|
922
|
+
name: {
|
|
923
|
+
kind: Kind.NAME;
|
|
924
|
+
value: VarName;
|
|
925
|
+
};
|
|
926
|
+
};
|
|
734
927
|
type: Type;
|
|
735
|
-
defaultValue:
|
|
928
|
+
defaultValue: DefaultValue;
|
|
736
929
|
directives: Directives;
|
|
737
930
|
},
|
|
738
|
-
In
|
|
739
|
-
|
|
931
|
+
In
|
|
932
|
+
>
|
|
740
933
|
: void
|
|
741
|
-
|
|
934
|
+
: void
|
|
935
|
+
: takeDirectives<In, true> extends _match<infer Directives, infer In>
|
|
936
|
+
? _match<
|
|
937
|
+
{
|
|
938
|
+
kind: Kind.VARIABLE_DEFINITION;
|
|
939
|
+
variable: {
|
|
940
|
+
kind: Kind.VARIABLE;
|
|
941
|
+
name: {
|
|
942
|
+
kind: Kind.NAME;
|
|
943
|
+
value: VarName;
|
|
944
|
+
};
|
|
945
|
+
};
|
|
946
|
+
type: Type;
|
|
947
|
+
defaultValue: undefined;
|
|
948
|
+
directives: Directives;
|
|
949
|
+
},
|
|
950
|
+
In
|
|
951
|
+
>
|
|
952
|
+
: void
|
|
742
953
|
: void
|
|
743
954
|
: void;
|
|
744
|
-
type _takeVarDefinitionRec<Definitions extends any[], In> = In extends
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
955
|
+
type _takeVarDefinitionRec<Definitions extends any[], In extends any[]> = In extends [
|
|
956
|
+
Token.ParenClose,
|
|
957
|
+
...infer In,
|
|
958
|
+
]
|
|
959
|
+
? _match<Definitions, In>
|
|
960
|
+
: takeVarDefinition<In> extends _match<infer Definition, infer In>
|
|
961
|
+
? _takeVarDefinitionRec<[...Definitions, Definition], In>
|
|
748
962
|
: void;
|
|
749
|
-
type takeVarDefinitions<In> =
|
|
750
|
-
? _takeVarDefinitionRec<[],
|
|
751
|
-
: [
|
|
752
|
-
type takeFragmentDefinition<In> = In extends
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
963
|
+
type takeVarDefinitions<In extends any[]> = In extends [Token.ParenOpen, ...infer In]
|
|
964
|
+
? _takeVarDefinitionRec<[], In>
|
|
965
|
+
: _match<[], In>;
|
|
966
|
+
type takeFragmentDefinition<In extends any[]> = In extends [
|
|
967
|
+
{
|
|
968
|
+
kind: Token.Name;
|
|
969
|
+
name: 'fragment';
|
|
970
|
+
},
|
|
971
|
+
{
|
|
972
|
+
kind: Token.Name;
|
|
973
|
+
name: infer Name;
|
|
974
|
+
},
|
|
975
|
+
{
|
|
976
|
+
kind: Token.Name;
|
|
977
|
+
name: 'on';
|
|
978
|
+
},
|
|
979
|
+
{
|
|
980
|
+
kind: Token.Name;
|
|
981
|
+
name: infer Type;
|
|
982
|
+
},
|
|
983
|
+
...infer In,
|
|
984
|
+
]
|
|
985
|
+
? takeDirectives<In, true> extends _match<infer Directives, infer In>
|
|
986
|
+
? takeSelectionSet<In> extends _match<infer SelectionSet, infer In>
|
|
987
|
+
? _match<
|
|
988
|
+
{
|
|
989
|
+
kind: Kind.FRAGMENT_DEFINITION;
|
|
990
|
+
name: {
|
|
991
|
+
kind: Kind.NAME;
|
|
992
|
+
value: Name;
|
|
993
|
+
};
|
|
994
|
+
typeCondition: {
|
|
995
|
+
kind: Kind.NAMED_TYPE;
|
|
996
|
+
name: {
|
|
997
|
+
kind: Kind.NAME;
|
|
998
|
+
value: Type;
|
|
999
|
+
};
|
|
1000
|
+
};
|
|
1001
|
+
directives: Directives;
|
|
1002
|
+
selectionSet: SelectionSet;
|
|
1003
|
+
},
|
|
1004
|
+
In
|
|
1005
|
+
>
|
|
769
1006
|
: void
|
|
770
1007
|
: void
|
|
771
1008
|
: void;
|
|
772
|
-
type
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
1009
|
+
type takeOperation<In extends any[]> = In extends [
|
|
1010
|
+
{
|
|
1011
|
+
kind: Token.Name;
|
|
1012
|
+
name: 'query';
|
|
1013
|
+
},
|
|
1014
|
+
...infer In,
|
|
1015
|
+
]
|
|
1016
|
+
? _match<OperationTypeNode.QUERY, In>
|
|
1017
|
+
: In extends [
|
|
1018
|
+
{
|
|
1019
|
+
kind: Token.Name;
|
|
1020
|
+
name: 'mutation';
|
|
1021
|
+
},
|
|
1022
|
+
...infer In,
|
|
1023
|
+
]
|
|
1024
|
+
? _match<OperationTypeNode.MUTATION, In>
|
|
1025
|
+
: In extends [
|
|
1026
|
+
{
|
|
1027
|
+
kind: Token.Name;
|
|
1028
|
+
name: 'subscription';
|
|
1029
|
+
},
|
|
1030
|
+
...infer In,
|
|
1031
|
+
]
|
|
1032
|
+
? _match<OperationTypeNode.SUBSCRIPTION, In>
|
|
778
1033
|
: void;
|
|
779
|
-
type takeOperationDefinition<In> =
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
1034
|
+
type takeOperationDefinition<In extends any[]> = takeOperation<In> extends _match<
|
|
1035
|
+
infer Operation,
|
|
1036
|
+
infer In
|
|
1037
|
+
>
|
|
1038
|
+
? takeOptionalName<In> extends _match<infer Name, infer In>
|
|
1039
|
+
? takeVarDefinitions<In> extends _match<infer VarDefinitions, infer In>
|
|
1040
|
+
? takeDirectives<In, false> extends _match<infer Directives, infer In>
|
|
1041
|
+
? takeSelectionSet<In> extends _match<infer SelectionSet, infer In>
|
|
1042
|
+
? _match<
|
|
785
1043
|
{
|
|
786
1044
|
kind: Kind.OPERATION_DEFINITION;
|
|
787
1045
|
operation: Operation;
|
|
@@ -790,14 +1048,14 @@ type takeOperationDefinition<In> = TakeOperation<In> extends [infer Operation, i
|
|
|
790
1048
|
directives: Directives;
|
|
791
1049
|
selectionSet: SelectionSet;
|
|
792
1050
|
},
|
|
793
|
-
In
|
|
794
|
-
|
|
1051
|
+
In
|
|
1052
|
+
>
|
|
795
1053
|
: void
|
|
796
1054
|
: void
|
|
797
1055
|
: void
|
|
798
1056
|
: void
|
|
799
|
-
: takeSelectionSet<
|
|
800
|
-
?
|
|
1057
|
+
: takeSelectionSet<In> extends _match<infer SelectionSet, infer In>
|
|
1058
|
+
? _match<
|
|
801
1059
|
{
|
|
802
1060
|
kind: Kind.OPERATION_DEFINITION;
|
|
803
1061
|
operation: OperationTypeNode.QUERY;
|
|
@@ -806,21 +1064,21 @@ type takeOperationDefinition<In> = TakeOperation<In> extends [infer Operation, i
|
|
|
806
1064
|
directives: [];
|
|
807
1065
|
selectionSet: SelectionSet;
|
|
808
1066
|
},
|
|
809
|
-
In
|
|
810
|
-
|
|
1067
|
+
In
|
|
1068
|
+
>
|
|
811
1069
|
: void;
|
|
812
|
-
type _takeDocumentRec<
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
? _takeDocumentRec<[...Definitions, Definition],
|
|
817
|
-
: takeOperationDefinition<In> extends
|
|
818
|
-
? _takeDocumentRec<[...Definitions, Definition],
|
|
819
|
-
:
|
|
820
|
-
type parseDocument<In> = _takeDocumentRec<[],
|
|
1070
|
+
type _takeDocumentRec<
|
|
1071
|
+
Definitions extends any[],
|
|
1072
|
+
In extends any[],
|
|
1073
|
+
> = takeFragmentDefinition<In> extends _match<infer Definition, infer In>
|
|
1074
|
+
? _takeDocumentRec<[...Definitions, Definition], In>
|
|
1075
|
+
: takeOperationDefinition<In> extends _match<infer Definition, infer In>
|
|
1076
|
+
? _takeDocumentRec<[...Definitions, Definition], In>
|
|
1077
|
+
: _match<Definitions, In>;
|
|
1078
|
+
type parseDocument<In extends string> = _takeDocumentRec<[], tokenize<In>> extends _match<
|
|
821
1079
|
[...infer Definitions],
|
|
822
|
-
|
|
823
|
-
|
|
1080
|
+
any
|
|
1081
|
+
>
|
|
824
1082
|
? Definitions extends []
|
|
825
1083
|
? never
|
|
826
1084
|
: {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gql.tada",
|
|
3
3
|
"description": "The spec-compliant & magical GraphQL query language engine in the TypeScript type system",
|
|
4
|
-
"version": "1.3.
|
|
4
|
+
"version": "1.3.1",
|
|
5
5
|
"author": "0no.co <hi@0no.co>",
|
|
6
6
|
"source": "./src/index.ts",
|
|
7
7
|
"main": "./dist/gql-tada",
|