55namespace PackageWizard \Installer \Data \Casts ;
66
77use PackageWizard \Installer \Concerns \Data \ChoiceData ;
8- use PackageWizard \Installer \Data \Questions \QuestionAskSelectData ;
9- use PackageWizard \Installer \Data \Questions \QuestionAskTextData ;
108use PackageWizard \Installer \Data \Questions \QuestionAuthorData ;
119use PackageWizard \Installer \Data \Questions \QuestionLicenseData ;
12- use PackageWizard \Installer \Enums \PromptEnum ;
10+ use PackageWizard \Installer \Data \Questions \QuestionSelectData ;
11+ use PackageWizard \Installer \Data \Questions \QuestionTextData ;
1312use PackageWizard \Installer \Enums \TypeEnum ;
1413use Spatie \LaravelData \Casts \Cast ;
1514use Spatie \LaravelData \Data ;
@@ -21,31 +20,11 @@ class QuestionsCast implements Cast
2120 protected function map (string |TypeEnum $ type , array $ item ): Data
2221 {
2322 return match ($ this ->type ($ type )) {
24- TypeEnum::Ask => $ this ->ask ($ item ),
2523 TypeEnum::Author => QuestionAuthorData::from ($ item ),
2624 TypeEnum::License => QuestionLicenseData::from ($ item ),
25+ TypeEnum::Select => QuestionSelectData::from ($ item ),
26+ TypeEnum::Text => QuestionTextData::from ($ item ),
2727 default => $ this ->throw ($ type )
2828 };
2929 }
30-
31- protected function ask (array $ item ): Data
32- {
33- return match ($ this ->prompt ($ item ['prompt ' ] ?? null )) {
34- PromptEnum::Select => QuestionAskSelectData::from ($ item ),
35- default => QuestionAskTextData::from ($ item )
36- };
37- }
38-
39- protected function prompt (PromptEnum |string |null $ prompt ): ?PromptEnum
40- {
41- if ($ prompt === null ) {
42- return null ;
43- }
44-
45- if ($ prompt instanceof PromptEnum) {
46- return $ prompt ;
47- }
48-
49- return PromptEnum::tryFrom ($ prompt );
50- }
5130}
0 commit comments