docusaurus-plugin-openapi-docs 3.0.2 → 4.0.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/README.md +5 -4
- package/lib/markdown/createSchema.js +2 -1
- package/lib/markdown/createSchema.test.js +487 -0
- package/package.json +2 -2
- package/src/markdown/__snapshots__/createSchema.test.ts.snap +1004 -0
- package/src/markdown/createSchema.test.ts +609 -0
- package/src/markdown/createSchema.ts +2 -1
|
@@ -368,6 +368,738 @@ Array [
|
|
|
368
368
|
]
|
|
369
369
|
`;
|
|
370
370
|
|
|
371
|
+
exports[`createNodes discriminator should handle basic discriminator with mapping 1`] = `
|
|
372
|
+
Array [
|
|
373
|
+
"<div>
|
|
374
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
375
|
+
oneOf
|
|
376
|
+
</span>
|
|
377
|
+
<SchemaTabs>
|
|
378
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
379
|
+
<SchemaItem
|
|
380
|
+
collapsible={false}
|
|
381
|
+
name={\\"type\\"}
|
|
382
|
+
required={true}
|
|
383
|
+
schemaName={\\"string\\"}
|
|
384
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
385
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
386
|
+
></SchemaItem>
|
|
387
|
+
<SchemaItem
|
|
388
|
+
collapsible={false}
|
|
389
|
+
name={\\"propA\\"}
|
|
390
|
+
required={false}
|
|
391
|
+
schemaName={\\"string\\"}
|
|
392
|
+
qualifierMessage={undefined}
|
|
393
|
+
schema={{ type: \\"string\\" }}
|
|
394
|
+
></SchemaItem>
|
|
395
|
+
</TabItem>
|
|
396
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
397
|
+
<SchemaItem
|
|
398
|
+
collapsible={false}
|
|
399
|
+
name={\\"type\\"}
|
|
400
|
+
required={true}
|
|
401
|
+
schemaName={\\"string\\"}
|
|
402
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
403
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
404
|
+
></SchemaItem>
|
|
405
|
+
<SchemaItem
|
|
406
|
+
collapsible={false}
|
|
407
|
+
name={\\"propB\\"}
|
|
408
|
+
required={false}
|
|
409
|
+
schemaName={\\"number\\"}
|
|
410
|
+
qualifierMessage={undefined}
|
|
411
|
+
schema={{ type: \\"number\\" }}
|
|
412
|
+
></SchemaItem>
|
|
413
|
+
</TabItem>
|
|
414
|
+
</SchemaTabs>
|
|
415
|
+
</div>;
|
|
416
|
+
",
|
|
417
|
+
"<div className={\\"openapi-discriminator__item openapi-schema__list-item\\"}>
|
|
418
|
+
<div>
|
|
419
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
420
|
+
<strong
|
|
421
|
+
className={\\"openapi-discriminator__name openapi-schema__property\\"}
|
|
422
|
+
>
|
|
423
|
+
type
|
|
424
|
+
</strong>
|
|
425
|
+
<span className={\\"openapi-schema__name\\"}>string</span>
|
|
426
|
+
</span>
|
|
427
|
+
<div style={{ paddingLeft: \\"1rem\\" }}>
|
|
428
|
+
**Possible values:** [\`typeA\`, \`typeB\`]
|
|
429
|
+
</div>
|
|
430
|
+
<DiscriminatorTabs className={\\"openapi-tabs__discriminator\\"}>
|
|
431
|
+
<TabItem label={\\"typeA\\"} value={\\"0-item-discriminator\\"}>
|
|
432
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
433
|
+
#/definitions/TypeA
|
|
434
|
+
</div>
|
|
435
|
+
</TabItem>
|
|
436
|
+
<TabItem label={\\"typeB\\"} value={\\"1-item-discriminator\\"}>
|
|
437
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
438
|
+
#/definitions/TypeB
|
|
439
|
+
</div>
|
|
440
|
+
</TabItem>
|
|
441
|
+
</DiscriminatorTabs>
|
|
442
|
+
</div>
|
|
443
|
+
</div>;
|
|
444
|
+
",
|
|
445
|
+
]
|
|
446
|
+
`;
|
|
447
|
+
|
|
448
|
+
exports[`createNodes discriminator should handle basic discriminator with oneOf 1`] = `
|
|
449
|
+
Array [
|
|
450
|
+
"<div>
|
|
451
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
452
|
+
oneOf
|
|
453
|
+
</span>
|
|
454
|
+
<SchemaTabs>
|
|
455
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
456
|
+
<SchemaItem
|
|
457
|
+
collapsible={false}
|
|
458
|
+
name={\\"type\\"}
|
|
459
|
+
required={true}
|
|
460
|
+
schemaName={\\"string\\"}
|
|
461
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
462
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
463
|
+
></SchemaItem>
|
|
464
|
+
<SchemaItem
|
|
465
|
+
collapsible={false}
|
|
466
|
+
name={\\"propA\\"}
|
|
467
|
+
required={false}
|
|
468
|
+
schemaName={\\"string\\"}
|
|
469
|
+
qualifierMessage={undefined}
|
|
470
|
+
schema={{ type: \\"string\\" }}
|
|
471
|
+
></SchemaItem>
|
|
472
|
+
</TabItem>
|
|
473
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
474
|
+
<SchemaItem
|
|
475
|
+
collapsible={false}
|
|
476
|
+
name={\\"type\\"}
|
|
477
|
+
required={true}
|
|
478
|
+
schemaName={\\"string\\"}
|
|
479
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
480
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
481
|
+
></SchemaItem>
|
|
482
|
+
<SchemaItem
|
|
483
|
+
collapsible={false}
|
|
484
|
+
name={\\"propB\\"}
|
|
485
|
+
required={false}
|
|
486
|
+
schemaName={\\"number\\"}
|
|
487
|
+
qualifierMessage={undefined}
|
|
488
|
+
schema={{ type: \\"number\\" }}
|
|
489
|
+
></SchemaItem>
|
|
490
|
+
</TabItem>
|
|
491
|
+
</SchemaTabs>
|
|
492
|
+
</div>;
|
|
493
|
+
",
|
|
494
|
+
"<SchemaItem
|
|
495
|
+
collapsible={false}
|
|
496
|
+
name={\\"type\\"}
|
|
497
|
+
required={false}
|
|
498
|
+
schemaName={\\"string\\"}
|
|
499
|
+
qualifierMessage={undefined}
|
|
500
|
+
schema={{ type: \\"string\\" }}
|
|
501
|
+
></SchemaItem>;
|
|
502
|
+
",
|
|
503
|
+
]
|
|
504
|
+
`;
|
|
505
|
+
|
|
506
|
+
exports[`createNodes discriminator should handle discriminator with additional properties 1`] = `
|
|
507
|
+
Array [
|
|
508
|
+
"<div>
|
|
509
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
510
|
+
oneOf
|
|
511
|
+
</span>
|
|
512
|
+
<SchemaTabs>
|
|
513
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
514
|
+
<SchemaItem
|
|
515
|
+
collapsible={false}
|
|
516
|
+
name={\\"type\\"}
|
|
517
|
+
required={true}
|
|
518
|
+
schemaName={\\"string\\"}
|
|
519
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
520
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
521
|
+
></SchemaItem>
|
|
522
|
+
<SchemaItem
|
|
523
|
+
collapsible={false}
|
|
524
|
+
name={\\"propA\\"}
|
|
525
|
+
required={false}
|
|
526
|
+
schemaName={\\"string\\"}
|
|
527
|
+
qualifierMessage={undefined}
|
|
528
|
+
schema={{ type: \\"string\\" }}
|
|
529
|
+
></SchemaItem>
|
|
530
|
+
</TabItem>
|
|
531
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
532
|
+
<SchemaItem
|
|
533
|
+
collapsible={false}
|
|
534
|
+
name={\\"type\\"}
|
|
535
|
+
required={true}
|
|
536
|
+
schemaName={\\"string\\"}
|
|
537
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
538
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
539
|
+
></SchemaItem>
|
|
540
|
+
<SchemaItem
|
|
541
|
+
collapsible={false}
|
|
542
|
+
name={\\"propB\\"}
|
|
543
|
+
required={false}
|
|
544
|
+
schemaName={\\"number\\"}
|
|
545
|
+
qualifierMessage={undefined}
|
|
546
|
+
schema={{ type: \\"number\\" }}
|
|
547
|
+
></SchemaItem>
|
|
548
|
+
</TabItem>
|
|
549
|
+
</SchemaTabs>
|
|
550
|
+
</div>;
|
|
551
|
+
",
|
|
552
|
+
"<SchemaItem
|
|
553
|
+
collapsible={false}
|
|
554
|
+
name={\\"type\\"}
|
|
555
|
+
required={false}
|
|
556
|
+
schemaName={\\"string\\"}
|
|
557
|
+
qualifierMessage={undefined}
|
|
558
|
+
schema={{ type: \\"string\\" }}
|
|
559
|
+
></SchemaItem>;
|
|
560
|
+
",
|
|
561
|
+
]
|
|
562
|
+
`;
|
|
563
|
+
|
|
564
|
+
exports[`createNodes discriminator should handle discriminator with allOf 1`] = `
|
|
565
|
+
Array [
|
|
566
|
+
"<SchemaItem
|
|
567
|
+
collapsible={false}
|
|
568
|
+
name={\\"type\\"}
|
|
569
|
+
required={false}
|
|
570
|
+
schemaName={\\"string\\"}
|
|
571
|
+
qualifierMessage={undefined}
|
|
572
|
+
schema={{ type: \\"string\\" }}
|
|
573
|
+
></SchemaItem>;
|
|
574
|
+
",
|
|
575
|
+
"<div>
|
|
576
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
577
|
+
oneOf
|
|
578
|
+
</span>
|
|
579
|
+
<SchemaTabs>
|
|
580
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
581
|
+
<SchemaItem
|
|
582
|
+
collapsible={false}
|
|
583
|
+
name={\\"type\\"}
|
|
584
|
+
required={true}
|
|
585
|
+
schemaName={\\"string\\"}
|
|
586
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
587
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
588
|
+
></SchemaItem>
|
|
589
|
+
<SchemaItem
|
|
590
|
+
collapsible={false}
|
|
591
|
+
name={\\"propA\\"}
|
|
592
|
+
required={false}
|
|
593
|
+
schemaName={\\"string\\"}
|
|
594
|
+
qualifierMessage={undefined}
|
|
595
|
+
schema={{ type: \\"string\\" }}
|
|
596
|
+
></SchemaItem>
|
|
597
|
+
</TabItem>
|
|
598
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
599
|
+
<SchemaItem
|
|
600
|
+
collapsible={false}
|
|
601
|
+
name={\\"type\\"}
|
|
602
|
+
required={true}
|
|
603
|
+
schemaName={\\"string\\"}
|
|
604
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
605
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
606
|
+
></SchemaItem>
|
|
607
|
+
<SchemaItem
|
|
608
|
+
collapsible={false}
|
|
609
|
+
name={\\"propB\\"}
|
|
610
|
+
required={false}
|
|
611
|
+
schemaName={\\"number\\"}
|
|
612
|
+
qualifierMessage={undefined}
|
|
613
|
+
schema={{ type: \\"number\\" }}
|
|
614
|
+
></SchemaItem>
|
|
615
|
+
</TabItem>
|
|
616
|
+
</SchemaTabs>
|
|
617
|
+
</div>;
|
|
618
|
+
",
|
|
619
|
+
"<SchemaItem
|
|
620
|
+
collapsible={false}
|
|
621
|
+
name={\\"sharedProp\\"}
|
|
622
|
+
required={false}
|
|
623
|
+
schemaName={\\"string\\"}
|
|
624
|
+
qualifierMessage={undefined}
|
|
625
|
+
schema={{ type: \\"string\\" }}
|
|
626
|
+
></SchemaItem>;
|
|
627
|
+
",
|
|
628
|
+
]
|
|
629
|
+
`;
|
|
630
|
+
|
|
631
|
+
exports[`createNodes discriminator should handle discriminator with allOf and mapping 1`] = `
|
|
632
|
+
Array [
|
|
633
|
+
"<div className={\\"openapi-discriminator__item openapi-schema__list-item\\"}>
|
|
634
|
+
<div>
|
|
635
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
636
|
+
<strong
|
|
637
|
+
className={\\"openapi-discriminator__name openapi-schema__property\\"}
|
|
638
|
+
>
|
|
639
|
+
type
|
|
640
|
+
</strong>
|
|
641
|
+
<span className={\\"openapi-schema__name\\"}>string</span>
|
|
642
|
+
</span>
|
|
643
|
+
<div style={{ paddingLeft: \\"1rem\\" }}>
|
|
644
|
+
**Possible values:** [\`typeA\`, \`typeB\`]
|
|
645
|
+
</div>
|
|
646
|
+
<DiscriminatorTabs className={\\"openapi-tabs__discriminator\\"}>
|
|
647
|
+
<TabItem label={\\"typeA\\"} value={\\"0-item-discriminator\\"}>
|
|
648
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
649
|
+
#/definitions/TypeA
|
|
650
|
+
</div>
|
|
651
|
+
</TabItem>
|
|
652
|
+
<TabItem label={\\"typeB\\"} value={\\"1-item-discriminator\\"}>
|
|
653
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
654
|
+
#/definitions/TypeB
|
|
655
|
+
</div>
|
|
656
|
+
</TabItem>
|
|
657
|
+
</DiscriminatorTabs>
|
|
658
|
+
</div>
|
|
659
|
+
</div>;
|
|
660
|
+
",
|
|
661
|
+
"<div>
|
|
662
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
663
|
+
oneOf
|
|
664
|
+
</span>
|
|
665
|
+
<SchemaTabs>
|
|
666
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
667
|
+
<SchemaItem
|
|
668
|
+
collapsible={false}
|
|
669
|
+
name={\\"type\\"}
|
|
670
|
+
required={true}
|
|
671
|
+
schemaName={\\"string\\"}
|
|
672
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
673
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
674
|
+
></SchemaItem>
|
|
675
|
+
<SchemaItem
|
|
676
|
+
collapsible={false}
|
|
677
|
+
name={\\"propA\\"}
|
|
678
|
+
required={false}
|
|
679
|
+
schemaName={\\"string\\"}
|
|
680
|
+
qualifierMessage={undefined}
|
|
681
|
+
schema={{ type: \\"string\\" }}
|
|
682
|
+
></SchemaItem>
|
|
683
|
+
</TabItem>
|
|
684
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
685
|
+
<SchemaItem
|
|
686
|
+
collapsible={false}
|
|
687
|
+
name={\\"type\\"}
|
|
688
|
+
required={true}
|
|
689
|
+
schemaName={\\"string\\"}
|
|
690
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
691
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
692
|
+
></SchemaItem>
|
|
693
|
+
<SchemaItem
|
|
694
|
+
collapsible={false}
|
|
695
|
+
name={\\"propB\\"}
|
|
696
|
+
required={false}
|
|
697
|
+
schemaName={\\"number\\"}
|
|
698
|
+
qualifierMessage={undefined}
|
|
699
|
+
schema={{ type: \\"number\\" }}
|
|
700
|
+
></SchemaItem>
|
|
701
|
+
</TabItem>
|
|
702
|
+
</SchemaTabs>
|
|
703
|
+
</div>;
|
|
704
|
+
",
|
|
705
|
+
"<SchemaItem
|
|
706
|
+
collapsible={false}
|
|
707
|
+
name={\\"sharedProp\\"}
|
|
708
|
+
required={false}
|
|
709
|
+
schemaName={\\"string\\"}
|
|
710
|
+
qualifierMessage={undefined}
|
|
711
|
+
schema={{ type: \\"string\\" }}
|
|
712
|
+
></SchemaItem>;
|
|
713
|
+
",
|
|
714
|
+
]
|
|
715
|
+
`;
|
|
716
|
+
|
|
717
|
+
exports[`createNodes discriminator should handle discriminator with nested schemas 1`] = `
|
|
718
|
+
Array [
|
|
719
|
+
"<div>
|
|
720
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
721
|
+
oneOf
|
|
722
|
+
</span>
|
|
723
|
+
<SchemaTabs>
|
|
724
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
725
|
+
<SchemaItem
|
|
726
|
+
collapsible={false}
|
|
727
|
+
name={\\"type\\"}
|
|
728
|
+
required={true}
|
|
729
|
+
schemaName={\\"string\\"}
|
|
730
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
731
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
732
|
+
></SchemaItem>
|
|
733
|
+
<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
734
|
+
<details style={{}} className={\\"openapi-markdown__details\\"}>
|
|
735
|
+
<summary style={{}}>
|
|
736
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
737
|
+
<strong className={\\"openapi-schema__property\\"}>nestedA</strong>
|
|
738
|
+
<span className={\\"openapi-schema__name\\"}>object</span>
|
|
739
|
+
</span>
|
|
740
|
+
</summary>
|
|
741
|
+
<div style={{ marginLeft: \\"1rem\\" }}>
|
|
742
|
+
<SchemaItem
|
|
743
|
+
collapsible={false}
|
|
744
|
+
name={\\"propA1\\"}
|
|
745
|
+
required={false}
|
|
746
|
+
schemaName={\\"string\\"}
|
|
747
|
+
qualifierMessage={undefined}
|
|
748
|
+
schema={{ type: \\"string\\" }}
|
|
749
|
+
></SchemaItem>
|
|
750
|
+
<SchemaItem
|
|
751
|
+
collapsible={false}
|
|
752
|
+
name={\\"propA2\\"}
|
|
753
|
+
required={false}
|
|
754
|
+
schemaName={\\"number\\"}
|
|
755
|
+
qualifierMessage={undefined}
|
|
756
|
+
schema={{ type: \\"number\\" }}
|
|
757
|
+
></SchemaItem>
|
|
758
|
+
</div>
|
|
759
|
+
</details>
|
|
760
|
+
</SchemaItem>
|
|
761
|
+
</TabItem>
|
|
762
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
763
|
+
<SchemaItem
|
|
764
|
+
collapsible={false}
|
|
765
|
+
name={\\"type\\"}
|
|
766
|
+
required={true}
|
|
767
|
+
schemaName={\\"string\\"}
|
|
768
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
769
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
770
|
+
></SchemaItem>
|
|
771
|
+
<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
772
|
+
<details style={{}} className={\\"openapi-markdown__details\\"}>
|
|
773
|
+
<summary style={{}}>
|
|
774
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
775
|
+
<strong className={\\"openapi-schema__property\\"}>nestedB</strong>
|
|
776
|
+
<span className={\\"openapi-schema__name\\"}>object</span>
|
|
777
|
+
</span>
|
|
778
|
+
</summary>
|
|
779
|
+
<div style={{ marginLeft: \\"1rem\\" }}>
|
|
780
|
+
<SchemaItem
|
|
781
|
+
collapsible={false}
|
|
782
|
+
name={\\"propB1\\"}
|
|
783
|
+
required={false}
|
|
784
|
+
schemaName={\\"string\\"}
|
|
785
|
+
qualifierMessage={undefined}
|
|
786
|
+
schema={{ type: \\"string\\" }}
|
|
787
|
+
></SchemaItem>
|
|
788
|
+
<SchemaItem
|
|
789
|
+
collapsible={false}
|
|
790
|
+
name={\\"propB2\\"}
|
|
791
|
+
required={false}
|
|
792
|
+
schemaName={\\"boolean\\"}
|
|
793
|
+
qualifierMessage={undefined}
|
|
794
|
+
schema={{ type: \\"boolean\\" }}
|
|
795
|
+
></SchemaItem>
|
|
796
|
+
</div>
|
|
797
|
+
</details>
|
|
798
|
+
</SchemaItem>
|
|
799
|
+
</TabItem>
|
|
800
|
+
</SchemaTabs>
|
|
801
|
+
</div>;
|
|
802
|
+
",
|
|
803
|
+
"<SchemaItem
|
|
804
|
+
collapsible={false}
|
|
805
|
+
name={\\"type\\"}
|
|
806
|
+
required={false}
|
|
807
|
+
schemaName={\\"string\\"}
|
|
808
|
+
qualifierMessage={undefined}
|
|
809
|
+
schema={{ type: \\"string\\" }}
|
|
810
|
+
></SchemaItem>;
|
|
811
|
+
",
|
|
812
|
+
]
|
|
813
|
+
`;
|
|
814
|
+
|
|
815
|
+
exports[`createNodes discriminator should handle discriminator with required properties 1`] = `
|
|
816
|
+
Array [
|
|
817
|
+
"<div>
|
|
818
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
819
|
+
oneOf
|
|
820
|
+
</span>
|
|
821
|
+
<SchemaTabs>
|
|
822
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
823
|
+
<SchemaItem
|
|
824
|
+
collapsible={false}
|
|
825
|
+
name={\\"type\\"}
|
|
826
|
+
required={true}
|
|
827
|
+
schemaName={\\"string\\"}
|
|
828
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
829
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
830
|
+
></SchemaItem>
|
|
831
|
+
<SchemaItem
|
|
832
|
+
collapsible={false}
|
|
833
|
+
name={\\"propA\\"}
|
|
834
|
+
required={true}
|
|
835
|
+
schemaName={\\"string\\"}
|
|
836
|
+
qualifierMessage={undefined}
|
|
837
|
+
schema={{ type: \\"string\\" }}
|
|
838
|
+
></SchemaItem>
|
|
839
|
+
</TabItem>
|
|
840
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
841
|
+
<SchemaItem
|
|
842
|
+
collapsible={false}
|
|
843
|
+
name={\\"type\\"}
|
|
844
|
+
required={true}
|
|
845
|
+
schemaName={\\"string\\"}
|
|
846
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
847
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
848
|
+
></SchemaItem>
|
|
849
|
+
<SchemaItem
|
|
850
|
+
collapsible={false}
|
|
851
|
+
name={\\"propB\\"}
|
|
852
|
+
required={true}
|
|
853
|
+
schemaName={\\"number\\"}
|
|
854
|
+
qualifierMessage={undefined}
|
|
855
|
+
schema={{ type: \\"number\\" }}
|
|
856
|
+
></SchemaItem>
|
|
857
|
+
</TabItem>
|
|
858
|
+
</SchemaTabs>
|
|
859
|
+
</div>;
|
|
860
|
+
",
|
|
861
|
+
"<SchemaItem
|
|
862
|
+
collapsible={false}
|
|
863
|
+
name={\\"type\\"}
|
|
864
|
+
required={false}
|
|
865
|
+
schemaName={\\"string\\"}
|
|
866
|
+
qualifierMessage={undefined}
|
|
867
|
+
schema={{ type: \\"string\\" }}
|
|
868
|
+
></SchemaItem>;
|
|
869
|
+
",
|
|
870
|
+
]
|
|
871
|
+
`;
|
|
872
|
+
|
|
873
|
+
exports[`createNodes discriminator should handle discriminator with required properties and mapping 1`] = `
|
|
874
|
+
Array [
|
|
875
|
+
"<div>
|
|
876
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
877
|
+
oneOf
|
|
878
|
+
</span>
|
|
879
|
+
<SchemaTabs>
|
|
880
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
881
|
+
<SchemaItem
|
|
882
|
+
collapsible={false}
|
|
883
|
+
name={\\"type\\"}
|
|
884
|
+
required={true}
|
|
885
|
+
schemaName={\\"string\\"}
|
|
886
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
887
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
888
|
+
></SchemaItem>
|
|
889
|
+
<SchemaItem
|
|
890
|
+
collapsible={false}
|
|
891
|
+
name={\\"propA\\"}
|
|
892
|
+
required={true}
|
|
893
|
+
schemaName={\\"string\\"}
|
|
894
|
+
qualifierMessage={undefined}
|
|
895
|
+
schema={{ type: \\"string\\" }}
|
|
896
|
+
></SchemaItem>
|
|
897
|
+
</TabItem>
|
|
898
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
899
|
+
<SchemaItem
|
|
900
|
+
collapsible={false}
|
|
901
|
+
name={\\"type\\"}
|
|
902
|
+
required={true}
|
|
903
|
+
schemaName={\\"string\\"}
|
|
904
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
905
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
906
|
+
></SchemaItem>
|
|
907
|
+
<SchemaItem
|
|
908
|
+
collapsible={false}
|
|
909
|
+
name={\\"propB\\"}
|
|
910
|
+
required={true}
|
|
911
|
+
schemaName={\\"number\\"}
|
|
912
|
+
qualifierMessage={undefined}
|
|
913
|
+
schema={{ type: \\"number\\" }}
|
|
914
|
+
></SchemaItem>
|
|
915
|
+
</TabItem>
|
|
916
|
+
</SchemaTabs>
|
|
917
|
+
</div>;
|
|
918
|
+
",
|
|
919
|
+
"<div className={\\"openapi-discriminator__item openapi-schema__list-item\\"}>
|
|
920
|
+
<div>
|
|
921
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
922
|
+
<strong
|
|
923
|
+
className={\\"openapi-discriminator__name openapi-schema__property\\"}
|
|
924
|
+
>
|
|
925
|
+
type
|
|
926
|
+
</strong>
|
|
927
|
+
<span className={\\"openapi-schema__name\\"}>string</span>
|
|
928
|
+
</span>
|
|
929
|
+
<div style={{ paddingLeft: \\"1rem\\" }}>
|
|
930
|
+
**Possible values:** [\`typeA\`, \`typeB\`]
|
|
931
|
+
</div>
|
|
932
|
+
<DiscriminatorTabs className={\\"openapi-tabs__discriminator\\"}>
|
|
933
|
+
<TabItem label={\\"typeA\\"} value={\\"0-item-discriminator\\"}>
|
|
934
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
935
|
+
#/definitions/TypeA
|
|
936
|
+
</div>
|
|
937
|
+
</TabItem>
|
|
938
|
+
<TabItem label={\\"typeB\\"} value={\\"1-item-discriminator\\"}>
|
|
939
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
940
|
+
#/definitions/TypeB
|
|
941
|
+
</div>
|
|
942
|
+
</TabItem>
|
|
943
|
+
</DiscriminatorTabs>
|
|
944
|
+
</div>
|
|
945
|
+
</div>;
|
|
946
|
+
",
|
|
947
|
+
]
|
|
948
|
+
`;
|
|
949
|
+
|
|
950
|
+
exports[`createNodes discriminator should handle discriminator with shared properties 1`] = `
|
|
951
|
+
Array [
|
|
952
|
+
"<div>
|
|
953
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
954
|
+
oneOf
|
|
955
|
+
</span>
|
|
956
|
+
<SchemaTabs>
|
|
957
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
958
|
+
<SchemaItem
|
|
959
|
+
collapsible={false}
|
|
960
|
+
name={\\"type\\"}
|
|
961
|
+
required={true}
|
|
962
|
+
schemaName={\\"string\\"}
|
|
963
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
964
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
965
|
+
></SchemaItem>
|
|
966
|
+
<SchemaItem
|
|
967
|
+
collapsible={false}
|
|
968
|
+
name={\\"propA\\"}
|
|
969
|
+
required={false}
|
|
970
|
+
schemaName={\\"string\\"}
|
|
971
|
+
qualifierMessage={undefined}
|
|
972
|
+
schema={{ type: \\"string\\" }}
|
|
973
|
+
></SchemaItem>
|
|
974
|
+
</TabItem>
|
|
975
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
976
|
+
<SchemaItem
|
|
977
|
+
collapsible={false}
|
|
978
|
+
name={\\"type\\"}
|
|
979
|
+
required={true}
|
|
980
|
+
schemaName={\\"string\\"}
|
|
981
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
982
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
983
|
+
></SchemaItem>
|
|
984
|
+
<SchemaItem
|
|
985
|
+
collapsible={false}
|
|
986
|
+
name={\\"propB\\"}
|
|
987
|
+
required={false}
|
|
988
|
+
schemaName={\\"number\\"}
|
|
989
|
+
qualifierMessage={undefined}
|
|
990
|
+
schema={{ type: \\"number\\" }}
|
|
991
|
+
></SchemaItem>
|
|
992
|
+
</TabItem>
|
|
993
|
+
</SchemaTabs>
|
|
994
|
+
</div>;
|
|
995
|
+
",
|
|
996
|
+
"<SchemaItem
|
|
997
|
+
collapsible={false}
|
|
998
|
+
name={\\"type\\"}
|
|
999
|
+
required={false}
|
|
1000
|
+
schemaName={\\"string\\"}
|
|
1001
|
+
qualifierMessage={undefined}
|
|
1002
|
+
schema={{ type: \\"string\\" }}
|
|
1003
|
+
></SchemaItem>;
|
|
1004
|
+
",
|
|
1005
|
+
"<SchemaItem
|
|
1006
|
+
collapsible={false}
|
|
1007
|
+
name={\\"sharedProp\\"}
|
|
1008
|
+
required={false}
|
|
1009
|
+
schemaName={\\"string\\"}
|
|
1010
|
+
qualifierMessage={undefined}
|
|
1011
|
+
schema={{ type: \\"string\\" }}
|
|
1012
|
+
></SchemaItem>;
|
|
1013
|
+
",
|
|
1014
|
+
]
|
|
1015
|
+
`;
|
|
1016
|
+
|
|
1017
|
+
exports[`createNodes discriminator should handle discriminator with shared properties and mapping 1`] = `
|
|
1018
|
+
Array [
|
|
1019
|
+
"<div>
|
|
1020
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
1021
|
+
oneOf
|
|
1022
|
+
</span>
|
|
1023
|
+
<SchemaTabs>
|
|
1024
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
1025
|
+
<SchemaItem
|
|
1026
|
+
collapsible={false}
|
|
1027
|
+
name={\\"type\\"}
|
|
1028
|
+
required={true}
|
|
1029
|
+
schemaName={\\"string\\"}
|
|
1030
|
+
qualifierMessage={\\"**Possible values:** [\`typeA\`]\\"}
|
|
1031
|
+
schema={{ type: \\"string\\", enum: [\\"typeA\\"] }}
|
|
1032
|
+
></SchemaItem>
|
|
1033
|
+
<SchemaItem
|
|
1034
|
+
collapsible={false}
|
|
1035
|
+
name={\\"propA\\"}
|
|
1036
|
+
required={false}
|
|
1037
|
+
schemaName={\\"string\\"}
|
|
1038
|
+
qualifierMessage={undefined}
|
|
1039
|
+
schema={{ type: \\"string\\" }}
|
|
1040
|
+
></SchemaItem>
|
|
1041
|
+
</TabItem>
|
|
1042
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
1043
|
+
<SchemaItem
|
|
1044
|
+
collapsible={false}
|
|
1045
|
+
name={\\"type\\"}
|
|
1046
|
+
required={true}
|
|
1047
|
+
schemaName={\\"string\\"}
|
|
1048
|
+
qualifierMessage={\\"**Possible values:** [\`typeB\`]\\"}
|
|
1049
|
+
schema={{ type: \\"string\\", enum: [\\"typeB\\"] }}
|
|
1050
|
+
></SchemaItem>
|
|
1051
|
+
<SchemaItem
|
|
1052
|
+
collapsible={false}
|
|
1053
|
+
name={\\"propB\\"}
|
|
1054
|
+
required={false}
|
|
1055
|
+
schemaName={\\"number\\"}
|
|
1056
|
+
qualifierMessage={undefined}
|
|
1057
|
+
schema={{ type: \\"number\\" }}
|
|
1058
|
+
></SchemaItem>
|
|
1059
|
+
</TabItem>
|
|
1060
|
+
</SchemaTabs>
|
|
1061
|
+
</div>;
|
|
1062
|
+
",
|
|
1063
|
+
"<div className={\\"openapi-discriminator__item openapi-schema__list-item\\"}>
|
|
1064
|
+
<div>
|
|
1065
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
1066
|
+
<strong
|
|
1067
|
+
className={\\"openapi-discriminator__name openapi-schema__property\\"}
|
|
1068
|
+
>
|
|
1069
|
+
type
|
|
1070
|
+
</strong>
|
|
1071
|
+
<span className={\\"openapi-schema__name\\"}>string</span>
|
|
1072
|
+
</span>
|
|
1073
|
+
<div style={{ paddingLeft: \\"1rem\\" }}>
|
|
1074
|
+
**Possible values:** [\`typeA\`, \`typeB\`]
|
|
1075
|
+
</div>
|
|
1076
|
+
<DiscriminatorTabs className={\\"openapi-tabs__discriminator\\"}>
|
|
1077
|
+
<TabItem label={\\"typeA\\"} value={\\"0-item-discriminator\\"}>
|
|
1078
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
1079
|
+
#/definitions/TypeA
|
|
1080
|
+
</div>
|
|
1081
|
+
</TabItem>
|
|
1082
|
+
<TabItem label={\\"typeB\\"} value={\\"1-item-discriminator\\"}>
|
|
1083
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
1084
|
+
#/definitions/TypeB
|
|
1085
|
+
</div>
|
|
1086
|
+
</TabItem>
|
|
1087
|
+
</DiscriminatorTabs>
|
|
1088
|
+
</div>
|
|
1089
|
+
</div>;
|
|
1090
|
+
",
|
|
1091
|
+
"<SchemaItem
|
|
1092
|
+
collapsible={false}
|
|
1093
|
+
name={\\"sharedProp\\"}
|
|
1094
|
+
required={false}
|
|
1095
|
+
schemaName={\\"string\\"}
|
|
1096
|
+
qualifierMessage={undefined}
|
|
1097
|
+
schema={{ type: \\"string\\" }}
|
|
1098
|
+
></SchemaItem>;
|
|
1099
|
+
",
|
|
1100
|
+
]
|
|
1101
|
+
`;
|
|
1102
|
+
|
|
371
1103
|
exports[`createNodes oneOf should create readable MODs for oneOf primitive properties 1`] = `
|
|
372
1104
|
Array [
|
|
373
1105
|
"<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
@@ -457,3 +1189,275 @@ Array [
|
|
|
457
1189
|
",
|
|
458
1190
|
]
|
|
459
1191
|
`;
|
|
1192
|
+
|
|
1193
|
+
exports[`createNodes oneOf should handle nested oneOf clauses 1`] = `
|
|
1194
|
+
Array [
|
|
1195
|
+
"<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
1196
|
+
<details style={{}} className={\\"openapi-markdown__details\\"}>
|
|
1197
|
+
<summary style={{}}>
|
|
1198
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
1199
|
+
<strong className={\\"openapi-schema__property\\"}>oneOfProperty</strong>
|
|
1200
|
+
<span className={\\"openapi-schema__name\\"}>object</span>
|
|
1201
|
+
</span>
|
|
1202
|
+
</summary>
|
|
1203
|
+
<div style={{ marginLeft: \\"1rem\\" }}>
|
|
1204
|
+
<div>
|
|
1205
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
1206
|
+
oneOf
|
|
1207
|
+
</span>
|
|
1208
|
+
<SchemaTabs>
|
|
1209
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
1210
|
+
<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
1211
|
+
<details style={{}} className={\\"openapi-markdown__details\\"}>
|
|
1212
|
+
<summary style={{}}>
|
|
1213
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
1214
|
+
<strong className={\\"openapi-schema__property\\"}>
|
|
1215
|
+
nestedOneOfProp
|
|
1216
|
+
</strong>
|
|
1217
|
+
<span className={\\"openapi-schema__name\\"}>object</span>
|
|
1218
|
+
</span>
|
|
1219
|
+
</summary>
|
|
1220
|
+
<div style={{ marginLeft: \\"1rem\\" }}>
|
|
1221
|
+
<div>
|
|
1222
|
+
<span
|
|
1223
|
+
className={\\"badge badge--info\\"}
|
|
1224
|
+
style={{ marginBottom: \\"1rem\\" }}
|
|
1225
|
+
>
|
|
1226
|
+
oneOf
|
|
1227
|
+
</span>
|
|
1228
|
+
<SchemaTabs>
|
|
1229
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
1230
|
+
<div
|
|
1231
|
+
style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}
|
|
1232
|
+
>
|
|
1233
|
+
string
|
|
1234
|
+
</div>
|
|
1235
|
+
</TabItem>
|
|
1236
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
1237
|
+
<div
|
|
1238
|
+
style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}
|
|
1239
|
+
>
|
|
1240
|
+
number
|
|
1241
|
+
</div>
|
|
1242
|
+
</TabItem>
|
|
1243
|
+
</SchemaTabs>
|
|
1244
|
+
</div>
|
|
1245
|
+
</div>
|
|
1246
|
+
</details>
|
|
1247
|
+
</SchemaItem>
|
|
1248
|
+
</TabItem>
|
|
1249
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
1250
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
1251
|
+
boolean
|
|
1252
|
+
</div>
|
|
1253
|
+
</TabItem>
|
|
1254
|
+
</SchemaTabs>
|
|
1255
|
+
</div>
|
|
1256
|
+
</div>
|
|
1257
|
+
</details>
|
|
1258
|
+
</SchemaItem>;
|
|
1259
|
+
",
|
|
1260
|
+
]
|
|
1261
|
+
`;
|
|
1262
|
+
|
|
1263
|
+
exports[`createNodes oneOf should handle oneOf with complex types 1`] = `
|
|
1264
|
+
Array [
|
|
1265
|
+
"<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
1266
|
+
<details style={{}} className={\\"openapi-markdown__details\\"}>
|
|
1267
|
+
<summary style={{}}>
|
|
1268
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
1269
|
+
<strong className={\\"openapi-schema__property\\"}>oneOfProperty</strong>
|
|
1270
|
+
<span className={\\"openapi-schema__name\\"}>object</span>
|
|
1271
|
+
</span>
|
|
1272
|
+
</summary>
|
|
1273
|
+
<div style={{ marginLeft: \\"1rem\\" }}>
|
|
1274
|
+
<div>
|
|
1275
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
1276
|
+
oneOf
|
|
1277
|
+
</span>
|
|
1278
|
+
<SchemaTabs>
|
|
1279
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
1280
|
+
<SchemaItem
|
|
1281
|
+
collapsible={false}
|
|
1282
|
+
name={\\"objectProp\\"}
|
|
1283
|
+
required={false}
|
|
1284
|
+
schemaName={\\"string\\"}
|
|
1285
|
+
qualifierMessage={undefined}
|
|
1286
|
+
schema={{ type: \\"string\\" }}
|
|
1287
|
+
></SchemaItem>
|
|
1288
|
+
</TabItem>
|
|
1289
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
1290
|
+
<li>
|
|
1291
|
+
<div
|
|
1292
|
+
style={{
|
|
1293
|
+
fontSize: \\"var(--ifm-code-font-size)\\",
|
|
1294
|
+
opacity: \\"0.6\\",
|
|
1295
|
+
marginLeft: \\"-.5rem\\",
|
|
1296
|
+
paddingBottom: \\".5rem\\",
|
|
1297
|
+
}}
|
|
1298
|
+
>
|
|
1299
|
+
Array [
|
|
1300
|
+
</div>
|
|
1301
|
+
</li>
|
|
1302
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
1303
|
+
number
|
|
1304
|
+
</div>
|
|
1305
|
+
<li>
|
|
1306
|
+
<div
|
|
1307
|
+
style={{
|
|
1308
|
+
fontSize: \\"var(--ifm-code-font-size)\\",
|
|
1309
|
+
opacity: \\"0.6\\",
|
|
1310
|
+
marginLeft: \\"-.5rem\\",
|
|
1311
|
+
}}
|
|
1312
|
+
>
|
|
1313
|
+
]
|
|
1314
|
+
</div>
|
|
1315
|
+
</li>
|
|
1316
|
+
</TabItem>
|
|
1317
|
+
</SchemaTabs>
|
|
1318
|
+
</div>
|
|
1319
|
+
</div>
|
|
1320
|
+
</details>
|
|
1321
|
+
</SchemaItem>;
|
|
1322
|
+
",
|
|
1323
|
+
]
|
|
1324
|
+
`;
|
|
1325
|
+
|
|
1326
|
+
exports[`createNodes oneOf should handle oneOf with different primitive types 1`] = `
|
|
1327
|
+
Array [
|
|
1328
|
+
"<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
1329
|
+
<details style={{}} className={\\"openapi-markdown__details\\"}>
|
|
1330
|
+
<summary style={{}}>
|
|
1331
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
1332
|
+
<strong className={\\"openapi-schema__property\\"}>oneOfProperty</strong>
|
|
1333
|
+
<span className={\\"openapi-schema__name\\"}>object</span>
|
|
1334
|
+
</span>
|
|
1335
|
+
</summary>
|
|
1336
|
+
<div style={{ marginLeft: \\"1rem\\" }}>
|
|
1337
|
+
<div>
|
|
1338
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
1339
|
+
oneOf
|
|
1340
|
+
</span>
|
|
1341
|
+
<SchemaTabs>
|
|
1342
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
1343
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
1344
|
+
string
|
|
1345
|
+
</div>
|
|
1346
|
+
</TabItem>
|
|
1347
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
1348
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
1349
|
+
number
|
|
1350
|
+
</div>
|
|
1351
|
+
</TabItem>
|
|
1352
|
+
<TabItem label={\\"MOD3\\"} value={\\"2-item-properties\\"}>
|
|
1353
|
+
<div style={{ marginTop: \\".5rem\\", marginBottom: \\".5rem\\" }}>
|
|
1354
|
+
boolean
|
|
1355
|
+
</div>
|
|
1356
|
+
</TabItem>
|
|
1357
|
+
</SchemaTabs>
|
|
1358
|
+
</div>
|
|
1359
|
+
</div>
|
|
1360
|
+
</details>
|
|
1361
|
+
</SchemaItem>;
|
|
1362
|
+
",
|
|
1363
|
+
]
|
|
1364
|
+
`;
|
|
1365
|
+
|
|
1366
|
+
exports[`createNodes oneOf should handle oneOf with required properties 1`] = `
|
|
1367
|
+
Array [
|
|
1368
|
+
"<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
1369
|
+
<details style={{}} className={\\"openapi-markdown__details\\"}>
|
|
1370
|
+
<summary style={{}}>
|
|
1371
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
1372
|
+
<strong className={\\"openapi-schema__property\\"}>oneOfProperty</strong>
|
|
1373
|
+
<span className={\\"openapi-schema__name\\"}>object</span>
|
|
1374
|
+
</span>
|
|
1375
|
+
</summary>
|
|
1376
|
+
<div style={{ marginLeft: \\"1rem\\" }}>
|
|
1377
|
+
<div>
|
|
1378
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
1379
|
+
oneOf
|
|
1380
|
+
</span>
|
|
1381
|
+
<SchemaTabs>
|
|
1382
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
1383
|
+
<SchemaItem
|
|
1384
|
+
collapsible={false}
|
|
1385
|
+
name={\\"requiredPropA\\"}
|
|
1386
|
+
required={true}
|
|
1387
|
+
schemaName={\\"string\\"}
|
|
1388
|
+
qualifierMessage={undefined}
|
|
1389
|
+
schema={{ type: \\"string\\" }}
|
|
1390
|
+
></SchemaItem>
|
|
1391
|
+
</TabItem>
|
|
1392
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
1393
|
+
<SchemaItem
|
|
1394
|
+
collapsible={false}
|
|
1395
|
+
name={\\"requiredPropB\\"}
|
|
1396
|
+
required={true}
|
|
1397
|
+
schemaName={\\"number\\"}
|
|
1398
|
+
qualifierMessage={undefined}
|
|
1399
|
+
schema={{ type: \\"number\\" }}
|
|
1400
|
+
></SchemaItem>
|
|
1401
|
+
</TabItem>
|
|
1402
|
+
</SchemaTabs>
|
|
1403
|
+
</div>
|
|
1404
|
+
</div>
|
|
1405
|
+
</details>
|
|
1406
|
+
</SchemaItem>;
|
|
1407
|
+
",
|
|
1408
|
+
]
|
|
1409
|
+
`;
|
|
1410
|
+
|
|
1411
|
+
exports[`createNodes oneOf should handle oneOf with shared properties 1`] = `
|
|
1412
|
+
Array [
|
|
1413
|
+
"<SchemaItem
|
|
1414
|
+
collapsible={false}
|
|
1415
|
+
name={\\"sharedProp\\"}
|
|
1416
|
+
required={false}
|
|
1417
|
+
schemaName={\\"string\\"}
|
|
1418
|
+
qualifierMessage={undefined}
|
|
1419
|
+
schema={{ type: \\"string\\" }}
|
|
1420
|
+
></SchemaItem>;
|
|
1421
|
+
",
|
|
1422
|
+
"<SchemaItem collapsible={true} className={\\"schemaItem\\"}>
|
|
1423
|
+
<details style={{}} className={\\"openapi-markdown__details\\"}>
|
|
1424
|
+
<summary style={{}}>
|
|
1425
|
+
<span className={\\"openapi-schema__container\\"}>
|
|
1426
|
+
<strong className={\\"openapi-schema__property\\"}>oneOfProperty</strong>
|
|
1427
|
+
<span className={\\"openapi-schema__name\\"}>object</span>
|
|
1428
|
+
</span>
|
|
1429
|
+
</summary>
|
|
1430
|
+
<div style={{ marginLeft: \\"1rem\\" }}>
|
|
1431
|
+
<div>
|
|
1432
|
+
<span className={\\"badge badge--info\\"} style={{ marginBottom: \\"1rem\\" }}>
|
|
1433
|
+
oneOf
|
|
1434
|
+
</span>
|
|
1435
|
+
<SchemaTabs>
|
|
1436
|
+
<TabItem label={\\"MOD1\\"} value={\\"0-item-properties\\"}>
|
|
1437
|
+
<SchemaItem
|
|
1438
|
+
collapsible={false}
|
|
1439
|
+
name={\\"specificPropA\\"}
|
|
1440
|
+
required={false}
|
|
1441
|
+
schemaName={\\"string\\"}
|
|
1442
|
+
qualifierMessage={undefined}
|
|
1443
|
+
schema={{ type: \\"string\\" }}
|
|
1444
|
+
></SchemaItem>
|
|
1445
|
+
</TabItem>
|
|
1446
|
+
<TabItem label={\\"MOD2\\"} value={\\"1-item-properties\\"}>
|
|
1447
|
+
<SchemaItem
|
|
1448
|
+
collapsible={false}
|
|
1449
|
+
name={\\"specificPropB\\"}
|
|
1450
|
+
required={false}
|
|
1451
|
+
schemaName={\\"number\\"}
|
|
1452
|
+
qualifierMessage={undefined}
|
|
1453
|
+
schema={{ type: \\"number\\" }}
|
|
1454
|
+
></SchemaItem>
|
|
1455
|
+
</TabItem>
|
|
1456
|
+
</SchemaTabs>
|
|
1457
|
+
</div>
|
|
1458
|
+
</div>
|
|
1459
|
+
</details>
|
|
1460
|
+
</SchemaItem>;
|
|
1461
|
+
",
|
|
1462
|
+
]
|
|
1463
|
+
`;
|