@veeroute/lss-packer-angular 7.21.2849 → 7.22.2904

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/README.md +118 -117
  2. package/api/packService.d.ts +4 -9
  3. package/api/packServiceInterface.d.ts +1 -1
  4. package/api/systemService.d.ts +4 -9
  5. package/api/systemServiceInterface.d.ts +1 -1
  6. package/api.base.service.d.ts +21 -0
  7. package/configuration.d.ts +4 -2
  8. package/esm2022/api/packService.mjs +69 -223
  9. package/esm2022/api/packServiceInterface.mjs +1 -1
  10. package/esm2022/api/systemService.mjs +32 -118
  11. package/esm2022/api/systemServiceInterface.mjs +1 -1
  12. package/esm2022/api.base.service.mjs +79 -0
  13. package/esm2022/configuration.mjs +33 -17
  14. package/esm2022/index.mjs +2 -1
  15. package/esm2022/model/attribute.mjs +2 -2
  16. package/esm2022/model/calculationAsyncResult.mjs +1 -1
  17. package/esm2022/model/calculationInfo.mjs +1 -1
  18. package/esm2022/model/calculationSettings.mjs +2 -2
  19. package/esm2022/model/calculationState.mjs +1 -1
  20. package/esm2022/model/calculationStatus.mjs +2 -2
  21. package/esm2022/model/checkResult.mjs +2 -2
  22. package/esm2022/model/coordinates.mjs +2 -2
  23. package/esm2022/model/custom400WithErrorsAndWarnings.mjs +1 -1
  24. package/esm2022/model/dimensions.mjs +2 -2
  25. package/esm2022/model/entityError.mjs +1 -1
  26. package/esm2022/model/entityErrorType.mjs +2 -2
  27. package/esm2022/model/entityPath.mjs +1 -1
  28. package/esm2022/model/entityType.mjs +2 -2
  29. package/esm2022/model/entityWarning.mjs +1 -1
  30. package/esm2022/model/entityWarningType.mjs +2 -2
  31. package/esm2022/model/general402.mjs +1 -1
  32. package/esm2022/model/general404.mjs +1 -1
  33. package/esm2022/model/general404Detail.mjs +1 -1
  34. package/esm2022/model/general429.mjs +1 -1
  35. package/esm2022/model/general500.mjs +1 -1
  36. package/esm2022/model/packResult.mjs +1 -1
  37. package/esm2022/model/packSettings.mjs +1 -1
  38. package/esm2022/model/packStatistics.mjs +1 -1
  39. package/esm2022/model/packTask.mjs +1 -1
  40. package/esm2022/model/package.mjs +1 -1
  41. package/esm2022/model/packageLayout.mjs +1 -1
  42. package/esm2022/model/packageStatistics.mjs +1 -1
  43. package/esm2022/model/packageType.mjs +2 -2
  44. package/esm2022/model/product.mjs +1 -1
  45. package/esm2022/model/productGroupLayout.mjs +1 -1
  46. package/esm2022/model/productLayout.mjs +1 -1
  47. package/esm2022/model/schemaError.mjs +2 -2
  48. package/esm2022/model/service.mjs +2 -2
  49. package/esm2022/model/tracedata.mjs +1 -1
  50. package/esm2022/model/unpackedItems.mjs +2 -2
  51. package/esm2022/model/validateResult.mjs +1 -1
  52. package/esm2022/model/versionResult.mjs +2 -2
  53. package/esm2022/provide-api.mjs +15 -0
  54. package/fesm2022/veeroute-lss-packer-angular.mjs +209 -343
  55. package/fesm2022/veeroute-lss-packer-angular.mjs.map +1 -1
  56. package/index.d.ts +1 -0
  57. package/model/attribute.d.ts +1 -1
  58. package/model/calculationAsyncResult.d.ts +1 -1
  59. package/model/calculationInfo.d.ts +1 -1
  60. package/model/calculationSettings.d.ts +1 -1
  61. package/model/calculationState.d.ts +1 -1
  62. package/model/calculationStatus.d.ts +1 -1
  63. package/model/checkResult.d.ts +1 -1
  64. package/model/coordinates.d.ts +1 -1
  65. package/model/custom400WithErrorsAndWarnings.d.ts +1 -1
  66. package/model/dimensions.d.ts +1 -1
  67. package/model/entityError.d.ts +1 -1
  68. package/model/entityErrorType.d.ts +1 -1
  69. package/model/entityPath.d.ts +1 -1
  70. package/model/entityType.d.ts +1 -1
  71. package/model/entityWarning.d.ts +1 -1
  72. package/model/entityWarningType.d.ts +1 -1
  73. package/model/general402.d.ts +1 -1
  74. package/model/general404.d.ts +1 -1
  75. package/model/general404Detail.d.ts +1 -1
  76. package/model/general429.d.ts +1 -1
  77. package/model/general500.d.ts +1 -1
  78. package/model/packResult.d.ts +1 -1
  79. package/model/packSettings.d.ts +1 -1
  80. package/model/packStatistics.d.ts +1 -1
  81. package/model/packTask.d.ts +1 -1
  82. package/model/package.d.ts +10 -1
  83. package/model/packageLayout.d.ts +7 -1
  84. package/model/packageStatistics.d.ts +1 -1
  85. package/model/packageType.d.ts +1 -1
  86. package/model/product.d.ts +4 -1
  87. package/model/productGroupLayout.d.ts +4 -1
  88. package/model/productLayout.d.ts +4 -1
  89. package/model/schemaError.d.ts +1 -1
  90. package/model/service.d.ts +1 -1
  91. package/model/tracedata.d.ts +1 -1
  92. package/model/unpackedItems.d.ts +1 -1
  93. package/model/validateResult.d.ts +1 -1
  94. package/model/versionResult.d.ts +1 -1
  95. package/package.json +1 -1
  96. package/provide-api.d.ts +3 -0
