@step-forge/step-forge 0.0.17 → 0.0.19
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/step-forge.cjs +10 -0
- package/dist/step-forge.cjs.map +1 -1
- package/dist/step-forge.d.cts +447 -1
- package/dist/step-forge.d.ts +447 -1
- package/dist/step-forge.js +10 -1
- package/dist/step-forge.js.map +1 -1
- package/package.json +1 -1
package/dist/step-forge.d.ts
CHANGED
|
@@ -569,6 +569,452 @@ interface AnalyzeOptions {
|
|
|
569
569
|
}
|
|
570
570
|
declare function analyze(config: AnalyzerConfig, options?: AnalyzeOptions): Promise<Diagnostic[]>;
|
|
571
571
|
//#endregion
|
|
572
|
+
//#region src/init.d.ts
|
|
573
|
+
declare const createBuilders: <GivenState, WhenState, ThenState>() => {
|
|
574
|
+
Given: <Statement extends ((...args: [...any]) => string) | string>(statement: Statement) => {
|
|
575
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>>(dependencies: {
|
|
576
|
+
given: GivenDeps;
|
|
577
|
+
}) => {
|
|
578
|
+
step: (stepFunction: (input: {
|
|
579
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
580
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
581
|
+
when: never;
|
|
582
|
+
then: never;
|
|
583
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>) => {
|
|
584
|
+
statement: Statement extends string ? () => string : Statement;
|
|
585
|
+
expression: string;
|
|
586
|
+
dependencies: {
|
|
587
|
+
given: GivenDeps;
|
|
588
|
+
} & {
|
|
589
|
+
when: EmptyObject;
|
|
590
|
+
then: EmptyObject;
|
|
591
|
+
};
|
|
592
|
+
stepType: "given";
|
|
593
|
+
stepFunction: (input: {
|
|
594
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
595
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
596
|
+
when: never;
|
|
597
|
+
then: never;
|
|
598
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
599
|
+
register: () => {
|
|
600
|
+
stepType: "given";
|
|
601
|
+
expression: string;
|
|
602
|
+
dependencies: {
|
|
603
|
+
given: GivenDeps;
|
|
604
|
+
} & {
|
|
605
|
+
when: EmptyObject;
|
|
606
|
+
then: EmptyObject;
|
|
607
|
+
};
|
|
608
|
+
statement: Statement extends string ? () => string : Statement;
|
|
609
|
+
stepFunction: (input: {
|
|
610
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
611
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
612
|
+
when: never;
|
|
613
|
+
then: never;
|
|
614
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
615
|
+
};
|
|
616
|
+
};
|
|
617
|
+
};
|
|
618
|
+
parsers: <Parsers extends ((Statement extends string ? [] : GetFunctionArgs<Statement>) extends infer T ? { [K in keyof T]: Parser<(Statement extends string ? [] : GetFunctionArgs<Statement>)[K]> } : never)>(parsers: Parsers) => {
|
|
619
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>>(dependencies: {
|
|
620
|
+
given: GivenDeps;
|
|
621
|
+
}) => {
|
|
622
|
+
step: (stepFunction: (input: {
|
|
623
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
624
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
625
|
+
when: never;
|
|
626
|
+
then: never;
|
|
627
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>) => {
|
|
628
|
+
statement: Statement extends string ? () => string : Statement;
|
|
629
|
+
expression: string;
|
|
630
|
+
dependencies: {
|
|
631
|
+
given: GivenDeps;
|
|
632
|
+
} & {
|
|
633
|
+
when: EmptyObject;
|
|
634
|
+
then: EmptyObject;
|
|
635
|
+
};
|
|
636
|
+
stepType: "given";
|
|
637
|
+
stepFunction: (input: {
|
|
638
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
639
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
640
|
+
when: never;
|
|
641
|
+
then: never;
|
|
642
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
643
|
+
register: () => {
|
|
644
|
+
stepType: "given";
|
|
645
|
+
expression: string;
|
|
646
|
+
dependencies: {
|
|
647
|
+
given: GivenDeps;
|
|
648
|
+
} & {
|
|
649
|
+
when: EmptyObject;
|
|
650
|
+
then: EmptyObject;
|
|
651
|
+
};
|
|
652
|
+
statement: Statement extends string ? () => string : Statement;
|
|
653
|
+
stepFunction: (input: {
|
|
654
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
655
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
656
|
+
when: never;
|
|
657
|
+
then: never;
|
|
658
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
659
|
+
};
|
|
660
|
+
};
|
|
661
|
+
};
|
|
662
|
+
step: (stepFunction: (input: {
|
|
663
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
664
|
+
given: never;
|
|
665
|
+
when: never;
|
|
666
|
+
then: never;
|
|
667
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>) => {
|
|
668
|
+
statement: Statement extends string ? () => string : Statement;
|
|
669
|
+
expression: string;
|
|
670
|
+
dependencies: EmptyDependencies;
|
|
671
|
+
stepType: "given";
|
|
672
|
+
stepFunction: (input: {
|
|
673
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
674
|
+
given: never;
|
|
675
|
+
when: never;
|
|
676
|
+
then: never;
|
|
677
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
678
|
+
register: () => {
|
|
679
|
+
stepType: "given";
|
|
680
|
+
expression: string;
|
|
681
|
+
dependencies: EmptyDependencies;
|
|
682
|
+
statement: Statement extends string ? () => string : Statement;
|
|
683
|
+
stepFunction: (input: {
|
|
684
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
685
|
+
given: never;
|
|
686
|
+
when: never;
|
|
687
|
+
then: never;
|
|
688
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
689
|
+
};
|
|
690
|
+
};
|
|
691
|
+
};
|
|
692
|
+
step: (stepFunction: (input: {
|
|
693
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
694
|
+
given: never;
|
|
695
|
+
when: never;
|
|
696
|
+
then: never;
|
|
697
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>) => {
|
|
698
|
+
statement: Statement extends string ? () => string : Statement;
|
|
699
|
+
expression: string;
|
|
700
|
+
dependencies: EmptyDependencies;
|
|
701
|
+
stepType: "given";
|
|
702
|
+
stepFunction: (input: {
|
|
703
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
704
|
+
given: never;
|
|
705
|
+
when: never;
|
|
706
|
+
then: never;
|
|
707
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
708
|
+
register: () => {
|
|
709
|
+
stepType: "given";
|
|
710
|
+
expression: string;
|
|
711
|
+
dependencies: EmptyDependencies;
|
|
712
|
+
statement: Statement extends string ? () => string : Statement;
|
|
713
|
+
stepFunction: (input: {
|
|
714
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
715
|
+
given: never;
|
|
716
|
+
when: never;
|
|
717
|
+
then: never;
|
|
718
|
+
}) => Partial<GivenState> | Promise<Partial<GivenState>>;
|
|
719
|
+
};
|
|
720
|
+
};
|
|
721
|
+
};
|
|
722
|
+
When: <Statement extends ((...args: [...any]) => string) | string>(statement: Statement) => {
|
|
723
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>, WhenDeps extends RequiredOrOptional<WhenState>>(dependencies: {
|
|
724
|
+
given?: GivenDeps | undefined;
|
|
725
|
+
when?: WhenDeps | undefined;
|
|
726
|
+
}) => {
|
|
727
|
+
step: (stepFunction: (input: {
|
|
728
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
729
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
730
|
+
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps ? K_1 : never]: WhenDeps[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
731
|
+
then: never;
|
|
732
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>) => {
|
|
733
|
+
statement: Statement extends string ? () => string : Statement;
|
|
734
|
+
expression: string;
|
|
735
|
+
dependencies: {
|
|
736
|
+
given: GivenDeps;
|
|
737
|
+
when: WhenDeps;
|
|
738
|
+
then: EmptyObject;
|
|
739
|
+
};
|
|
740
|
+
stepType: "when";
|
|
741
|
+
stepFunction: (input: {
|
|
742
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
743
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
744
|
+
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps ? K_1 : never]: WhenDeps[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
745
|
+
then: never;
|
|
746
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
747
|
+
register: () => {
|
|
748
|
+
stepType: "when";
|
|
749
|
+
expression: string;
|
|
750
|
+
dependencies: {
|
|
751
|
+
given: GivenDeps;
|
|
752
|
+
when: WhenDeps;
|
|
753
|
+
then: EmptyObject;
|
|
754
|
+
};
|
|
755
|
+
statement: Statement extends string ? () => string : Statement;
|
|
756
|
+
stepFunction: (input: {
|
|
757
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
758
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
759
|
+
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps ? K_1 : never]: WhenDeps[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
760
|
+
then: never;
|
|
761
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
762
|
+
};
|
|
763
|
+
};
|
|
764
|
+
};
|
|
765
|
+
parsers: <Parsers extends ((Statement extends string ? [] : GetFunctionArgs<Statement>) extends infer T ? { [K in keyof T]: Parser<(Statement extends string ? [] : GetFunctionArgs<Statement>)[K]> } : never)>(parsers: Parsers) => {
|
|
766
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>, WhenDeps extends RequiredOrOptional<WhenState>>(dependencies: {
|
|
767
|
+
given?: GivenDeps | undefined;
|
|
768
|
+
when?: WhenDeps | undefined;
|
|
769
|
+
}) => {
|
|
770
|
+
step: (stepFunction: (input: {
|
|
771
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
772
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
773
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
774
|
+
then: never;
|
|
775
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>) => {
|
|
776
|
+
statement: Statement extends string ? () => string : Statement;
|
|
777
|
+
expression: string;
|
|
778
|
+
dependencies: {
|
|
779
|
+
given: GivenDeps;
|
|
780
|
+
when: WhenDeps;
|
|
781
|
+
then: EmptyObject;
|
|
782
|
+
};
|
|
783
|
+
stepType: "when";
|
|
784
|
+
stepFunction: (input: {
|
|
785
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
786
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
787
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
788
|
+
then: never;
|
|
789
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
790
|
+
register: () => {
|
|
791
|
+
stepType: "when";
|
|
792
|
+
expression: string;
|
|
793
|
+
dependencies: {
|
|
794
|
+
given: GivenDeps;
|
|
795
|
+
when: WhenDeps;
|
|
796
|
+
then: EmptyObject;
|
|
797
|
+
};
|
|
798
|
+
statement: Statement extends string ? () => string : Statement;
|
|
799
|
+
stepFunction: (input: {
|
|
800
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
801
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
802
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps ? K_2 : never]: WhenDeps[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
803
|
+
then: never;
|
|
804
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
805
|
+
};
|
|
806
|
+
};
|
|
807
|
+
};
|
|
808
|
+
step: (stepFunction: (input: {
|
|
809
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
810
|
+
given: never;
|
|
811
|
+
when: never;
|
|
812
|
+
then: never;
|
|
813
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>) => {
|
|
814
|
+
statement: Statement extends string ? () => string : Statement;
|
|
815
|
+
expression: string;
|
|
816
|
+
dependencies: EmptyDependencies;
|
|
817
|
+
stepType: "when";
|
|
818
|
+
stepFunction: (input: {
|
|
819
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
820
|
+
given: never;
|
|
821
|
+
when: never;
|
|
822
|
+
then: never;
|
|
823
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
824
|
+
register: () => {
|
|
825
|
+
stepType: "when";
|
|
826
|
+
expression: string;
|
|
827
|
+
dependencies: EmptyDependencies;
|
|
828
|
+
statement: Statement extends string ? () => string : Statement;
|
|
829
|
+
stepFunction: (input: {
|
|
830
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
831
|
+
given: never;
|
|
832
|
+
when: never;
|
|
833
|
+
then: never;
|
|
834
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
835
|
+
};
|
|
836
|
+
};
|
|
837
|
+
};
|
|
838
|
+
step: (stepFunction: (input: {
|
|
839
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
840
|
+
given: never;
|
|
841
|
+
when: never;
|
|
842
|
+
then: never;
|
|
843
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>) => {
|
|
844
|
+
statement: Statement extends string ? () => string : Statement;
|
|
845
|
+
expression: string;
|
|
846
|
+
dependencies: EmptyDependencies;
|
|
847
|
+
stepType: "when";
|
|
848
|
+
stepFunction: (input: {
|
|
849
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
850
|
+
given: never;
|
|
851
|
+
when: never;
|
|
852
|
+
then: never;
|
|
853
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
854
|
+
register: () => {
|
|
855
|
+
stepType: "when";
|
|
856
|
+
expression: string;
|
|
857
|
+
dependencies: EmptyDependencies;
|
|
858
|
+
statement: Statement extends string ? () => string : Statement;
|
|
859
|
+
stepFunction: (input: {
|
|
860
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
861
|
+
given: never;
|
|
862
|
+
when: never;
|
|
863
|
+
then: never;
|
|
864
|
+
}) => Partial<WhenState> | Promise<Partial<WhenState>>;
|
|
865
|
+
};
|
|
866
|
+
};
|
|
867
|
+
};
|
|
868
|
+
Then: <Statement extends ((...args: [...any]) => string) | string>(statement: Statement) => {
|
|
869
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>, WhenDeps_1 extends RequiredOrOptional<WhenState>, ThenDeps extends RequiredOrOptional<ThenState>>(dependencies: {
|
|
870
|
+
given?: GivenDeps | undefined;
|
|
871
|
+
when?: WhenDeps_1 | undefined;
|
|
872
|
+
then?: ThenDeps | undefined;
|
|
873
|
+
}) => {
|
|
874
|
+
step: (stepFunction: (input: {
|
|
875
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
876
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
877
|
+
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps_1 ? K_1 : never]: WhenDeps_1[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
878
|
+
then: { [K_2 in keyof ThenState as K_2 extends keyof ThenDeps ? K_2 : never]: ThenDeps[K_2] extends "optional" ? ThenState[K_2] | undefined : ThenState[K_2] };
|
|
879
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
880
|
+
statement: Statement extends string ? () => string : Statement;
|
|
881
|
+
expression: string;
|
|
882
|
+
dependencies: {
|
|
883
|
+
given: GivenDeps;
|
|
884
|
+
when: WhenDeps_1;
|
|
885
|
+
then: ThenDeps;
|
|
886
|
+
};
|
|
887
|
+
stepType: "then";
|
|
888
|
+
stepFunction: (input: {
|
|
889
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
890
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
891
|
+
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps_1 ? K_1 : never]: WhenDeps_1[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
892
|
+
then: { [K_2 in keyof ThenState as K_2 extends keyof ThenDeps ? K_2 : never]: ThenDeps[K_2] extends "optional" ? ThenState[K_2] | undefined : ThenState[K_2] };
|
|
893
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
894
|
+
register: () => {
|
|
895
|
+
stepType: "then";
|
|
896
|
+
expression: string;
|
|
897
|
+
dependencies: {
|
|
898
|
+
given: GivenDeps;
|
|
899
|
+
when: WhenDeps_1;
|
|
900
|
+
then: ThenDeps;
|
|
901
|
+
};
|
|
902
|
+
statement: Statement extends string ? () => string : Statement;
|
|
903
|
+
stepFunction: (input: {
|
|
904
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
905
|
+
given: { [K in keyof GivenState as K extends keyof GivenDeps ? K : never]: GivenDeps[K] extends "optional" ? GivenState[K] | undefined : GivenState[K] };
|
|
906
|
+
when: { [K_1 in keyof WhenState as K_1 extends keyof WhenDeps_1 ? K_1 : never]: WhenDeps_1[K_1] extends "optional" ? WhenState[K_1] | undefined : WhenState[K_1] };
|
|
907
|
+
then: { [K_2 in keyof ThenState as K_2 extends keyof ThenDeps ? K_2 : never]: ThenDeps[K_2] extends "optional" ? ThenState[K_2] | undefined : ThenState[K_2] };
|
|
908
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
909
|
+
};
|
|
910
|
+
};
|
|
911
|
+
};
|
|
912
|
+
parsers: <Parsers extends ((Statement extends string ? [] : GetFunctionArgs<Statement>) extends infer T ? { [K in keyof T]: Parser<(Statement extends string ? [] : GetFunctionArgs<Statement>)[K]> } : never)>(parsers: Parsers) => {
|
|
913
|
+
dependencies: <GivenDeps extends RequiredOrOptional<GivenState>, WhenDeps_1 extends RequiredOrOptional<WhenState>, ThenDeps extends RequiredOrOptional<ThenState>>(dependencies: {
|
|
914
|
+
given?: GivenDeps | undefined;
|
|
915
|
+
when?: WhenDeps_1 | undefined;
|
|
916
|
+
then?: ThenDeps | undefined;
|
|
917
|
+
}) => {
|
|
918
|
+
step: (stepFunction: (input: {
|
|
919
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
920
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
921
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps_1 ? K_2 : never]: WhenDeps_1[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
922
|
+
then: { [K_3 in keyof ThenState as K_3 extends keyof ThenDeps ? K_3 : never]: ThenDeps[K_3] extends "optional" ? ThenState[K_3] | undefined : ThenState[K_3] };
|
|
923
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
924
|
+
statement: Statement extends string ? () => string : Statement;
|
|
925
|
+
expression: string;
|
|
926
|
+
dependencies: {
|
|
927
|
+
given: GivenDeps;
|
|
928
|
+
when: WhenDeps_1;
|
|
929
|
+
then: ThenDeps;
|
|
930
|
+
};
|
|
931
|
+
stepType: "then";
|
|
932
|
+
stepFunction: (input: {
|
|
933
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
934
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
935
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps_1 ? K_2 : never]: WhenDeps_1[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
936
|
+
then: { [K_3 in keyof ThenState as K_3 extends keyof ThenDeps ? K_3 : never]: ThenDeps[K_3] extends "optional" ? ThenState[K_3] | undefined : ThenState[K_3] };
|
|
937
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
938
|
+
register: () => {
|
|
939
|
+
stepType: "then";
|
|
940
|
+
expression: string;
|
|
941
|
+
dependencies: {
|
|
942
|
+
given: GivenDeps;
|
|
943
|
+
when: WhenDeps_1;
|
|
944
|
+
then: ThenDeps;
|
|
945
|
+
};
|
|
946
|
+
statement: Statement extends string ? () => string : Statement;
|
|
947
|
+
stepFunction: (input: {
|
|
948
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
949
|
+
given: { [K_1 in keyof GivenState as K_1 extends keyof GivenDeps ? K_1 : never]: GivenDeps[K_1] extends "optional" ? GivenState[K_1] | undefined : GivenState[K_1] };
|
|
950
|
+
when: { [K_2 in keyof WhenState as K_2 extends keyof WhenDeps_1 ? K_2 : never]: WhenDeps_1[K_2] extends "optional" ? WhenState[K_2] | undefined : WhenState[K_2] };
|
|
951
|
+
then: { [K_3 in keyof ThenState as K_3 extends keyof ThenDeps ? K_3 : never]: ThenDeps[K_3] extends "optional" ? ThenState[K_3] | undefined : ThenState[K_3] };
|
|
952
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
953
|
+
};
|
|
954
|
+
};
|
|
955
|
+
};
|
|
956
|
+
step: (stepFunction: (input: {
|
|
957
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
958
|
+
given: never;
|
|
959
|
+
when: never;
|
|
960
|
+
then: never;
|
|
961
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
962
|
+
statement: Statement extends string ? () => string : Statement;
|
|
963
|
+
expression: string;
|
|
964
|
+
dependencies: EmptyDependencies;
|
|
965
|
+
stepType: "then";
|
|
966
|
+
stepFunction: (input: {
|
|
967
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
968
|
+
given: never;
|
|
969
|
+
when: never;
|
|
970
|
+
then: never;
|
|
971
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
972
|
+
register: () => {
|
|
973
|
+
stepType: "then";
|
|
974
|
+
expression: string;
|
|
975
|
+
dependencies: EmptyDependencies;
|
|
976
|
+
statement: Statement extends string ? () => string : Statement;
|
|
977
|
+
stepFunction: (input: {
|
|
978
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
979
|
+
given: never;
|
|
980
|
+
when: never;
|
|
981
|
+
then: never;
|
|
982
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
983
|
+
};
|
|
984
|
+
};
|
|
985
|
+
};
|
|
986
|
+
step: (stepFunction: (input: {
|
|
987
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
988
|
+
given: never;
|
|
989
|
+
when: never;
|
|
990
|
+
then: never;
|
|
991
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>) => {
|
|
992
|
+
statement: Statement extends string ? () => string : Statement;
|
|
993
|
+
expression: string;
|
|
994
|
+
dependencies: EmptyDependencies;
|
|
995
|
+
stepType: "then";
|
|
996
|
+
stepFunction: (input: {
|
|
997
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
998
|
+
given: never;
|
|
999
|
+
when: never;
|
|
1000
|
+
then: never;
|
|
1001
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
1002
|
+
register: () => {
|
|
1003
|
+
stepType: "then";
|
|
1004
|
+
expression: string;
|
|
1005
|
+
dependencies: EmptyDependencies;
|
|
1006
|
+
statement: Statement extends string ? () => string : Statement;
|
|
1007
|
+
stepFunction: (input: {
|
|
1008
|
+
variables: Statement extends string ? [] : GetFunctionArgs<Statement>;
|
|
1009
|
+
given: never;
|
|
1010
|
+
when: never;
|
|
1011
|
+
then: never;
|
|
1012
|
+
}) => void | Promise<void> | Partial<ThenState> | Promise<Partial<ThenState>>;
|
|
1013
|
+
};
|
|
1014
|
+
};
|
|
1015
|
+
};
|
|
1016
|
+
};
|
|
1017
|
+
//#endregion
|
|
572
1018
|
//#region src/typeHelpers.d.ts
|
|
573
1019
|
type Prettify<T> = { [K in keyof T]: T[K] } & {};
|
|
574
1020
|
/**
|
|
@@ -595,5 +1041,5 @@ declare const analyzer: {
|
|
|
595
1041
|
defaultRules: AnalysisRule[];
|
|
596
1042
|
};
|
|
597
1043
|
//#endregion
|
|
598
|
-
export { type AnalysisRule, type AnalyzeOptions, type AnalyzerConfig, BasicWorld, type Diagnostic, type MatchedStep, type ParsedScenario, type ParsedStep, type Parser, type StateFromDependencies, type StepDefinitionMeta, analyzer, booleanParser, givenBuilder, intParser, numberParser, stringParser, thenBuilder, whenBuilder };
|
|
1044
|
+
export { type AnalysisRule, type AnalyzeOptions, type AnalyzerConfig, BasicWorld, type Diagnostic, type MatchedStep, type ParsedScenario, type ParsedStep, type Parser, type StateFromDependencies, type StepDefinitionMeta, analyzer, booleanParser, createBuilders, givenBuilder, intParser, numberParser, stringParser, thenBuilder, whenBuilder };
|
|
599
1045
|
//# sourceMappingURL=step-forge.d.ts.map
|
package/dist/step-forge.js
CHANGED
|
@@ -718,6 +718,15 @@ async function resolveGlobs(patterns) {
|
|
|
718
718
|
return [...new Set(files)];
|
|
719
719
|
}
|
|
720
720
|
//#endregion
|
|
721
|
+
//#region src/init.ts
|
|
722
|
+
const createBuilders = () => {
|
|
723
|
+
return {
|
|
724
|
+
Given: givenBuilder().statement,
|
|
725
|
+
When: whenBuilder().statement,
|
|
726
|
+
Then: thenBuilder().statement
|
|
727
|
+
};
|
|
728
|
+
};
|
|
729
|
+
//#endregion
|
|
721
730
|
//#region src/index.ts
|
|
722
731
|
const analyzer = {
|
|
723
732
|
analyze,
|
|
@@ -729,6 +738,6 @@ const analyzer = {
|
|
|
729
738
|
defaultRules
|
|
730
739
|
};
|
|
731
740
|
//#endregion
|
|
732
|
-
export { BasicWorld, analyzer, booleanParser, givenBuilder, intParser, numberParser, stringParser, thenBuilder, whenBuilder };
|
|
741
|
+
export { BasicWorld, analyzer, booleanParser, createBuilders, givenBuilder, intParser, numberParser, stringParser, thenBuilder, whenBuilder };
|
|
733
742
|
|
|
734
743
|
//# sourceMappingURL=step-forge.js.map
|