@excent/excent-serv-positions 0.0.1

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.
package/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # ExcentServPositions
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 15.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project excent-serv-positions` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project excent-serv-positions`.
8
+ > Note: Don't forget to add `--project excent-serv-positions` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build excent-serv-positions` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build excent-serv-positions`, go to the dist folder `cd dist/excent-serv-positions` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test excent-serv-positions` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjZW50LWV4Y2VudC1zZXJ2LXBvc2l0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2V4Y2VudC1zZXJ2LXBvc2l0aW9ucy9zcmMvZXhjZW50LWV4Y2VudC1zZXJ2LXBvc2l0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -0,0 +1,19 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ExcentServPositionsComponent {
4
+ }
5
+ ExcentServPositionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ ExcentServPositionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ExcentServPositionsComponent, selector: "lib-excent-serv-positions", ngImport: i0, template: `
7
+ <p>
8
+ excent-serv-positions works!
9
+ </p>
10
+ `, isInline: true });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsComponent, decorators: [{
12
+ type: Component,
13
+ args: [{ selector: 'lib-excent-serv-positions', template: `
14
+ <p>
15
+ excent-serv-positions works!
16
+ </p>
17
+ ` }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjZW50LXNlcnYtcG9zaXRpb25zLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2V4Y2VudC1zZXJ2LXBvc2l0aW9ucy9zcmMvbGliL2V4Y2VudC1zZXJ2LXBvc2l0aW9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFZMUMsTUFBTSxPQUFPLDRCQUE0Qjs7eUhBQTVCLDRCQUE0Qjs2R0FBNUIsNEJBQTRCLGlFQVI3Qjs7OztHQUlUOzJGQUlVLDRCQUE0QjtrQkFWeEMsU0FBUzsrQkFDRSwyQkFBMkIsWUFDM0I7Ozs7R0FJVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItZXhjZW50LXNlcnYtcG9zaXRpb25zJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8cD5cbiAgICAgIGV4Y2VudC1zZXJ2LXBvc2l0aW9ucyB3b3JrcyFcbiAgICA8L3A+XG4gIGAsXG4gIHN0eWxlczogW1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIEV4Y2VudFNlcnZQb3NpdGlvbnNDb21wb25lbnQge1xufVxuIl19
@@ -0,0 +1,10 @@
1
+ export const endpoint = {
2
+ open: '/position/open/',
3
+ closed: '/position/closed/',
4
+ order: '/position/order/',
5
+ wsCancelOrder: '/position/order/cancel/',
6
+ closePosition: '/position/close-position/',
7
+ positionSummary: '/report/position-summary',
8
+ listOpen: '/positions/trading-positions/',
9
+ };
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjZW50LXNlcnYtcG9zaXRpb25zLmVucG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXhjZW50LXNlcnYtcG9zaXRpb25zL3NyYy9saWIvZXhjZW50LXNlcnYtcG9zaXRpb25zLmVucG9pbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRztJQUN0QixJQUFJLEVBQUUsaUJBQWlCO0lBQ3ZCLE1BQU0sRUFBRSxtQkFBbUI7SUFDM0IsS0FBSyxFQUFFLGtCQUFrQjtJQUN6QixhQUFhLEVBQUUseUJBQXlCO0lBQ3hDLGFBQWEsRUFBRSwyQkFBMkI7SUFDMUMsZUFBZSxFQUFFLDBCQUEwQjtJQUMzQyxRQUFRLEVBQUUsK0JBQStCO0NBQzFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW5kcG9pbnQgPSB7XG4gIG9wZW46ICcvcG9zaXRpb24vb3Blbi8nLFxuICBjbG9zZWQ6ICcvcG9zaXRpb24vY2xvc2VkLycsXG4gIG9yZGVyOiAnL3Bvc2l0aW9uL29yZGVyLycsXG4gIHdzQ2FuY2VsT3JkZXI6ICcvcG9zaXRpb24vb3JkZXIvY2FuY2VsLycsXG4gIGNsb3NlUG9zaXRpb246ICcvcG9zaXRpb24vY2xvc2UtcG9zaXRpb24vJyxcbiAgcG9zaXRpb25TdW1tYXJ5OiAnL3JlcG9ydC9wb3NpdGlvbi1zdW1tYXJ5JyxcbiAgbGlzdE9wZW46ICcvcG9zaXRpb25zL3RyYWRpbmctcG9zaXRpb25zLycsXG59O1xuIl19
@@ -0,0 +1,21 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { ExcentServPositionsComponent } from './excent-serv-positions.component';
3
+ import * as i0 from "@angular/core";
4
+ export class ExcentServPositionsModule {
5
+ }
6
+ ExcentServPositionsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
+ ExcentServPositionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, declarations: [ExcentServPositionsComponent], exports: [ExcentServPositionsComponent] });
8
+ ExcentServPositionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, decorators: [{
10
+ type: NgModule,
11
+ args: [{
12
+ declarations: [
13
+ ExcentServPositionsComponent
14
+ ],
15
+ imports: [],
16
+ exports: [
17
+ ExcentServPositionsComponent
18
+ ]
19
+ }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjZW50LXNlcnYtcG9zaXRpb25zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2V4Y2VudC1zZXJ2LXBvc2l0aW9ucy9zcmMvbGliL2V4Y2VudC1zZXJ2LXBvc2l0aW9ucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFjakYsTUFBTSxPQUFPLHlCQUF5Qjs7c0hBQXpCLHlCQUF5Qjt1SEFBekIseUJBQXlCLGlCQVJsQyw0QkFBNEIsYUFLNUIsNEJBQTRCO3VIQUduQix5QkFBeUI7MkZBQXpCLHlCQUF5QjtrQkFWckMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osNEJBQTRCO3FCQUM3QjtvQkFDRCxPQUFPLEVBQUUsRUFDUjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsNEJBQTRCO3FCQUM3QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFeGNlbnRTZXJ2UG9zaXRpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9leGNlbnQtc2Vydi1wb3NpdGlvbnMuY29tcG9uZW50JztcblxuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEV4Y2VudFNlcnZQb3NpdGlvbnNDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRXhjZW50U2VydlBvc2l0aW9uc0NvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEV4Y2VudFNlcnZQb3NpdGlvbnNNb2R1bGUgeyB9XG4iXX0=
@@ -0,0 +1,61 @@
1
+ import { HttpParams } from '@angular/common/http';
2
+ import { Injectable } from '@angular/core';
3
+ import { Symbol } from 'dist/excent-models';
4
+ import { endpoint } from './excent-serv-positions.enpoints';
5
+ import { map } from 'rxjs/operators';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common/http";
8
+ export class ExcentServPositionsService {
9
+ constructor(httpClient) {
10
+ this.httpClient = httpClient;
11
+ }
12
+ getPositionsByIdUser(idUser) {
13
+ const params = new HttpParams().set('idAccount', idUser);
14
+ return this.httpClient.get(endpoint.open, { params });
15
+ }
16
+ IPosition(position) {
17
+ return this.httpClient.post(endpoint.open, position);
18
+ }
19
+ reloadPositions(idUser) {
20
+ const params = new HttpParams().set('idAccount', idUser);
21
+ return this.httpClient.get(endpoint.open, { params });
22
+ }
23
+ getOpen(tradingAccountUuid) {
24
+ const params = new HttpParams().set('tradingAccount', tradingAccountUuid);
25
+ return this.httpClient
26
+ .get(endpoint.listOpen, { params })
27
+ .pipe(map((_res) => {
28
+ let resArray = [];
29
+ _res.forEach((item) => {
30
+ let res = {
31
+ uuid: item.uuid,
32
+ buy: item.buy,
33
+ volume: item.volume,
34
+ openPrice: item.openPrice,
35
+ marginRequired: item.marginRequired,
36
+ stopLoss: item.stopLoss,
37
+ takeProfit: item.takeProfit,
38
+ open: item.open,
39
+ tradingAccount: item.tradingAccount,
40
+ symbolId: item.symbol,
41
+ symbol: new Symbol(),
42
+ order: item.order,
43
+ master: item.master,
44
+ creationDate: item.creationDate,
45
+ commissions: item.commissions,
46
+ };
47
+ resArray.push(res);
48
+ });
49
+ return resArray;
50
+ }));
51
+ }
52
+ }
53
+ ExcentServPositionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
54
+ ExcentServPositionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, providedIn: 'root' });
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, decorators: [{
56
+ type: Injectable,
57
+ args: [{
58
+ providedIn: 'root',
59
+ }]
60
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjZW50LXNlcnYtcG9zaXRpb25zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9leGNlbnQtc2Vydi1wb3NpdGlvbnMvc3JjL2xpYi9leGNlbnQtc2Vydi1wb3NpdGlvbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWdDLE1BQU0sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUU1RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUtyQyxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7SUFBRyxDQUFDO0lBRTlDLG9CQUFvQixDQUFDLE1BQWM7UUFDakMsTUFBTSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQWMsUUFBUSxDQUFDLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVNLFNBQVMsQ0FBQyxRQUF5QjtRQUN4QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFZLFFBQVEsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVNLGVBQWUsQ0FBQyxNQUFjO1FBQ25DLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6RCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFjLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTSxPQUFPLENBQUMsa0JBQTBCO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDMUUsT0FBTyxJQUFJLENBQUMsVUFBVTthQUNuQixHQUFHLENBQTJCLFFBQVEsQ0FBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQzthQUM1RCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDWCxJQUFJLFFBQVEsR0FBcUIsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDcEIsSUFBSSxHQUFHLEdBQWM7b0JBQ25CLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtvQkFDZixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7b0JBQ2IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO29CQUNuQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7b0JBQ3pCLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztvQkFDbkMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUN2QixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7b0JBQzNCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtvQkFDZixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7b0JBQ25DLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTTtvQkFDckIsTUFBTSxFQUFFLElBQUksTUFBTSxFQUFFO29CQUNwQixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7b0JBQ2pCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtvQkFDbkIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO29CQUMvQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7aUJBQzlCLENBQUM7Z0JBQ0YsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNyQixDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDOzt1SEEvQ1UsMEJBQTBCOzJIQUExQiwwQkFBMEIsY0FGekIsTUFBTTsyRkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElSZXNwb25zZVBvc2l0aW9uLCBJUG9zaXRpb24sIFN5bWJvbCB9IGZyb20gJ2Rpc3QvZXhjZW50LW1vZGVscyc7XG5pbXBvcnQgeyBlbmRwb2ludCB9IGZyb20gJy4vZXhjZW50LXNlcnYtcG9zaXRpb25zLmVucG9pbnRzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIEV4Y2VudFNlcnZQb3NpdGlvbnNTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSB7fVxuXG4gIGdldFBvc2l0aW9uc0J5SWRVc2VyKGlkVXNlcjogbnVtYmVyKTogT2JzZXJ2YWJsZTxJUG9zaXRpb25bXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCdpZEFjY291bnQnLCBpZFVzZXIpO1xuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0PElQb3NpdGlvbltdPihlbmRwb2ludC5vcGVuLCB7IHBhcmFtcyB9KTtcbiAgfVxuXG4gIHB1YmxpYyBJUG9zaXRpb24ocG9zaXRpb246IElQb3NpdGlvbiB8IGFueSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PElQb3NpdGlvbj4oZW5kcG9pbnQub3BlbiwgcG9zaXRpb24pO1xuICB9XG5cbiAgcHVibGljIHJlbG9hZFBvc2l0aW9ucyhpZFVzZXI6IG51bWJlcik6IE9ic2VydmFibGU8SVBvc2l0aW9uW10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpLnNldCgnaWRBY2NvdW50JywgaWRVc2VyKTtcbiAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldDxJUG9zaXRpb25bXT4oZW5kcG9pbnQub3BlbiwgeyBwYXJhbXMgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0T3Blbih0cmFkaW5nQWNjb3VudFV1aWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXk8SVBvc2l0aW9uPj4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCkuc2V0KCd0cmFkaW5nQWNjb3VudCcsIHRyYWRpbmdBY2NvdW50VXVpZCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxuICAgICAgLmdldDxBcnJheTxJUmVzcG9uc2VQb3NpdGlvbj4+KGVuZHBvaW50Lmxpc3RPcGVuLCB7IHBhcmFtcyB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoX3JlcykgPT4ge1xuICAgICAgICAgIGxldCByZXNBcnJheTogQXJyYXk8SVBvc2l0aW9uPiA9IFtdO1xuICAgICAgICAgIF9yZXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgbGV0IHJlczogSVBvc2l0aW9uID0ge1xuICAgICAgICAgICAgICB1dWlkOiBpdGVtLnV1aWQsXG4gICAgICAgICAgICAgIGJ1eTogaXRlbS5idXksXG4gICAgICAgICAgICAgIHZvbHVtZTogaXRlbS52b2x1bWUsXG4gICAgICAgICAgICAgIG9wZW5QcmljZTogaXRlbS5vcGVuUHJpY2UsXG4gICAgICAgICAgICAgIG1hcmdpblJlcXVpcmVkOiBpdGVtLm1hcmdpblJlcXVpcmVkLFxuICAgICAgICAgICAgICBzdG9wTG9zczogaXRlbS5zdG9wTG9zcyxcbiAgICAgICAgICAgICAgdGFrZVByb2ZpdDogaXRlbS50YWtlUHJvZml0LFxuICAgICAgICAgICAgICBvcGVuOiBpdGVtLm9wZW4sXG4gICAgICAgICAgICAgIHRyYWRpbmdBY2NvdW50OiBpdGVtLnRyYWRpbmdBY2NvdW50LFxuICAgICAgICAgICAgICBzeW1ib2xJZDogaXRlbS5zeW1ib2wsXG4gICAgICAgICAgICAgIHN5bWJvbDogbmV3IFN5bWJvbCgpLFxuICAgICAgICAgICAgICBvcmRlcjogaXRlbS5vcmRlcixcbiAgICAgICAgICAgICAgbWFzdGVyOiBpdGVtLm1hc3RlcixcbiAgICAgICAgICAgICAgY3JlYXRpb25EYXRlOiBpdGVtLmNyZWF0aW9uRGF0ZSxcbiAgICAgICAgICAgICAgY29tbWlzc2lvbnM6IGl0ZW0uY29tbWlzc2lvbnMsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmVzQXJyYXkucHVzaChyZXMpO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybiByZXNBcnJheTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ /*
2
+ * Public API Surface of excent-serv-positions
3
+ */
4
+ export * from './lib/excent-serv-positions.service';
5
+ export * from './lib/excent-serv-positions.component';
6
+ export * from './lib/excent-serv-positions.module';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2V4Y2VudC1zZXJ2LXBvc2l0aW9ucy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBleGNlbnQtc2Vydi1wb3NpdGlvbnNcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9leGNlbnQtc2Vydi1wb3NpdGlvbnMuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9leGNlbnQtc2Vydi1wb3NpdGlvbnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2V4Y2VudC1zZXJ2LXBvc2l0aW9ucy5tb2R1bGUnO1xuIl19
@@ -0,0 +1,116 @@
1
+ import * as i1 from '@angular/common/http';
2
+ import { HttpParams } from '@angular/common/http';
3
+ import * as i0 from '@angular/core';
4
+ import { Injectable, Component, NgModule } from '@angular/core';
5
+ import { Symbol } from 'dist/excent-models';
6
+ import { map } from 'rxjs/operators';
7
+
8
+ const endpoint = {
9
+ open: '/position/open/',
10
+ closed: '/position/closed/',
11
+ order: '/position/order/',
12
+ wsCancelOrder: '/position/order/cancel/',
13
+ closePosition: '/position/close-position/',
14
+ positionSummary: '/report/position-summary',
15
+ listOpen: '/positions/trading-positions/',
16
+ };
17
+
18
+ class ExcentServPositionsService {
19
+ constructor(httpClient) {
20
+ this.httpClient = httpClient;
21
+ }
22
+ getPositionsByIdUser(idUser) {
23
+ const params = new HttpParams().set('idAccount', idUser);
24
+ return this.httpClient.get(endpoint.open, { params });
25
+ }
26
+ IPosition(position) {
27
+ return this.httpClient.post(endpoint.open, position);
28
+ }
29
+ reloadPositions(idUser) {
30
+ const params = new HttpParams().set('idAccount', idUser);
31
+ return this.httpClient.get(endpoint.open, { params });
32
+ }
33
+ getOpen(tradingAccountUuid) {
34
+ const params = new HttpParams().set('tradingAccount', tradingAccountUuid);
35
+ return this.httpClient
36
+ .get(endpoint.listOpen, { params })
37
+ .pipe(map((_res) => {
38
+ let resArray = [];
39
+ _res.forEach((item) => {
40
+ let res = {
41
+ uuid: item.uuid,
42
+ buy: item.buy,
43
+ volume: item.volume,
44
+ openPrice: item.openPrice,
45
+ marginRequired: item.marginRequired,
46
+ stopLoss: item.stopLoss,
47
+ takeProfit: item.takeProfit,
48
+ open: item.open,
49
+ tradingAccount: item.tradingAccount,
50
+ symbolId: item.symbol,
51
+ symbol: new Symbol(),
52
+ order: item.order,
53
+ master: item.master,
54
+ creationDate: item.creationDate,
55
+ commissions: item.commissions,
56
+ };
57
+ resArray.push(res);
58
+ });
59
+ return resArray;
60
+ }));
61
+ }
62
+ }
63
+ ExcentServPositionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
64
+ ExcentServPositionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, providedIn: 'root' });
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, decorators: [{
66
+ type: Injectable,
67
+ args: [{
68
+ providedIn: 'root',
69
+ }]
70
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
71
+
72
+ class ExcentServPositionsComponent {
73
+ }
74
+ ExcentServPositionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
75
+ ExcentServPositionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ExcentServPositionsComponent, selector: "lib-excent-serv-positions", ngImport: i0, template: `
76
+ <p>
77
+ excent-serv-positions works!
78
+ </p>
79
+ `, isInline: true });
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsComponent, decorators: [{
81
+ type: Component,
82
+ args: [{ selector: 'lib-excent-serv-positions', template: `
83
+ <p>
84
+ excent-serv-positions works!
85
+ </p>
86
+ ` }]
87
+ }] });
88
+
89
+ class ExcentServPositionsModule {
90
+ }
91
+ ExcentServPositionsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
92
+ ExcentServPositionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, declarations: [ExcentServPositionsComponent], exports: [ExcentServPositionsComponent] });
93
+ ExcentServPositionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule });
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, decorators: [{
95
+ type: NgModule,
96
+ args: [{
97
+ declarations: [
98
+ ExcentServPositionsComponent
99
+ ],
100
+ imports: [],
101
+ exports: [
102
+ ExcentServPositionsComponent
103
+ ]
104
+ }]
105
+ }] });
106
+
107
+ /*
108
+ * Public API Surface of excent-serv-positions
109
+ */
110
+
111
+ /**
112
+ * Generated bundle index. Do not edit.
113
+ */
114
+
115
+ export { ExcentServPositionsComponent, ExcentServPositionsModule, ExcentServPositionsService };
116
+ //# sourceMappingURL=excent-excent-serv-positions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"excent-excent-serv-positions.mjs","sources":["../../../projects/excent-serv-positions/src/lib/excent-serv-positions.enpoints.ts","../../../projects/excent-serv-positions/src/lib/excent-serv-positions.service.ts","../../../projects/excent-serv-positions/src/lib/excent-serv-positions.component.ts","../../../projects/excent-serv-positions/src/lib/excent-serv-positions.module.ts","../../../projects/excent-serv-positions/src/public-api.ts","../../../projects/excent-serv-positions/src/excent-excent-serv-positions.ts"],"sourcesContent":["export const endpoint = {\n open: '/position/open/',\n closed: '/position/closed/',\n order: '/position/order/',\n wsCancelOrder: '/position/order/cancel/',\n closePosition: '/position/close-position/',\n positionSummary: '/report/position-summary',\n listOpen: '/positions/trading-positions/',\n};\n","import { HttpClient, HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { IResponsePosition, IPosition, Symbol } from 'dist/excent-models';\nimport { endpoint } from './excent-serv-positions.enpoints';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ExcentServPositionsService {\n constructor(private httpClient: HttpClient) {}\n\n getPositionsByIdUser(idUser: number): Observable<IPosition[]> {\n const params = new HttpParams().set('idAccount', idUser);\n return this.httpClient.get<IPosition[]>(endpoint.open, { params });\n }\n\n public IPosition(position: IPosition | any): Observable<any> {\n return this.httpClient.post<IPosition>(endpoint.open, position);\n }\n\n public reloadPositions(idUser: number): Observable<IPosition[]> {\n const params = new HttpParams().set('idAccount', idUser);\n return this.httpClient.get<IPosition[]>(endpoint.open, { params });\n }\n\n public getOpen(tradingAccountUuid: string): Observable<Array<IPosition>> {\n const params = new HttpParams().set('tradingAccount', tradingAccountUuid);\n return this.httpClient\n .get<Array<IResponsePosition>>(endpoint.listOpen, { params })\n .pipe(\n map((_res) => {\n let resArray: Array<IPosition> = [];\n _res.forEach((item) => {\n let res: IPosition = {\n uuid: item.uuid,\n buy: item.buy,\n volume: item.volume,\n openPrice: item.openPrice,\n marginRequired: item.marginRequired,\n stopLoss: item.stopLoss,\n takeProfit: item.takeProfit,\n open: item.open,\n tradingAccount: item.tradingAccount,\n symbolId: item.symbol,\n symbol: new Symbol(),\n order: item.order,\n master: item.master,\n creationDate: item.creationDate,\n commissions: item.commissions,\n };\n resArray.push(res);\n });\n return resArray;\n })\n );\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'lib-excent-serv-positions',\n template: `\n <p>\n excent-serv-positions works!\n </p>\n `,\n styles: [\n ]\n})\nexport class ExcentServPositionsComponent {\n}\n","import { NgModule } from '@angular/core';\nimport { ExcentServPositionsComponent } from './excent-serv-positions.component';\n\n\n\n@NgModule({\n declarations: [\n ExcentServPositionsComponent\n ],\n imports: [\n ],\n exports: [\n ExcentServPositionsComponent\n ]\n})\nexport class ExcentServPositionsModule { }\n","/*\n * Public API Surface of excent-serv-positions\n */\n\nexport * from './lib/excent-serv-positions.service';\nexport * from './lib/excent-serv-positions.component';\nexport * from './lib/excent-serv-positions.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,116 @@
1
+ import * as i1 from '@angular/common/http';
2
+ import { HttpParams } from '@angular/common/http';
3
+ import * as i0 from '@angular/core';
4
+ import { Injectable, Component, NgModule } from '@angular/core';
5
+ import { Symbol } from 'dist/excent-models';
6
+ import { map } from 'rxjs/operators';
7
+
8
+ const endpoint = {
9
+ open: '/position/open/',
10
+ closed: '/position/closed/',
11
+ order: '/position/order/',
12
+ wsCancelOrder: '/position/order/cancel/',
13
+ closePosition: '/position/close-position/',
14
+ positionSummary: '/report/position-summary',
15
+ listOpen: '/positions/trading-positions/',
16
+ };
17
+
18
+ class ExcentServPositionsService {
19
+ constructor(httpClient) {
20
+ this.httpClient = httpClient;
21
+ }
22
+ getPositionsByIdUser(idUser) {
23
+ const params = new HttpParams().set('idAccount', idUser);
24
+ return this.httpClient.get(endpoint.open, { params });
25
+ }
26
+ IPosition(position) {
27
+ return this.httpClient.post(endpoint.open, position);
28
+ }
29
+ reloadPositions(idUser) {
30
+ const params = new HttpParams().set('idAccount', idUser);
31
+ return this.httpClient.get(endpoint.open, { params });
32
+ }
33
+ getOpen(tradingAccountUuid) {
34
+ const params = new HttpParams().set('tradingAccount', tradingAccountUuid);
35
+ return this.httpClient
36
+ .get(endpoint.listOpen, { params })
37
+ .pipe(map((_res) => {
38
+ let resArray = [];
39
+ _res.forEach((item) => {
40
+ let res = {
41
+ uuid: item.uuid,
42
+ buy: item.buy,
43
+ volume: item.volume,
44
+ openPrice: item.openPrice,
45
+ marginRequired: item.marginRequired,
46
+ stopLoss: item.stopLoss,
47
+ takeProfit: item.takeProfit,
48
+ open: item.open,
49
+ tradingAccount: item.tradingAccount,
50
+ symbolId: item.symbol,
51
+ symbol: new Symbol(),
52
+ order: item.order,
53
+ master: item.master,
54
+ creationDate: item.creationDate,
55
+ commissions: item.commissions,
56
+ };
57
+ resArray.push(res);
58
+ });
59
+ return resArray;
60
+ }));
61
+ }
62
+ }
63
+ ExcentServPositionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
64
+ ExcentServPositionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, providedIn: 'root' });
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsService, decorators: [{
66
+ type: Injectable,
67
+ args: [{
68
+ providedIn: 'root',
69
+ }]
70
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
71
+
72
+ class ExcentServPositionsComponent {
73
+ }
74
+ ExcentServPositionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
75
+ ExcentServPositionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ExcentServPositionsComponent, selector: "lib-excent-serv-positions", ngImport: i0, template: `
76
+ <p>
77
+ excent-serv-positions works!
78
+ </p>
79
+ `, isInline: true });
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsComponent, decorators: [{
81
+ type: Component,
82
+ args: [{ selector: 'lib-excent-serv-positions', template: `
83
+ <p>
84
+ excent-serv-positions works!
85
+ </p>
86
+ ` }]
87
+ }] });
88
+
89
+ class ExcentServPositionsModule {
90
+ }
91
+ ExcentServPositionsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
92
+ ExcentServPositionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, declarations: [ExcentServPositionsComponent], exports: [ExcentServPositionsComponent] });
93
+ ExcentServPositionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule });
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ExcentServPositionsModule, decorators: [{
95
+ type: NgModule,
96
+ args: [{
97
+ declarations: [
98
+ ExcentServPositionsComponent
99
+ ],
100
+ imports: [],
101
+ exports: [
102
+ ExcentServPositionsComponent
103
+ ]
104
+ }]
105
+ }] });
106
+
107
+ /*
108
+ * Public API Surface of excent-serv-positions
109
+ */
110
+
111
+ /**
112
+ * Generated bundle index. Do not edit.
113
+ */
114
+
115
+ export { ExcentServPositionsComponent, ExcentServPositionsModule, ExcentServPositionsService };
116
+ //# sourceMappingURL=excent-excent-serv-positions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"excent-excent-serv-positions.mjs","sources":["../../../projects/excent-serv-positions/src/lib/excent-serv-positions.enpoints.ts","../../../projects/excent-serv-positions/src/lib/excent-serv-positions.service.ts","../../../projects/excent-serv-positions/src/lib/excent-serv-positions.component.ts","../../../projects/excent-serv-positions/src/lib/excent-serv-positions.module.ts","../../../projects/excent-serv-positions/src/public-api.ts","../../../projects/excent-serv-positions/src/excent-excent-serv-positions.ts"],"sourcesContent":["export const endpoint = {\n open: '/position/open/',\n closed: '/position/closed/',\n order: '/position/order/',\n wsCancelOrder: '/position/order/cancel/',\n closePosition: '/position/close-position/',\n positionSummary: '/report/position-summary',\n listOpen: '/positions/trading-positions/',\n};\n","import { HttpClient, HttpParams } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { IResponsePosition, IPosition, Symbol } from 'dist/excent-models';\nimport { endpoint } from './excent-serv-positions.enpoints';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ExcentServPositionsService {\n constructor(private httpClient: HttpClient) {}\n\n getPositionsByIdUser(idUser: number): Observable<IPosition[]> {\n const params = new HttpParams().set('idAccount', idUser);\n return this.httpClient.get<IPosition[]>(endpoint.open, { params });\n }\n\n public IPosition(position: IPosition | any): Observable<any> {\n return this.httpClient.post<IPosition>(endpoint.open, position);\n }\n\n public reloadPositions(idUser: number): Observable<IPosition[]> {\n const params = new HttpParams().set('idAccount', idUser);\n return this.httpClient.get<IPosition[]>(endpoint.open, { params });\n }\n\n public getOpen(tradingAccountUuid: string): Observable<Array<IPosition>> {\n const params = new HttpParams().set('tradingAccount', tradingAccountUuid);\n return this.httpClient\n .get<Array<IResponsePosition>>(endpoint.listOpen, { params })\n .pipe(\n map((_res) => {\n let resArray: Array<IPosition> = [];\n _res.forEach((item) => {\n let res: IPosition = {\n uuid: item.uuid,\n buy: item.buy,\n volume: item.volume,\n openPrice: item.openPrice,\n marginRequired: item.marginRequired,\n stopLoss: item.stopLoss,\n takeProfit: item.takeProfit,\n open: item.open,\n tradingAccount: item.tradingAccount,\n symbolId: item.symbol,\n symbol: new Symbol(),\n order: item.order,\n master: item.master,\n creationDate: item.creationDate,\n commissions: item.commissions,\n };\n resArray.push(res);\n });\n return resArray;\n })\n );\n }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'lib-excent-serv-positions',\n template: `\n <p>\n excent-serv-positions works!\n </p>\n `,\n styles: [\n ]\n})\nexport class ExcentServPositionsComponent {\n}\n","import { NgModule } from '@angular/core';\nimport { ExcentServPositionsComponent } from './excent-serv-positions.component';\n\n\n\n@NgModule({\n declarations: [\n ExcentServPositionsComponent\n ],\n imports: [\n ],\n exports: [\n ExcentServPositionsComponent\n ]\n})\nexport class ExcentServPositionsModule { }\n","/*\n * Public API Surface of excent-serv-positions\n */\n\nexport * from './lib/excent-serv-positions.service';\nexport * from './lib/excent-serv-positions.component';\nexport * from './lib/excent-serv-positions.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@excent/excent-serv-positions" />
5
+ export * from './public-api';
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class ExcentServPositionsComponent {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<ExcentServPositionsComponent, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<ExcentServPositionsComponent, "lib-excent-serv-positions", never, {}, {}, never, never, false, never>;
5
+ }
@@ -0,0 +1,9 @@
1
+ export declare const endpoint: {
2
+ open: string;
3
+ closed: string;
4
+ order: string;
5
+ wsCancelOrder: string;
6
+ closePosition: string;
7
+ positionSummary: string;
8
+ listOpen: string;
9
+ };
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./excent-serv-positions.component";
3
+ export declare class ExcentServPositionsModule {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<ExcentServPositionsModule, never>;
5
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ExcentServPositionsModule, [typeof i1.ExcentServPositionsComponent], never, [typeof i1.ExcentServPositionsComponent]>;
6
+ static ɵinj: i0.ɵɵInjectorDeclaration<ExcentServPositionsModule>;
7
+ }
@@ -0,0 +1,14 @@
1
+ import { HttpClient } from '@angular/common/http';
2
+ import { IPosition } from 'dist/excent-models';
3
+ import { Observable } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ export declare class ExcentServPositionsService {
6
+ private httpClient;
7
+ constructor(httpClient: HttpClient);
8
+ getPositionsByIdUser(idUser: number): Observable<IPosition[]>;
9
+ IPosition(position: IPosition | any): Observable<any>;
10
+ reloadPositions(idUser: number): Observable<IPosition[]>;
11
+ getOpen(tradingAccountUuid: string): Observable<Array<IPosition>>;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<ExcentServPositionsService, never>;
13
+ static ɵprov: i0.ɵɵInjectableDeclaration<ExcentServPositionsService>;
14
+ }
package/package.json ADDED
@@ -0,0 +1,41 @@
1
+ {
2
+ "name": "@excent/excent-serv-positions",
3
+ "version": "0.0.1",
4
+ "peerDependencies": {
5
+ "@excent/excent-models": "^0.0.8",
6
+ "@angular/common": "^15.2.0",
7
+ "@angular/core": "^15.2.0"
8
+ },
9
+ "dependencies": {
10
+ "@excent/excent-models": "^0.0.8",
11
+ "tslib": "^2.3.0"
12
+ },
13
+ "sideEffects": false,
14
+ "description": "This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 15.2.0.",
15
+ "main": "index.js",
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "Libraries"
19
+ },
20
+ "author": "Excent Capital",
21
+ "license": "ISC",
22
+ "module": "fesm2015/excent-excent-serv-positions.mjs",
23
+ "es2020": "fesm2020/excent-excent-serv-positions.mjs",
24
+ "esm2020": "esm2020/excent-excent-serv-positions.mjs",
25
+ "fesm2020": "fesm2020/excent-excent-serv-positions.mjs",
26
+ "fesm2015": "fesm2015/excent-excent-serv-positions.mjs",
27
+ "typings": "index.d.ts",
28
+ "exports": {
29
+ "./package.json": {
30
+ "default": "./package.json"
31
+ },
32
+ ".": {
33
+ "types": "./index.d.ts",
34
+ "esm2020": "./esm2020/excent-excent-serv-positions.mjs",
35
+ "es2020": "./fesm2020/excent-excent-serv-positions.mjs",
36
+ "es2015": "./fesm2015/excent-excent-serv-positions.mjs",
37
+ "node": "./fesm2015/excent-excent-serv-positions.mjs",
38
+ "default": "./fesm2020/excent-excent-serv-positions.mjs"
39
+ }
40
+ }
41
+ }
@@ -0,0 +1,3 @@
1
+ export * from './lib/excent-serv-positions.service';
2
+ export * from './lib/excent-serv-positions.component';
3
+ export * from './lib/excent-serv-positions.module';