@@ -38,7 +38,7 @@ function updateConfigFile(options: ServiceWorkerOptions): Rule {
3838
3939 const workspace = getWorkspace ( host ) ;
4040
41- const project = workspace . projects [ options . project ] ;
41+ const project = workspace . projects [ options . project as string ] ;
4242
4343 if ( ! project ) {
4444 throw new Error ( `Project is not defined in this workspace.` ) ;
@@ -94,7 +94,7 @@ function updateAppModule(options: ServiceWorkerOptions): Rule {
9494
9595 // find app module
9696 const workspace = getWorkspace ( host ) ;
97- const project = workspace . projects [ options . project ] ;
97+ const project = workspace . projects [ options . project as string ] ;
9898 if ( ! project . architect ) {
9999 throw new Error ( 'Project architect not found.' ) ;
100100 }
@@ -164,7 +164,7 @@ function getTsSourceFile(host: Tree, path: string): ts.SourceFile {
164164function updateIndexFile ( options : ServiceWorkerOptions ) : Rule {
165165 return ( host : Tree , context : SchematicContext ) => {
166166 const workspace = getWorkspace ( host ) ;
167- const project = workspace . projects [ options . project ] ;
167+ const project = workspace . projects [ options . project as string ] ;
168168 let path : string ;
169169 if ( project && project . architect && project . architect . build &&
170170 project . architect . build . options . index ) {
@@ -227,6 +227,9 @@ function getIndent(text: string): string {
227227export default function ( options : ServiceWorkerOptions ) : Rule {
228228 return ( host : Tree , context : SchematicContext ) => {
229229 const workspace = getWorkspace ( host ) ;
230+ if ( ! options . project ) {
231+ throw new SchematicsException ( 'Option "project" is required.' ) ;
232+ }
230233 const project = workspace . projects [ options . project ] ;
231234 if ( ! project ) {
232235 throw new SchematicsException ( `Invalid project name (${ options . project } )` ) ;
0 commit comments