package/README.md CHANGED
@@ -1,162 +1,163 @@
1
- # @veeroute/lss-packer-angular@7.21.2849
1
+ # @veeroute/lss-packer-angular@7.22.2904
2
2
 
3
- ## General usage
3
+ Veeroute Packer API. # Description The service is designed to calculate the placement of goods inside given packages. ## Types of packages ### Pallet ![pallet](../images/packer_pallet.svg) *Mono-pallet* If the pallet is fully equipped with the same product, then such a pallet is called **mono-pallet**, such a pallet has the following loading rules: 1. The maximum allowable height of the pallet with the goods laid on it is taken into account. 1. The maximum allowable weight of the loaded pallet is taken into account. 1. Goods packages can only be stacked parallel to the walls of the pallet. 1. It is allowed to rotate packages around the vertical Z-axis and only at a right angle. 1. In order to equalize the height between the positions (to place another pallet on top), empty spaces can be added to the stacking by layers. *Zone tray* After the formation of mono-pallets, the remaining part of the goods of the same article is placed on the next pallet, which is divided into zones by means of a cardboard partition in such a way that only one item of goods is placed in each zone, while the zones have the following restrictions: 1. The zones are rectangular. 1. The ratio between the sides of the zones can be any. 1. One of the sides of any zone is always in contact with the edge of the pallet. 1. Permissible number of zones on a pallet: from 2 to 6. 1. Each zone is filled according to the rules for filling a mono-pallet. 1. The stacking height of all goods does not exceed 50 mm, so that another pallet can be placed on top of such a pallet. 1. It is allowed to form pallets with different stacking heights for different positions (height difference is more than 50 mm), if these are the top pallets in the stack. ### Mixbox ![mixbox](../images/packer_mixbox.svg) If the above steps fail to place the item in this way, so that the pallet is of the required height or weight, mixboxes are used: 1. Mixbox can only be placed in one layer. 1. Different goods can be placed in one mixbox, in this case it is divided by partitions similarly to a pallet (the only difference is that the height of the packed goods is not aligned). 1. Mixboxes can be mixed with items on the same pallet. 1. One product can be packed in different mixboxes. ### Slot ![slot](../images/packer_slot.svg) The loaded pallets are stacked on top of each other, the slot is where the stack of pallets is placed. The slot has no physical body - so the dimensions of the `body` of the slot are zero. ## Coordinate system ![coordinates](../images/packer_coordinates.svg) To indicate the location of packages and goods, a local coordinate system is used, in which the coordinates of a particular object are indicated relative to the near left lower corner of the parent object, while: * Horizontal plane - axes **X**, **Y** * Vertical - **Z** axis The ratio of the axes of goods and packages: * Width - **X** * Length - **Y** * Height - **Z** ## Entity diagram ![erd](../uml/packer.svg)
4
4
 
