@@ -21,6 +21,7 @@ import Service from '@/services/Service';
2121
2222// types
2323import { ItemPagination } from '@/types/api/response' ;
24+ import { Persisted } from '@/types/entities' ;
2425import { BundleEntity , BundleProps } from '@/types/entities/Bundle' ;
2526import { LicenseEntity , LicenseProps } from '@/types/entities/License' ;
2627import { IBundleService } from '@/types/services/BundleService' ;
@@ -41,7 +42,7 @@ const type = Constants.Bundle.TYPE;
4142
4243const bundleService : IBundleService = {
4344 /**
44- * Gets bundle by its number.See NetLicensingAPI for details:
45+ * Gets a bundle by its number.See NetLicensingAPI for details:
4546 * @see https://netlicensing.io/wiki/bundle-services#get-bundle
4647 *
4748 * determines the vendor on whose behalf the call is performed
@@ -60,13 +61,13 @@ const bundleService: IBundleService = {
6061 context : ContextInstance ,
6162 number : string ,
6263 config ?: RequestConfig ,
63- ) : Promise < BundleEntity < T > > {
64+ ) : Promise < BundleEntity < Persisted < T > > > {
6465 ensureNotEmpty ( number , 'number' ) ;
6566
6667 const response = await Service . get ( context , `${ endpoint } /${ number } ` , { } , config ) ;
6768 const item = response . data . items ?. item . find ( ( v ) => v . type === type ) ;
6869
69- return itemToBundle < T > ( item ) ;
70+ return itemToBundle < Persisted < T > > ( item ) ;
7071 } ,
7172
7273 /**
@@ -89,7 +90,7 @@ const bundleService: IBundleService = {
8990 context : ContextInstance ,
9091 filter ?: Record < string , string | boolean | number > | string | null ,
9192 config ?: RequestConfig ,
92- ) : Promise < PageInstance < BundleEntity < T > [ ] > > {
93+ ) : Promise < PageInstance < BundleEntity < Persisted < T > > [ ] > > {
9394 const data : { [ Constants . FILTER ] : string } = { } ;
9495
9596 if ( filter ) {
@@ -99,15 +100,15 @@ const bundleService: IBundleService = {
99100 const response = await Service . get ( context , endpoint , data , config ) ;
100101 const items = response . data . items ;
101102
102- const bundles : BundleEntity < T > [ ] | undefined = items ?. item
103+ const bundles : BundleEntity < Persisted < T > > [ ] | undefined = items ?. item
103104 . filter ( ( v ) => v . type === type )
104- . map ( ( v ) => itemToBundle < T > ( v ) ) ;
105+ . map ( ( v ) => itemToBundle < Persisted < T > > ( v ) ) ;
105106
106107 return Page ( bundles || [ ] , items as ItemPagination ) ;
107108 } ,
108109
109110 /**
110- * Creates new bundle with given properties.See NetLicensingAPI for details:
111+ * Creates a new bundle with given properties.See NetLicensingAPI for details:
111112 * @see https://netlicensing.io/wiki/bundle-services#create-bundle
112113 *
113114 * determines the vendor on whose behalf the call is performed
@@ -127,13 +128,13 @@ const bundleService: IBundleService = {
127128 context : ContextInstance ,
128129 bundle : BundleEntity < T > ,
129130 config ?: RequestConfig ,
130- ) : Promise < BundleEntity < T > > {
131+ ) : Promise < BundleEntity < Persisted < T > > > {
131132 ensureNotNull ( bundle , 'bundle' ) ;
132133
133134 const response = await Service . post ( context , endpoint , bundle . serialize ( ) , config ) ;
134135 const item = response . data . items ?. item . find ( ( v ) => v . type === type ) ;
135136
136- return itemToBundle < T > ( item ) ;
137+ return itemToBundle < Persisted < T > > ( item ) ;
137138 } ,
138139
139140 /**
@@ -160,14 +161,14 @@ const bundleService: IBundleService = {
160161 number : string ,
161162 bundle : BundleEntity < T > ,
162163 config ?: RequestConfig ,
163- ) : Promise < BundleEntity < T > > {
164+ ) : Promise < BundleEntity < Persisted < T > > > {
164165 ensureNotEmpty ( number , 'number' ) ;
165166 ensureNotNull ( bundle , 'bundle' ) ;
166167
167168 const response = await Service . post ( context , `${ endpoint } /${ number } ` , bundle . serialize ( ) , config ) ;
168169 const item = response . data . items ?. item . find ( ( v ) => v . type === type ) ;
169170
170- return itemToBundle < T > ( item ) ;
171+ return itemToBundle < Persisted < T > > ( item ) ;
171172 } ,
172173
173174 /**
@@ -224,7 +225,7 @@ const bundleService: IBundleService = {
224225 number : string ,
225226 licenseeNumber : string ,
226227 config ?: RequestConfig ,
227- ) : Promise < LicenseEntity < T > [ ] > {
228+ ) : Promise < LicenseEntity < Persisted < T > > [ ] > {
228229 ensureNotEmpty ( number , 'number' ) ;
229230 ensureNotEmpty ( licenseeNumber , 'licenseeNumber' ) ;
230231
@@ -233,7 +234,9 @@ const bundleService: IBundleService = {
233234 const response = await Service . post ( context , `${ endpoint } /${ number } /${ endpointObtain } ` , data , config ) ;
234235 const items = response . data . items ;
235236
236- return items ?. item . filter ( ( v ) => v . type === Constants . License . TYPE ) . map ( ( v ) => itemToLicense < T > ( v ) ) || [ ] ;
237+ const licenses = items ?. item . filter ( ( v ) => v . type === Constants . License . TYPE ) ;
238+
239+ return licenses ?. map ( ( v ) => itemToLicense < Persisted < T > > ( v ) ) || [ ] ;
237240 } ,
238241} ;
239242
0 commit comments