@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
26 lines • 2.77 kB
JavaScript
/**
* Factory function that creates a configuration loader for application initialization.
* This function serves as an APP_INITIALIZER provider factory to load configuration
* before the application bootstrap completes.
*
* @param configurationService - Injectable service handling configuration loading and management
* @returns A function that returns an Observable which resolves when configuration is loaded
* @throws {Error} When configuration service fails to load required configuration
* @example
* ```typescript
* providers: [
* {
* provide: APP_INITIALIZER,
* useFactory: loadConfiguration,
* deps: [ConfigurationService],
* multi: true
* }
* ]
* ```
*/
export function loadConfiguration(configurationService) {
return () => {
return configurationService.loadConfiguration();
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1jb25maWd1cmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi91dGlsaXR5L2xvYWQtY29uZmlndXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxvQkFBMEM7SUFDeEUsT0FBTyxHQUFvQixFQUFFO1FBQ3pCLE9BQU8sb0JBQW9CLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUNwRCxDQUFDLENBQUE7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb25maWd1cmF0aW9uU2VydmljZX0gZnJvbSAnLi4vY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBGYWN0b3J5IGZ1bmN0aW9uIHRoYXQgY3JlYXRlcyBhIGNvbmZpZ3VyYXRpb24gbG9hZGVyIGZvciBhcHBsaWNhdGlvbiBpbml0aWFsaXphdGlvbi5cbiAqIFRoaXMgZnVuY3Rpb24gc2VydmVzIGFzIGFuIEFQUF9JTklUSUFMSVpFUiBwcm92aWRlciBmYWN0b3J5IHRvIGxvYWQgY29uZmlndXJhdGlvblxuICogYmVmb3JlIHRoZSBhcHBsaWNhdGlvbiBib290c3RyYXAgY29tcGxldGVzLlxuICpcbiAqIEBwYXJhbSBjb25maWd1cmF0aW9uU2VydmljZSAtIEluamVjdGFibGUgc2VydmljZSBoYW5kbGluZyBjb25maWd1cmF0aW9uIGxvYWRpbmcgYW5kIG1hbmFnZW1lbnRcbiAqIEByZXR1cm5zIEEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGFuIE9ic2VydmFibGUgd2hpY2ggcmVzb2x2ZXMgd2hlbiBjb25maWd1cmF0aW9uIGlzIGxvYWRlZFxuICogQHRocm93cyB7RXJyb3J9IFdoZW4gY29uZmlndXJhdGlvbiBzZXJ2aWNlIGZhaWxzIHRvIGxvYWQgcmVxdWlyZWQgY29uZmlndXJhdGlvblxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIHByb3ZpZGVyczogW1xuICogICB7XG4gKiAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICogICAgIHVzZUZhY3Rvcnk6IGxvYWRDb25maWd1cmF0aW9uLFxuICogICAgIGRlcHM6IFtDb25maWd1cmF0aW9uU2VydmljZV0sXG4gKiAgICAgbXVsdGk6IHRydWVcbiAqICAgfVxuICogXVxuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsb2FkQ29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uU2VydmljZTogQ29uZmlndXJhdGlvblNlcnZpY2UpOiAoKSA9PiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiAoKTogT2JzZXJ2YWJsZTxhbnk+ID0+IHtcbiAgICAgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb25TZXJ2aWNlLmxvYWRDb25maWd1cmF0aW9uKCk7XG4gICAgfVxufVxuIl19