@@ -2,6 +2,7 @@ import { attr, belongsTo, hasMany, AsyncBelongsTo, AsyncHasMany } from '@ember-d
22import { buildValidations , validator } from 'ember-cp-validations' ;
33
44import DraftRegistrationModel from 'ember-osf-web/models/draft-registration' ;
5+ import ResourceModel from 'ember-osf-web/models/resource' ;
56import ReviewActionModel , { ReviewActionTrigger } from 'ember-osf-web/models/review-action' ;
67import SchemaResponseModel , { RevisionReviewStates } from 'ember-osf-web/models/schema-response' ;
78import { RegistrationResponse } from 'ember-osf-web/packages/registration-schema' ;
@@ -106,6 +107,11 @@ export default class RegistrationModel extends NodeModel.extend(Validations) {
106107 @attr ( 'array' ) providerSpecificMetadata ! : ProviderMetadata [ ] ;
107108 @attr ( 'fixstring' ) revisionState ! : RevisionReviewStates ;
108109 @attr ( 'boolean' ) wikiEnabled ! : boolean ;
110+ @attr ( 'boolean' ) hasData ! : boolean ;
111+ @attr ( 'boolean' ) hasMaterials ! : boolean ;
112+ @attr ( 'boolean' ) hasAnalyticCode ! : boolean ;
113+ @attr ( 'boolean' ) hasPapers ! : boolean ;
114+ @attr ( 'boolean' ) hasSupplements ! : boolean ;
109115
110116 // Write-only attributes
111117 @attr ( 'array' ) includedNodeIds ?: string [ ] ;
@@ -153,9 +159,19 @@ export default class RegistrationModel extends NodeModel.extend(Validations) {
153159 @belongsTo ( 'schema-response' , { inverse : null } )
154160 latestResponse ! : AsyncBelongsTo < SchemaResponseModel > & SchemaResponseModel ; // Latest accepted response
155161
162+ @hasMany ( 'resource' , { inverse : 'registration' } )
163+ resources ! : AsyncHasMany < ResourceModel > | ResourceModel [ ] ;
164+
156165 // Write-only relationships
157166 @belongsTo ( 'draft-registration' , { inverse : null } )
158167 draftRegistration ! : DraftRegistrationModel ;
168+
169+ get resourcesVisible ( ) : boolean {
170+ return ! [
171+ RegistrationReviewStates . Initial ,
172+ RegistrationReviewStates . Pending ,
173+ ] . includes ( this . reviewsState ) && ! this . withdrawn && ! this . archiving ;
174+ }
159175}
160176
161177declare module 'ember-data/types/registries/model' {
0 commit comments