5
- In your Angular project:
5
+ The version of the OpenAPI document: 7.22.2904
6
6
 
7
+ ## Building
7
8
 
8
- ```
9
- // without configuring providers
10
- import { LssPackerApiModule } from '@veeroute/lss-packer-angular';
11
- import { HttpClientModule } from '@angular/common/http';
9
+ To install the required dependencies and to build the typescript sources run:
12
10
 
13
- @NgModule({
14
- imports: [
15
- LssPackerApiModule,
16
- // make sure to import the HttpClientModule in the AppModule only,
17
- // see https://github.com/angular/angular/issues/20575
18
- HttpClientModule
19
- ],
20
- declarations: [ AppComponent ],
21
- providers: [],
22
- bootstrap: [ AppComponent ]
23
- })
24
- export class AppModule {}
11
+ ```console
12
+ npm install
13
+ npm run build
25
14
  ```
26
15
 
27
- ```typescript
28
- // configuring providers
29
- import { LssPackerApiModule, Configuration, ConfigurationParameters } from '@veeroute/lss-packer-angular';
30
-
31
- export function apiConfigFactory (): Configuration {
32
- const params: ConfigurationParameters = {
33
- // set configuration parameters here.
34
- }
35
- return new Configuration(params);
36
- }
37
-
38
- @NgModule({
39
- imports: [ LssPackerApiModule.forRoot(apiConfigFactory) ],
40
- declarations: [ AppComponent ],
41
- providers: [],
42
- bootstrap: [ AppComponent ]
43
- })
44
- export class AppModule {}
45
- ```
16
+ ## Publishing
46
17
 
47
- ```typescript
48
- // configuring providers with an authentication service that manages your access tokens
49
- import { LssPackerApiModule, Configuration } from '@veeroute/lss-packer-angular';
18
+ First build the package then run `npm publish dist` (don't forget to specify the `dist` folder!)
50
19
 
51
- @NgModule({
52
- imports: [ LssPackerApiModule ],
53
- declarations: [ AppComponent ],
54
- providers: [
55
- {
56
- provide: Configuration,
57
- useFactory: (authService: AuthService) => new Configuration(
58
- {
59
- basePath: environment.apiUrl,
60
- accessToken: authService.getAccessToken.bind(authService)
61
- }
62
- ),
63
- deps: [AuthService],
64
- multi: false
65
- }
66
- ],
67
- bootstrap: [ AppComponent ]
68
- })
69
- export class AppModule {}
20
+ ## Consuming
21
+
22
+ Navigate to the folder of your consuming project and run one of next commands.
23
+
24
+ _published:_
25
+
26
+ ```console
27
+ npm install @veeroute/lss-packer-angular@7.22.2904 --save
70
28
  ```
71
29
 
72
- ```typescript
73
- import { DefaultApi } from '@veeroute/lss-packer-angular';
30
+ _without publishing (not recommended):_
74
31
 
75
- export class AppComponent {
76
- constructor(private apiGateway: DefaultApi) { }
77
- }
32
+ ```console
33
+ npm install PATH_TO_GENERATED_PACKAGE/dist.tgz --save
78
34
  ```
79
35
 
80
- Note: The LssPackerApiModule is restricted to being instantiated once app wide.
81
- This is to ensure that all services are treated as singletons.
36
+ _It's important to take the tgz file, otherwise you'll get trouble with links on windows_
82
37
 
83
- ### Using multiple OpenAPI files / APIs / LssPackerApiModules
38
+ _using `npm link`:_
84
39
 
85
- In order to use multiple `LssPackerApiModules` generated from different OpenAPI files,
86
- you can create an alias name when importing the modules
87
- in order to avoid naming conflicts:
40
+ In PATH_TO_GENERATED_PACKAGE/dist:
88
41
 
89
- ```typescript
90
- import { LssPackerApiModule } from 'my-api-path';
91
- import { LssPackerApiModule as OtherApiModule } from 'my-other-api-path';
92
- import { HttpClientModule } from '@angular/common/http';
42
+ ```console
43
+ npm link
44
+ ```
93
45
 
94
- @NgModule({
95
- imports: [
96
- LssPackerApiModule,
97
- OtherApiModule,
98
- // make sure to import the HttpClientModule in the AppModule only,
99
- // see https://github.com/angular/angular/issues/20575
100
- HttpClientModule
101
- ]
102
- })
103
- export class AppModule {
46
+ In your project:
104
47
 
105
- }
48
+ ```console
49
+ npm link @veeroute/lss-packer-angular
106
50
  ```
107
51
 
108
- ### Set service base path
52
+ __Note for Windows users:__ The Angular CLI has troubles to use linked npm packages.
53
+ Please refer to this issue <https://github.com/angular/angular-cli/issues/8284> for a solution / workaround.
54
+ Published packages are not effected by this issue.
55
+
56
+ ### General usage
109
57
 
110
- If different than the generated base path, during app bootstrap, you can provide the base path to your service.
58
+ In your Angular project:
111
59
 
112
60
  ```typescript
113
- import { BASE_PATH } from '@veeroute/lss-packer-angular';
114
61
 
115
- bootstrap(AppComponent, [
116
- { provide: BASE_PATH, useValue: 'https://your-web-service.com' },
117
- ]);
62
+ import { ApplicationConfig } from '@angular/core';
63
+ import { provideHttpClient } from '@angular/common/http';
64
+ import { provideApi } from '@veeroute/lss-packer-angular';
65
+
66
+ export const appConfig: ApplicationConfig = {
67
+ providers: [
68
+ // ...
69
+ provideHttpClient(),
70
+ provideApi()
71
+ ],
72
+ };
118
73
  ```
119
74
 
120
- or
75
+ **NOTE**
76
+ If you're still using `AppModule` and haven't [migrated](https://angular.dev/reference/migrations/standalone) yet, you can still import an Angular module:
77
+ ```typescript
78
+ import { LssPackerApiModule } from '@veeroute/lss-packer-angular';
79
+ ```
80
+
81
+ If different from the generated base path, during app bootstrap, you can provide the base path to your service.
121
82
 
122
83
  ```typescript
123
- import { BASE_PATH } from '@veeroute/lss-packer-angular';
84
+ import { ApplicationConfig } from '@angular/core';
85
+ import { provideHttpClient } from '@angular/common/http';
86
+ import { provideApi } from '@veeroute/lss-packer-angular';
124
87
 
125
- @NgModule({
126
- imports: [],
127
- declarations: [ AppComponent ],
128
- providers: [ provide: BASE_PATH, useValue: 'https://your-web-service.com' ],
129
- bootstrap: [ AppComponent ]
130
- })
131
- export class AppModule {}
88
+ export const appConfig: ApplicationConfig = {
89
+ providers: [
90
+ // ...
91
+ provideHttpClient(),
92
+ provideApi('http://localhost:9999')
93
+ ],
94
+ };
132
95
  ```
133
96
 
134
- ### Using @angular/cli
97
+ ```typescript
98
+ // with a custom configuration
99
+ import { ApplicationConfig } from '@angular/core';
100
+ import { provideHttpClient } from '@angular/common/http';
101
+ import { provideApi } from '@veeroute/lss-packer-angular';
135
102
 
136
- First extend your `src/environments/*.ts` files by adding the corresponding base path:
103
+ export const appConfig: ApplicationConfig = {
104
+ providers: [
105
+ // ...
106
+ provideHttpClient(),
107
+ provideApi({
108
+ withCredentials: true,
109
+ username: 'user',
110
+ password: 'password'
111
+ })
112
+ ],
113
+ };
114
+ ```
137
115
 
138
116
  ```typescript
139
- export const environment = {
140
- production: false,
141
- API_BASE_PATH: 'http://127.0.0.1:8080'
117
+ // with factory building a custom configuration
118
+ import { ApplicationConfig } from '@angular/core';
119
+ import { provideHttpClient } from '@angular/common/http';
120
+ import { provideApi, Configuration } from '@veeroute/lss-packer-angular';
121
+
122
+ export const appConfig: ApplicationConfig = {
123
+ providers: [
124
+ // ...
125
+ provideHttpClient(),
126
+ {
127
+ provide: Configuration,
128
+ useFactory: (authService: AuthService) => new Configuration({
129
+ basePath: 'http://localhost:9999',
130
+ withCredentials: true,
131
+ username: authService.getUsername(),
132
+ password: authService.getPassword(),
133
+ }),
134
+ deps: [AuthService],
135
+ multi: false
136
+ }
137
+ ],
142
138
  };
143
139
  ```
144
140
 
145
- In the src/app/app.module.ts:
141
+ ### Using multiple OpenAPI files / APIs
142
+
143
+ In order to use multiple APIs generated from different OpenAPI files,
144
+ you can create an alias name when importing the modules
145
+ in order to avoid naming conflicts:
146
146
 
147
147
  ```typescript
148
- import { BASE_PATH } from '@veeroute/lss-packer-angular';
148
+ import { provideApi as provideUserApi } from 'my-user-api-path';
149
+ import { provideApi as provideAdminApi } from 'my-admin-api-path';
150
+ import { HttpClientModule } from '@angular/common/http';
149
151
  import { environment } from '../environments/environment';
150
152
 
151
- @NgModule({
152
- declarations: [
153
- AppComponent
154
- ],
155
- imports: [ ],
156
- providers: [{ provide: BASE_PATH, useValue: environment.API_BASE_PATH }],
157
- bootstrap: [ AppComponent ]
158
- })
159
- export class AppModule { }
153
+ export const appConfig: ApplicationConfig = {
154
+ providers: [
155
+ // ...
156
+ provideHttpClient(),
157
+ provideUserApi(environment.basePath),
158
+ provideAdminApi(environment.basePath),
159
+ ],
160
+ };
160
161
  ```
161
162
 
162
163
  ### Customizing path parameter encoding
@@ -1,21 +1,16 @@
1
- import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http';
1
+ import { HttpClient, HttpResponse, HttpEvent, HttpContext } from '@angular/common/http';
2
2
  import { Observable } from 'rxjs';
3
3
  import { CalculationAsyncResultPacker } from '../model/calculationAsyncResult';
4
4
  import { CalculationStatePacker } from '../model/calculationState';
5
5
  import { PackResultPacker } from '../model/packResult';
6
6
  import { ValidateResultPacker } from '../model/validateResult';
7
7
  import { Configuration } from '../configuration';
8
+ import { BaseService } from '../api.base.service';
8
9
  import { PackServiceInterface, CancelPackCalculationRequestParams, DeletePackResultRequestParams, ReadPackResultRequestParams, ReadPackStateRequestParams, RunPackCalculationRequestParams, RunPackCalculationAsyncRequestParams, RunPackValidationRequestParams } from './packServiceInterface';
9
10
  import * as i0 from "@angular/core";
10
- export declare class PackService implements PackServiceInterface {
11
+ export declare class PackService extends BaseService implements PackServiceInterface {
11
12
  protected httpClient: HttpClient;
12
- protected basePath: string;
13
- defaultHeaders: HttpHeaders;
14
- configuration: Configuration;
15
- encoder: HttpParameterCodec;
16
- constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration);
17
- private addToHttpParams;
18
- private addToHttpParamsRecursive;
13
+ constructor(httpClient: HttpClient, basePath: string | string[], configuration?: Configuration);
19
14
  /**
20
15
  * Cancel calculation
21
16
  * Cancel calculation process by the calculation identifier.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * VRt.Packer [PC]
3
3
  *
4
- * The version of the OpenAPI document: 7.21.2849
4
+ * The version of the OpenAPI document: 7.22.2904
5
5
  * Contact: servicedesk@veeroute.com
6
6
  *
7
7
  * NOTE: This class is auto generated by OpenAPI Generator.
@@ -1,19 +1,14 @@
1
- import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http';
1
+ import { HttpClient, HttpResponse, HttpEvent, HttpContext } from '@angular/common/http';
2
2
  import { Observable } from 'rxjs';
3
3
  import { CheckResultPacker } from '../model/checkResult';
4
4
  import { VersionResultPacker } from '../model/versionResult';
5
5
  import { Configuration } from '../configuration';
6
+ import { BaseService } from '../api.base.service';
6
7
  import { SystemServiceInterface, FileRequestParams } from './systemServiceInterface';
7
8
  import * as i0 from "@angular/core";
8
- export declare class SystemService implements SystemServiceInterface {
9
+ export declare class SystemService extends BaseService implements SystemServiceInterface {
9
10
  protected httpClient: HttpClient;
10
- protected basePath: string;
11
- defaultHeaders: HttpHeaders;
12
- configuration: Configuration;
13
- encoder: HttpParameterCodec;
14
- constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration);
15
- private addToHttpParams;
16
- private addToHttpParamsRecursive;
11
+ constructor(httpClient: HttpClient, basePath: string | string[], configuration?: Configuration);
17
12
  /**
18
13
  * Checking the availability
19
14
  * Checking the service availability.
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * VRt.Packer [PC]
3
3
  *
4
- * The version of the OpenAPI document: 7.21.2849
4
+ * The version of the OpenAPI document: 7.22.2904
5
5
  * Contact: servicedesk@veeroute.com
6
6
  *
7
7
  * NOTE: This class is auto generated by OpenAPI Generator.
@@ -0,0 +1,21 @@
1
+ /**
2
+ * VRt.Packer [PC]
3
+ *
4
+ * The version of the OpenAPI document: 7.22.2904
5
+ * Contact: servicedesk@veeroute.com
6
+ *
7
+ * NOTE: This class is auto generated by OpenAPI Generator.
8
+ * Do not edit the class manually.
9
+ */
10
+ import { HttpHeaders, HttpParams, HttpParameterCodec } from '@angular/common/http';
11
+ import { Configuration } from './configuration';
12
+ export declare class BaseService {
13
+ protected basePath: string;
14
+ defaultHeaders: HttpHeaders;
15
+ configuration: Configuration;
16
+ encoder: HttpParameterCodec;
17
+ constructor(basePath?: string | string[], configuration?: Configuration);
18
+ protected canConsumeForm(consumes: string[]): boolean;
19
+ protected addToHttpParams(httpParams: HttpParams, value: any, key?: string, isDeep?: boolean): HttpParams;
20
+ protected addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string, isDeep?: boolean): HttpParams;
21
+ }
@@ -1,4 +1,4 @@
1
- import { HttpParameterCodec } from '@angular/common/http';
1
+ import { HttpHeaders, HttpParams, HttpParameterCodec } from '@angular/common/http';
2
2
  import { Param } from './param';
3
3
  export interface ConfigurationParameters {
4
4
  /**
@@ -71,7 +71,7 @@ export declare class Configuration {
71
71
  credentials: {
72
72
  [key: string]: string | (() => string | undefined);
73
73
  };
74
- constructor(configurationParameters?: ConfigurationParameters);
74
+ constructor({ accessToken, apiKeys, basePath, credentials, encodeParam, encoder, password, username, withCredentials }?: ConfigurationParameters);
75
75
  /**
76
76
  * Select the correct content-type to use for a request.
77
77
  * Uses {@link Configuration#isJsonMime} to determine the correct content-type.
@@ -100,5 +100,7 @@ export declare class Configuration {
100
100
  */
101
101
  isJsonMime(mime: string): boolean;
102
102
  lookupCredential(key: string): string | undefined;
103
+ addCredentialToHeaders(credentialKey: string, headerName: string, headers: HttpHeaders, prefix?: string): HttpHeaders;
104
+ addCredentialToQuery(credentialKey: string, paramName: string, query: HttpParams): HttpParams;
103
105
  private defaultEncodeParam;
104
106
  }