mirror of
https://github.com/angular/angular-cli.git
synced 2025-05-18 11:44:05 +08:00
Adds a `--functional` flag to the interceptor schematic to generate a functional interceptor (as we can now do for guards and resolvers)
31 lines
939 B
TypeScript
Executable File
31 lines
939 B
TypeScript
Executable File
/**
|
|
* @license
|
|
* Copyright Google LLC All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
* found in the LICENSE file at https://angular.io/license
|
|
*/
|
|
|
|
import { Rule } from '@angular-devkit/schematics';
|
|
import { generateFromFiles } from '../utility/generate-from-files';
|
|
import { Schema as InterceptorOptions } from './schema';
|
|
|
|
export default function (options: InterceptorOptions): Rule {
|
|
// This schematic uses an older method to implement the flat option
|
|
const flat = options.flat;
|
|
options.flat = true;
|
|
const extraTemplateValues = {
|
|
'if-flat': (s: string) => (flat ? '' : s),
|
|
};
|
|
|
|
return options.functional
|
|
? generateFromFiles(
|
|
{ ...options, templateFilesDirectory: './functional-files' },
|
|
extraTemplateValues,
|
|
)
|
|
: generateFromFiles(
|
|
{ ...options, templateFilesDirectory: './class-files' },
|
|
extraTemplateValues,
|
|
);
|
|
}
|