7
7
use Orchestra \Testbench \Foundation \Console \Actions \EnsureDirectoryExists ;
8
8
use Orchestra \Testbench \Foundation \Console \Actions \GeneratesFile ;
9
9
use Orchestra \Workbench \Events \InstallEnded ;
10
+ use Orchestra \Workbench \StubRegistrar ;
10
11
use Orchestra \Workbench \Workbench ;
11
12
12
13
use function Illuminate \Filesystem \join_paths ;
@@ -53,7 +54,7 @@ public function handle(InstallEnded $event)
53
54
$ baseResource = Workbench::path (['app ' , 'Nova ' , 'Resource.php ' ])
54
55
);
55
56
56
- $ this ->replaceInFile ( $ baseResource );
57
+ StubRegistrar:: replaceInFile ( $ this ->files , $ baseResource );
57
58
58
59
(new GeneratesFile (
59
60
filesystem: $ this ->files ,
@@ -64,7 +65,7 @@ public function handle(InstallEnded $event)
64
65
$ userResource = Workbench::path (['app ' , 'Nova ' , 'User.php ' ])
65
66
);
66
67
67
- $ this ->replaceInFile ( $ userResource );
68
+ StubRegistrar:: replaceInFile ( $ this ->files , $ userResource );
68
69
69
70
(new GeneratesFile (
70
71
filesystem: $ this ->files ,
@@ -75,7 +76,7 @@ public function handle(InstallEnded $event)
75
76
$ serviceProvider = Workbench::path (['app ' , 'Providers ' , 'NovaServiceProvider.php ' ])
76
77
);
77
78
78
- $ this ->replaceInFile ( $ serviceProvider );
79
+ StubRegistrar:: replaceInFile ( $ this ->files , $ serviceProvider );
79
80
80
81
Collection::make ([
81
82
Workbench::path (['app ' , '.gitkeep ' ]),
@@ -87,71 +88,4 @@ public function handle(InstallEnded $event)
87
88
$ this ->files ->delete ($ file );
88
89
});
89
90
}
90
-
91
- /**
92
- * Replace strings in given file.
93
- */
94
- protected function replaceInFile (string $ filename ): void
95
- {
96
- $ workbenchAppNamespacePrefix = rtrim (Workbench::detectNamespace ('app ' ) ?? 'Workbench\App \\' , '\\' );
97
- $ workbenchFactoriesNamespacePrefix = rtrim (Workbench::detectNamespace ('database/factories ' ) ?? 'Workbench\Database\Factories \\' , '\\' );
98
- $ workbenchSeederNamespacePrefix = rtrim (Workbench::detectNamespace ('database/seeders ' ) ?? 'Workbench\Database\Seeders \\' , '\\' );
99
-
100
- $ serviceProvider = sprintf ('%s\Providers\WorkbenchServiceProvider ' , $ workbenchAppNamespacePrefix );
101
- $ databaseSeeder = sprintf ('%s\DatabaseSeeder ' , $ workbenchSeederNamespacePrefix );
102
- $ userModel = sprintf ('%s\Models\User ' , $ workbenchAppNamespacePrefix );
103
- $ userFactory = sprintf ('%s\UserFactory ' , $ workbenchFactoriesNamespacePrefix );
104
-
105
- $ this ->files ->replaceInFile (
106
- [
107
- '{{WorkbenchAppNamespace}} ' ,
108
- '{{ WorkbenchAppNamespace }} ' ,
109
- '{{WorkbenchFactoryNamespace}} ' ,
110
- '{{ WorkbenchFactoryNamespace }} ' ,
111
- '{{WorkbenchSeederNamespace}} ' ,
112
- '{{ WorkbenchSeederNamespace }} ' ,
113
-
114
- '{{WorkbenchServiceProvider}} ' ,
115
- '{{ WorkbenchServiceProvider }} ' ,
116
- 'Workbench\App\Providers\WorkbenchServiceProvider ' ,
117
-
118
- '{{WorkbenchDatabaseSeeder}} ' ,
119
- '{{ WorkbenchDatabaseSeeder }} ' ,
120
- 'Workbench\Database\Seeders\DatabaseSeeder ' ,
121
-
122
- '{{WorkbenchUserModel}} ' ,
123
- '{{ WorkbenchUserModel }} ' ,
124
- 'Workbench\App\Models\User ' ,
125
-
126
- '{{WorkbenchUserFactory}} ' ,
127
- '{{ WorkbenchUserFactory }} ' ,
128
- 'Workbench\Database\Factories\UserFactory ' ,
129
- ],
130
- [
131
- $ workbenchAppNamespacePrefix ,
132
- $ workbenchAppNamespacePrefix ,
133
- $ workbenchFactoriesNamespacePrefix ,
134
- $ workbenchFactoriesNamespacePrefix ,
135
- $ workbenchSeederNamespacePrefix ,
136
- $ workbenchSeederNamespacePrefix ,
137
-
138
- $ serviceProvider ,
139
- $ serviceProvider ,
140
- $ serviceProvider ,
141
-
142
- $ databaseSeeder ,
143
- $ databaseSeeder ,
144
- $ databaseSeeder ,
145
-
146
- $ userModel ,
147
- $ userModel ,
148
- $ userModel ,
149
-
150
- $ userFactory ,
151
- $ userFactory ,
152
- $ userFactory ,
153
- ],
154
- $ filename
155
- );
156
- }
157
91
}
0 commit comments