@@ -132,6 +132,7 @@ class RemoteDefinitionProvider extends DefinitionProvider {
132
132
: super (i18nProps, cacheEnabled: cacheEnabled);
133
133
final String path;
134
134
final String appHome;
135
+ UserAppConfig ? appConfig;
135
136
FlutterI18nDelegate ? _i18nDelegate;
136
137
137
138
@override
@@ -172,12 +173,19 @@ class RemoteDefinitionProvider extends DefinitionProvider {
172
173
173
174
@override
174
175
Future <AppBundle > getAppBundle ({bool ? bypassCache = false }) async {
176
+ final env = await _readYamlFile ('appConfig.yaml' );
177
+ if (env != null ) {
178
+ appConfig = UserAppConfig (
179
+ baseUrl: path,
180
+ envVariables: env as Map <String , dynamic >,
181
+ );
182
+ }
175
183
return AppBundle (
176
- theme: await _readFile ('theme.ensemble' ),
177
- resources: await _readFile ('resources.ensemble' ));
184
+ theme: await _readYamlFile ('theme.ensemble' ),
185
+ resources: await _readYamlFile ('resources.ensemble' ));
178
186
}
179
187
180
- Future <YamlMap ?> _readFile (String file) async {
188
+ Future <YamlMap ?> _readYamlFile (String file) async {
181
189
try {
182
190
http.Response response = await http.get (Uri .parse (path + file));
183
191
if (response.statusCode == 200 ) {
@@ -189,16 +197,14 @@ class RemoteDefinitionProvider extends DefinitionProvider {
189
197
return null ;
190
198
}
191
199
192
- // TODO: to be implemented
193
200
@override
194
201
UserAppConfig ? getAppConfig () {
195
- return null ;
202
+ return appConfig ;
196
203
}
197
204
198
- // TODO: to be implemented
199
205
@override
200
206
Map <String , String > getSecrets () {
201
- return < String , String > {} ;
207
+ return dotenv.env ;
202
208
}
203
209
}
204
210
0 commit comments