Compare commits
226 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e4f070826d | ||
|
|
bf84db1254 | ||
|
|
36ea9bbba1 | ||
|
|
bd63ef3837 | ||
|
|
0283850cce | ||
|
|
dd1380f13b | ||
|
|
811c1560c4 | ||
|
|
257cc64d8d | ||
|
|
7abf246fd5 | ||
|
|
3aea0e6acc | ||
|
|
d3bf735edc | ||
|
|
de09fe22a7 | ||
|
|
75bbf452d2 | ||
|
|
c5f3ddc4f2 | ||
|
|
6751e8f0e3 | ||
|
|
aa4e6a9008 | ||
|
|
9ef992752c | ||
|
|
9ca0d8c374 | ||
|
|
0ba99ed104 | ||
|
|
a4b2262699 | ||
|
|
6f93a796a5 | ||
|
|
2388fb6796 | ||
|
|
a920087c2c | ||
|
|
676057c583 | ||
|
|
bc9d2979f0 | ||
|
|
4f79244f41 | ||
|
|
297fe7bdbf | ||
|
|
52f4d11085 | ||
|
|
c4fe70cd9a | ||
|
|
422e5223c0 | ||
|
|
ccfb966afa | ||
|
|
a4a0c0a8d6 | ||
|
|
749e607634 | ||
|
|
ae7c30cf23 | ||
|
|
72e18a5758 | ||
|
|
8fdef58216 | ||
|
|
493d0f255d | ||
|
|
aba0eeff9c | ||
|
|
600390ba5d | ||
|
|
14d1c929a8 | ||
|
|
22b0f5f66e | ||
|
|
368d1fb318 | ||
|
|
fd7f2011ba | ||
|
|
4d55ea40f1 | ||
|
|
3436b762bb | ||
|
|
d154688afc | ||
|
|
d40f7b2aef | ||
|
|
ef53b8856e | ||
|
|
4cf3611134 | ||
|
|
a33bfa3012 | ||
|
|
2fe3ff5a0d | ||
|
|
e6b03ad6b7 | ||
|
|
b7fb34bf07 | ||
|
|
a87924e6e6 | ||
|
|
4d58eff50b | ||
|
|
5cf2e46c20 | ||
|
|
89c431d651 | ||
|
|
f7b21062d4 | ||
|
|
1486130bb2 | ||
|
|
52d612ce3e | ||
|
|
f44aad53d9 | ||
|
|
e3fd3151c9 | ||
|
|
a8288938f5 | ||
|
|
3c3d6b0477 | ||
|
|
695943a194 | ||
|
|
40f3ad19e0 | ||
|
|
57d0c14aa5 | ||
|
|
f715a0c910 | ||
|
|
6f97c0e712 | ||
|
|
1ba83095d4 | ||
|
|
d798fe4b40 | ||
|
|
b8d9d60df9 | ||
|
|
6da9570384 | ||
|
|
031c989747 | ||
|
|
d57936a780 | ||
|
|
558f1523d4 | ||
|
|
183d743600 | ||
|
|
47688990ff | ||
|
|
7fea117e64 | ||
|
|
a2b623a36c | ||
|
|
00bbd12e6d | ||
|
|
29dd07c1bd | ||
|
|
646c075ebe | ||
|
|
6c00375362 | ||
|
|
2baaa1e0d5 | ||
|
|
007b2bcc97 | ||
|
|
7e74f80e0f | ||
|
|
3833e45655 | ||
|
|
825bdfb3e1 | ||
|
|
e924252a21 | ||
|
|
dd3078b943 | ||
|
|
bfa1c9201a | ||
|
|
dbd7a10202 | ||
|
|
0328373022 | ||
|
|
a072653cac | ||
|
|
794eb8c908 | ||
|
|
62cc26e65d | ||
|
|
f7a0968a5e | ||
|
|
3acba670ee | ||
|
|
3a3cb3196e | ||
|
|
d742a4ff2f | ||
|
|
990b0d80e3 | ||
|
|
2d512b49be | ||
|
|
61b57d5bc7 | ||
|
|
8f48cfbc69 | ||
|
|
9cee830fd4 | ||
|
|
4f481fd88f | ||
|
|
2faf109353 | ||
|
|
19a0fa715e | ||
|
|
2e194b72b8 | ||
|
|
039a13bd30 | ||
|
|
26fa09541a | ||
|
|
cfbe52efc1 | ||
|
|
a267fedaef | ||
|
|
d6cb0fc78f | ||
|
|
1fbbbde1a1 | ||
|
|
08721bb810 | ||
|
|
68d2bef6ba | ||
|
|
5199cabd26 | ||
|
|
59546838ac | ||
|
|
4740163572 | ||
|
|
22af7f903e | ||
|
|
e921182575 | ||
|
|
b88e356536 | ||
|
|
9292bba09a | ||
|
|
8b1e978e7c | ||
|
|
24b1252911 | ||
|
|
edece4f91c | ||
|
|
b84d6631b3 | ||
|
|
73a427bb09 | ||
|
|
0063e27bb2 | ||
|
|
24708f2bd8 | ||
|
|
317266e09a | ||
|
|
a9ad3d34f9 | ||
|
|
2b2554e4f7 | ||
|
|
343c14d846 | ||
|
|
fd158a2e56 | ||
|
|
dd542457de | ||
|
|
74cacd2854 | ||
|
|
5fada4feed | ||
|
|
4ef3df4d1d | ||
|
|
d7ba6dca3b | ||
|
|
0702c2a058 | ||
|
|
3fb9c3b522 | ||
|
|
22d7b724a1 | ||
|
|
9a627d4927 | ||
|
|
c8fddfe18d | ||
|
|
805a93dc60 | ||
|
|
f65391ef6d | ||
|
|
6ed9bedae0 | ||
|
|
6b4757df36 | ||
|
|
e1970e716b | ||
|
|
b996cf004c | ||
|
|
92f325a67b | ||
|
|
81919c8e9d | ||
|
|
2a3eccfe30 | ||
|
|
14158d3f60 | ||
|
|
fbec2def38 | ||
|
|
b610a376f1 | ||
|
|
d9f7eff0f2 | ||
|
|
8399f18e11 | ||
|
|
067dc2c7da | ||
|
|
a7f8c42983 | ||
|
|
8d041ee600 | ||
|
|
186fb52ac1 | ||
|
|
2814c92a2e | ||
|
|
fb5abbdee0 | ||
|
|
6c29373a0f | ||
|
|
ece1183e55 | ||
|
|
54973c7306 | ||
|
|
cd99761892 | ||
|
|
e764eac338 | ||
|
|
663e1f577d | ||
|
|
2b29df5164 | ||
|
|
a6dc7dacdd | ||
|
|
818114a701 | ||
|
|
a42eb85772 | ||
|
|
130e0d8de9 | ||
|
|
8a770ec0fa | ||
|
|
7d15711bb2 | ||
|
|
39e3d777bc | ||
|
|
8b6dac3216 | ||
|
|
9f412be93c | ||
|
|
0b43901c11 | ||
|
|
c15fa47244 | ||
|
|
8de21b4bbf | ||
|
|
3c3e987c62 | ||
|
|
f2d2d740d7 | ||
|
|
8ff19f260a | ||
|
|
5a8056adee | ||
|
|
665871ba78 | ||
|
|
1e937414d3 | ||
|
|
356e1a3827 | ||
|
|
98f1f1c08f | ||
|
|
c7f50a776b | ||
|
|
a7b7551b52 | ||
|
|
8123a7a850 | ||
|
|
7fbb3318e9 | ||
|
|
379f373b86 | ||
|
|
30825a6271 | ||
|
|
45ad35308e | ||
|
|
b2fe88b6c7 | ||
|
|
a8f111c463 | ||
|
|
70e5113ef9 | ||
|
|
fae6276267 | ||
|
|
ad08d71da1 | ||
|
|
fd29c6c3ca | ||
|
|
c1caefc207 | ||
|
|
5149a2c5e1 | ||
|
|
cb51334761 | ||
|
|
45281587f7 | ||
|
|
1131a8607d | ||
|
|
1ced9bbc9e | ||
|
|
353355a101 | ||
|
|
ca081f0bdd | ||
|
|
629c2a03da | ||
|
|
ab15a02d54 | ||
|
|
17a93838f9 | ||
|
|
e3802d2af2 | ||
|
|
7cbe9dbf90 | ||
|
|
6c60ccd08f | ||
|
|
14daf2fa8e | ||
|
|
0744654d3e | ||
|
|
0ae75f82dc | ||
|
|
872f07f043 | ||
|
|
19c22fbfec |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -5,7 +5,7 @@
|
||||
/out-tsc
|
||||
|
||||
# dependencies
|
||||
/node_modules
|
||||
**/node_modules
|
||||
|
||||
# IDEs and editors
|
||||
/.idea
|
||||
|
||||
@@ -9,7 +9,9 @@ stages:
|
||||
stage: build
|
||||
only:
|
||||
- master
|
||||
- dev
|
||||
script:
|
||||
- echo $DOCKER_REGISTRY_USER
|
||||
- chmod +x ./gitlab-ci.sh
|
||||
- ./gitlab-ci.sh
|
||||
|
||||
|
||||
26
Dockerfile
26
Dockerfile
@@ -1,3 +1,25 @@
|
||||
FROM node:13.8-alpine
|
||||
# Stage 1:
|
||||
FROM node:13.8-alpine AS sources
|
||||
|
||||
RUN apk --no-cache add yarn
|
||||
|
||||
WORKDIR /var/www/app
|
||||
WORKDIR /var/www/app
|
||||
|
||||
ADD ./package.json ./
|
||||
ADD ./yarn.lock ./
|
||||
ADD ./qmi-cloud-common ./qmi-cloud-common
|
||||
|
||||
RUN yarn install --production
|
||||
|
||||
# Stage 2:
|
||||
FROM node:13.8-alpine AS production
|
||||
WORKDIR /var/www/app
|
||||
COPY --from=sources /var/www/app/node_modules ./node_modules
|
||||
COPY --from=sources /var/www/app/package.json ./package.json
|
||||
COPY ./server ./server
|
||||
COPY ./dist ./dist
|
||||
|
||||
EXPOSE 3000
|
||||
EXPOSE 3100
|
||||
|
||||
CMD ["node", "-r", "esm", "server/server"]
|
||||
|
||||
36
README.md
36
README.md
@@ -1,8 +1,9 @@
|
||||
# QMI Cloud
|
||||
|
||||
## Pre-requisites
|
||||
- Docker (desktop for Mac - temporary)
|
||||
- A file named secrets.json with this JSON information
|
||||
- Docker
|
||||
- Docker-Compose
|
||||
- A file named secrets.json with this JSON information (as Manuel Romero for this details)
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -12,8 +13,11 @@
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
## Run it
|
||||
|
||||
It will build necessary images if they don't exist.
|
||||
|
||||
```shell
|
||||
git clone git@gitlab.com:qmi/qmi-cloud.git
|
||||
cd qmi-cloud
|
||||
@@ -24,9 +28,13 @@ Wait until this line shows up:
|
||||
|
||||
```qmi-cloud-app | MongoDB connected...```
|
||||
|
||||
|
||||
On another terminal, run:
|
||||
|
||||
```shell
|
||||
docker container ls
|
||||
```
|
||||
|
||||
Should show these containers:
|
||||
```
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
@@ -37,41 +45,33 @@ ad01a01a4903 qlikgear/qmi-cloud-app "docker-entrypoint.s…" 4 hou
|
||||
94a1414554aa redis "redis-server --appe…" 4 hours ago Up 2 minutes 6379/tcp qmi-cloud-redis
|
||||
```
|
||||
|
||||
## TEST
|
||||
|
||||
## Authentication
|
||||
Go to: http://localhost:3000
|
||||
|
||||
### Authentication
|
||||
Authentication with Azure AD (Qlik).
|
||||
|
||||
## Bull QUEUE system
|
||||
### Bull QUEUE system
|
||||
It is used to queue Terraform executions in Docker containers.
|
||||
|
||||
UI: http://localhost:3000/arena
|
||||
|
||||
|
||||
## Mongo / Mongo Express Client
|
||||
### Mongo / Mongo Express Client
|
||||
Mongo is for managment.
|
||||
|
||||
UI: http://localhost:8081
|
||||
|
||||
Basic-Auth: qlik / Qlik1234
|
||||
|
||||
Database: qmi
|
||||
http://localhost:8081/db/qmi/
|
||||
Database: qmicloud
|
||||
|
||||
## API / Swagger API-DOCS
|
||||
### API / Swagger API-DOCS
|
||||
It shows available endpoints
|
||||
|
||||
http://localhost:3000/api-docs
|
||||
|
||||
## TEST
|
||||
|
||||
- Go to: http://localhost:3000
|
||||
- Authenticate
|
||||
- Go to: http://localhost:3000/provisions
|
||||
|
||||
|
||||
|
||||
### Available Scenarios that will deploy to Azure
|
||||
|
||||
- azqmi-qdc-sn
|
||||
|
||||
__NOTE: WARNING!!! It's using MANUEL's personal account "Visual Studio Professional" credits in Azure for now.__
|
||||
|
||||
11
angular.json
11
angular.json
@@ -27,18 +27,23 @@
|
||||
"src/assets"
|
||||
],
|
||||
"styles": [
|
||||
"src/styles.scss",
|
||||
"node_modules/@fortawesome/fontawesome-free/scss/fontawesome.scss",
|
||||
"node_modules/@fortawesome/fontawesome-free/scss/solid.scss",
|
||||
"node_modules/@fortawesome/fontawesome-free/scss/regular.scss",
|
||||
"node_modules/@fortawesome/fontawesome-free/scss/brands.scss",
|
||||
"node_modules/angular-bootstrap-md/assets/scss/bootstrap/bootstrap.scss",
|
||||
"node_modules/angular-bootstrap-md/assets/scss/mdb.scss",
|
||||
"node_modules/animate.css/animate.css"
|
||||
"node_modules/animate.css/animate.css",
|
||||
"node_modules/prismjs/themes/prism.css",
|
||||
"src/styles.scss"
|
||||
],
|
||||
"scripts": [
|
||||
"node_modules/chart.js/dist/Chart.js",
|
||||
"node_modules/hammerjs/hammer.min.js"
|
||||
"node_modules/hammerjs/hammer.min.js",
|
||||
"node_modules/marked/lib/marked.js",
|
||||
"node_modules/prismjs/prism.js",
|
||||
"node_modules/prismjs/plugins/line-highlight/prism-line-highlight.js",
|
||||
"node_modules/prismjs/plugins/line-numbers/prism-line-numbers.js"
|
||||
]
|
||||
},
|
||||
"configurations": {
|
||||
|
||||
107
dist/out-tsc/src/app/admin/admin.component.js
vendored
107
dist/out-tsc/src/app/admin/admin.component.js
vendored
@@ -8,112 +8,17 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component } from '@angular/core';
|
||||
import { UsersService } from '../services/users.service';
|
||||
import { ProvisionsService } from '../services/provisions.service';
|
||||
import { timer } from 'rxjs';
|
||||
import { switchMap } from 'rxjs/operators';
|
||||
import { AuthGuard } from '../services/auth.guard';
|
||||
var AdminComponent = /** @class */ (function () {
|
||||
function AdminComponent(_usersService, _provisionsService, _auth) {
|
||||
var _this = this;
|
||||
this._usersService = _usersService;
|
||||
this._provisionsService = _provisionsService;
|
||||
this._auth = _auth;
|
||||
this.logShow = false;
|
||||
this.logstype = 'provision';
|
||||
this.selectedprov = null;
|
||||
this._auth.getUserInfo().subscribe(function (value) {
|
||||
_this.currentUser = value;
|
||||
});
|
||||
function AdminComponent() {
|
||||
this.sections = ['Provisions', 'Users', 'Scenarios', 'Notifications', 'Subscriptions'];
|
||||
this.tab = 'Provisions';
|
||||
}
|
||||
AdminComponent.prototype._fillUser = function (pair) {
|
||||
var _this = this;
|
||||
pair['0'].forEach(function (prov) {
|
||||
var foundDes = _this.users.filter(function (u) {
|
||||
return u._id.toString() === prov.userId.toString();
|
||||
});
|
||||
if (foundDes.length) {
|
||||
prov.user = foundDes[0].displayName;
|
||||
}
|
||||
});
|
||||
};
|
||||
AdminComponent.prototype._getUsers = function () {
|
||||
};
|
||||
AdminComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
this._usersService.getUsers().subscribe(function (res) {
|
||||
_this.users = res;
|
||||
_this.subscription = timer(0, 5000).pipe(switchMap(function () { return _this._provisionsService.getCombinedProvisionsAdmin(); })).subscribe(function (pair) {
|
||||
_this._provisionsService.composePair(pair);
|
||||
_this._fillUser(pair);
|
||||
_this.destroys = pair[1];
|
||||
_this.provisions = pair[0];
|
||||
});
|
||||
});
|
||||
};
|
||||
AdminComponent.prototype._refresh = function () {
|
||||
var _this = this;
|
||||
this.instantSubs = this._provisionsService.getCombinedProvisionsAdmin().subscribe(function (pair) {
|
||||
_this._provisionsService.composePair(pair);
|
||||
_this._fillUser(pair);
|
||||
_this.destroys = pair[1];
|
||||
_this.provisions = pair[0];
|
||||
_this.instantSubs.unsubscribe();
|
||||
});
|
||||
};
|
||||
AdminComponent.prototype.ngOnDestroy = function () {
|
||||
this.subscription.unsubscribe();
|
||||
if (this.instantSubs) {
|
||||
this.instantSubs.unsubscribe();
|
||||
}
|
||||
};
|
||||
AdminComponent.prototype.del = function (provision) {
|
||||
var _this = this;
|
||||
this._provisionsService.delProvision(provision._id.toString(), provision.userId).subscribe(function (res) {
|
||||
console.log("Done!", res);
|
||||
_this._refresh();
|
||||
});
|
||||
};
|
||||
AdminComponent.prototype.destroy = function (provision) {
|
||||
var _this = this;
|
||||
this._provisionsService.newDestroy({ "id": provision._id.toString() }, provision.userId).subscribe(function (res) {
|
||||
console.log("Done!", res);
|
||||
_this._refresh();
|
||||
});
|
||||
};
|
||||
AdminComponent.prototype.showLogs = function ($event, provision, type) {
|
||||
AdminComponent.prototype.tabSelect = function ($event, tab) {
|
||||
$event.preventDefault();
|
||||
$event.stopPropagation();
|
||||
this.logstype = type;
|
||||
this.logShow = false;
|
||||
this.selectedprov = provision;
|
||||
this.logShow = true;
|
||||
};
|
||||
AdminComponent.prototype.onLogsClose = function ($event) {
|
||||
this.selectedprov = null;
|
||||
this.logShow = false;
|
||||
};
|
||||
AdminComponent.prototype.onStartProvision = function ($event) {
|
||||
console.log("onStartProvision");
|
||||
this._refresh();
|
||||
};
|
||||
AdminComponent.prototype.setAdmin = function (user) {
|
||||
var _this = this;
|
||||
this._usersService.updateUser(user._id, { "role": "admin" }).subscribe(function (res1) {
|
||||
console.log("Updated", res1);
|
||||
_this._usersService.getUsers().subscribe(function (res) {
|
||||
_this.users = res;
|
||||
});
|
||||
});
|
||||
};
|
||||
AdminComponent.prototype.removeAdmin = function (user) {
|
||||
var _this = this;
|
||||
this._usersService.updateUser(user._id, { "role": null }).subscribe(function (res1) {
|
||||
console.log("Updated", res1);
|
||||
_this._usersService.getUsers().subscribe(function (res) {
|
||||
_this.users = res;
|
||||
});
|
||||
});
|
||||
this.tab = tab;
|
||||
};
|
||||
AdminComponent = __decorate([
|
||||
Component({
|
||||
@@ -121,7 +26,7 @@ var AdminComponent = /** @class */ (function () {
|
||||
templateUrl: './admin.component.html',
|
||||
styleUrls: ['./admin.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [UsersService, ProvisionsService, AuthGuard])
|
||||
__metadata("design:paramtypes", [])
|
||||
], AdminComponent);
|
||||
return AdminComponent;
|
||||
}());
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"admin.component.js","sourceRoot":"","sources":["../../../../../src/app/admin/admin.component.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"admin.component.js","sourceRoot":"","sources":["../../../../../src/app/admin/admin.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAOlD;IAKE;QAHA,aAAQ,GAAG,CAAC,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;QAClF,QAAG,GAAa,YAAY,CAAC;IAEb,CAAC;IAEjB,iCAAQ,GAAR;IACA,CAAC;IAED,kCAAS,GAAT,UAAU,MAAM,EAAE,GAAG;QACnB,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAdU,cAAc;QAL1B,SAAS,CAAC;YACT,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,wBAAwB;YACrC,SAAS,EAAE,CAAC,wBAAwB,CAAC;SACtC,CAAC;;OACW,cAAc,CAgB1B;IAAD,qBAAC;CAAA,AAhBD,IAgBC;SAhBY,cAAc"}
|
||||
43
dist/out-tsc/src/app/alert/alert.component.js
vendored
Normal file
43
dist/out-tsc/src/app/alert/alert.component.js
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component, ViewChild, ElementRef } from '@angular/core';
|
||||
import { AlertService } from '../services/alert.service';
|
||||
var AlertComponent = /** @class */ (function () {
|
||||
function AlertComponent(_alertService) {
|
||||
this._alertService = _alertService;
|
||||
this.alert = null;
|
||||
}
|
||||
AlertComponent.prototype.ngOnInit = function () {
|
||||
this.subscription = this._alertService.getAlertEmitter().subscribe(function (data) {
|
||||
this.alert = data;
|
||||
}.bind(this));
|
||||
};
|
||||
AlertComponent.prototype.ngOnDestroy = function () {
|
||||
this.subscription.unsubscribe();
|
||||
};
|
||||
AlertComponent.prototype.closeAlert = function () {
|
||||
this.alert = null;
|
||||
};
|
||||
__decorate([
|
||||
ViewChild('qmialert', { static: true }),
|
||||
__metadata("design:type", ElementRef)
|
||||
], AlertComponent.prototype, "alertEl", void 0);
|
||||
AlertComponent = __decorate([
|
||||
Component({
|
||||
selector: 'qmi-alert',
|
||||
templateUrl: './alert.component.html',
|
||||
styleUrls: ['./alert.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [AlertService])
|
||||
], AlertComponent);
|
||||
return AlertComponent;
|
||||
}());
|
||||
export { AlertComponent };
|
||||
//# sourceMappingURL=alert.component.js.map
|
||||
1
dist/out-tsc/src/app/alert/alert.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/alert/alert.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"alert.component.js","sourceRoot":"","sources":["../../../../../src/app/alert/alert.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAqB,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAQzD;IAME,wBAAoB,aAA2B;QAA3B,kBAAa,GAAb,aAAa,CAAc;QAF/C,UAAK,GAAS,IAAI,CAAC;IAE+B,CAAC;IAEnD,iCAAQ,GAAR;QACE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,SAAS,CAAC,UAAS,IAAI;YAC5E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACtB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED,oCAAW,GAAX;QACE,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IAED,mCAAU,GAAV;QACI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACtB,CAAC;IAlBwC;QAAxC,SAAS,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;kCAAU,UAAU;mDAAC;IAFlD,cAAc;QAL1B,SAAS,CAAC;YACT,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,wBAAwB;YACrC,SAAS,EAAE,CAAC,wBAAwB,CAAC;SACtC,CAAC;yCAOmC,YAAY;OANpC,cAAc,CAsB1B;IAAD,qBAAC;CAAA,AAtBD,IAsBC;SAtBY,cAAc"}
|
||||
40
dist/out-tsc/src/app/alert/confirm.component.js
vendored
Normal file
40
dist/out-tsc/src/app/alert/confirm.component.js
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component } from '@angular/core';
|
||||
import { MDBModalRef } from 'angular-bootstrap-md';
|
||||
import { Subject } from 'rxjs';
|
||||
var ModalConfirmComponent = /** @class */ (function () {
|
||||
function ModalConfirmComponent(modalRef) {
|
||||
this.modalRef = modalRef;
|
||||
this.action = new Subject();
|
||||
}
|
||||
ModalConfirmComponent.prototype.ngOnInit = function () {
|
||||
if (!this.info.buttonColor) {
|
||||
this.info.buttonColor = "danger";
|
||||
}
|
||||
};
|
||||
ModalConfirmComponent.prototype.ngOnDestroy = function () {
|
||||
};
|
||||
ModalConfirmComponent.prototype.confirm = function () {
|
||||
this.action.next();
|
||||
this.modalRef.hide();
|
||||
};
|
||||
ModalConfirmComponent = __decorate([
|
||||
Component({
|
||||
selector: 'qmi-modalconfirm',
|
||||
templateUrl: './confirm.component.html',
|
||||
styleUrls: ['./confirm.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalRef])
|
||||
], ModalConfirmComponent);
|
||||
return ModalConfirmComponent;
|
||||
}());
|
||||
export { ModalConfirmComponent };
|
||||
//# sourceMappingURL=confirm.component.js.map
|
||||
1
dist/out-tsc/src/app/alert/confirm.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/alert/confirm.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"confirm.component.js","sourceRoot":"","sources":["../../../../../src/app/alert/confirm.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAA4B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAO/B;IAKE,+BAAoB,QAAqB;QAArB,aAAQ,GAAR,QAAQ,CAAa;QAFzC,WAAM,GAAiB,IAAI,OAAO,EAAE,CAAC;IAEQ,CAAC;IAE9C,wCAAQ,GAAR;QACE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;SAClC;IACH,CAAC;IAED,2CAAW,GAAX;IAEA,CAAC;IAED,uCAAO,GAAP;QACI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IApBU,qBAAqB;QALjC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,0BAA0B;YACvC,SAAS,EAAE,CAAC,0BAA0B,CAAC;SACxC,CAAC;yCAM8B,WAAW;OAL9B,qBAAqB,CAsBjC;IAAD,4BAAC;CAAA,AAtBD,IAsBC;SAtBY,qBAAqB"}
|
||||
99
dist/out-tsc/src/app/alert/edit-scenario.component.js
vendored
Normal file
99
dist/out-tsc/src/app/alert/edit-scenario.component.js
vendored
Normal file
@@ -0,0 +1,99 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component } from '@angular/core';
|
||||
import { MDBModalRef } from 'angular-bootstrap-md';
|
||||
import { Subject } from 'rxjs';
|
||||
import { ScenariosService } from '../services/scenarios.service';
|
||||
import { SubscriptionsService } from '../services/subscriptions.service';
|
||||
var ScenarioModalComponent = /** @class */ (function () {
|
||||
function ScenarioModalComponent(modalRef, _scenariosService, _subscriptionsService) {
|
||||
this.modalRef = modalRef;
|
||||
this._scenariosService = _scenariosService;
|
||||
this._subscriptionsService = _subscriptionsService;
|
||||
this.action = new Subject();
|
||||
this.sendData = {
|
||||
availableProductVersions: [{
|
||||
product: 'String: <ie: Qlik Sense>',
|
||||
vmTypeDefault: 'String: <i.e: Standard_D8s_v3>',
|
||||
diskSizeGbDefault: 'Integer: <values: 128,250,500,750,1000>',
|
||||
index: 'vm1',
|
||||
versions: []
|
||||
}]
|
||||
};
|
||||
}
|
||||
ScenarioModalComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
this._subscriptionsService.getSubscriptions().subscribe(function (res) {
|
||||
_this.subscriptions = res.results;
|
||||
if (_this.scenario) {
|
||||
_this.sendData = JSON.parse(JSON.stringify(_this.scenario));
|
||||
}
|
||||
if (!_this.sendData.subscription) {
|
||||
_this.sendData.subscription = res.results[0]._id;
|
||||
}
|
||||
});
|
||||
};
|
||||
ScenarioModalComponent.prototype.ngOnDestroy = function () {
|
||||
};
|
||||
ScenarioModalComponent.prototype.confirm = function () {
|
||||
var _this = this;
|
||||
console.log("sendData", this.sendData);
|
||||
//this.action.next(this.sendData);
|
||||
if (this.sendData._id) {
|
||||
var id = this.sendData._id.toString();
|
||||
this.sendData._id = undefined;
|
||||
this._scenariosService.updateScenario(id, this.sendData).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this.action.next("DONE!!!");
|
||||
_this.modalRef.hide();
|
||||
});
|
||||
}
|
||||
else {
|
||||
this._scenariosService.addScenario(this.sendData).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this.action.next("DONE!!!");
|
||||
_this.modalRef.hide();
|
||||
});
|
||||
}
|
||||
};
|
||||
ScenarioModalComponent.prototype.delete = function () {
|
||||
var _this = this;
|
||||
this._scenariosService.deleteScenario(this.sendData._id).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this.action.next("DONE!!!");
|
||||
_this.modalRef.hide();
|
||||
});
|
||||
};
|
||||
ScenarioModalComponent.prototype.checkOnchange = function ($event, field) {
|
||||
console.log("Checked?", $event.checked);
|
||||
this.sendData[field] = $event.checked;
|
||||
};
|
||||
ScenarioModalComponent.prototype.updateJson = function (event, property) {
|
||||
var editField = event.target.textContent.trim();
|
||||
try {
|
||||
var value = JSON.parse(editField);
|
||||
this.sendData[property] = value;
|
||||
}
|
||||
catch (e) {
|
||||
console.log("error json", e);
|
||||
}
|
||||
};
|
||||
ScenarioModalComponent = __decorate([
|
||||
Component({
|
||||
selector: 'qmi-new-scenario',
|
||||
templateUrl: './edit-scenario.component.html',
|
||||
styleUrls: ['./edit-scenario.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalRef, ScenariosService, SubscriptionsService])
|
||||
], ScenarioModalComponent);
|
||||
return ScenarioModalComponent;
|
||||
}());
|
||||
export { ScenarioModalComponent };
|
||||
//# sourceMappingURL=edit-scenario.component.js.map
|
||||
1
dist/out-tsc/src/app/alert/edit-scenario.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/alert/edit-scenario.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"edit-scenario.component.js","sourceRoot":"","sources":["../../../../../src/app/alert/edit-scenario.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAqB,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAgB,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAOzE;IAgBE,gCAAoB,QAAqB,EAAU,iBAAmC,EAAU,qBAA2C;QAAvH,aAAQ,GAAR,QAAQ,CAAa;QAAU,sBAAiB,GAAjB,iBAAiB,CAAkB;QAAU,0BAAqB,GAArB,qBAAqB,CAAsB;QAb3I,WAAM,GAAiB,IAAI,OAAO,EAAE,CAAC;QAGrC,aAAQ,GAAS;YACf,wBAAwB,EAAE,CAAC;oBACzB,OAAO,EAAE,0BAA0B;oBACnC,aAAa,EAAE,gCAAgC;oBAC/C,iBAAiB,EAAE,yCAAyC;oBAC5D,KAAK,EAAE,KAAK;oBACZ,QAAQ,EAAE,EAAE;iBACb,CAAC;SACH,CAAC;IAE6I,CAAC;IAEhJ,yCAAQ,GAAR;QAAA,iBAUC;QATG,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,CAAC,SAAS,CAAG,UAAA,GAAG;YAC3D,KAAI,CAAC,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC;YACjC,IAAI,KAAI,CAAC,QAAQ,EAAE;gBACjB,KAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;aAC1D;YACD,IAAI,CAAC,KAAI,CAAC,QAAQ,CAAC,YAAY,EAAE;gBAC/B,KAAI,CAAC,QAAQ,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;aACjD;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAED,4CAAW,GAAX;IAEA,CAAC;IAED,wCAAO,GAAP;QAAA,iBAqBC;QAnBG,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,kCAAkC;QAClC,IAAK,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACtB,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,SAAS,CAAC;YAC9B,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAE,UAAA,GAAG;gBACrE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACzB,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC5B,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvB,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAE,UAAA,GAAG;gBAC9D,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACzB,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC5B,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvB,CAAC,CAAC,CAAC;SACJ;IAGL,CAAC;IAED,uCAAM,GAAN;QAAA,iBAMC;QALC,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,CAAE,UAAA,GAAG;YACrE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACzB,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5B,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,8CAAa,GAAb,UAAc,MAAM,EAAE,KAAK;QACzB,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;IACxC,CAAC;IAED,2CAAU,GAAV,UAAW,KAAU,EAAE,QAAgB;QACrC,IAAI,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAChD,IAAI;YACA,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;SAEnC;QAAC,OAAO,CAAC,EAAE;YACR,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;SAChC;IACH,CAAC;IA/EU,sBAAsB;QALlC,SAAS,CAAC;YACT,QAAQ,EAAE,kBAAkB;YAC5B,WAAW,EAAE,gCAAgC;YAC7C,SAAS,EAAE,CAAC,gCAAgC,CAAC;SAC9C,CAAC;yCAiB8B,WAAW,EAA6B,gBAAgB,EAAiC,oBAAoB;OAhBhI,sBAAsB,CAgFlC;IAAD,6BAAC;CAAA,AAhFD,IAgFC;SAhFY,sBAAsB"}
|
||||
68
dist/out-tsc/src/app/alert/edit-subscription.component.js
vendored
Normal file
68
dist/out-tsc/src/app/alert/edit-subscription.component.js
vendored
Normal file
@@ -0,0 +1,68 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component } from '@angular/core';
|
||||
import { MDBModalRef } from 'angular-bootstrap-md';
|
||||
import { Subject } from 'rxjs';
|
||||
import { SubscriptionsService } from '../services/subscriptions.service';
|
||||
var SubscriptionModalComponent = /** @class */ (function () {
|
||||
function SubscriptionModalComponent(modalRef, _subscriptionsService) {
|
||||
this.modalRef = modalRef;
|
||||
this._subscriptionsService = _subscriptionsService;
|
||||
this.action = new Subject();
|
||||
this.sendData = {};
|
||||
}
|
||||
SubscriptionModalComponent.prototype.ngOnInit = function () {
|
||||
if (this.subscription) {
|
||||
this.sendData = JSON.parse(JSON.stringify(this.subscription));
|
||||
}
|
||||
};
|
||||
SubscriptionModalComponent.prototype.ngOnDestroy = function () {
|
||||
};
|
||||
SubscriptionModalComponent.prototype.confirm = function () {
|
||||
var _this = this;
|
||||
console.log("sendData", this.sendData);
|
||||
//this.action.next(this.sendData);
|
||||
if (this.sendData._id) {
|
||||
var id = this.sendData._id.toString();
|
||||
this.sendData._id = undefined;
|
||||
this._subscriptionsService.updateSubscription(id, this.sendData).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this.action.next("DONE!!!");
|
||||
_this.modalRef.hide();
|
||||
});
|
||||
}
|
||||
else {
|
||||
this._subscriptionsService.addSubscription(this.sendData).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this.action.next("DONE!!!");
|
||||
_this.modalRef.hide();
|
||||
});
|
||||
}
|
||||
};
|
||||
SubscriptionModalComponent.prototype.delete = function () {
|
||||
var _this = this;
|
||||
this._subscriptionsService.deleteScenario(this.sendData._id).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this.action.next("DONE!!!");
|
||||
_this.modalRef.hide();
|
||||
});
|
||||
};
|
||||
SubscriptionModalComponent = __decorate([
|
||||
Component({
|
||||
selector: 'qmi-new-subscription',
|
||||
templateUrl: './edit-subscription.component.html',
|
||||
styleUrls: ['./edit-subscription.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalRef, SubscriptionsService])
|
||||
], SubscriptionModalComponent);
|
||||
return SubscriptionModalComponent;
|
||||
}());
|
||||
export { SubscriptionModalComponent };
|
||||
//# sourceMappingURL=edit-subscription.component.js.map
|
||||
1
dist/out-tsc/src/app/alert/edit-subscription.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/alert/edit-subscription.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"edit-subscription.component.js","sourceRoot":"","sources":["../../../../../src/app/alert/edit-subscription.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAqB,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAgB,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAOzE;IASE,oCAAoB,QAAqB,EAAU,qBAA2C;QAA1E,aAAQ,GAAR,QAAQ,CAAa;QAAU,0BAAqB,GAArB,qBAAqB,CAAsB;QAN9F,WAAM,GAAiB,IAAI,OAAO,EAAE,CAAC;QAGrC,aAAQ,GAAS,EAChB,CAAC;IAEgG,CAAC;IAEnG,6CAAQ,GAAR;QACI,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAA;SAC9D;IACL,CAAC;IAED,gDAAW,GAAX;IAEA,CAAC;IAED,4CAAO,GAAP;QAAA,iBAqBC;QAnBG,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,kCAAkC;QAClC,IAAK,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACtB,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,SAAS,CAAC;YAC9B,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAE,UAAA,GAAG;gBAC7E,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACzB,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC5B,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvB,CAAC,CAAC,CAAC;SACJ;aAAM;YACL,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAE,UAAA,GAAG;gBACtE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACzB,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC5B,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACvB,CAAC,CAAC,CAAC;SACJ;IAGL,CAAC;IAED,2CAAM,GAAN;QAAA,iBAMC;QALC,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,CAAE,UAAA,GAAG;YACzE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACzB,KAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5B,KAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;IACL,CAAC;IAlDU,0BAA0B;QALtC,SAAS,CAAC;YACT,QAAQ,EAAE,sBAAsB;YAChC,WAAW,EAAE,oCAAoC;YACjD,SAAS,EAAE,CAAC,oCAAoC,CAAC;SAClD,CAAC;yCAU8B,WAAW,EAAiC,oBAAoB;OATnF,0BAA0B,CAoDtC;IAAD,iCAAC;CAAA,AApDD,IAoDC;SApDY,0BAA0B"}
|
||||
31
dist/out-tsc/src/app/alert/modalinfo.component.js
vendored
Normal file
31
dist/out-tsc/src/app/alert/modalinfo.component.js
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component } from '@angular/core';
|
||||
import { MDBModalRef } from 'angular-bootstrap-md';
|
||||
var ModalInfoComponent = /** @class */ (function () {
|
||||
function ModalInfoComponent(modalRef) {
|
||||
this.modalRef = modalRef;
|
||||
}
|
||||
ModalInfoComponent.prototype.ngOnInit = function () {
|
||||
};
|
||||
ModalInfoComponent.prototype.ngOnDestroy = function () {
|
||||
};
|
||||
ModalInfoComponent = __decorate([
|
||||
Component({
|
||||
selector: 'qmi-modalinfo',
|
||||
templateUrl: './modalinfo.component.html',
|
||||
styleUrls: ['./modalinfo.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalRef])
|
||||
], ModalInfoComponent);
|
||||
return ModalInfoComponent;
|
||||
}());
|
||||
export { ModalInfoComponent };
|
||||
//# sourceMappingURL=modalinfo.component.js.map
|
||||
1
dist/out-tsc/src/app/alert/modalinfo.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/alert/modalinfo.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"modalinfo.component.js","sourceRoot":"","sources":["../../../../../src/app/alert/modalinfo.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAA4B,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAOnD;IAIE,4BAAoB,QAAqB;QAArB,aAAQ,GAAR,QAAQ,CAAa;IAAI,CAAC;IAE9C,qCAAQ,GAAR;IAEA,CAAC;IAED,wCAAW,GAAX;IAEA,CAAC;IAZU,kBAAkB;QAL9B,SAAS,CAAC;YACT,QAAQ,EAAE,eAAe;YACzB,WAAW,EAAE,4BAA4B;YACzC,SAAS,EAAE,CAAC,4BAA4B,CAAC;SAC1C,CAAC;yCAK8B,WAAW;OAJ9B,kBAAkB,CAc9B;IAAD,yBAAC;CAAA,AAdD,IAcC;SAdY,kBAAkB"}
|
||||
104
dist/out-tsc/src/app/alert/new-provision.component.js
vendored
Normal file
104
dist/out-tsc/src/app/alert/new-provision.component.js
vendored
Normal file
@@ -0,0 +1,104 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component } from '@angular/core';
|
||||
import { MDBModalRef } from 'angular-bootstrap-md';
|
||||
import { Subject } from 'rxjs';
|
||||
import { ScenariosService } from '../services/scenarios.service';
|
||||
var NewProvisionConfirmComponent = /** @class */ (function () {
|
||||
function NewProvisionConfirmComponent(modalRef, _scenariosService) {
|
||||
this.modalRef = modalRef;
|
||||
this._scenariosService = _scenariosService;
|
||||
this.action = new Subject();
|
||||
this.sendData = {
|
||||
description: "",
|
||||
servers: null,
|
||||
isExternalAccess: false,
|
||||
};
|
||||
this.selectedProductVersion = {};
|
||||
this.selectedVmType = {};
|
||||
this.selectedNodeCount = {};
|
||||
this.selectedDiskSizeGb = {};
|
||||
this.servers = {};
|
||||
}
|
||||
NewProvisionConfirmComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
this.vmTypesSub = this._scenariosService.getScenarioVmtypes().subscribe(function (res) {
|
||||
_this.vmTypes = res.results;
|
||||
if (_this.scenario.availableProductVersions.length) {
|
||||
_this.scenario.availableProductVersions.forEach(function (server) {
|
||||
if (server.vmTypeDefault) {
|
||||
_this.selectedVmType[server.index] = server.vmTypeDefault;
|
||||
}
|
||||
if (server.nodeCount) {
|
||||
_this.selectedNodeCount[server.index] = server.nodeCount;
|
||||
}
|
||||
_this.selectedDiskSizeGb[server.index] = server.diskSizeGbDefault || 500;
|
||||
if (server.versions && server.versions.length) {
|
||||
var lastIndex = server.versions.length - 1;
|
||||
_this.selectedProductVersion[server.index] = server.productVersionDefault ? server.productVersionDefault : server.versions[lastIndex].name;
|
||||
}
|
||||
});
|
||||
}
|
||||
_this.vmTypesSub.unsubscribe();
|
||||
});
|
||||
};
|
||||
NewProvisionConfirmComponent.prototype.ngOnDestroy = function () {
|
||||
};
|
||||
NewProvisionConfirmComponent.prototype.confirm = function () {
|
||||
var _this = this;
|
||||
if (!this.sendData.description || this.sendData.description.trim() === "") {
|
||||
return;
|
||||
}
|
||||
this.sendData.servers = {};
|
||||
var _loop_1 = function (key) {
|
||||
if (!this_1.sendData.servers[key]) {
|
||||
this_1.sendData.servers[key] = {};
|
||||
}
|
||||
if (this_1.selectedVmType[key]) {
|
||||
this_1.sendData.servers[key].vmType = this_1.selectedVmType[key];
|
||||
}
|
||||
if (this_1.selectedNodeCount[key]) {
|
||||
this_1.sendData.servers[key].nodeCount = this_1.selectedNodeCount[key];
|
||||
}
|
||||
if (this_1.selectedDiskSizeGb[key]) {
|
||||
this_1.sendData.servers[key].diskSizeGb = this_1.selectedDiskSizeGb[key];
|
||||
}
|
||||
this_1.scenario.availableProductVersions.forEach(function (server) {
|
||||
server.versions.forEach(function (v) {
|
||||
if (v.name === _this.selectedProductVersion[key]) {
|
||||
_this.sendData.servers[key].version = v;
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
var this_1 = this;
|
||||
for (var key in this.selectedVmType) {
|
||||
_loop_1(key);
|
||||
}
|
||||
console.log("sendData", this.sendData);
|
||||
this.action.next(this.sendData);
|
||||
this.modalRef.hide();
|
||||
};
|
||||
NewProvisionConfirmComponent.prototype.checkOnchange = function ($event) {
|
||||
console.log("Checked?", $event.checked);
|
||||
this.sendData.isExternalAccess = $event.checked;
|
||||
};
|
||||
NewProvisionConfirmComponent = __decorate([
|
||||
Component({
|
||||
selector: 'qmi-new-provision',
|
||||
templateUrl: './new-provision.component.html',
|
||||
styleUrls: ['./new-provision.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalRef, ScenariosService])
|
||||
], NewProvisionConfirmComponent);
|
||||
return NewProvisionConfirmComponent;
|
||||
}());
|
||||
export { NewProvisionConfirmComponent };
|
||||
//# sourceMappingURL=new-provision.component.js.map
|
||||
1
dist/out-tsc/src/app/alert/new-provision.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/alert/new-provision.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"new-provision.component.js","sourceRoot":"","sources":["../../../../../src/app/alert/new-provision.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAqB,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAgB,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAOjE;IAiBE,sCAAoB,QAAqB,EAAU,iBAAmC;QAAlE,aAAQ,GAAR,QAAQ,CAAa;QAAU,sBAAiB,GAAjB,iBAAiB,CAAkB;QAdtF,WAAM,GAAiB,IAAI,OAAO,EAAE,CAAC;QAErC,aAAQ,GAAG;YACT,WAAW,EAAE,EAAE;YACf,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,KAAK;SACxB,CAAC;QACF,2BAAsB,GAAQ,EAAE,CAAC;QACjC,mBAAc,GAAQ,EAAE,CAAC;QACzB,sBAAiB,GAAQ,EAAE,CAAC;QAC5B,uBAAkB,GAAQ,EAAE,CAAC;QAG7B,YAAO,GAAQ,EAAE,CAAC;IACwE,CAAC;IAE3F,+CAAQ,GAAR;QAAA,iBA4BC;QA3BC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,SAAS,CAAG,UAAA,GAAG;YAC3E,KAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;YAI3B,IAAK,KAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,MAAM,EAAG;gBACnD,KAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAC,UAAA,MAAM;oBACjD,IAAI,MAAM,CAAC,aAAa,EAAE;wBACxB,KAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;qBAC1D;oBACD,IAAK,MAAM,CAAC,SAAS,EAAG;wBACtB,KAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;qBACzD;oBAED,KAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,iBAAiB,IAAI,GAAG,CAAC;oBAExE,IAAK,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAG;wBAC/C,IAAI,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;wBAC3C,KAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAA,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;qBAC1I;gBACL,CAAC,CAAC,CAAC;aAGJ;YAED,KAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,kDAAW,GAAX;IAEA,CAAC;IAED,8CAAO,GAAP;QAAA,iBA+BC;QA9BG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACvE,OAAO;SACV;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;gCAClB,GAAG;YACV,IAAI,CAAC,OAAK,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAC/B,OAAK,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;aACjC;YACD,IAAI,OAAK,cAAc,CAAC,GAAG,CAAC,EAAE;gBAC5B,OAAK,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,OAAK,cAAc,CAAC,GAAG,CAAC,CAAC;aAC9D;YACD,IAAK,OAAK,iBAAiB,CAAC,GAAG,CAAC,EAAG;gBACjC,OAAK,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,SAAS,GAAG,OAAK,iBAAiB,CAAC,GAAG,CAAC,CAAC;aACpE;YAED,IAAK,OAAK,kBAAkB,CAAC,GAAG,CAAC,EAAG;gBAClC,OAAK,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,GAAG,OAAK,kBAAkB,CAAC,GAAG,CAAC,CAAC;aACtE;YAED,OAAK,QAAQ,CAAC,wBAAwB,CAAC,OAAO,CAAC,UAAA,MAAM;gBACnD,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAA,CAAC;oBACvB,IAAI,CAAC,CAAC,IAAI,KAAK,KAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAC;wBAC9C,KAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;qBACxC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAC;;;QArBL,KAAK,IAAI,GAAG,IAAI,IAAI,CAAC,cAAc;oBAA1B,GAAG;SAsBX;QACD,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,oDAAa,GAAb,UAAc,MAAM;QAClB,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC;IAClD,CAAC;IAzFU,4BAA4B;QALxC,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,gCAAgC;YAC7C,SAAS,EAAE,CAAC,gCAAgC,CAAC;SAC9C,CAAC;yCAkB8B,WAAW,EAA6B,gBAAgB;OAjB3E,4BAA4B,CA2FxC;IAAD,mCAAC;CAAA,AA3FD,IA2FC;SA3FY,4BAA4B"}
|
||||
2
dist/out-tsc/src/app/app-routing.module.js
vendored
2
dist/out-tsc/src/app/app-routing.module.js
vendored
@@ -10,8 +10,10 @@ import { ProvisionsComponent } from './provisions/provisions.component';
|
||||
import { AdminComponent } from './admin/admin.component';
|
||||
import { HomeComponent } from './home/home.component';
|
||||
import { AuthGuard } from './services/auth.guard';
|
||||
import { FaqComponent } from './faq/faq.component';
|
||||
var routes = [
|
||||
{ path: 'home', component: HomeComponent },
|
||||
{ path: 'faq', component: FaqComponent },
|
||||
{ path: 'provisions', component: ProvisionsComponent, canActivate: [AuthGuard] },
|
||||
{ path: 'admin', component: AdminComponent, canActivate: [AuthGuard] },
|
||||
{ path: '',
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"app-routing.module.js","sourceRoot":"","sources":["../../../../src/app/app-routing.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAU,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAQ,mCAAmC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAQ,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAQ,uBAAuB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,IAAM,MAAM,GAAW;IACrB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAC;IACzC,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAC;IAC/E,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAC;IACrE,EAAE,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,OAAO;QACnB,SAAS,EAAE,MAAM;KAClB;IACD,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE;CACpC,CAAC;AAMF;IAAA;IAAgC,CAAC;IAApB,gBAAgB;QAJ5B,QAAQ,CAAC;YACR,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,OAAO,EAAE,CAAC,YAAY,CAAC;SACxB,CAAC;OACW,gBAAgB,CAAI;IAAD,uBAAC;CAAA,AAAjC,IAAiC;SAApB,gBAAgB"}
|
||||
{"version":3,"file":"app-routing.module.js","sourceRoot":"","sources":["../../../../src/app/app-routing.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAU,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAQ,mCAAmC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAQ,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAQ,uBAAuB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,IAAM,MAAM,GAAW;IACrB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAC;IACzC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAC;IACvC,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAC;IAC/E,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAC;IACrE,EAAE,IAAI,EAAE,EAAE;QACR,UAAU,EAAE,OAAO;QACnB,SAAS,EAAE,MAAM;KAClB;IACD,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE;CACpC,CAAC;AAMF;IAAA;IAAgC,CAAC;IAApB,gBAAgB;QAJ5B,QAAQ,CAAC;YACR,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,OAAO,EAAE,CAAC,YAAY,CAAC;SACxB,CAAC;OACW,gBAAgB,CAAI;IAAD,uBAAC;CAAA,AAAjC,IAAiC;SAApB,gBAAgB"}
|
||||
61
dist/out-tsc/src/app/app.module.js
vendored
61
dist/out-tsc/src/app/app.module.js
vendored
@@ -15,11 +15,38 @@ import { AuthGuard } from './services/auth.guard';
|
||||
import { ProvisionsService } from './services/provisions.service';
|
||||
import { ScenariosService } from './services/scenarios.service';
|
||||
import { UsersService } from './services/users.service';
|
||||
import { HttpClientModule } from '@angular/common/http';
|
||||
import { MDBBootstrapModule } from 'angular-bootstrap-md';
|
||||
import { MarkdownModule, MarkedRenderer } from 'ngx-markdown';
|
||||
import { HttpClientModule, HttpClient } from '@angular/common/http';
|
||||
import { LogsComponent } from './logs/logs.component';
|
||||
import { ScenariosComponent } from './scenarios/scenarios.component';
|
||||
import { AdminComponent } from './admin/admin.component';
|
||||
import { PopoverconfirmComponent } from './popoverconfirm/popoverconfirm.component';
|
||||
import { FormsModule } from '@angular/forms';
|
||||
import { MyHttpInterceptor } from './interceptors/http.interceptor';
|
||||
import { HTTP_INTERCEPTORS } from '@angular/common/http';
|
||||
import { TableProvisionsAdminComponent } from './tables/table-provisions.component';
|
||||
import { TableScenariosComponent } from './tables/table-scenarios.component';
|
||||
import { TableUsersComponent } from './tables/table-users.component';
|
||||
import { TableNotificationsComponent } from './tables/table-notifications.component';
|
||||
import { AlertComponent } from './alert/alert.component';
|
||||
import { AlertService } from './services/alert.service';
|
||||
import { ModalInfoComponent } from './alert/modalinfo.component';
|
||||
import { ModalConfirmComponent } from './alert/confirm.component';
|
||||
import { FilterPipe } from './filter.pipe';
|
||||
import { FaqComponent } from './faq/faq.component';
|
||||
import { NewProvisionConfirmComponent } from './alert/new-provision.component';
|
||||
import { ScenarioModalComponent } from './alert/edit-scenario.component';
|
||||
import { SubscriptionModalComponent } from './alert/edit-subscription.component';
|
||||
import { TableSubsComponent } from './tables/table-subs.component';
|
||||
import { SubscriptionsService } from './services/subscriptions.service';
|
||||
export function markedOptions() {
|
||||
var renderer = new MarkedRenderer();
|
||||
renderer.blockquote = function (text) {
|
||||
return '<blockquote class="blockquote"><p>' + text + '</p></blockquote>';
|
||||
};
|
||||
return { renderer: renderer };
|
||||
}
|
||||
var AppModule = /** @class */ (function () {
|
||||
function AppModule() {
|
||||
}
|
||||
@@ -32,15 +59,41 @@ var AppModule = /** @class */ (function () {
|
||||
LogsComponent,
|
||||
ScenariosComponent,
|
||||
AdminComponent,
|
||||
PopoverconfirmComponent
|
||||
PopoverconfirmComponent,
|
||||
TableProvisionsAdminComponent,
|
||||
TableUsersComponent,
|
||||
AlertComponent,
|
||||
ModalInfoComponent,
|
||||
ModalConfirmComponent,
|
||||
FilterPipe,
|
||||
FaqComponent,
|
||||
NewProvisionConfirmComponent,
|
||||
TableScenariosComponent,
|
||||
TableNotificationsComponent,
|
||||
ScenarioModalComponent,
|
||||
SubscriptionModalComponent,
|
||||
TableSubsComponent
|
||||
],
|
||||
imports: [
|
||||
BrowserModule,
|
||||
AppRoutingModule,
|
||||
UiModule,
|
||||
HttpClientModule
|
||||
HttpClientModule,
|
||||
FormsModule,
|
||||
MDBBootstrapModule.forRoot(),
|
||||
MarkdownModule.forRoot({
|
||||
loader: HttpClient
|
||||
}),
|
||||
],
|
||||
providers: [
|
||||
{ provide: HTTP_INTERCEPTORS, useClass: MyHttpInterceptor, multi: true },
|
||||
ProvisionsService,
|
||||
ScenariosService,
|
||||
SubscriptionsService,
|
||||
UsersService,
|
||||
AlertService,
|
||||
AuthGuard
|
||||
],
|
||||
providers: [ProvisionsService, ScenariosService, UsersService, AuthGuard],
|
||||
bootstrap: [AppComponent]
|
||||
})
|
||||
], AppModule);
|
||||
|
||||
2
dist/out-tsc/src/app/app.module.js.map
vendored
2
dist/out-tsc/src/app/app.module.js.map
vendored
@@ -1 +1 @@
|
||||
{"version":3,"file":"app.module.js","sourceRoot":"","sources":["../../../../src/app/app.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAqBpF;IAAA;IAAyB,CAAC;IAAb,SAAS;QAnBrB,QAAQ,CAAC;YACR,YAAY,EAAE;gBACZ,YAAY;gBACZ,aAAa;gBACb,mBAAmB;gBACnB,aAAa;gBACb,kBAAkB;gBAClB,cAAc;gBACd,uBAAuB;aACxB;YACD,OAAO,EAAE;gBACP,aAAa;gBACb,gBAAgB;gBAChB,QAAQ;gBACR,gBAAgB;aACjB;YACD,SAAS,EAAE,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,YAAY,EAAE,SAAS,CAAC;YACzE,SAAS,EAAE,CAAC,YAAY,CAAC;SAC1B,CAAC;OACW,SAAS,CAAI;IAAD,gBAAC;CAAA,AAA1B,IAA0B;SAAb,SAAS"}
|
||||
{"version":3,"file":"app.module.js","sourceRoot":"","sources":["../../../../src/app/app.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAmB,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAiB,cAAc,EAAE,MAAM,cAAc,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAIxE,MAAM,UAAU,aAAa;IAC3B,IAAM,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;IAEtC,QAAQ,CAAC,UAAU,GAAG,UAAC,IAAY;QACjC,OAAO,oCAAoC,GAAG,IAAI,GAAG,mBAAmB,CAAC;IAC3E,CAAC,CAAC;IAEF,OAAO,EAAE,QAAQ,UAAA,EAAE,CAAC;AACtB,CAAC;AA+CD;IAAA;IAAyB,CAAC;IAAb,SAAS;QA7CrB,QAAQ,CAAC;YACR,YAAY,EAAE;gBACZ,YAAY;gBACZ,aAAa;gBACb,mBAAmB;gBACnB,aAAa;gBACb,kBAAkB;gBAClB,cAAc;gBACd,uBAAuB;gBACvB,6BAA6B;gBAC7B,mBAAmB;gBACnB,cAAc;gBACd,kBAAkB;gBAClB,qBAAqB;gBACrB,UAAU;gBACV,YAAY;gBACZ,4BAA4B;gBAC5B,uBAAuB;gBACvB,2BAA2B;gBAC3B,sBAAsB;gBACtB,0BAA0B;gBAC1B,kBAAkB;aACnB;YACD,OAAO,EAAE;gBACP,aAAa;gBACb,gBAAgB;gBAChB,QAAQ;gBACR,gBAAgB;gBAChB,WAAW;gBACX,kBAAkB,CAAC,OAAO,EAAE;gBAC5B,cAAc,CAAC,OAAO,CAAC;oBACrB,MAAM,EAAE,UAAU;iBACnB,CAAC;aACH;YACD,SAAS,EAAE;gBACT,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE;gBACxE,iBAAiB;gBACjB,gBAAgB;gBAChB,oBAAoB;gBACpB,YAAY;gBACZ,YAAY;gBACZ,SAAS;aACV;YACD,SAAS,EAAE,CAAC,YAAY,CAAC;SAC1B,CAAC;OACW,SAAS,CAAI;IAAD,gBAAC;CAAA,AAA1B,IAA0B;SAAb,SAAS"}
|
||||
33
dist/out-tsc/src/app/faq/faq.component.js
vendored
Normal file
33
dist/out-tsc/src/app/faq/faq.component.js
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component } from '@angular/core';
|
||||
var FaqComponent = /** @class */ (function () {
|
||||
function FaqComponent() {
|
||||
}
|
||||
FaqComponent.prototype.ngOnInit = function () {
|
||||
};
|
||||
FaqComponent.prototype.onLoad = function (event) {
|
||||
console.log("nice", event);
|
||||
};
|
||||
FaqComponent.prototype.onError = function (event) {
|
||||
console.log("error", event);
|
||||
};
|
||||
FaqComponent = __decorate([
|
||||
Component({
|
||||
selector: 'app-faq-component',
|
||||
templateUrl: './faq.component.html',
|
||||
styleUrls: ['./faq.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [])
|
||||
], FaqComponent);
|
||||
return FaqComponent;
|
||||
}());
|
||||
export { FaqComponent };
|
||||
//# sourceMappingURL=faq.component.js.map
|
||||
1
dist/out-tsc/src/app/faq/faq.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/faq/faq.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"faq.component.js","sourceRoot":"","sources":["../../../../../src/app/faq/faq.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAOlD;IAEE;IAAgB,CAAC;IAEjB,+BAAQ,GAAR;IACA,CAAC;IAED,6BAAM,GAAN,UAAO,KAAK;QACV,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,8BAAO,GAAP,UAAQ,KAAK;QACX,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IAbU,YAAY;QALxB,SAAS,CAAC;YACT,QAAQ,EAAE,mBAAmB;YAC7B,WAAW,EAAE,sBAAsB;YACnC,SAAS,EAAE,CAAC,sBAAsB,CAAC;SACpC,CAAC;;OACW,YAAY,CAexB;IAAD,mBAAC;CAAA,AAfD,IAeC;SAfY,YAAY"}
|
||||
21
dist/out-tsc/src/app/faq/faq.component.spec.js
vendored
Normal file
21
dist/out-tsc/src/app/faq/faq.component.spec.js
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
import { async, TestBed } from '@angular/core/testing';
|
||||
import { FaqComponent } from './faq.component';
|
||||
describe('FaqComponentComponent', function () {
|
||||
var component;
|
||||
var fixture;
|
||||
beforeEach(async(function () {
|
||||
TestBed.configureTestingModule({
|
||||
declarations: [FaqComponent]
|
||||
})
|
||||
.compileComponents();
|
||||
}));
|
||||
beforeEach(function () {
|
||||
fixture = TestBed.createComponent(FaqComponent);
|
||||
component = fixture.componentInstance;
|
||||
fixture.detectChanges();
|
||||
});
|
||||
it('should create', function () {
|
||||
expect(component).toBeTruthy();
|
||||
});
|
||||
});
|
||||
//# sourceMappingURL=faq.component.spec.js.map
|
||||
1
dist/out-tsc/src/app/faq/faq.component.spec.js.map
vendored
Normal file
1
dist/out-tsc/src/app/faq/faq.component.spec.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"faq.component.spec.js","sourceRoot":"","sources":["../../../../../src/app/faq/faq.component.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAoB,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,QAAQ,CAAC,uBAAuB,EAAE;IAChC,IAAI,SAAuB,CAAC;IAC5B,IAAI,OAAuC,CAAC;IAE5C,UAAU,CAAC,KAAK,CAAC;QACf,OAAO,CAAC,sBAAsB,CAAC;YAC7B,YAAY,EAAE,CAAE,YAAY,CAAE;SAC/B,CAAC;aACD,iBAAiB,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC,CAAC;IAEJ,UAAU,CAAC;QACT,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAChD,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC;QACtC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,eAAe,EAAE;QAClB,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
||||
31
dist/out-tsc/src/app/filter.pipe.js
vendored
Normal file
31
dist/out-tsc/src/app/filter.pipe.js
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
import { Pipe } from '@angular/core';
|
||||
var FilterPipe = /** @class */ (function () {
|
||||
function FilterPipe() {
|
||||
}
|
||||
FilterPipe.prototype.transform = function (items, searchText) {
|
||||
if (!items) {
|
||||
return [];
|
||||
}
|
||||
if (!searchText) {
|
||||
return items;
|
||||
}
|
||||
searchText = searchText.toLocaleLowerCase();
|
||||
return items.filter(function (it) {
|
||||
return JSON.stringify(it).toLocaleLowerCase().includes(searchText);
|
||||
});
|
||||
};
|
||||
FilterPipe = __decorate([
|
||||
Pipe({
|
||||
name: 'filter'
|
||||
})
|
||||
], FilterPipe);
|
||||
return FilterPipe;
|
||||
}());
|
||||
export { FilterPipe };
|
||||
//# sourceMappingURL=filter.pipe.js.map
|
||||
1
dist/out-tsc/src/app/filter.pipe.js.map
vendored
Normal file
1
dist/out-tsc/src/app/filter.pipe.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"filter.pipe.js","sourceRoot":"","sources":["../../../../src/app/filter.pipe.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,eAAe,CAAC;AAKpD;IAAA;IAeA,CAAC;IAdC,8BAAS,GAAT,UAAU,KAAY,EAAE,UAAkB;QAExC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,EAAE,CAAC;SACX;QACD,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,KAAK,CAAC;SACd;QACD,UAAU,GAAG,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAE5C,OAAO,KAAK,CAAC,MAAM,CAAC,UAAA,EAAE;YACpB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACL,CAAC;IAdU,UAAU;QAHtB,IAAI,CAAC;YACJ,IAAI,EAAE,QAAQ;SACf,CAAC;OACW,UAAU,CAetB;IAAD,iBAAC;CAAA,AAfD,IAeC;SAfY,UAAU"}
|
||||
8
dist/out-tsc/src/app/filter.pipe.spec.js
vendored
Normal file
8
dist/out-tsc/src/app/filter.pipe.spec.js
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
import { FilterPipe } from './filter.pipe';
|
||||
describe('FilterPipe', function () {
|
||||
it('create an instance', function () {
|
||||
var pipe = new FilterPipe();
|
||||
expect(pipe).toBeTruthy();
|
||||
});
|
||||
});
|
||||
//# sourceMappingURL=filter.pipe.spec.js.map
|
||||
1
dist/out-tsc/src/app/filter.pipe.spec.js.map
vendored
Normal file
1
dist/out-tsc/src/app/filter.pipe.spec.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"filter.pipe.spec.js","sourceRoot":"","sources":["../../../../src/app/filter.pipe.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,QAAQ,CAAC,YAAY,EAAE;IACrB,EAAE,CAAC,oBAAoB,EAAE;QACvB,IAAM,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
||||
3
dist/out-tsc/src/app/home/home.component.js
vendored
3
dist/out-tsc/src/app/home/home.component.js
vendored
@@ -23,6 +23,9 @@ var HomeComponent = /** @class */ (function () {
|
||||
HomeComponent.prototype.ngOnDestroy = function () {
|
||||
this.subs.unsubscribe();
|
||||
};
|
||||
HomeComponent.prototype.popupConfirm = function () {
|
||||
console.log("Confirmed");
|
||||
};
|
||||
HomeComponent = __decorate([
|
||||
Component({
|
||||
selector: 'app-home',
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"home.component.js","sourceRoot":"","sources":["../../../../../src/app/home/home.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AASnD;IAKE,uBAAqB,KAAgB;QAArC,iBAKC;QALoB,UAAK,GAAL,KAAK,CAAW;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,SAAS,CAAE,UAAA,KAAK;YACnD,KAAI,CAAC,IAAI,GAAG,KAAK,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAI,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gCAAQ,GAAR;IAEA,CAAC;IAED,mCAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1B,CAAC;IAlBU,aAAa;QANzB,SAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,WAAW,EAAE,uBAAuB;YACpC,SAAS,EAAE,CAAC,uBAAuB,CAAC;YACpC,SAAS,EAAE,EAAE;SACd,CAAC;yCAM4B,SAAS;OAL1B,aAAa,CAoBzB;IAAD,oBAAC;CAAA,AApBD,IAoBC;SApBY,aAAa"}
|
||||
{"version":3,"file":"home.component.js","sourceRoot":"","sources":["../../../../../src/app/home/home.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AASnD;IAKE,uBAAqB,KAAgB;QAArC,iBAKC;QALoB,UAAK,GAAL,KAAK,CAAW;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,SAAS,CAAE,UAAA,KAAK;YACnD,KAAI,CAAC,IAAI,GAAG,KAAK,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAI,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gCAAQ,GAAR;IAEA,CAAC;IAED,mCAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1B,CAAC;IAED,oCAAY,GAAZ;QACE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC3B,CAAC;IAtBU,aAAa;QANzB,SAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,WAAW,EAAE,uBAAuB;YACpC,SAAS,EAAE,CAAC,uBAAuB,CAAC;YACpC,SAAS,EAAE,EAAE;SACd,CAAC;yCAM4B,SAAS;OAL1B,aAAa,CAwBzB;IAAD,oBAAC;CAAA,AAxBD,IAwBC;SAxBY,aAAa"}
|
||||
40
dist/out-tsc/src/app/interceptors/http.interceptor.js
vendored
Normal file
40
dist/out-tsc/src/app/interceptors/http.interceptor.js
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Injectable } from '@angular/core';
|
||||
import { HttpErrorResponse } from '@angular/common/http';
|
||||
import { tap } from 'rxjs/operators';
|
||||
import { Router } from '@angular/router';
|
||||
import { AuthGuard } from '../services/auth.guard';
|
||||
var MyHttpInterceptor = /** @class */ (function () {
|
||||
function MyHttpInterceptor(router, _auth) {
|
||||
this.router = router;
|
||||
this._auth = _auth;
|
||||
}
|
||||
MyHttpInterceptor.prototype.intercept = function (request, next) {
|
||||
var _this = this;
|
||||
return next.handle(request).pipe(tap(function () { }, function (err) {
|
||||
if (err instanceof HttpErrorResponse) {
|
||||
if (err.status !== 401) {
|
||||
return;
|
||||
}
|
||||
console.log("Interceptor error 401!!");
|
||||
_this._auth.clearUser();
|
||||
_this.router.navigate(['home']);
|
||||
}
|
||||
}));
|
||||
};
|
||||
MyHttpInterceptor = __decorate([
|
||||
Injectable(),
|
||||
__metadata("design:paramtypes", [Router, AuthGuard])
|
||||
], MyHttpInterceptor);
|
||||
return MyHttpInterceptor;
|
||||
}());
|
||||
export { MyHttpInterceptor };
|
||||
//# sourceMappingURL=http.interceptor.js.map
|
||||
1
dist/out-tsc/src/app/interceptors/http.interceptor.js.map
vendored
Normal file
1
dist/out-tsc/src/app/interceptors/http.interceptor.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"http.interceptor.js","sourceRoot":"","sources":["../../../../../src/app/interceptors/http.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAKL,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,MAAM,EAAC,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD;IAEE,2BAAoB,MAAc,EAAU,KAAgB;QAAxC,WAAM,GAAN,MAAM,CAAQ;QAAU,UAAK,GAAL,KAAK,CAAW;IAAG,CAAC;IAEhE,qCAAS,GAAT,UAAU,OAAyB,EAAE,IAAiB;QAAtD,iBAcC;QAZC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAE,GAAG,CAAC,cAAO,CAAC,EAC5C,UAAC,GAAQ;YAET,IAAI,GAAG,YAAY,iBAAiB,EAAE;gBACpC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;oBACvB,OAAO;iBACP;gBACD,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBACvC,KAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;gBACvB,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC,CAAC;IACN,CAAC;IAlBU,iBAAiB;QAD7B,UAAU,EAAE;yCAGiB,MAAM,EAAiB,SAAS;OAFjD,iBAAiB,CAmB7B;IAAD,wBAAC;CAAA,AAnBD,IAmBC;SAnBY,iBAAiB"}
|
||||
40
dist/out-tsc/src/app/logs/logs.component.js
vendored
40
dist/out-tsc/src/app/logs/logs.component.js
vendored
@@ -20,7 +20,6 @@ var LogsComponent = /** @class */ (function () {
|
||||
LogsComponent.prototype.onClick = function (targetElement) {
|
||||
var clickedInside = this.insideElement.nativeElement.contains(targetElement);
|
||||
if (!clickedInside) {
|
||||
console.log('outside clicked');
|
||||
this.onClose.emit(false);
|
||||
}
|
||||
};
|
||||
@@ -33,20 +32,45 @@ var LogsComponent = /** @class */ (function () {
|
||||
});
|
||||
}
|
||||
else if (this.type === "destroy") {
|
||||
this.sub = timer(0, 5000).pipe(switchMap(function () { return _this._provisionsService.getDestroyLogs(_this.selectedprov.destroyId); })).subscribe(function (content) {
|
||||
this.sub = timer(0, 5000).pipe(switchMap(function () { return _this._provisionsService.getDestroyLogs(_this.selectedprov.destroy._id); })).subscribe(function (content) {
|
||||
_this.content = content;
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
LogsComponent.prototype.ngOnInit = function () {
|
||||
this.refresh();
|
||||
LogsComponent.prototype.ngOnInit = function () { };
|
||||
LogsComponent.prototype.ngOnChanges = function (changes) {
|
||||
var _this = this;
|
||||
this.content = null;
|
||||
if (this.sub) {
|
||||
this.sub.unsubscribe();
|
||||
this.sub = null;
|
||||
}
|
||||
if (changes.show && changes.show.currentValue) {
|
||||
if (this.type === "provision") {
|
||||
this.sub = timer(0, 5000).pipe(switchMap(function () { return _this._provisionsService.getProvisionLogs(_this.selectedprov._id); })).subscribe(function (content) {
|
||||
_this.content = content;
|
||||
});
|
||||
}
|
||||
else if (this.type === "destroy") {
|
||||
this.sub = timer(0, 5000).pipe(switchMap(function () { return _this._provisionsService.getDestroyLogs(_this.selectedprov.destroy._id); })).subscribe(function (content) {
|
||||
_this.content = content;
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
LogsComponent.prototype.ngOnDestroy = function () {
|
||||
this.sub.unsubscribe();
|
||||
if (this.sub) {
|
||||
this.sub.unsubscribe();
|
||||
this.sub = null;
|
||||
}
|
||||
};
|
||||
LogsComponent.prototype.close = function () {
|
||||
this.sub.unsubscribe();
|
||||
this.content = null;
|
||||
if (this.sub) {
|
||||
this.sub.unsubscribe();
|
||||
this.sub = null;
|
||||
}
|
||||
this.onClose.emit(false);
|
||||
};
|
||||
__decorate([
|
||||
@@ -59,6 +83,10 @@ var LogsComponent = /** @class */ (function () {
|
||||
__metadata("design:paramtypes", [Object]),
|
||||
__metadata("design:returntype", void 0)
|
||||
], LogsComponent.prototype, "onClick", null);
|
||||
__decorate([
|
||||
Input(),
|
||||
__metadata("design:type", Object)
|
||||
], LogsComponent.prototype, "show", void 0);
|
||||
__decorate([
|
||||
Input(),
|
||||
__metadata("design:type", Object)
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"logs.component.js","sourceRoot":"","sources":["../../../../../src/app/logs/logs.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACxG,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAgB,KAAK,EAAC,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAO3C;IAgBE,uBAAoB,kBAAqC;QAArC,uBAAkB,GAAlB,kBAAkB,CAAmB;QAHzD,YAAO,GAAW,IAAI,CAAC;QAOb,YAAO,GAAG,IAAI,YAAY,EAAE,CAAC;IAJsB,CAAC;IAXvD,+BAAO,GAAd,UAAe,aAAa;QAC1B,IAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC/E,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1B;IACH,CAAC;IAWD,+BAAO,GAAP;QAAA,iBAYC;QAXC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAC;YAChB,IAAK,IAAI,CAAC,IAAI,KAAK,WAAW,EAAG;gBAC/B,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAE,SAAS,CAAC,cAAM,OAAA,KAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,KAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAA/D,CAA+D,CAAE,CAAE,CAAC,SAAS,CAAC,UAAA,OAAO;oBACnI,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;gBACzB,CAAC,CAAC,CAAC;aACJ;iBAAM,IAAK,IAAI,CAAC,IAAI,KAAK,SAAS,EAAG;gBACpC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAE,SAAS,CAAC,cAAM,OAAA,KAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,KAAI,CAAC,YAAY,CAAC,SAAS,CAAC,EAAnE,CAAmE,CAAE,CAAE,CAAC,SAAS,CAAC,UAAA,OAAO;oBACvI,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;gBACzB,CAAC,CAAC,CAAA;aACH;SACF;IACH,CAAC;IACD,gCAAQ,GAAR;QACE,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,mCAAW,GAAX;QACE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IACzB,CAAC;IAED,6BAAK,GAAL;QACE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IA5C2B;QAA3B,SAAS,CAAC,eAAe,CAAC;;wDAAe;IAG1C;QAFC,YAAY,CAAC,gBAAgB,EAAE,CAAC,eAAe,CAAC,CAAC;;;;gDAQjD;IAOQ;QAAR,KAAK,EAAE;;uDAAc;IACb;QAAR,KAAK,EAAE;;+CAAM;IACJ;QAAT,MAAM,EAAE;;kDAA8B;IApB5B,aAAa;QALzB,SAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,WAAW,EAAE,uBAAuB;YACpC,SAAS,EAAE,CAAC,uBAAuB,CAAC;SACrC,CAAC;yCAiBwC,iBAAiB;OAhB9C,aAAa,CAgDzB;IAAD,oBAAC;CAAA,AAhDD,IAgDC;SAhDY,aAAa"}
|
||||
{"version":3,"file":"logs.component.js","sourceRoot":"","sources":["../../../../../src/app/logs/logs.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAa,MAAM,eAAe,CAAC;AACnH,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAgB,KAAK,EAAC,MAAM,MAAM,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAO3C;IAgBE,uBAAoB,kBAAqC;QAArC,uBAAkB,GAAlB,kBAAkB,CAAmB;QAHzD,YAAO,GAAW,IAAI,CAAC;QAQb,YAAO,GAAG,IAAI,YAAY,EAAE,CAAC;IALsB,CAAC;IAXvD,+BAAO,GAAd,UAAe,aAAa;QAC1B,IAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC/E,IAAI,CAAC,aAAa,EAAE;YAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC1B;IACH,CAAC;IAaD,+BAAO,GAAP;QAAA,iBAYC;QAXC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAC;YAChB,IAAK,IAAI,CAAC,IAAI,KAAK,WAAW,EAAG;gBAC/B,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAE,SAAS,CAAC,cAAM,OAAA,KAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,KAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAA/D,CAA+D,CAAE,CAAE,CAAC,SAAS,CAAC,UAAA,OAAO;oBACnI,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;gBACzB,CAAC,CAAC,CAAC;aACJ;iBAAM,IAAK,IAAI,CAAC,IAAI,KAAK,SAAS,EAAG;gBACpC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAE,SAAS,CAAC,cAAM,OAAA,KAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,KAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAArE,CAAqE,CAAE,CAAE,CAAC,SAAS,CAAC,UAAA,OAAO;oBACzI,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;gBACzB,CAAC,CAAC,CAAA;aACH;SACF;IACH,CAAC;IACD,gCAAQ,GAAR,cAAY,CAAC;IAEb,mCAAW,GAAX,UAAY,OAAO;QAAnB,iBAiBC;QAhBC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAK,IAAI,CAAC,GAAG,EAAG;YACd,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;SACjB;QACD,IAAK,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,EAAG;YAC/C,IAAK,IAAI,CAAC,IAAI,KAAK,WAAW,EAAG;gBAC/B,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAE,SAAS,CAAC,cAAM,OAAA,KAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,KAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAA/D,CAA+D,CAAE,CAAE,CAAC,SAAS,CAAC,UAAA,OAAO;oBACnI,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;gBACzB,CAAC,CAAC,CAAC;aACJ;iBAAM,IAAK,IAAI,CAAC,IAAI,KAAK,SAAS,EAAG;gBACpC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAE,SAAS,CAAC,cAAM,OAAA,KAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,KAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAArE,CAAqE,CAAE,CAAE,CAAC,SAAS,CAAC,UAAA,OAAO;oBACzI,KAAI,CAAC,OAAO,GAAG,OAAO,CAAC;gBACzB,CAAC,CAAC,CAAA;aACH;SACF;IACH,CAAC;IAED,mCAAW,GAAX;QACE,IAAK,IAAI,CAAC,GAAG,EAAG;YACd,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;SACjB;IACH,CAAC;IAED,6BAAK,GAAL;QACE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAK,IAAI,CAAC,GAAG,EAAG;YACd,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;SACjB;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IArE2B;QAA3B,SAAS,CAAC,eAAe,CAAC;;wDAAe;IAG1C;QAFC,YAAY,CAAC,gBAAgB,EAAE,CAAC,eAAe,CAAC,CAAC;;;;gDAOjD;IAQQ;QAAR,KAAK,EAAE;;+CAAM;IACL;QAAR,KAAK,EAAE;;uDAAc;IACb;QAAR,KAAK,EAAE;;+CAAM;IACJ;QAAT,MAAM,EAAE;;kDAA8B;IArB5B,aAAa;QALzB,SAAS,CAAC;YACT,QAAQ,EAAE,UAAU;YACpB,WAAW,EAAE,uBAAuB;YACpC,SAAS,EAAE,CAAC,uBAAuB,CAAC;SACrC,CAAC;yCAiBwC,iBAAiB;OAhB9C,aAAa,CAyEzB;IAAD,oBAAC;CAAA,AAzED,IAyEC;SAzEY,aAAa"}
|
||||
@@ -7,37 +7,63 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component, ElementRef } from '@angular/core';
|
||||
import * as leonardoui from 'leonardo-ui';
|
||||
import { Component, ElementRef, EventEmitter, ViewChild, Input, Output } from '@angular/core';
|
||||
var PopoverconfirmComponent = /** @class */ (function () {
|
||||
function PopoverconfirmComponent(myElement) {
|
||||
this.onConfirm = new EventEmitter();
|
||||
this.element = myElement;
|
||||
}
|
||||
PopoverconfirmComponent.prototype.open = function () {
|
||||
console.log("myElement", this.element);
|
||||
console.log("open popover", leonardoui);
|
||||
/*this.popover = leonardoui.popover( {
|
||||
content: this.element[0],
|
||||
closeOnEscape: true,
|
||||
dock: "bottom",
|
||||
alignTo: this.element
|
||||
} );
|
||||
console.log("this.popover", this.popover);
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
}
|
||||
|
||||
ok(): void {
|
||||
this.popover.close();
|
||||
}
|
||||
|
||||
cancel(): void {
|
||||
this.popover.close();
|
||||
}
|
||||
}
|
||||
|
||||
var viewportOffset = this.element.nativeElement.getBoundingClientRect();
|
||||
var top = viewportOffset.top;
|
||||
var left = viewportOffset.left;
|
||||
this.popovercontent.nativeElement.style.display = 'block';
|
||||
this.popovercontent.nativeElement.style.position = 'absolute';
|
||||
if (this.dock.indexOf('left') !== -1) {
|
||||
this.left = -this.popovercontent.nativeElement.offsetWidth;
|
||||
}
|
||||
else if (this.dock.indexOf('right') !== -1) {
|
||||
this.left = this.element.nativeElement.offsetWidth;
|
||||
}
|
||||
this.top = 0;
|
||||
if (this.dock.indexOf('top') !== -1) {
|
||||
this.top = -this.popovercontent.nativeElement.offsetHeight;
|
||||
}
|
||||
else if (this.dock.indexOf('bottom') !== -1) {
|
||||
this.top = this.element.nativeElement.offsetHeight;
|
||||
}
|
||||
this.popovercontent.nativeElement.style.top = (top + this.top) + 'px';
|
||||
this.popovercontent.nativeElement.style.left = (left + this.left) + 'px';
|
||||
};
|
||||
PopoverconfirmComponent.prototype.ngOnInit = function () {
|
||||
};
|
||||
PopoverconfirmComponent.prototype.ok = function () {
|
||||
this.popovercontent.nativeElement.style.display = 'none';
|
||||
this.onConfirm.emit(true);
|
||||
};
|
||||
PopoverconfirmComponent.prototype.cancel = function () {
|
||||
this.popovercontent.nativeElement.style.display = 'none';
|
||||
};
|
||||
__decorate([
|
||||
ViewChild('popovercontent'),
|
||||
__metadata("design:type", ElementRef)
|
||||
], PopoverconfirmComponent.prototype, "popovercontent", void 0);
|
||||
__decorate([
|
||||
Input(),
|
||||
__metadata("design:type", Object)
|
||||
], PopoverconfirmComponent.prototype, "dock", void 0);
|
||||
__decorate([
|
||||
Input(),
|
||||
__metadata("design:type", Object)
|
||||
], PopoverconfirmComponent.prototype, "buttonConfig", void 0);
|
||||
__decorate([
|
||||
Input(),
|
||||
__metadata("design:type", Object)
|
||||
], PopoverconfirmComponent.prototype, "popupConfig", void 0);
|
||||
__decorate([
|
||||
Output(),
|
||||
__metadata("design:type", Object)
|
||||
], PopoverconfirmComponent.prototype, "onConfirm", void 0);
|
||||
PopoverconfirmComponent = __decorate([
|
||||
Component({
|
||||
selector: 'app-popoverconfirm',
|
||||
@@ -49,25 +75,4 @@ var PopoverconfirmComponent = /** @class */ (function () {
|
||||
return PopoverconfirmComponent;
|
||||
}());
|
||||
export { PopoverconfirmComponent };
|
||||
/*this.popover = leonardoui.popover( {
|
||||
content: this.element[0],
|
||||
closeOnEscape: true,
|
||||
dock: "bottom",
|
||||
alignTo: this.element
|
||||
} );
|
||||
console.log("this.popover", this.popover);
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
}
|
||||
|
||||
ok(): void {
|
||||
this.popover.close();
|
||||
}
|
||||
|
||||
cancel(): void {
|
||||
this.popover.close();
|
||||
}
|
||||
}
|
||||
|
||||
//# sourceMappingURL=popoverconfirm.component.js.map
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"popoverconfirm.component.js","sourceRoot":"","sources":["../../../../../src/app/popoverconfirm/popoverconfirm.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,UAAU,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC;AAO1C;IAKE,iCAAa,SAAqB;QAChC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3B,CAAC;IAED,sCAAI,GAAJ;QACE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QACxC;;;;;;;;;;;;;;;;;;;;QAoBJ;IAAA,CAAC,AArB2C;IAX/B,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,WAAW,EAAE,iCAAiC;YAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;SAC/C,CAAC;yCAMwB,UAAU;OALvB,uBAAuB,CAWQ;IAqB5C,8BAAC;CArB2C,AAX5C,IAW4C;SAX/B,uBAAuB;AAYhC;;;;;;;;;;;;;;;;;;;;AAoBJ"}
|
||||
{"version":3,"file":"popoverconfirm.component.js","sourceRoot":"","sources":["../../../../../src/app/popoverconfirm/popoverconfirm.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAgB,MAAM,EAAE,MAAM,eAAe,CAAC;AAOpH;IAOE,iCAAa,SAAqB;QAQxB,cAAS,GAAG,IAAI,YAAY,EAAE,CAAC;QAPvC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3B,CAAC;IAWD,sCAAI,GAAJ;QACE,IAAI,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;QACxE,IAAI,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC;QAC7B,IAAI,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;QAE/B,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QAC1D,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;QAE9D,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;YACpC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,WAAW,CAAC;SAC5D;aAAM,IAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAG;YAC9C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC;SACpD;QAED,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QACb,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;YACnC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,YAAY,CAAC;SAC5D;aAAM,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE;YAC7C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC;SACpD;QAED,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;QACtE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAE3E,CAAC;IAED,0CAAQ,GAAR;IACA,CAAC;IAED,oCAAE,GAAF;QACE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACzD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,wCAAM,GAAN;QACE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;IAC3D,CAAC;IAnDD;QADC,SAAS,CAAC,gBAAgB,CAAC;kCACH,UAAU;mEAAC;IAM3B;QAAR,KAAK,EAAE;;yDAAM;IACL;QAAR,KAAK,EAAE;;iEAAc;IACb;QAAR,KAAK,EAAE;;gEAAa;IAEX;QAAT,MAAM,EAAE;;8DAAgC;IAf9B,uBAAuB;QALnC,SAAS,CAAC;YACT,QAAQ,EAAE,oBAAoB;YAC9B,WAAW,EAAE,iCAAiC;YAC9C,SAAS,EAAE,CAAC,iCAAiC,CAAC;SAC/C,CAAC;yCAQwB,UAAU;OAPvB,uBAAuB,CAyDnC;IAAD,8BAAC;CAAA,AAzDD,IAyDC;SAzDY,uBAAuB"}
|
||||
@@ -12,33 +12,53 @@ import { ProvisionsService } from '../services/provisions.service';
|
||||
import { timer } from 'rxjs';
|
||||
import { switchMap } from 'rxjs/operators';
|
||||
import { AuthGuard } from '../services/auth.guard';
|
||||
import { ScenariosService } from '../services/scenarios.service';
|
||||
import { AlertService } from '../services/alert.service';
|
||||
import { MDBModalService } from 'angular-bootstrap-md';
|
||||
import { ModalInfoComponent } from '../alert/modalinfo.component';
|
||||
import { ModalConfirmComponent } from '../alert/confirm.component';
|
||||
var ProvisionsComponent = /** @class */ (function () {
|
||||
function ProvisionsComponent(_provisionsService, _auth) {
|
||||
function ProvisionsComponent(modalService, _alertService, _provisionsService, _scenariosService, _auth) {
|
||||
var _this = this;
|
||||
this.modalService = modalService;
|
||||
this._alertService = _alertService;
|
||||
this._provisionsService = _provisionsService;
|
||||
this._scenariosService = _scenariosService;
|
||||
this._auth = _auth;
|
||||
this.logShow = false;
|
||||
this.logstype = 'provision';
|
||||
this.selectedprov = null;
|
||||
this._auth.getUserInfo().subscribe(function (value) {
|
||||
_this._userId = value._id;
|
||||
_this._userId = value ? value._id : null;
|
||||
});
|
||||
}
|
||||
ProvisionsComponent.prototype._refresh = function () {
|
||||
var _this = this;
|
||||
this.instantSubs = this._provisionsService.getCombinedProvisions(this._userId).subscribe(function (pair) {
|
||||
_this._provisionsService.composePair(pair);
|
||||
_this.destroys = pair[1];
|
||||
_this.provisions = pair[0];
|
||||
this.instantSubs = this._provisionsService.getProvisionsByUser(this._userId).subscribe(function (provisions) {
|
||||
provisions = provisions.results;
|
||||
provisions.forEach(function (p) {
|
||||
p._scenario = _this.scenarios.filter(function (s) { return s.name === p.scenario; });
|
||||
_this._provisionsService.timeRunning(p);
|
||||
});
|
||||
_this.provisions = provisions.filter(function (p) { return !p.destroy || !p.destroy.status || p.destroy.status !== 'destroyed'; });
|
||||
_this.destroys = provisions.filter(function (p) { return p.destroy && p.destroy.status === 'destroyed'; });
|
||||
_this.instantSubs.unsubscribe();
|
||||
});
|
||||
};
|
||||
ProvisionsComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
this.subscription = timer(0, 5000).pipe(switchMap(function () { return _this._provisionsService.getCombinedProvisions(_this._userId); })).subscribe(function (pair) {
|
||||
_this._provisionsService.composePair(pair);
|
||||
_this.destroys = pair[1];
|
||||
_this.provisions = pair[0];
|
||||
this.scenariosSub = this._scenariosService.getScenariosAll().subscribe(function (res) {
|
||||
_this.scenarios = res.results;
|
||||
_this.scenariosSub.unsubscribe();
|
||||
_this.subscription = timer(0, 8000).pipe(switchMap(function () { return _this._provisionsService.getProvisionsByUser(_this._userId); })).subscribe(function (provisions) {
|
||||
provisions = provisions.results;
|
||||
provisions.forEach(function (p) {
|
||||
p._scenario = _this.scenarios.filter(function (s) { return s.name === p.scenario; });
|
||||
_this._provisionsService.timeRunning(p);
|
||||
});
|
||||
_this.provisions = provisions.filter(function (p) { return !p.destroy || !p.destroy.status || p.destroy.status !== 'destroyed'; });
|
||||
_this.destroys = provisions.filter(function (p) { return p.destroy && p.destroy.status === 'destroyed'; });
|
||||
});
|
||||
});
|
||||
};
|
||||
ProvisionsComponent.prototype.ngOnDestroy = function () {
|
||||
@@ -47,18 +67,122 @@ var ProvisionsComponent = /** @class */ (function () {
|
||||
this.instantSubs.unsubscribe();
|
||||
}
|
||||
};
|
||||
ProvisionsComponent.prototype.setModal = function (provision, frame) {
|
||||
frame.show();
|
||||
this._provisionsService.setSelectedProv(provision);
|
||||
};
|
||||
ProvisionsComponent.prototype.del = function (provision) {
|
||||
var _this = this;
|
||||
this._provisionsService.delProvision(provision._id.toString(), this._userId).subscribe(function (res) {
|
||||
console.log("Done!", res);
|
||||
_this._refresh();
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Provision entry '" + provision.scenario + "' was deleted from your history"
|
||||
});
|
||||
});
|
||||
};
|
||||
ProvisionsComponent.prototype.destroy = function (provision) {
|
||||
ProvisionsComponent.prototype.openConfirmDestroyModal = function (provision) {
|
||||
var _this = this;
|
||||
this._provisionsService.newDestroy({ "id": provision._id.toString() }, this._userId).subscribe(function (res) {
|
||||
console.log("Done!", res);
|
||||
_this._refresh();
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-danger',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm destroy this provision?',
|
||||
icon: 'times-circle'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.newDestroy(provision._id.toString(), _this._userId).subscribe(function (res) {
|
||||
_this._refresh();
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Provision of scenario '" + provision.scenario + "' is going to be destroyed"
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
ProvisionsComponent.prototype.openConfirmStopModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-info',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm Stop VMs?',
|
||||
icon: 'stop',
|
||||
buttonColor: 'grey'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.stopVms(provision._id.toString(), _this._userId).subscribe(function (res) {
|
||||
provision.statusVms = res.statusVms;
|
||||
provision.timeRunning = res.timeRunning;
|
||||
provision.runningFrom = res.runningFrom;
|
||||
_this._provisionsService.timeRunning(provision);
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Stopping all VMs for scenario '" + provision.scenario + "'..."
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
ProvisionsComponent.prototype.openConfirmStartModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-info',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm Start VMs?',
|
||||
icon: 'play',
|
||||
buttonColor: 'grey'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.startVms(provision._id.toString(), _this._userId).subscribe(function (res) {
|
||||
provision.statusVms = res.statusVms;
|
||||
provision.timeRunning = res.timeRunning;
|
||||
provision.runningFrom = res.runningFrom;
|
||||
_this._provisionsService.timeRunning(provision);
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Starting all VMs for scenario '" + provision.scenario + "'..."
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
ProvisionsComponent.prototype.openConfirmExtendModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-info',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: "Extend running VMs for " + this._provisionsService.RUNNING_PERIOD + " days?",
|
||||
icon: 'plus-square',
|
||||
buttonColor: 'grey'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.extend(provision._id.toString(), _this._userId).subscribe(function (res) {
|
||||
provision.countExtend = res.countExtend;
|
||||
provision.timeRunning = res.timeRunning;
|
||||
provision.runningFrom = res.runningFrom;
|
||||
_this._provisionsService.timeRunning(provision);
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Running period extended another " + _this._provisionsService.RUNNING_PERIOD + " days (from now) for provision '" + provision.scenario + "'"
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
ProvisionsComponent.prototype.showLogs = function ($event, provision, type) {
|
||||
@@ -69,12 +193,24 @@ var ProvisionsComponent = /** @class */ (function () {
|
||||
this.selectedprov = provision;
|
||||
this.logShow = true;
|
||||
};
|
||||
ProvisionsComponent.prototype.onLogsClose = function ($event) {
|
||||
ProvisionsComponent.prototype.openModal = function (provision) {
|
||||
this.modalService.show(ModalInfoComponent, {
|
||||
class: 'modal-lg',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: provision
|
||||
}
|
||||
});
|
||||
};
|
||||
ProvisionsComponent.prototype.onLogsClose = function () {
|
||||
this.selectedprov = null;
|
||||
this.logShow = false;
|
||||
};
|
||||
ProvisionsComponent.prototype.onStartProvision = function ($event) {
|
||||
console.log("onStartProvision");
|
||||
ProvisionsComponent.prototype.onStartProvision = function (scenario) {
|
||||
this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Scenario '" + scenario.name + "' is going to be provisioned. Scroll up to your Provisions to watch out progress."
|
||||
});
|
||||
this._refresh();
|
||||
};
|
||||
ProvisionsComponent = __decorate([
|
||||
@@ -84,7 +220,7 @@ var ProvisionsComponent = /** @class */ (function () {
|
||||
styleUrls: ['./provisions.component.scss'],
|
||||
providers: [ProvisionsService]
|
||||
}),
|
||||
__metadata("design:paramtypes", [ProvisionsService, AuthGuard])
|
||||
__metadata("design:paramtypes", [MDBModalService, AlertService, ProvisionsService, ScenariosService, AuthGuard])
|
||||
], ProvisionsComponent);
|
||||
return ProvisionsComponent;
|
||||
}());
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -11,28 +11,52 @@ import { Component, Output, EventEmitter } from '@angular/core';
|
||||
import { ProvisionsService } from '../services/provisions.service';
|
||||
import { ScenariosService } from '../services/scenarios.service';
|
||||
import { AuthGuard } from '../services/auth.guard';
|
||||
import { NewProvisionConfirmComponent } from '../alert/new-provision.component';
|
||||
import { MDBModalService } from 'angular-bootstrap-md';
|
||||
var ScenariosComponent = /** @class */ (function () {
|
||||
function ScenariosComponent(_provisionsService, _scenariosService, _auth) {
|
||||
function ScenariosComponent(modalService, _provisionsService, _scenariosService, _auth) {
|
||||
var _this = this;
|
||||
this.modalService = modalService;
|
||||
this._provisionsService = _provisionsService;
|
||||
this._scenariosService = _scenariosService;
|
||||
this._auth = _auth;
|
||||
this.onStartProvision = new EventEmitter();
|
||||
this._auth.getUserInfo().subscribe(function (value) {
|
||||
_this._userId = value._id;
|
||||
_this.user = value;
|
||||
});
|
||||
}
|
||||
ScenariosComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
this._scenariosService.getScenarios().subscribe(function (res) {
|
||||
_this.scenarios = res;
|
||||
this.scenariosSub = this._scenariosService.getScenarios().subscribe(function (res) {
|
||||
_this.scenarios = res.results;
|
||||
_this.scenariosSub.unsubscribe();
|
||||
console.log("scenarios", _this.scenarios);
|
||||
});
|
||||
};
|
||||
ScenariosComponent.prototype.provision = function (scenario) {
|
||||
ScenariosComponent.prototype.ngOnDestroy = function () { };
|
||||
ScenariosComponent.prototype.openNewProvisionConfirmModal = function (scenario) {
|
||||
var _this = this;
|
||||
this._provisionsService.newProvision({ "scenario": scenario.name }, this._userId).subscribe(function (res) {
|
||||
console.log("Done!", res);
|
||||
_this.onStartProvision.emit();
|
||||
var modalRef = this.modalService.show(NewProvisionConfirmComponent, {
|
||||
class: 'modal-md modal-notify',
|
||||
containerClass: '',
|
||||
data: {
|
||||
scenario: scenario
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (data) {
|
||||
sub.unsubscribe();
|
||||
var postData = {
|
||||
scenario: scenario.name,
|
||||
description: data.description,
|
||||
isExternalAccess: data.isExternalAccess
|
||||
};
|
||||
if (data.servers) {
|
||||
postData["vmImage"] = data.servers;
|
||||
}
|
||||
_this._provisionsService.newProvision(postData, _this.user._id).subscribe(function (res) {
|
||||
console.log("Done!", res);
|
||||
_this.onStartProvision.emit(scenario);
|
||||
});
|
||||
});
|
||||
};
|
||||
__decorate([
|
||||
@@ -45,7 +69,7 @@ var ScenariosComponent = /** @class */ (function () {
|
||||
templateUrl: './scenarios.component.html',
|
||||
styleUrls: ['./scenarios.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [ProvisionsService, ScenariosService, AuthGuard])
|
||||
__metadata("design:paramtypes", [MDBModalService, ProvisionsService, ScenariosService, AuthGuard])
|
||||
], ScenariosComponent);
|
||||
return ScenariosComponent;
|
||||
}());
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"scenarios.component.js","sourceRoot":"","sources":["../../../../../src/app/scenarios/scenarios.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,YAAY,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAOnD;IAEE,4BAAoB,kBAAqC,EAAU,iBAAmC,EAAU,KAAgB;QAAhI,iBAIC;QAJmB,uBAAkB,GAAlB,kBAAkB,CAAmB;QAAU,sBAAiB,GAAjB,iBAAiB,CAAkB;QAAU,UAAK,GAAL,KAAK,CAAW;QAMtH,qBAAgB,GAAG,IAAI,YAAY,EAAE,CAAC;QAL9C,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,SAAS,CAAE,UAAA,KAAK;YACvC,KAAI,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAOD,qCAAQ,GAAR;QAAA,iBAIC;QAHC,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC,SAAS,CAAE,UAAA,GAAG;YAClD,KAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACvB,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,sCAAS,GAAT,UAAU,QAAQ;QAAlB,iBAKC;QAJC,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,EAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAE,UAAA,GAAG;YAC5F,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC1B,KAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAA;IACJ,CAAC;IAhBS;QAAT,MAAM,EAAE;;gEAAuC;IARrC,kBAAkB;QAL9B,SAAS,CAAC;YACT,QAAQ,EAAE,eAAe;YACzB,WAAW,EAAE,4BAA4B;YACzC,SAAS,EAAE,CAAC,4BAA4B,CAAC;SAC1C,CAAC;yCAGwC,iBAAiB,EAA6B,gBAAgB,EAAiB,SAAS;OAFrH,kBAAkB,CA0B9B;IAAD,yBAAC;CAAA,AA1BD,IA0BC;SA1BY,kBAAkB"}
|
||||
{"version":3,"file":"scenarios.component.js","sourceRoot":"","sources":["../../../../../src/app/scenarios/scenarios.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAU,YAAY,EAAa,MAAM,eAAe,CAAC;AACnF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAQvD;IAIE,4BAAoB,YAA6B,EAAU,kBAAqC,EAAU,iBAAmC,EAAU,KAAgB;QAAvK,iBAIC;QAJmB,iBAAY,GAAZ,YAAY,CAAiB;QAAU,uBAAkB,GAAlB,kBAAkB,CAAmB;QAAU,sBAAiB,GAAjB,iBAAiB,CAAkB;QAAU,UAAK,GAAL,KAAK,CAAW;QAM7J,qBAAgB,GAAG,IAAI,YAAY,EAAU,CAAC;QALtD,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,SAAS,CAAE,UAAA,KAAK;YACvC,KAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAQD,qCAAQ,GAAR;QAAA,iBAOC;QALC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC,SAAS,CAAE,UAAA,GAAG;YACtE,KAAI,CAAC,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC;YAC7B,KAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,KAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,wCAAW,GAAX,cAAe,CAAC;IAEhB,yDAA4B,GAA5B,UAA6B,QAAQ;QAArC,iBA4BC;QA3BC,IAAI,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,4BAA4B,EAAE;YAClE,KAAK,EAAE,uBAAuB;YAC9B,cAAc,EAAE,EAAE;YAClB,IAAI,EAAE;gBACJ,QAAQ,EAAE,QAAQ;aACnB;SACF,CAAE,CAAC;QAEJ,IAAI,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAE,UAAC,IAAS;YACrD,GAAG,CAAC,WAAW,EAAE,CAAC;YAElB,IAAM,QAAQ,GAAG;gBACf,QAAQ,EAAE,QAAQ,CAAC,IAAI;gBACvB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;aACxC,CAAC;YAEF,IAAK,IAAI,CAAC,OAAO,EAAG;gBAChB,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;aACtC;YAED,KAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,CAAE,UAAA,GAAG;gBAC1E,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBAC1B,KAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QAEL,CAAC,CAAC,CAAC;IACL,CAAC;IA7CS;QAAT,MAAM,EAAE;;gEAA+C;IAV7C,kBAAkB;QAL9B,SAAS,CAAC;YACT,QAAQ,EAAE,eAAe;YACzB,WAAW,EAAE,4BAA4B;YACzC,SAAS,EAAE,CAAC,4BAA4B,CAAC;SAC1C,CAAC;yCAKkC,eAAe,EAA8B,iBAAiB,EAA6B,gBAAgB,EAAiB,SAAS;OAJ5J,kBAAkB,CAyD9B;IAAD,yBAAC;CAAA,AAzDD,IAyDC;SAzDY,kBAAkB"}
|
||||
36
dist/out-tsc/src/app/services/alert.service.js
vendored
Normal file
36
dist/out-tsc/src/app/services/alert.service.js
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Injectable, EventEmitter } from '@angular/core';
|
||||
var AlertService = /** @class */ (function () {
|
||||
function AlertService() {
|
||||
this.alertEmitter = new EventEmitter();
|
||||
}
|
||||
AlertService.prototype.showAlert = function (alert) {
|
||||
this.alertEmitter.emit(alert);
|
||||
if (this.to) {
|
||||
clearTimeout(this.to);
|
||||
}
|
||||
this.to = setTimeout(function () {
|
||||
this.alertEmitter.emit(null);
|
||||
}.bind(this), 5000);
|
||||
};
|
||||
AlertService.prototype.getAlertEmitter = function () {
|
||||
return this.alertEmitter;
|
||||
};
|
||||
AlertService = __decorate([
|
||||
Injectable({
|
||||
providedIn: 'root'
|
||||
}),
|
||||
__metadata("design:paramtypes", [])
|
||||
], AlertService);
|
||||
return AlertService;
|
||||
}());
|
||||
export { AlertService };
|
||||
//# sourceMappingURL=alert.service.js.map
|
||||
1
dist/out-tsc/src/app/services/alert.service.js.map
vendored
Normal file
1
dist/out-tsc/src/app/services/alert.service.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"alert.service.js","sourceRoot":"","sources":["../../../../../src/app/services/alert.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAKzD;IAIE;QAFA,iBAAY,GAAG,IAAI,YAAY,EAAE,CAAC;IAElB,CAAC;IAGjB,gCAAS,GAAT,UAAU,KAAK;QACb,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAK,IAAI,CAAC,EAAE,EAAG;YACb,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACvB;QACD,IAAI,CAAC,EAAE,GAAG,UAAU,CAAE;YAClB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,sCAAe,GAAf;QACE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAnBU,YAAY;QAHxB,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;;OACW,YAAY,CAqBxB;IAAD,mBAAC;CAAA,AArBD,IAqBC;SArBY,YAAY"}
|
||||
24
dist/out-tsc/src/app/services/auth.guard.js
vendored
24
dist/out-tsc/src/app/services/auth.guard.js
vendored
@@ -12,30 +12,32 @@ import { Router } from '@angular/router';
|
||||
import { of, BehaviorSubject } from 'rxjs';
|
||||
import { map, catchError } from 'rxjs/operators';
|
||||
import { HttpClient } from '@angular/common/http';
|
||||
import { UsersService } from './users.service';
|
||||
var AuthGuard = /** @class */ (function () {
|
||||
// Inject Router so we can hand off the user to the Login Page
|
||||
function AuthGuard(httpClient, router) {
|
||||
var _this = this;
|
||||
function AuthGuard(_userService, httpClient, router) {
|
||||
this._userService = _userService;
|
||||
this.httpClient = httpClient;
|
||||
this.router = router;
|
||||
this.userInfo = new BehaviorSubject(null);
|
||||
this.getMe().subscribe(function (value) {
|
||||
_this.userInfo.next(value);
|
||||
localStorage.setItem("user", JSON.stringify(value));
|
||||
});
|
||||
var user = localStorage.getItem("user");
|
||||
this.userInfo.next(JSON.parse(user));
|
||||
}
|
||||
AuthGuard.prototype.canActivate = function (route) {
|
||||
var _this = this;
|
||||
return this.getMe().pipe(map(function (res) {
|
||||
console.log("CanActivate?");
|
||||
return this._userService.getMe().pipe(map(function (res) {
|
||||
localStorage.setItem("user", JSON.stringify(res));
|
||||
_this.userInfo.next(res);
|
||||
return true;
|
||||
}), catchError(function (err) {
|
||||
_this.userInfo.next(null);
|
||||
_this.clearUser();
|
||||
return of(false);
|
||||
}));
|
||||
};
|
||||
AuthGuard.prototype.getMe = function () {
|
||||
return this.httpClient.get('/api/users/me');
|
||||
AuthGuard.prototype.clearUser = function () {
|
||||
localStorage.setItem("user", null);
|
||||
this.userInfo.next(null);
|
||||
};
|
||||
AuthGuard.prototype.getUserInfo = function () {
|
||||
return this.userInfo;
|
||||
@@ -44,7 +46,7 @@ var AuthGuard = /** @class */ (function () {
|
||||
Injectable({
|
||||
providedIn: 'root'
|
||||
}),
|
||||
__metadata("design:paramtypes", [HttpClient, Router])
|
||||
__metadata("design:paramtypes", [UsersService, HttpClient, Router])
|
||||
], AuthGuard);
|
||||
return AuthGuard;
|
||||
}());
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"auth.guard.js","sourceRoot":"","sources":["../../../../../src/app/services/auth.guard.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAA4D,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,EAAE,EAAc,eAAe,EAAE,MAAM,MAAM,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAMlD;IAIE,+DAA+D;IAC/D,mBAAoB,UAAsB,EAAU,MAAc;QAAlE,iBAOC;QAPmB,eAAU,GAAV,UAAU,CAAY;QAAU,WAAM,GAAN,MAAM,CAAQ;QAH1D,aAAQ,GAAyB,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAKjE,IAAI,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,UAAA,KAAK;YAC1B,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IAEL,CAAC;IAED,+BAAW,GAAX,UAAY,KAA6B;QAAzC,iBAWC;QAVC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CACtB,GAAG,CAAC,UAAA,GAAG;YACL,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,EACF,UAAU,CAAC,UAAC,GAAG;YACb,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,yBAAK,GAAL;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC9C,CAAC;IAED,+BAAW,GAAX;QACE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAjCU,SAAS;QAHrB,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;yCAMgC,UAAU,EAAkB,MAAM;OALvD,SAAS,CAkCrB;IAAD,gBAAC;CAAA,AAlCD,IAkCC;SAlCY,SAAS"}
|
||||
{"version":3,"file":"auth.guard.js","sourceRoot":"","sources":["../../../../../src/app/services/auth.guard.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAA4D,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEnG,OAAO,EAAE,EAAE,EAAc,eAAe,EAAE,MAAM,MAAM,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAM/C;IAIE,+DAA+D;IAC/D,mBAAoB,YAA0B,EAAU,UAAsB,EAAU,MAAc;QAAlF,iBAAY,GAAZ,YAAY,CAAc;QAAU,eAAU,GAAV,UAAU,CAAY;QAAU,WAAM,GAAN,MAAM,CAAQ;QAH9F,aAAQ,GAAyB,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;QAIjE,IAAI,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,+BAAW,GAAX,UAAY,KAA6B;QAAzC,iBAaC;QAZC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,CACnC,GAAG,CAAC,UAAA,GAAG;YACL,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAClD,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,EACF,UAAU,CAAC,UAAC,GAAG;YACb,KAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAID,6BAAS,GAAT;QACE,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,+BAAW,GAAX;QACE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAlCU,SAAS;QAHrB,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;yCAMkC,YAAY,EAAsB,UAAU,EAAkB,MAAM;OAL3F,SAAS,CAmCrB;IAAD,gBAAC;CAAA,AAnCD,IAmCC;SAnCY,SAAS"}
|
||||
117
dist/out-tsc/src/app/services/provisions.service.js
vendored
117
dist/out-tsc/src/app/services/provisions.service.js
vendored
@@ -8,57 +8,108 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Injectable } from '@angular/core';
|
||||
import { HttpClient } from '@angular/common/http';
|
||||
import { forkJoin } from 'rxjs';
|
||||
import { HttpClient, HttpParams } from '@angular/common/http';
|
||||
import { environment } from '../../environments/environment.prod';
|
||||
import * as moment from 'moment';
|
||||
var ProvisionsService = /** @class */ (function () {
|
||||
function ProvisionsService(httpClient) {
|
||||
this.httpClient = httpClient;
|
||||
this.RUNNING_PERIOD = 4;
|
||||
this.STOP_PERIOD = 10;
|
||||
}
|
||||
ProvisionsService.prototype.getProvisionsAdmin = function () {
|
||||
return this.httpClient.get("/api/provisions");
|
||||
ProvisionsService.prototype.getProvisionsAdmin = function (filter) {
|
||||
// Initialize Params Object
|
||||
var params = new HttpParams();
|
||||
if (filter) {
|
||||
params = params.append("filter", JSON.stringify(filter));
|
||||
}
|
||||
return this.httpClient.get(environment.apiVersionPath + "/provisions", { params: params });
|
||||
};
|
||||
ProvisionsService.prototype.getProvisionsByUser = function (userId) {
|
||||
return this.httpClient.get(environment.apiVersionPath + "/users/" + userId + "/provisions");
|
||||
};
|
||||
ProvisionsService.prototype.getDestroyProvisionsAdmin = function () {
|
||||
return this.httpClient.get("/api/destroyprovisions");
|
||||
};
|
||||
ProvisionsService.prototype.getProvisions = function (userId) {
|
||||
return this.httpClient.get("/api/users/" + userId + "/provisions");
|
||||
return this.httpClient.get(environment.apiVersionPath + "/destroyprovisions");
|
||||
};
|
||||
ProvisionsService.prototype.newProvision = function (body, userId) {
|
||||
return this.httpClient.post("/api/users/" + userId + "/provisions", body);
|
||||
return this.httpClient.post(environment.apiVersionPath + "/users/" + userId + "/provisions", body);
|
||||
};
|
||||
ProvisionsService.prototype.delProvision = function (id, userId) {
|
||||
return this.httpClient.delete("/api/users/" + userId + "/provisions/" + id);
|
||||
return this.httpClient.delete(environment.apiVersionPath + "/users/" + userId + "/provisions/" + id);
|
||||
};
|
||||
ProvisionsService.prototype.newDestroy = function (body, userId) {
|
||||
return this.httpClient.post("/api/users/" + userId + "/destroyprovisions", body);
|
||||
ProvisionsService.prototype.newDestroy = function (id, userId) {
|
||||
return this.httpClient.post(environment.apiVersionPath + "/users/" + userId + "/provisions/" + id + "/destroy", null);
|
||||
};
|
||||
ProvisionsService.prototype.getDestroyProvisions = function (userId) {
|
||||
return this.httpClient.get("/api/users/" + userId + "/destroyprovisions");
|
||||
};
|
||||
ProvisionsService.prototype.getCombinedProvisions = function (userId) {
|
||||
return forkJoin(this.getProvisions(userId), this.getDestroyProvisions(userId));
|
||||
};
|
||||
ProvisionsService.prototype.getCombinedProvisionsAdmin = function () {
|
||||
return forkJoin(this.getProvisionsAdmin(), this.getDestroyProvisionsAdmin());
|
||||
return this.httpClient.get(environment.apiVersionPath + "/users/" + userId + "/destroyprovisions");
|
||||
};
|
||||
/*
|
||||
getCombinedProvisions(userId): Observable<any> {
|
||||
return forkJoin(this.getProvisionsByUser(userId), this.getDestroyProvisions(userId))
|
||||
}
|
||||
|
||||
getCombinedProvisionsAdmin(): Observable<any> {
|
||||
return forkJoin(this.getProvisionsAdmin(), this.getDestroyProvisionsAdmin())
|
||||
}*/
|
||||
ProvisionsService.prototype.getProvisionLogs = function (id) {
|
||||
return this.httpClient.get("/api/provisions/" + id + "/logs", { responseType: 'text' });
|
||||
return this.httpClient.get(environment.apiVersionPath + "/provisions/" + id + "/logs", { responseType: 'text' });
|
||||
};
|
||||
ProvisionsService.prototype.getDestroyLogs = function (id) {
|
||||
return this.httpClient.get("/api/destroyprovisions/" + id + "/logs", { responseType: 'text' });
|
||||
return this.httpClient.get(environment.apiVersionPath + "/destroyprovisions/" + id + "/logs", { responseType: 'text' });
|
||||
};
|
||||
ProvisionsService.prototype.composePair = function (pair) {
|
||||
pair['0'].forEach(function (prov) {
|
||||
var foundDes = pair['1'].filter(function (d) {
|
||||
return d.provId.toString() === prov._id.toString();
|
||||
});
|
||||
if (foundDes.length) {
|
||||
prov.destroyId = foundDes[0]._id.toString();
|
||||
prov.statusDestroy = foundDes[0].status;
|
||||
prov.dateDestroy = foundDes[0].created;
|
||||
}
|
||||
});
|
||||
return pair;
|
||||
ProvisionsService.prototype.stopVms = function (id, userId) {
|
||||
return this.httpClient.post(environment.apiVersionPath + "/users/" + userId + "/provisions/" + id + "/deallocatevms", null);
|
||||
};
|
||||
ProvisionsService.prototype.startVms = function (id, userId) {
|
||||
return this.httpClient.post(environment.apiVersionPath + "/users/" + userId + "/provisions/" + id + "/startvms", null);
|
||||
};
|
||||
ProvisionsService.prototype.extend = function (id, userId) {
|
||||
return this.httpClient.post(environment.apiVersionPath + "/users/" + userId + "/provisions/" + id + "/extend", null);
|
||||
};
|
||||
ProvisionsService.prototype.setSelectedProv = function (provision) {
|
||||
if (provision) {
|
||||
this.selectedProv = provision;
|
||||
}
|
||||
else {
|
||||
this.selectedProv = null;
|
||||
}
|
||||
};
|
||||
ProvisionsService.prototype.getSelectedProv = function () {
|
||||
return this.selectedProv;
|
||||
};
|
||||
ProvisionsService.prototype.timeRunning = function (p) {
|
||||
var now = new Date();
|
||||
var runningFromTime = p.runningFrom ? new Date(p.runningFrom).getTime() : new Date(p.created).getTime();
|
||||
var totalRunningTime = p.timeRunning * 1000 * 60;
|
||||
if (p.statusVms !== 'Stopped' && p.statusVms !== 'Starting' && !p.isDestroyed) {
|
||||
totalRunningTime = totalRunningTime + Math.abs(now.getTime() - runningFromTime);
|
||||
}
|
||||
var authShutdownDate = new Date(runningFromTime);
|
||||
authShutdownDate.setDate(authShutdownDate.getDate() + this.RUNNING_PERIOD);
|
||||
var autoshutDown = authShutdownDate.getTime() - now.getTime();
|
||||
var durationAutoShutdown = moment.duration(autoshutDown);
|
||||
var duration = moment.duration(totalRunningTime);
|
||||
p.runningDays = Math.floor(duration.asDays());
|
||||
p.runningHours = duration.hours();
|
||||
p.runningMinutes = duration.minutes();
|
||||
p.autoshutdownDays = Math.floor(durationAutoShutdown.asDays());
|
||||
p.autoshutdownHours = durationAutoShutdown.hours();
|
||||
p.autoshutdownMinutes = durationAutoShutdown.minutes();
|
||||
if ((p.statusVms === 'Stopped' || p.statusVms === 'Starting') && !p.isDestroyed) {
|
||||
var autoDestroyDate = new Date(p.stoppedFrom);
|
||||
autoDestroyDate.setDate(autoDestroyDate.getDate() + this.STOP_PERIOD);
|
||||
var autoDestroy = autoDestroyDate.getTime() - now.getTime();
|
||||
var durationStop = moment.duration(autoDestroy);
|
||||
p.autoDestroyDays = Math.floor(durationStop.asDays());
|
||||
p.autoDestroyHours = durationStop.hours();
|
||||
p.autoDestroyMinutes = durationStop.minutes();
|
||||
var inactiveDate = new Date(p.stoppedFrom);
|
||||
var inactive = Math.abs(inactiveDate.getTime() - now.getTime());
|
||||
var durationInactive = moment.duration(inactive);
|
||||
p.inactiveDays = Math.floor(durationInactive.asDays());
|
||||
p.inactiveHours = durationInactive.hours();
|
||||
p.inactiveMinutes = durationInactive.minutes();
|
||||
}
|
||||
};
|
||||
ProvisionsService = __decorate([
|
||||
Injectable({
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"provisions.service.js","sourceRoot":"","sources":["../../../../../src/app/services/provisions.service.ts"],"names":[],"mappings":"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"}
|
||||
{"version":3,"file":"provisions.service.js","sourceRoot":"","sources":["../../../../../src/app/services/provisions.service.ts"],"names":[],"mappings":"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"}
|
||||
@@ -9,12 +9,28 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
};
|
||||
import { Injectable } from '@angular/core';
|
||||
import { HttpClient } from '@angular/common/http';
|
||||
import { environment } from '../../environments/environment.prod';
|
||||
var ScenariosService = /** @class */ (function () {
|
||||
function ScenariosService(httpClient) {
|
||||
this.httpClient = httpClient;
|
||||
}
|
||||
ScenariosService.prototype.getScenarios = function () {
|
||||
return this.httpClient.get("/api/scenarios");
|
||||
return this.httpClient.get(environment.apiVersionPath + "/scenarios");
|
||||
};
|
||||
ScenariosService.prototype.getScenariosAll = function () {
|
||||
return this.httpClient.get(environment.apiVersionPath + "/scenarios/all");
|
||||
};
|
||||
ScenariosService.prototype.getScenarioVmtypes = function () {
|
||||
return this.httpClient.get(environment.apiVersionPath + "/scenarios/vmtypes");
|
||||
};
|
||||
ScenariosService.prototype.updateScenario = function (id, patchData) {
|
||||
return this.httpClient.put(environment.apiVersionPath + "/scenarios/" + id, patchData);
|
||||
};
|
||||
ScenariosService.prototype.addScenario = function (data) {
|
||||
return this.httpClient.post(environment.apiVersionPath + "/scenarios", data);
|
||||
};
|
||||
ScenariosService.prototype.deleteScenario = function (id) {
|
||||
return this.httpClient.delete(environment.apiVersionPath + "/scenarios/" + id);
|
||||
};
|
||||
ScenariosService = __decorate([
|
||||
Injectable({
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"scenarios.service.js","sourceRoot":"","sources":["../../../../../src/app/services/scenarios.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAMlD;IAEE,0BAAqB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAK,CAAC;IAEjD,uCAAY,GAAZ;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC/C,CAAC;IANU,gBAAgB;QAH5B,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;yCAGiC,UAAU;OAFhC,gBAAgB,CAO5B;IAAD,uBAAC;CAAA,AAPD,IAOC;SAPY,gBAAgB"}
|
||||
{"version":3,"file":"scenarios.service.js","sourceRoot":"","sources":["../../../../../src/app/services/scenarios.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAKlE;IAEE,0BAAqB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAK,CAAC;IAEjD,uCAAY,GAAZ;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,eAAY,CAAC,CAAC;IACxE,CAAC;IAED,0CAAe,GAAf;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,mBAAgB,CAAC,CAAC;IAC5E,CAAC;IAED,6CAAkB,GAAlB;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,uBAAoB,CAAC,CAAC;IAChF,CAAC;IAED,yCAAc,GAAd,UAAe,EAAE,EAAE,SAAS;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,mBAAc,EAAI,EAAE,SAAS,CAAC,CAAC;IACzF,CAAC;IAED,sCAAW,GAAX,UAAY,IAAI;QACd,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAI,WAAW,CAAC,cAAc,eAAY,EAAE,IAAI,CAAC,CAAC;IAC/E,CAAC;IAED,yCAAc,GAAd,UAAe,EAAE;QACf,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAI,WAAW,CAAC,cAAc,mBAAc,EAAI,CAAC,CAAC;IACjF,CAAC;IA1BU,gBAAgB;QAH5B,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;yCAGiC,UAAU;OAFhC,gBAAgB,CA4B5B;IAAD,uBAAC;CAAA,AA5BD,IA4BC;SA5BY,gBAAgB"}
|
||||
38
dist/out-tsc/src/app/services/subscriptions.service.js
vendored
Normal file
38
dist/out-tsc/src/app/services/subscriptions.service.js
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Injectable } from '@angular/core';
|
||||
import { HttpClient } from '@angular/common/http';
|
||||
import { environment } from '../../environments/environment.prod';
|
||||
var SubscriptionsService = /** @class */ (function () {
|
||||
function SubscriptionsService(httpClient) {
|
||||
this.httpClient = httpClient;
|
||||
}
|
||||
SubscriptionsService.prototype.getSubscriptions = function () {
|
||||
return this.httpClient.get(environment.apiVersionPath + "/subscriptions");
|
||||
};
|
||||
SubscriptionsService.prototype.addSubscription = function (data) {
|
||||
return this.httpClient.post(environment.apiVersionPath + "/subscriptions", data);
|
||||
};
|
||||
SubscriptionsService.prototype.updateSubscription = function (id, patchData) {
|
||||
return this.httpClient.put(environment.apiVersionPath + "/subscriptions/" + id, patchData);
|
||||
};
|
||||
SubscriptionsService.prototype.deleteScenario = function (id) {
|
||||
return this.httpClient.delete(environment.apiVersionPath + "/subscriptions/" + id);
|
||||
};
|
||||
SubscriptionsService = __decorate([
|
||||
Injectable({
|
||||
providedIn: 'root'
|
||||
}),
|
||||
__metadata("design:paramtypes", [HttpClient])
|
||||
], SubscriptionsService);
|
||||
return SubscriptionsService;
|
||||
}());
|
||||
export { SubscriptionsService };
|
||||
//# sourceMappingURL=subscriptions.service.js.map
|
||||
1
dist/out-tsc/src/app/services/subscriptions.service.js.map
vendored
Normal file
1
dist/out-tsc/src/app/services/subscriptions.service.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"subscriptions.service.js","sourceRoot":"","sources":["../../../../../src/app/services/subscriptions.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAKlE;IAEE,8BAAqB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAK,CAAC;IAEjD,+CAAgB,GAAhB;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,mBAAgB,CAAC,CAAC;IAC5E,CAAC;IAED,8CAAe,GAAf,UAAgB,IAAI;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAI,WAAW,CAAC,cAAc,mBAAgB,EAAE,IAAI,CAAC,CAAC;IACnF,CAAC;IAED,iDAAkB,GAAlB,UAAmB,EAAE,EAAE,SAAS;QAC9B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,uBAAkB,EAAI,EAAE,SAAS,CAAC,CAAC;IAC7F,CAAC;IAED,6CAAc,GAAd,UAAe,EAAE;QACf,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAI,WAAW,CAAC,cAAc,uBAAkB,EAAI,CAAC,CAAC;IACrF,CAAC;IAlBU,oBAAoB;QAHhC,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;yCAGiC,UAAU;OAFhC,oBAAoB,CAoBhC;IAAD,2BAAC;CAAA,AApBD,IAoBC;SApBY,oBAAoB"}
|
||||
11
dist/out-tsc/src/app/services/users.service.js
vendored
11
dist/out-tsc/src/app/services/users.service.js
vendored
@@ -9,15 +9,22 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
};
|
||||
import { Injectable } from '@angular/core';
|
||||
import { HttpClient } from '@angular/common/http';
|
||||
import { environment } from '../../environments/environment.prod';
|
||||
var UsersService = /** @class */ (function () {
|
||||
function UsersService(httpClient) {
|
||||
this.httpClient = httpClient;
|
||||
}
|
||||
UsersService.prototype.getMe = function () {
|
||||
return this.httpClient.get(environment.apiVersionPath + "/users/me");
|
||||
};
|
||||
UsersService.prototype.getUsers = function () {
|
||||
return this.httpClient.get("/api/users");
|
||||
return this.httpClient.get(environment.apiVersionPath + "/users");
|
||||
};
|
||||
UsersService.prototype.updateUser = function (userId, patchData) {
|
||||
return this.httpClient.put("/api/users/" + userId, patchData);
|
||||
return this.httpClient.put(environment.apiVersionPath + "/users/" + userId, patchData);
|
||||
};
|
||||
UsersService.prototype.getNotifications = function () {
|
||||
return this.httpClient.get(environment.apiVersionPath + "/notifications");
|
||||
};
|
||||
UsersService = __decorate([
|
||||
Injectable({
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"users.service.js","sourceRoot":"","sources":["../../../../../src/app/services/users.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAMlD;IAEE,sBAAqB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAK,CAAC;IAEjD,+BAAQ,GAAR;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,iCAAU,GAAV,UAAW,MAAM,EAAE,SAAS;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAc,MAAQ,EAAE,SAAS,CAAC,CAAC;IAChE,CAAC;IAVU,YAAY;QAHxB,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;yCAGiC,UAAU;OAFhC,YAAY,CAWxB;IAAD,mBAAC;CAAA,AAXD,IAWC;SAXY,YAAY"}
|
||||
{"version":3,"file":"users.service.js","sourceRoot":"","sources":["../../../../../src/app/services/users.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAKlE;IAEE,sBAAqB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAK,CAAC;IAEjD,4BAAK,GAAL;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,cAAW,CAAC,CAAC;IACvE,CAAC;IAED,+BAAQ,GAAR;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,WAAQ,CAAC,CAAC;IACpE,CAAC;IAED,iCAAU,GAAV,UAAW,MAAM,EAAE,SAAS;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,eAAU,MAAQ,EAAE,SAAS,CAAC,CAAC;IACzF,CAAC;IAED,uCAAgB,GAAhB;QACE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAI,WAAW,CAAC,cAAc,mBAAgB,CAAC,CAAC;IAC5E,CAAC;IAlBU,YAAY;QAHxB,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;yCAGiC,UAAU;OAFhC,YAAY,CAmBxB;IAAD,mBAAC;CAAA,AAnBD,IAmBC;SAnBY,YAAY"}
|
||||
286
dist/out-tsc/src/app/tables/table-admin.component.js
vendored
Normal file
286
dist/out-tsc/src/app/tables/table-admin.component.js
vendored
Normal file
@@ -0,0 +1,286 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component, HostListener, ViewChild, ChangeDetectorRef } from '@angular/core';
|
||||
import { MdbTableDirective, MdbTablePaginationComponent, MDBModalService } from 'angular-bootstrap-md';
|
||||
import { ProvisionsService } from '../services/provisions.service';
|
||||
import { AlertService } from '../services/alert.service';
|
||||
import { ModalInfoComponent } from '../alert/modalinfo.component';
|
||||
import { ModalConfirmComponent } from '../alert/confirm.component';
|
||||
import { ScenariosService } from '../services/scenarios.service';
|
||||
import { timer } from 'rxjs';
|
||||
import { switchMap } from 'rxjs/operators';
|
||||
var TableAdminComponent = /** @class */ (function () {
|
||||
function TableAdminComponent(modalService, _scenariosService, _alertService, cdRef, _provisionsService) {
|
||||
this.modalService = modalService;
|
||||
this._scenariosService = _scenariosService;
|
||||
this._alertService = _alertService;
|
||||
this.cdRef = cdRef;
|
||||
this._provisionsService = _provisionsService;
|
||||
this.pagingIsDisabled = false;
|
||||
this.searchText = '';
|
||||
this.selectedprov = null;
|
||||
this.showInfo = false;
|
||||
this.logShow = false;
|
||||
this.logstype = 'provision';
|
||||
this.maxVisibleItems = 10;
|
||||
this.filterParams = {
|
||||
isDestroyed: false
|
||||
};
|
||||
}
|
||||
TableAdminComponent.prototype.oninput = function () {
|
||||
this.mdbTablePagination.searchText = this.searchText;
|
||||
};
|
||||
TableAdminComponent.prototype._process = function (provisions) {
|
||||
var _this = this;
|
||||
provisions.forEach(function (p) {
|
||||
p._scenario = _this.scenarios.filter(function (s) { return s.name === p.scenario; });
|
||||
_this._provisionsService.timeRunning(p);
|
||||
});
|
||||
if (!this.provisions) {
|
||||
this.provisions = provisions;
|
||||
}
|
||||
else {
|
||||
this.provisions.forEach(function (p, index, object) {
|
||||
var found = provisions.filter(function (a) { return a._id.toString() === p._id.toString(); });
|
||||
if (found.length) {
|
||||
p.status = found[0].status;
|
||||
p.statusVms = found[0].statusVms;
|
||||
p.isDestroyed = found[0].isDestroyed;
|
||||
p.outputs = found[0].outputs;
|
||||
p.destroy = found[0].destroy;
|
||||
this._provisionsService.timeRunning(p);
|
||||
}
|
||||
else {
|
||||
object.splice(index, 1);
|
||||
}
|
||||
}.bind(this));
|
||||
provisions.forEach(function (p) {
|
||||
var found = this.provisions.filter(function (a) { return a._id.toString() === p._id.toString(); });
|
||||
if (found.length === 0) {
|
||||
this.provisions.unshift(p);
|
||||
}
|
||||
}.bind(this));
|
||||
}
|
||||
this._initElements(this.provisions);
|
||||
};
|
||||
TableAdminComponent.prototype._initElements = function (items) {
|
||||
this.mdbTable.setDataSource(items);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
this.previous = this.mdbTable.getDataSource();
|
||||
};
|
||||
TableAdminComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
var scenariosSub = this._scenariosService.getScenariosAll().subscribe(function (res) {
|
||||
scenariosSub.unsubscribe();
|
||||
_this.scenarios = res.results;
|
||||
_this.subscription = timer(0, 8000).pipe(switchMap(function () { return _this._provisionsService.getProvisionsAdmin(_this.filterParams); })).subscribe(function (provisions) {
|
||||
_this._process(provisions.results);
|
||||
});
|
||||
});
|
||||
this.mdbTablePagination.paginationChange().subscribe(function (data) {
|
||||
/*let page = data.last - data.first;
|
||||
if (page < this.limit && page > 0) {
|
||||
page = Math.ceil(data.last / this.limit);
|
||||
if (this.page !== page) {
|
||||
this.page = Math.ceil(data.last / this.limit);
|
||||
this.loadTable();
|
||||
}
|
||||
}*/
|
||||
});
|
||||
//this._initElements();
|
||||
};
|
||||
TableAdminComponent.prototype.ngAfterViewInit = function () {
|
||||
if (this.mdbTablePagination) {
|
||||
this.mdbTablePagination.setMaxVisibleItemsNumberTo(this.maxVisibleItems);
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.cdRef.detectChanges();
|
||||
}
|
||||
};
|
||||
TableAdminComponent.prototype.searchItems = function () {
|
||||
var _this = this;
|
||||
var prev = this.mdbTable.getDataSource();
|
||||
if (!this.searchText) {
|
||||
this.mdbTable.setDataSource(this.previous);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
}
|
||||
if (this.searchText) {
|
||||
this.elements = this.mdbTable.searchLocalDataBy(this.searchText);
|
||||
this.mdbTable.setDataSource(prev);
|
||||
}
|
||||
if (this.mdbTablePagination) {
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.mdbTable.searchDataObservable(this.searchText).subscribe(function () {
|
||||
_this.mdbTablePagination.calculateFirstItemIndex();
|
||||
_this.mdbTablePagination.calculateLastItemIndex();
|
||||
});
|
||||
}
|
||||
};
|
||||
TableAdminComponent.prototype.showLogs = function ($event, provision, type) {
|
||||
$event.preventDefault();
|
||||
$event.stopPropagation();
|
||||
this.logstype = type;
|
||||
this.logShow = false;
|
||||
this.selectedprov = provision;
|
||||
this.logShow = true;
|
||||
};
|
||||
TableAdminComponent.prototype.onLogsClose = function () {
|
||||
this.selectedprov = null;
|
||||
this.logShow = false;
|
||||
};
|
||||
TableAdminComponent.prototype.openConfirmStartModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-info',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm Start VMs?',
|
||||
icon: 'play',
|
||||
buttonColor: 'grey'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._startVms(provision);
|
||||
});
|
||||
};
|
||||
TableAdminComponent.prototype._startVms = function (provision) {
|
||||
var _this = this;
|
||||
var sub = this._provisionsService.startVms(provision._id.toString(), provision.user._id).subscribe(function (res) {
|
||||
provision.startVms = res.startVms;
|
||||
sub.unsubscribe();
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Starting all VMs for scenario '" + provision.scenario + "'..."
|
||||
});
|
||||
});
|
||||
};
|
||||
TableAdminComponent.prototype.openConfirmStopModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-info',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm Stop VMs?',
|
||||
icon: 'stop',
|
||||
buttonColor: 'grey'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._stopVms(provision);
|
||||
});
|
||||
};
|
||||
TableAdminComponent.prototype._stopVms = function (provision) {
|
||||
var _this = this;
|
||||
var sub = this._provisionsService.stopVms(provision._id.toString(), provision.user._id).subscribe(function (res) {
|
||||
provision.startVms = res.startVms;
|
||||
sub.unsubscribe();
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Stopping all VMs for scenario '" + provision.scenario + "'..."
|
||||
});
|
||||
});
|
||||
};
|
||||
TableAdminComponent.prototype.openInfoModal = function (provision) {
|
||||
this.modalService.show(ModalInfoComponent, {
|
||||
backdrop: true,
|
||||
keyboard: true,
|
||||
focus: true,
|
||||
show: false,
|
||||
ignoreBackdropClick: false,
|
||||
class: 'modal-lg',
|
||||
containerClass: '',
|
||||
animated: true,
|
||||
data: {
|
||||
info: provision
|
||||
}
|
||||
});
|
||||
};
|
||||
TableAdminComponent.prototype.openConfirmDestroyModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-danger',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm destroy this provision?',
|
||||
icon: 'times-circle'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.newDestroy(provision._id.toString(), provision.user._id).subscribe(function (provUpdated) {
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Provision of scenario '" + provision.scenario + "' is going to be destroyed"
|
||||
});
|
||||
provision.destroy = provUpdated.destroy;
|
||||
});
|
||||
});
|
||||
};
|
||||
TableAdminComponent.prototype.openConfirmDeleteModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-danger',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm delete?',
|
||||
icon: 'trash-alt'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.delProvision(provision._id, provision.user._id).subscribe(function (res) {
|
||||
_this.elements = _this.elements.filter(function (e) {
|
||||
return e._id.toString() !== provision._id.toString();
|
||||
});
|
||||
_this._initElements(_this.elements);
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Provision entry '" + provision.scenario + "' was deleted"
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
__decorate([
|
||||
ViewChild(MdbTablePaginationComponent, { static: true }),
|
||||
__metadata("design:type", MdbTablePaginationComponent)
|
||||
], TableAdminComponent.prototype, "mdbTablePagination", void 0);
|
||||
__decorate([
|
||||
ViewChild(MdbTableDirective, { static: true }),
|
||||
__metadata("design:type", MdbTableDirective)
|
||||
], TableAdminComponent.prototype, "mdbTable", void 0);
|
||||
__decorate([
|
||||
HostListener('input'),
|
||||
__metadata("design:type", Function),
|
||||
__metadata("design:paramtypes", []),
|
||||
__metadata("design:returntype", void 0)
|
||||
], TableAdminComponent.prototype, "oninput", null);
|
||||
TableAdminComponent = __decorate([
|
||||
Component({
|
||||
selector: 'table-admin',
|
||||
templateUrl: './table-admin.component.html',
|
||||
styleUrls: ['./table-admin.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalService, ScenariosService, AlertService, ChangeDetectorRef, ProvisionsService])
|
||||
], TableAdminComponent);
|
||||
return TableAdminComponent;
|
||||
}());
|
||||
export { TableAdminComponent };
|
||||
//# sourceMappingURL=table-admin.component.js.map
|
||||
1
dist/out-tsc/src/app/tables/table-admin.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/tables/table-admin.component.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
94
dist/out-tsc/src/app/tables/table-notifications.component.js
vendored
Normal file
94
dist/out-tsc/src/app/tables/table-notifications.component.js
vendored
Normal file
@@ -0,0 +1,94 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { MdbTablePaginationComponent, MdbTableDirective } from 'angular-bootstrap-md';
|
||||
import { Component, ViewChild, HostListener, ChangeDetectorRef } from '@angular/core';
|
||||
import { UsersService } from '../services/users.service';
|
||||
var TableNotificationsComponent = /** @class */ (function () {
|
||||
function TableNotificationsComponent(cdRef, _usersService) {
|
||||
this.cdRef = cdRef;
|
||||
this._usersService = _usersService;
|
||||
this.previous = [];
|
||||
this.searchText = '';
|
||||
this.maxVisibleItems = 25;
|
||||
this.loading = false;
|
||||
this.elements = [];
|
||||
}
|
||||
TableNotificationsComponent.prototype.oninput = function () {
|
||||
this.mdbTablePagination.searchText = this.searchText;
|
||||
};
|
||||
TableNotificationsComponent.prototype._initElements = function () {
|
||||
this.mdbTable.setDataSource(this.elements);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
this.previous = this.mdbTable.getDataSource();
|
||||
};
|
||||
TableNotificationsComponent.prototype.ngOnInit = function () {
|
||||
this.refreshData();
|
||||
};
|
||||
TableNotificationsComponent.prototype.refreshData = function () {
|
||||
var _this = this;
|
||||
this.loading = true;
|
||||
this.searchText = "";
|
||||
var sub = this._usersService.getNotifications().subscribe(function (res) {
|
||||
sub.unsubscribe();
|
||||
_this.elements = res.results;
|
||||
_this.loading = false;
|
||||
_this._initElements();
|
||||
});
|
||||
};
|
||||
TableNotificationsComponent.prototype.ngAfterViewInit = function () {
|
||||
this.mdbTablePagination.setMaxVisibleItemsNumberTo(this.maxVisibleItems);
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.cdRef.detectChanges();
|
||||
};
|
||||
TableNotificationsComponent.prototype.searchItems = function () {
|
||||
var _this = this;
|
||||
var prev = this.mdbTable.getDataSource();
|
||||
if (!this.searchText) {
|
||||
this.mdbTable.setDataSource(this.previous);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
}
|
||||
if (this.searchText) {
|
||||
this.elements = this.mdbTable.searchLocalDataBy(this.searchText);
|
||||
this.mdbTable.setDataSource(prev);
|
||||
}
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.mdbTable.searchDataObservable(this.searchText).subscribe(function () {
|
||||
_this.mdbTablePagination.calculateFirstItemIndex();
|
||||
_this.mdbTablePagination.calculateLastItemIndex();
|
||||
});
|
||||
};
|
||||
__decorate([
|
||||
ViewChild(MdbTablePaginationComponent, { static: true }),
|
||||
__metadata("design:type", MdbTablePaginationComponent)
|
||||
], TableNotificationsComponent.prototype, "mdbTablePagination", void 0);
|
||||
__decorate([
|
||||
ViewChild(MdbTableDirective, { static: true }),
|
||||
__metadata("design:type", MdbTableDirective)
|
||||
], TableNotificationsComponent.prototype, "mdbTable", void 0);
|
||||
__decorate([
|
||||
HostListener('input'),
|
||||
__metadata("design:type", Function),
|
||||
__metadata("design:paramtypes", []),
|
||||
__metadata("design:returntype", void 0)
|
||||
], TableNotificationsComponent.prototype, "oninput", null);
|
||||
TableNotificationsComponent = __decorate([
|
||||
Component({
|
||||
selector: 'table-notifications',
|
||||
templateUrl: './table-notifications.component.html',
|
||||
styleUrls: ['./table-notifications.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [ChangeDetectorRef, UsersService])
|
||||
], TableNotificationsComponent);
|
||||
return TableNotificationsComponent;
|
||||
}());
|
||||
export { TableNotificationsComponent };
|
||||
//# sourceMappingURL=table-notifications.component.js.map
|
||||
1
dist/out-tsc/src/app/tables/table-notifications.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/tables/table-notifications.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"table-notifications.component.js","sourceRoot":"","sources":["../../../../../src/app/tables/table-notifications.component.ts"],"names":[],"mappings":"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"}
|
||||
331
dist/out-tsc/src/app/tables/table-provisions.component.js
vendored
Normal file
331
dist/out-tsc/src/app/tables/table-provisions.component.js
vendored
Normal file
@@ -0,0 +1,331 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { Component, HostListener, ViewChild, ChangeDetectorRef } from '@angular/core';
|
||||
import { MdbTableDirective, MdbTablePaginationComponent, MDBModalService } from 'angular-bootstrap-md';
|
||||
import { ProvisionsService } from '../services/provisions.service';
|
||||
import { AlertService } from '../services/alert.service';
|
||||
import { ModalInfoComponent } from '../alert/modalinfo.component';
|
||||
import { ModalConfirmComponent } from '../alert/confirm.component';
|
||||
import { ScenariosService } from '../services/scenarios.service';
|
||||
var TableProvisionsAdminComponent = /** @class */ (function () {
|
||||
function TableProvisionsAdminComponent(modalService, _scenariosService, _alertService, cdRef, _provisionsService) {
|
||||
this.modalService = modalService;
|
||||
this._scenariosService = _scenariosService;
|
||||
this._alertService = _alertService;
|
||||
this.cdRef = cdRef;
|
||||
this._provisionsService = _provisionsService;
|
||||
this.filter = {
|
||||
showDestroyed: false
|
||||
};
|
||||
this.filterParams = {
|
||||
isDestroyed: false
|
||||
};
|
||||
this.loading = false;
|
||||
this.pagingIsDisabled = false;
|
||||
//@ViewChild('row', { static: true }) row: ElementRef;
|
||||
this.elements = [];
|
||||
this.searchText = '';
|
||||
this.selectedprov = null;
|
||||
this.showInfo = false;
|
||||
this.logShow = false;
|
||||
this.logstype = 'provision';
|
||||
this.maxVisibleItems = 25;
|
||||
}
|
||||
TableProvisionsAdminComponent.prototype.oninput = function () {
|
||||
this.mdbTablePagination.searchText = this.searchText;
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype._initElements = function () {
|
||||
this.mdbTable.setDataSource(this.elements);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
this.previous = this.mdbTable.getDataSource();
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype._process = function (provisions) {
|
||||
var _this = this;
|
||||
provisions.forEach(function (p) {
|
||||
p._scenario = _this.scenarios.filter(function (s) { return s.name === p.scenario; });
|
||||
_this._provisionsService.timeRunning(p);
|
||||
});
|
||||
if (this.elements.length === 0) {
|
||||
this.elements = provisions;
|
||||
}
|
||||
else {
|
||||
this.elements.forEach(function (p, index, object) {
|
||||
var found = provisions.filter(function (a) { return a._id.toString() === p._id.toString(); });
|
||||
if (found.length) {
|
||||
p.status = found[0].status;
|
||||
p.statusVms = found[0].statusVms;
|
||||
p.isDestroyed = found[0].isDestroyed;
|
||||
p.outputs = found[0].outputs;
|
||||
p.destroy = found[0].destroy;
|
||||
this._provisionsService.timeRunning(p);
|
||||
}
|
||||
else {
|
||||
object.splice(index, 1);
|
||||
}
|
||||
}.bind(this));
|
||||
provisions.forEach(function (p) {
|
||||
var found = this.elements.filter(function (a) { return a._id.toString() === p._id.toString(); });
|
||||
if (found.length === 0) {
|
||||
this.elements.unshift(p);
|
||||
}
|
||||
}.bind(this));
|
||||
}
|
||||
this._initElements();
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.ngOnInit = function () {
|
||||
var _this = this;
|
||||
var scenariosSub = this._scenariosService.getScenariosAll().subscribe(function (res) {
|
||||
scenariosSub.unsubscribe();
|
||||
_this.scenarios = res.results;
|
||||
/*this.subscription = timer(0, 8000).pipe( switchMap(() => this._provisionsService.getProvisionsAdmin(this.filterParams) ) ).subscribe(provisions => {
|
||||
this._process(provisions.results);
|
||||
});*/
|
||||
_this.refreshData();
|
||||
});
|
||||
//this._initElements();
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.ngOnDestroy = function () {
|
||||
if (this.subscription) {
|
||||
this.subscription.unsubscribe();
|
||||
}
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.ngAfterViewInit = function () {
|
||||
if (this.mdbTablePagination) {
|
||||
this.mdbTablePagination.setMaxVisibleItemsNumberTo(this.maxVisibleItems);
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.cdRef.detectChanges();
|
||||
}
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.searchItems = function () {
|
||||
var _this = this;
|
||||
var prev = this.mdbTable.getDataSource();
|
||||
if (!this.searchText) {
|
||||
this.mdbTable.setDataSource(this.previous);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
}
|
||||
if (this.searchText) {
|
||||
this.elements = this.mdbTable.searchLocalDataBy(this.searchText);
|
||||
this.mdbTable.setDataSource(prev);
|
||||
}
|
||||
if (this.mdbTablePagination) {
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.mdbTable.searchDataObservable(this.searchText).subscribe(function () {
|
||||
_this.mdbTablePagination.calculateFirstItemIndex();
|
||||
_this.mdbTablePagination.calculateLastItemIndex();
|
||||
});
|
||||
}
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.showLogs = function ($event, provision, type) {
|
||||
$event.preventDefault();
|
||||
$event.stopPropagation();
|
||||
this.logstype = type;
|
||||
this.logShow = false;
|
||||
this.selectedprov = provision;
|
||||
this.logShow = true;
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.onLogsClose = function () {
|
||||
this.selectedprov = null;
|
||||
this.logShow = false;
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.openConfirmStartModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-info',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm Start VMs?',
|
||||
icon: 'play',
|
||||
buttonColor: 'grey'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._startVms(provision);
|
||||
});
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype._startVms = function (provision) {
|
||||
var _this = this;
|
||||
var sub = this._provisionsService.startVms(provision._id.toString(), provision.user._id).subscribe(function (res) {
|
||||
provision.startVms = res.startVms;
|
||||
sub.unsubscribe();
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Starting all VMs for scenario '" + provision.scenario + "'..."
|
||||
});
|
||||
});
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.openConfirmStopModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-info',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm Stop VMs?',
|
||||
icon: 'stop',
|
||||
buttonColor: 'grey'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._stopVms(provision);
|
||||
});
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype._stopVms = function (provision) {
|
||||
var _this = this;
|
||||
var sub = this._provisionsService.stopVms(provision._id.toString(), provision.user._id).subscribe(function (res) {
|
||||
provision.startVms = res.startVms;
|
||||
sub.unsubscribe();
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Stopping all VMs for scenario '" + provision.scenario + "'..."
|
||||
});
|
||||
});
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.openInfoModal = function (provision) {
|
||||
this.modalService.show(ModalInfoComponent, {
|
||||
backdrop: true,
|
||||
keyboard: true,
|
||||
focus: true,
|
||||
show: false,
|
||||
ignoreBackdropClick: false,
|
||||
class: 'modal-lg',
|
||||
containerClass: '',
|
||||
animated: true,
|
||||
data: {
|
||||
info: provision
|
||||
}
|
||||
});
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.openConfirmDestroyModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-danger',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm destroy this provision?',
|
||||
icon: 'times-circle'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.newDestroy(provision._id.toString(), provision.user._id).subscribe(function (provUpdated) {
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Provision of scenario '" + provision.scenario + "' is going to be destroyed"
|
||||
});
|
||||
provision.destroy = provUpdated.destroy;
|
||||
});
|
||||
});
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.openConfirmDeleteModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-danger',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: 'Confirm delete?',
|
||||
icon: 'trash-alt'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.delProvision(provision._id, provision.user._id).subscribe(function (res) {
|
||||
_this.elements = _this.elements.filter(function (e) {
|
||||
return e._id.toString() !== provision._id.toString();
|
||||
});
|
||||
_this._initElements();
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Provision entry '" + provision.scenario + "' was deleted"
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.refreshData = function () {
|
||||
var _this = this;
|
||||
this.elements = [];
|
||||
this.loading = true;
|
||||
this.searchText = "";
|
||||
var instantSubs = this._provisionsService.getProvisionsAdmin(this.filterParams).subscribe(function (provisions) {
|
||||
instantSubs.unsubscribe();
|
||||
_this.loading = false;
|
||||
_this._process(provisions.results);
|
||||
});
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.onCheckValue = function () {
|
||||
this.filterParams = {};
|
||||
if (!this.filter.showDestroyed) {
|
||||
this.filterParams.isDestroyed = false;
|
||||
}
|
||||
this.refreshData();
|
||||
};
|
||||
TableProvisionsAdminComponent.prototype.openConfirmExtendModal = function (provision) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ModalConfirmComponent, {
|
||||
class: 'modal-sm modal-notify modal-info',
|
||||
containerClass: '',
|
||||
data: {
|
||||
info: {
|
||||
title: "Extend running VMs for " + this._provisionsService.RUNNING_PERIOD + " days?",
|
||||
icon: 'plus-square',
|
||||
buttonColor: 'grey'
|
||||
}
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (result) {
|
||||
sub.unsubscribe();
|
||||
_this._provisionsService.extend(provision._id.toString(), provision.user._id).subscribe(function (res) {
|
||||
provision.countExtend = res.countExtend;
|
||||
provision.timeRunning = res.timeRunning;
|
||||
provision.runningFrom = res.runningFrom;
|
||||
_this._provisionsService.timeRunning(provision);
|
||||
_this._alertService.showAlert({
|
||||
type: 'alert-primary',
|
||||
text: "Running period extended another " + _this._provisionsService.RUNNING_PERIOD + " days (from now) for provision '" + provision.scenario + "'"
|
||||
});
|
||||
});
|
||||
});
|
||||
};
|
||||
__decorate([
|
||||
ViewChild(MdbTablePaginationComponent, { static: true }),
|
||||
__metadata("design:type", MdbTablePaginationComponent)
|
||||
], TableProvisionsAdminComponent.prototype, "mdbTablePagination", void 0);
|
||||
__decorate([
|
||||
ViewChild(MdbTableDirective, { static: true }),
|
||||
__metadata("design:type", MdbTableDirective)
|
||||
], TableProvisionsAdminComponent.prototype, "mdbTable", void 0);
|
||||
__decorate([
|
||||
HostListener('input'),
|
||||
__metadata("design:type", Function),
|
||||
__metadata("design:paramtypes", []),
|
||||
__metadata("design:returntype", void 0)
|
||||
], TableProvisionsAdminComponent.prototype, "oninput", null);
|
||||
TableProvisionsAdminComponent = __decorate([
|
||||
Component({
|
||||
selector: 'table-provisions',
|
||||
templateUrl: './table-provisions.component.html',
|
||||
styleUrls: ['./table-provisions.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalService, ScenariosService, AlertService, ChangeDetectorRef, ProvisionsService])
|
||||
], TableProvisionsAdminComponent);
|
||||
return TableProvisionsAdminComponent;
|
||||
}());
|
||||
export { TableProvisionsAdminComponent };
|
||||
//# sourceMappingURL=table-provisions.component.js.map
|
||||
1
dist/out-tsc/src/app/tables/table-provisions.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/tables/table-provisions.component.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
155
dist/out-tsc/src/app/tables/table-scenarios.component.js
vendored
Normal file
155
dist/out-tsc/src/app/tables/table-scenarios.component.js
vendored
Normal file
@@ -0,0 +1,155 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { MdbTablePaginationComponent, MdbTableDirective, MDBModalService } from 'angular-bootstrap-md';
|
||||
import { Component, ViewChild, HostListener, ChangeDetectorRef } from '@angular/core';
|
||||
import { ScenariosService } from '../services/scenarios.service';
|
||||
import { ScenarioModalComponent } from '../alert/edit-scenario.component';
|
||||
var TableScenariosComponent = /** @class */ (function () {
|
||||
function TableScenariosComponent(modalService, cdRef, _scenariosService) {
|
||||
this.modalService = modalService;
|
||||
this.cdRef = cdRef;
|
||||
this._scenariosService = _scenariosService;
|
||||
this.previous = [];
|
||||
this.searchText = '';
|
||||
this.maxVisibleItems = 25;
|
||||
this.elements = [];
|
||||
}
|
||||
TableScenariosComponent.prototype.oninput = function () {
|
||||
this.mdbTablePagination.searchText = this.searchText;
|
||||
};
|
||||
TableScenariosComponent.prototype._initElements = function () {
|
||||
this.mdbTable.setDataSource(this.elements);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
this.previous = this.mdbTable.getDataSource();
|
||||
};
|
||||
TableScenariosComponent.prototype._refresh = function () {
|
||||
var _this = this;
|
||||
var scenariosSub = this._scenariosService.getScenariosAll().subscribe(function (res) {
|
||||
scenariosSub.unsubscribe();
|
||||
_this.scenarios = res.results;
|
||||
_this.elements = res.results;
|
||||
_this._initElements();
|
||||
});
|
||||
};
|
||||
TableScenariosComponent.prototype.ngOnInit = function () {
|
||||
this._refresh();
|
||||
};
|
||||
TableScenariosComponent.prototype.ngAfterViewInit = function () {
|
||||
this.mdbTablePagination.setMaxVisibleItemsNumberTo(this.maxVisibleItems);
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.cdRef.detectChanges();
|
||||
};
|
||||
TableScenariosComponent.prototype.searchItems = function () {
|
||||
var _this = this;
|
||||
var prev = this.mdbTable.getDataSource();
|
||||
if (!this.searchText) {
|
||||
this.mdbTable.setDataSource(this.previous);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
}
|
||||
if (this.searchText) {
|
||||
this.elements = this.mdbTable.searchLocalDataBy(this.searchText);
|
||||
this.mdbTable.setDataSource(prev);
|
||||
}
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.mdbTable.searchDataObservable(this.searchText).subscribe(function () {
|
||||
_this.mdbTablePagination.calculateFirstItemIndex();
|
||||
_this.mdbTablePagination.calculateLastItemIndex();
|
||||
});
|
||||
};
|
||||
TableScenariosComponent.prototype.changeValue = function (scenario, property, event) {
|
||||
this.editField = event.target.textContent;
|
||||
//console.log("changeValue editField", id, this.editField);
|
||||
};
|
||||
TableScenariosComponent.prototype.updateList = function (scenario, property, event) {
|
||||
var _this = this;
|
||||
this.editField = event.target.textContent;
|
||||
var patch = {};
|
||||
patch[property] = this.editField.trim();
|
||||
if (!patch[property] || patch[property] === "" || patch[property] === scenario[property]) {
|
||||
return;
|
||||
}
|
||||
this._scenariosService.updateScenario(scenario._id.toString(), patch).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this._refresh();
|
||||
});
|
||||
};
|
||||
TableScenariosComponent.prototype.updateJson = function (scenario, property, event) {
|
||||
var _this = this;
|
||||
this.editField = event.target.textContent.trim();
|
||||
try {
|
||||
var patch = {};
|
||||
var value = JSON.parse(this.editField);
|
||||
if (JSON.stringify(value) === JSON.stringify(scenario[property])) {
|
||||
return;
|
||||
}
|
||||
patch[property] = value;
|
||||
console.log("editField", patch);
|
||||
this._scenariosService.updateScenario(scenario._id.toString(), patch).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this._refresh();
|
||||
});
|
||||
}
|
||||
catch (e) {
|
||||
console.log("error json", e);
|
||||
this._refresh();
|
||||
}
|
||||
};
|
||||
TableScenariosComponent.prototype.FieldsChange = function (scenario, property, value) {
|
||||
var _this = this;
|
||||
var patch = {};
|
||||
patch[property] = value.checked;
|
||||
this._scenariosService.updateScenario(scenario._id.toString(), patch).subscribe(function (res) {
|
||||
console.log("done", res);
|
||||
_this._refresh();
|
||||
});
|
||||
};
|
||||
TableScenariosComponent.prototype.openNewScenarioModal = function (scenario) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(ScenarioModalComponent, {
|
||||
class: 'modal-lg modal-notify',
|
||||
containerClass: '',
|
||||
data: {
|
||||
scenario: scenario
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (data) {
|
||||
sub.unsubscribe();
|
||||
console.log("new scenario data", data);
|
||||
_this._refresh();
|
||||
});
|
||||
};
|
||||
__decorate([
|
||||
ViewChild(MdbTablePaginationComponent, { static: true }),
|
||||
__metadata("design:type", MdbTablePaginationComponent)
|
||||
], TableScenariosComponent.prototype, "mdbTablePagination", void 0);
|
||||
__decorate([
|
||||
ViewChild(MdbTableDirective, { static: true }),
|
||||
__metadata("design:type", MdbTableDirective)
|
||||
], TableScenariosComponent.prototype, "mdbTable", void 0);
|
||||
__decorate([
|
||||
HostListener('input'),
|
||||
__metadata("design:type", Function),
|
||||
__metadata("design:paramtypes", []),
|
||||
__metadata("design:returntype", void 0)
|
||||
], TableScenariosComponent.prototype, "oninput", null);
|
||||
TableScenariosComponent = __decorate([
|
||||
Component({
|
||||
selector: 'table-scenarios',
|
||||
templateUrl: './table-scenarios.component.html',
|
||||
styleUrls: ['./table-scenarios.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalService, ChangeDetectorRef, ScenariosService])
|
||||
], TableScenariosComponent);
|
||||
return TableScenariosComponent;
|
||||
}());
|
||||
export { TableScenariosComponent };
|
||||
//# sourceMappingURL=table-scenarios.component.js.map
|
||||
1
dist/out-tsc/src/app/tables/table-scenarios.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/tables/table-scenarios.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"table-scenarios.component.js","sourceRoot":"","sources":["../../../../../src/app/tables/table-scenarios.component.ts"],"names":[],"mappings":"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"}
|
||||
111
dist/out-tsc/src/app/tables/table-subs.component.js
vendored
Normal file
111
dist/out-tsc/src/app/tables/table-subs.component.js
vendored
Normal file
@@ -0,0 +1,111 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { MdbTablePaginationComponent, MdbTableDirective, MDBModalService } from 'angular-bootstrap-md';
|
||||
import { Component, ViewChild, HostListener, ChangeDetectorRef } from '@angular/core';
|
||||
import { SubscriptionModalComponent } from '../alert/edit-subscription.component';
|
||||
import { SubscriptionsService } from '../services/subscriptions.service';
|
||||
var TableSubsComponent = /** @class */ (function () {
|
||||
function TableSubsComponent(modalService, cdRef, _subscriptionsService) {
|
||||
this.modalService = modalService;
|
||||
this.cdRef = cdRef;
|
||||
this._subscriptionsService = _subscriptionsService;
|
||||
this.previous = [];
|
||||
this.searchText = '';
|
||||
this.maxVisibleItems = 25;
|
||||
this.loading = false;
|
||||
this.elements = [];
|
||||
}
|
||||
TableSubsComponent.prototype.oninput = function () {
|
||||
this.mdbTablePagination.searchText = this.searchText;
|
||||
};
|
||||
TableSubsComponent.prototype._initElements = function () {
|
||||
this.mdbTable.setDataSource(this.elements);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
this.previous = this.mdbTable.getDataSource();
|
||||
};
|
||||
TableSubsComponent.prototype.ngOnInit = function () {
|
||||
this.refreshData();
|
||||
};
|
||||
TableSubsComponent.prototype.refreshData = function () {
|
||||
var _this = this;
|
||||
this.loading = true;
|
||||
this.searchText = "";
|
||||
var usersSub = this._subscriptionsService.getSubscriptions().subscribe(function (res) {
|
||||
usersSub.unsubscribe();
|
||||
_this.elements = res.results;
|
||||
_this.loading = false;
|
||||
_this._initElements();
|
||||
});
|
||||
};
|
||||
TableSubsComponent.prototype.ngAfterViewInit = function () {
|
||||
this.mdbTablePagination.setMaxVisibleItemsNumberTo(this.maxVisibleItems);
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.cdRef.detectChanges();
|
||||
};
|
||||
TableSubsComponent.prototype.searchItems = function () {
|
||||
var _this = this;
|
||||
var prev = this.mdbTable.getDataSource();
|
||||
if (!this.searchText) {
|
||||
this.mdbTable.setDataSource(this.previous);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
}
|
||||
if (this.searchText) {
|
||||
this.elements = this.mdbTable.searchLocalDataBy(this.searchText);
|
||||
this.mdbTable.setDataSource(prev);
|
||||
}
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.mdbTable.searchDataObservable(this.searchText).subscribe(function () {
|
||||
_this.mdbTablePagination.calculateFirstItemIndex();
|
||||
_this.mdbTablePagination.calculateLastItemIndex();
|
||||
});
|
||||
};
|
||||
TableSubsComponent.prototype.openNewSubsModal = function (subscription) {
|
||||
var _this = this;
|
||||
var modalRef = this.modalService.show(SubscriptionModalComponent, {
|
||||
class: 'modal-md modal-notify',
|
||||
containerClass: '',
|
||||
data: {
|
||||
subscription: subscription
|
||||
}
|
||||
});
|
||||
var sub = modalRef.content.action.subscribe(function (data) {
|
||||
sub.unsubscribe();
|
||||
console.log("new subs data", data);
|
||||
_this.refreshData();
|
||||
});
|
||||
};
|
||||
__decorate([
|
||||
ViewChild(MdbTablePaginationComponent, { static: true }),
|
||||
__metadata("design:type", MdbTablePaginationComponent)
|
||||
], TableSubsComponent.prototype, "mdbTablePagination", void 0);
|
||||
__decorate([
|
||||
ViewChild(MdbTableDirective, { static: true }),
|
||||
__metadata("design:type", MdbTableDirective)
|
||||
], TableSubsComponent.prototype, "mdbTable", void 0);
|
||||
__decorate([
|
||||
HostListener('input'),
|
||||
__metadata("design:type", Function),
|
||||
__metadata("design:paramtypes", []),
|
||||
__metadata("design:returntype", void 0)
|
||||
], TableSubsComponent.prototype, "oninput", null);
|
||||
TableSubsComponent = __decorate([
|
||||
Component({
|
||||
selector: 'table-subscriptions',
|
||||
templateUrl: './table-subscriptions.component.html',
|
||||
styleUrls: ['./table-subscriptions.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [MDBModalService, ChangeDetectorRef, SubscriptionsService])
|
||||
], TableSubsComponent);
|
||||
return TableSubsComponent;
|
||||
}());
|
||||
export { TableSubsComponent };
|
||||
//# sourceMappingURL=table-subs.component.js.map
|
||||
1
dist/out-tsc/src/app/tables/table-subs.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/tables/table-subs.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"table-subs.component.js","sourceRoot":"","sources":["../../../../../src/app/tables/table-subs.component.ts"],"names":[],"mappings":"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"}
|
||||
109
dist/out-tsc/src/app/tables/table-users.component.js
vendored
Normal file
109
dist/out-tsc/src/app/tables/table-users.component.js
vendored
Normal file
@@ -0,0 +1,109 @@
|
||||
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
||||
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
||||
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
||||
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
||||
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
||||
};
|
||||
var __metadata = (this && this.__metadata) || function (k, v) {
|
||||
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
||||
};
|
||||
import { MdbTablePaginationComponent, MdbTableDirective } from 'angular-bootstrap-md';
|
||||
import { Component, ViewChild, HostListener, ChangeDetectorRef } from '@angular/core';
|
||||
import { AuthGuard } from '../services/auth.guard';
|
||||
import { UsersService } from '../services/users.service';
|
||||
var TableUsersComponent = /** @class */ (function () {
|
||||
function TableUsersComponent(cdRef, _usersService, _auth) {
|
||||
var _this = this;
|
||||
this.cdRef = cdRef;
|
||||
this._usersService = _usersService;
|
||||
this._auth = _auth;
|
||||
this.previous = [];
|
||||
this.searchText = '';
|
||||
this.maxVisibleItems = 25;
|
||||
this.loading = false;
|
||||
this.elements = [];
|
||||
this._auth.getUserInfo().subscribe(function (value) {
|
||||
_this.currentUser = value;
|
||||
});
|
||||
}
|
||||
TableUsersComponent.prototype.oninput = function () {
|
||||
this.mdbTablePagination.searchText = this.searchText;
|
||||
};
|
||||
TableUsersComponent.prototype._initElements = function () {
|
||||
this.mdbTable.setDataSource(this.elements);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
this.previous = this.mdbTable.getDataSource();
|
||||
};
|
||||
TableUsersComponent.prototype.ngOnInit = function () {
|
||||
this.refreshData();
|
||||
};
|
||||
TableUsersComponent.prototype.refreshData = function () {
|
||||
var _this = this;
|
||||
this.loading = true;
|
||||
this.searchText = "";
|
||||
var usersSub = this._usersService.getUsers().subscribe(function (res) {
|
||||
usersSub.unsubscribe();
|
||||
res.results.forEach(function (u) {
|
||||
u.lastLogin = u.lastLogin || u.created;
|
||||
});
|
||||
_this.elements = res.results;
|
||||
_this.loading = false;
|
||||
_this._initElements();
|
||||
});
|
||||
};
|
||||
TableUsersComponent.prototype.ngAfterViewInit = function () {
|
||||
this.mdbTablePagination.setMaxVisibleItemsNumberTo(this.maxVisibleItems);
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.cdRef.detectChanges();
|
||||
};
|
||||
TableUsersComponent.prototype.searchItems = function () {
|
||||
var _this = this;
|
||||
var prev = this.mdbTable.getDataSource();
|
||||
if (!this.searchText) {
|
||||
this.mdbTable.setDataSource(this.previous);
|
||||
this.elements = this.mdbTable.getDataSource();
|
||||
}
|
||||
if (this.searchText) {
|
||||
this.elements = this.mdbTable.searchLocalDataBy(this.searchText);
|
||||
this.mdbTable.setDataSource(prev);
|
||||
}
|
||||
this.mdbTablePagination.calculateFirstItemIndex();
|
||||
this.mdbTablePagination.calculateLastItemIndex();
|
||||
this.mdbTable.searchDataObservable(this.searchText).subscribe(function () {
|
||||
_this.mdbTablePagination.calculateFirstItemIndex();
|
||||
_this.mdbTablePagination.calculateLastItemIndex();
|
||||
});
|
||||
};
|
||||
TableUsersComponent.prototype.FieldsChange = function (user, value) {
|
||||
var patchData = { "role": value.checked ? "admin" : "user" };
|
||||
this._usersService.updateUser(user._id, patchData).subscribe(function (res1) {
|
||||
user.role = res1.role;
|
||||
});
|
||||
};
|
||||
__decorate([
|
||||
ViewChild(MdbTablePaginationComponent, { static: true }),
|
||||
__metadata("design:type", MdbTablePaginationComponent)
|
||||
], TableUsersComponent.prototype, "mdbTablePagination", void 0);
|
||||
__decorate([
|
||||
ViewChild(MdbTableDirective, { static: true }),
|
||||
__metadata("design:type", MdbTableDirective)
|
||||
], TableUsersComponent.prototype, "mdbTable", void 0);
|
||||
__decorate([
|
||||
HostListener('input'),
|
||||
__metadata("design:type", Function),
|
||||
__metadata("design:paramtypes", []),
|
||||
__metadata("design:returntype", void 0)
|
||||
], TableUsersComponent.prototype, "oninput", null);
|
||||
TableUsersComponent = __decorate([
|
||||
Component({
|
||||
selector: 'table-users',
|
||||
templateUrl: './table-users.component.html',
|
||||
styleUrls: ['./table-users.component.scss']
|
||||
}),
|
||||
__metadata("design:paramtypes", [ChangeDetectorRef, UsersService, AuthGuard])
|
||||
], TableUsersComponent);
|
||||
return TableUsersComponent;
|
||||
}());
|
||||
export { TableUsersComponent };
|
||||
//# sourceMappingURL=table-users.component.js.map
|
||||
1
dist/out-tsc/src/app/tables/table-users.component.js.map
vendored
Normal file
1
dist/out-tsc/src/app/tables/table-users.component.js.map
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"table-users.component.js","sourceRoot":"","sources":["../../../../../src/app/tables/table-users.component.ts"],"names":[],"mappings":"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"}
|
||||
@@ -20,6 +20,12 @@ var HeaderComponent = /** @class */ (function () {
|
||||
}
|
||||
HeaderComponent.prototype.ngOnInit = function () {
|
||||
};
|
||||
HeaderComponent.prototype.logout = function ($event) {
|
||||
$event.preventDefault();
|
||||
$event.stopPropagation();
|
||||
window.location.href = "/logout";
|
||||
this._auth.clearUser();
|
||||
};
|
||||
HeaderComponent.prototype.ngOnDestroy = function () {
|
||||
this.subs.unsubscribe();
|
||||
};
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"header.component.js","sourceRoot":"","sources":["../../../../../../src/app/ui/header/header.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAQtD;IAKE,yBAAqB,KAAgB;QAArC,iBAKC;QALoB,UAAK,GAAL,KAAK,CAAW;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,SAAS,CAAE,UAAA,KAAK;YACnD,KAAI,CAAC,IAAI,GAAG,KAAK,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAI,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kCAAQ,GAAR;IAEA,CAAC;IAED,qCAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1B,CAAC;IAlBU,eAAe;QAL3B,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,WAAW,EAAE,yBAAyB;YACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;SACvC,CAAC;yCAM4B,SAAS;OAL1B,eAAe,CAoB3B;IAAD,sBAAC;CAAA,AApBD,IAoBC;SApBY,eAAe"}
|
||||
{"version":3,"file":"header.component.js","sourceRoot":"","sources":["../../../../../../src/app/ui/header/header.component.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAU,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAQtD;IAKE,yBAAqB,KAAgB;QAArC,iBAKC;QALoB,UAAK,GAAL,KAAK,CAAW;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,SAAS,CAAE,UAAA,KAAK;YACnD,KAAI,CAAC,IAAI,GAAG,KAAK,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAI,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kCAAQ,GAAR;IAEA,CAAC;IAED,gCAAM,GAAN,UAAO,MAAM;QACX,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,CAAC,eAAe,EAAE,CAAC;QACzB,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC;IAED,qCAAW,GAAX;QACE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1B,CAAC;IAzBU,eAAe;QAL3B,SAAS,CAAC;YACT,QAAQ,EAAE,YAAY;YACtB,WAAW,EAAE,yBAAyB;YACtC,SAAS,EAAE,CAAC,yBAAyB,CAAC;SACvC,CAAC;yCAM4B,SAAS;OAL1B,eAAe,CA2B3B;IAAD,sBAAC;CAAA,AA3BD,IA2BC;SA3BY,eAAe"}
|
||||
9
dist/out-tsc/src/environments/environment.js
vendored
9
dist/out-tsc/src/environments/environment.js
vendored
@@ -1,12 +1,5 @@
|
||||
export var environment = {
|
||||
production: false,
|
||||
config: {
|
||||
tenant: 'c21eeb5f-f5a6-44e8-a997-124f2f7a497c',
|
||||
clientId: '40742f13-bde8-4b1b-ac07-54c11b36b779',
|
||||
postLogoutRedirectUri: 'http://localhost:4200',
|
||||
endpoints: {
|
||||
'http://localhost:4200/': 'the id'
|
||||
}
|
||||
}
|
||||
apiVersionPath: '/api/v1'
|
||||
};
|
||||
//# sourceMappingURL=environment.js.map
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../../../src/environments/environment.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;IACjB,MAAM,EAAE;QACN,MAAM,EAAE,sCAAsC;QAC9C,QAAQ,EAAE,sCAAsC;QAChD,qBAAqB,EAAE,uBAAuB;QAC9C,SAAS,EAAE;YACT,wBAAwB,EAAE,QAAQ;SACnC;KACF;CACF,CAAC"}
|
||||
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../../../src/environments/environment.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,WAAW,GAAG;IACzB,UAAU,EAAE,KAAK;IACjB,cAAc,EAAE,SAAS;CAC1B,CAAC"}
|
||||
@@ -1,4 +1,5 @@
|
||||
export var environment = {
|
||||
production: true
|
||||
production: true,
|
||||
apiVersionPath: '/api/v1'
|
||||
};
|
||||
//# sourceMappingURL=environment.prod.js.map
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"environment.prod.js","sourceRoot":"","sources":["../../../../src/environments/environment.prod.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,WAAW,GAAG;IACzB,UAAU,EAAE,IAAI;CACjB,CAAC"}
|
||||
{"version":3,"file":"environment.prod.js","sourceRoot":"","sources":["../../../../src/environments/environment.prod.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,WAAW,GAAG;IACzB,UAAU,EAAE,IAAI;IAChB,cAAc,EAAE,SAAS;CAC1B,CAAC"}
|
||||
BIN
dist/qmi-cloud/3rdpartylicenses.txt
vendored
BIN
dist/qmi-cloud/3rdpartylicenses.txt
vendored
Binary file not shown.
128
dist/qmi-cloud/assets/faq.md
vendored
Normal file
128
dist/qmi-cloud/assets/faq.md
vendored
Normal file
@@ -0,0 +1,128 @@
|
||||
# FAQ
|
||||
|
||||
Just an assorted selection of questions and answers.
|
||||
|
||||
### 1\. What can I use QMI Cloud for?
|
||||
|
||||
- QMI Cloud scenarios can be used to perform product demonstrations, enablement sessions and PoC environments. It is built to aid with Customer Engagements.
|
||||
|
||||
* * *
|
||||
|
||||
### 2\. Are these QMI scenarios ready to go End-To-End demos?
|
||||
|
||||
- Not at this moment, a global environment is being built for PreSales by GEAR.
|
||||
- Provided scenarios are meant for (See 1). QMI works by installing licensing the products. QMI completes the main setup for the scenario to properly work where possible. You may need to put custom data, Qlik Sense applications or whatever you need for your customer engagement.
|
||||
|
||||
* * *
|
||||
|
||||
### 3\. Where are QMI Cloud resources deployed?
|
||||
|
||||
- All cloud resources such as Virtual Machines (VMs), disks, etc are deployed in the Qlik Azure subscription.
|
||||
- For the time being, all resources are deployed in the __East US__ region in Azure. This means that it could be some significant latency or delays if you are located in another region.
|
||||
|
||||
* * *
|
||||
|
||||
### 4\. What will happen when I provision a scenario?
|
||||
|
||||
- Necessary resources for that scenario to work are deployed within Azure.
|
||||
- An email is sent to the owner (e.g. you) indicating whether the provision was successful or with failures.
|
||||
- Upon success, all credentials and access information for this provision is sent with that email.
|
||||
- From that moment, VMs will keep at 'Running' status for 4 full days.
|
||||
- On day 3, an email is sent warning that in the next 24 hours the VMs will automatically stop.
|
||||
- You can "extend" VMs at Running status. This will renew the 'Running' period for 4 extra days. Other way, VMs will automatically stop within the next 24 hours.
|
||||
- You can monitor 'Running time' and 'Time remaining until auto stop' at all times.
|
||||
- __Provision will be automatically destroyed after 20 days of inactivity (20 days with Stopped VMs). On day 18 you'll get a warning email advising this will happen in 48 hours.__
|
||||
|
||||
* * *
|
||||
|
||||
### 5\. How many scenarios can I have provisioned at the same time?
|
||||
|
||||
- There is no limitation on the number of scenarios (or instances of the same one) provisioned at the same time. Just be aware of COST and keep VMs Stopped when possible.
|
||||
|
||||
- Do not forget to Destroy those provisions that you no longer need.
|
||||
|
||||
* * *
|
||||
|
||||
### 6\. Are scenarios accessible from the Internet or just from within Qlik VPN?
|
||||
|
||||
- All scenarios are accessible from within the Qlik VPN.
|
||||
- Some are also accessible from the Intenet (external access). This is indicated on the UI for each scenario.
|
||||
|
||||
* * *
|
||||
|
||||
### 7\. Is QMI Cloud under the 'Qlik Customer Engagement Terms' policy?
|
||||
|
||||
- Yes.
|
||||
- Only anonymous or public/free data can be used.
|
||||
- Customer data is available with QSE SaaS, work is being done to aid PreSales manage 3rd Party data.
|
||||
|
||||
* * *
|
||||
|
||||
|
||||
### 8\. Do scenarios communicate with each other?
|
||||
|
||||
- Yes.
|
||||
- Private IPs assigned to all VMs are reachable.
|
||||
- All ports are open for these private IPs (within the Qlik VPN).
|
||||
|
||||
|
||||
* * *
|
||||
|
||||
### 9\. What can I do if I don't find a scenario that suits my needs?
|
||||
|
||||
- You can create end-to-end more complete demos with different Qlik products using combination of multiple scenarios.
|
||||
|
||||
- For example, if you needed an NPrinting demo/poc, you could use Qlik Sense scenario and Windows Blank scenario, then you can install NPrinting in this Windows Blank scenario and complete the setup yourself.
|
||||
|
||||
|
||||
* * *
|
||||
|
||||
### 10\. Who is paying for these instances?
|
||||
|
||||
- The costs for these instances are allocated to PreSales.
|
||||
|
||||
- It is essential that we are all cost consciouse setup yourself.
|
||||
|
||||
|
||||
* * *
|
||||
|
||||
### 11\. Can I manually stop and start the scenarios?
|
||||
|
||||
- Yes.
|
||||
|
||||
|
||||
* * *
|
||||
|
||||
### 12\. If I shutdown the scenario, does it allocate a new IP Address?
|
||||
|
||||
- No.
|
||||
|
||||
|
||||
* * *
|
||||
|
||||
### 13\. Are the mandatory security tools installed on these instances?
|
||||
|
||||
- Yes.
|
||||
- Security is key for Qlik, whilst these are initially installed (Cabon Black on Windows, CrowdStrike on Linux) it is your responsibility as the owner of this instance to ensure everything is upto date.
|
||||
|
||||
|
||||
* * *
|
||||
|
||||
### 14\. Can I create new instances?
|
||||
|
||||
- This capability will be described soon.
|
||||
|
||||
* * *
|
||||
|
||||
### 15\. How are we managing Costs?
|
||||
|
||||
- Excessive use for instances, will need to be justified, every instance logged it tagged with your trigram. The usage of QMI Cloud will be made public within a Qlik Sense Application.
|
||||
- GEAR is looking at estimating the price for each server that you initiate.
|
||||
|
||||
* * *
|
||||
|
||||
### 16\. My Team use a team server; can I use this as well?
|
||||
|
||||
- This is open to everyone, if you do have a team server, then for cost purposes, please use that server.
|
||||
|
||||
* * *
|
||||
4
dist/qmi-cloud/index.html
vendored
4
dist/qmi-cloud/index.html
vendored
@@ -6,8 +6,8 @@
|
||||
<base href="/">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link rel="icon" href="assets/favicon.ico">
|
||||
<link rel="stylesheet" href="styles.a176d817fea8bea6cd9e.css"></head>
|
||||
<link rel="stylesheet" href="styles.096cda9efd9a8b224b3d.css"></head>
|
||||
<body>
|
||||
<app-root></app-root>
|
||||
<script src="runtime.689ba4fd6cadb82c1ac2.js" defer></script><script src="polyfills-es5.f752a17531a45fe93c1f.js" nomodule defer></script><script src="polyfills.06ba8d1a3d9dd3a8e8b9.js" defer></script><script src="scripts.cc5d7fb76aa54d397727.js" defer></script><script src="main.09d3646b3fdc1d594bb9.js" defer></script></body>
|
||||
<script src="runtime.e227d1a0e31cbccbf8ec.js" defer></script><script src="polyfills-es5.f1f388528ea207060cbf.js" nomodule defer></script><script src="polyfills.335424f161535f57733f.js" defer></script><script src="scripts.5520a99f673924c17e00.js" defer></script><script src="main.39aa2c5b2de4993d0e07.js" defer></script></body>
|
||||
</html>
|
||||
|
||||
1
dist/qmi-cloud/main.09d3646b3fdc1d594bb9.js
vendored
1
dist/qmi-cloud/main.09d3646b3fdc1d594bb9.js
vendored
File diff suppressed because one or more lines are too long
1
dist/qmi-cloud/main.39aa2c5b2de4993d0e07.js
vendored
Normal file
1
dist/qmi-cloud/main.39aa2c5b2de4993d0e07.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
dist/qmi-cloud/scripts.5520a99f673924c17e00.js
vendored
Normal file
1
dist/qmi-cloud/scripts.5520a99f673924c17e00.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
80
dist/qmi-cloud/styles.096cda9efd9a8b224b3d.css
vendored
Normal file
80
dist/qmi-cloud/styles.096cda9efd9a8b224b3d.css
vendored
Normal file
File diff suppressed because one or more lines are too long
74
dist/qmi-cloud/styles.a176d817fea8bea6cd9e.css
vendored
74
dist/qmi-cloud/styles.a176d817fea8bea6cd9e.css
vendored
File diff suppressed because one or more lines are too long
@@ -34,10 +34,20 @@ services:
|
||||
MONGO_INITDB_ROOT_PASSWORD: example
|
||||
networks:
|
||||
- backend
|
||||
|
||||
ports:
|
||||
- "27017:27017"
|
||||
|
||||
cli:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: qmi-cloud-cli/Dockerfile
|
||||
image: qlikgear/qmi-cloud-cli:latest
|
||||
|
||||
|
||||
app:
|
||||
build: .
|
||||
build:
|
||||
context: .
|
||||
dockerfile: Dockerfile
|
||||
image: qlikgear/qmi-cloud-app:latest
|
||||
container_name: qmi-cloud-app
|
||||
restart: on-failure
|
||||
@@ -45,9 +55,11 @@ services:
|
||||
- source: qmicloud_config
|
||||
target: config.json
|
||||
environment:
|
||||
#- HOSTNAME_URL=https://qmi-cloud:3100
|
||||
- HOSTNAME_URL=http://localhost:3000
|
||||
- REDIS_URL=redis://redis
|
||||
- MONGO_URI=mongodb://root:example@mongo/qmi?authSource=admin
|
||||
- MONGO_URI=mongodb://root:example@mongo/qmicloud?authSource=admin
|
||||
- CERT_PFX_FILENAME=
|
||||
- CERT_PFX_PASSWORD=
|
||||
command:
|
||||
- ./server/wait-for.sh
|
||||
- --timeout=20
|
||||
@@ -55,11 +67,15 @@ services:
|
||||
- --
|
||||
- sh
|
||||
- -c
|
||||
- npm run dev
|
||||
- npm run start:dev
|
||||
volumes:
|
||||
- .:/var/www/app
|
||||
# -- Dev only volumes
|
||||
- ./server:/var/www/app/server
|
||||
- ./dist:/var/www/app/dist
|
||||
# -------------------
|
||||
- ../qmi-cloud-provisions:/provisions
|
||||
- ./logs:/logs
|
||||
#- ./certs:/var/www/app/server/certs
|
||||
depends_on:
|
||||
- mongo
|
||||
- redis
|
||||
@@ -70,20 +86,26 @@ services:
|
||||
- backend
|
||||
|
||||
worker:
|
||||
build: .
|
||||
build:
|
||||
context: .
|
||||
dockerfile: qmi-cloud-worker/Dockerfile
|
||||
image: qlikgear/qmi-cloud-worker:latest
|
||||
container_name: qmi-cloud-worker
|
||||
restart: on-failure
|
||||
deploy:
|
||||
replicas: 2
|
||||
environment:
|
||||
- REDIS_URL=redis://redis
|
||||
- MONGO_URI=mongodb://root:example@mongo/qmi?authSource=admin
|
||||
- MONGO_URI=mongodb://root:example@mongo/qmicloud?authSource=admin
|
||||
- PROJECT_PATH=${PWD}
|
||||
- GIT_SCENARIOS=git::git@gitlab.com:qmi/qmi-cloud-scenarios.git
|
||||
- GIT_TAG=dev
|
||||
- SSHPATH=/Users/aor/.ssh
|
||||
command: "sh -c 'npm run worker:dev'"
|
||||
- DOCKERIMAGE_AZURE_POWERSHELL=mcr.microsoft.com/azure-powershell:4.2.0-ubuntu-18.04
|
||||
- DOCKERIMAGE_TERRAFORM=qlikgear/terraform:1.0.1
|
||||
command: "sh -c 'npm run start:dev'"
|
||||
volumes:
|
||||
- .:/var/www/app
|
||||
# -- Dev only volumes
|
||||
- ./worker:/app/worker
|
||||
# -------------------
|
||||
- ./logs:/logs
|
||||
- /var/run/docker.sock:/home/docker.sock
|
||||
depends_on:
|
||||
@@ -91,7 +113,7 @@ services:
|
||||
- redis
|
||||
networks:
|
||||
- backend
|
||||
|
||||
|
||||
mongo-express:
|
||||
image: mongo-express:0.54.0
|
||||
container_name: qmi-cloud-mongo-express
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
FROM node:13.8-alpine
|
||||
|
||||
RUN apk --no-cache add yarn
|
||||
|
||||
WORKDIR /var/www/app
|
||||
|
||||
ADD ./package.json ./
|
||||
ADD ./yarn.lock ./
|
||||
|
||||
RUN yarn install --production
|
||||
|
||||
ADD ./server ./server
|
||||
ADD ./dist ./dist
|
||||
|
||||
EXPOSE 3000
|
||||
EXPOSE 3100
|
||||
|
||||
CMD ["node", "-r", "esm", "server/server"]
|
||||
@@ -1,14 +0,0 @@
|
||||
FROM node:13.8-alpine
|
||||
|
||||
RUN apk --no-cache add yarn
|
||||
|
||||
WORKDIR /var/www/app
|
||||
|
||||
ADD ./package.json ./
|
||||
ADD ./yarn.lock ./
|
||||
|
||||
RUN yarn install --production
|
||||
|
||||
ADD ./server ./server
|
||||
|
||||
CMD ["node", "-r", "esm", "server/workers/worker.js"]
|
||||
51
gitlab-ci.sh
51
gitlab-ci.sh
@@ -1,10 +1,41 @@
|
||||
export VERSION=$(cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[",]//g' | tr -d '[[:space:]]')
|
||||
docker build -f ./docker-server/Dockerfile -t qlikgear/qmi-cloud-app:$VERSION ./
|
||||
docker build -f ./docker-worker/Dockerfile -t qlikgear/qmi-cloud-worker:$VERSION ./
|
||||
docker build -f ./docker-server/Dockerfile -t qlikgear/qmi-cloud-app:latest ./
|
||||
docker build -f ./docker-worker/Dockerfile -t qlikgear/qmi-cloud-worker:latest ./
|
||||
echo "$DOCKER_REGISTRY_PASSWORD" | docker login -u "$DOCKER_REGISTRY_USER" --password-stdin
|
||||
docker push qlikgear/qmi-cloud-app:$VERSION
|
||||
docker push qlikgear/qmi-cloud-app:latest
|
||||
docker push qlikgear/qmi-cloud-worker:$VERSION
|
||||
docker push qlikgear/qmi-cloud-worker:latest
|
||||
echo "--- Building QMI Cloud docker images for branch $CI_COMMIT_REF_NAME"
|
||||
|
||||
export VERSION_APP=$(cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[",]//g' | tr -d '[[:space:]]')
|
||||
export VERSION_WORKER=$(cat qmi-cloud-worker/package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[",]//g' | tr -d '[[:space:]]')
|
||||
export VERSION_CLI=$(cat qmi-cloud-cli/package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[",]//g' | tr -d '[[:space:]]')
|
||||
|
||||
export TAG_APP=$VERSION_APP
|
||||
export TAG_WORKER=$VERSION_WORKER
|
||||
export TAG_CLI=$VERSION_CLI
|
||||
export STABLE_TAG="latest"
|
||||
|
||||
if [ "$CI_COMMIT_REF_NAME" != "master" ]; then
|
||||
TAG_APP="$VERSION_APP-$CI_COMMIT_REF_NAME"
|
||||
TAG_WORKER="$VERSION_WORKER-$CI_COMMIT_REF_NAME"
|
||||
TAG_CLI="$VERSION_CLI-$CI_COMMIT_REF_NAME"
|
||||
STABLE_TAG="latestdev"
|
||||
fi
|
||||
|
||||
echo "$DOCKER_REGISTRY_PASSWORD" | docker login --username "$DOCKER_REGISTRY_USER" --password-stdin
|
||||
|
||||
echo "--- Building image: qlikgear/qmi-cloud-cli:$TAG_CLI"
|
||||
docker build -f ./qmi-cloud-cli/Dockerfile -t qlikgear/qmi-cloud-cli:$TAG_CLI ./
|
||||
echo "--- Pushing image: qlikgear/qmi-cloud-cli:$TAG_CLI"
|
||||
docker push qlikgear/qmi-cloud-cli:$TAG_CLI
|
||||
docker build -f ./qmi-cloud-cli/Dockerfile -t qlikgear/qmi-cloud-cli:$STABLE_TAG ./
|
||||
docker push qlikgear/qmi-cloud-cli:$STABLE_TAG
|
||||
|
||||
|
||||
echo "--- Building image: qlikgear/qmi-cloud-worker:$TAG_WORKER"
|
||||
docker build -f ./qmi-cloud-worker/Dockerfile -t qlikgear/qmi-cloud-worker:$TAG_WORKER ./
|
||||
echo "--- Pushing image: qlikgear/qmi-cloud-worker:$TAG_WORKER"
|
||||
docker push qlikgear/qmi-cloud-worker:$TAG_WORKER
|
||||
docker build -f ./qmi-cloud-worker/Dockerfile -t qlikgear/qmi-cloud-worker:$STABLE_TAG ./
|
||||
docker push qlikgear/qmi-cloud-worker:$STABLE_TAG
|
||||
|
||||
echo "--- Building image: qlikgear/qmi-cloud-app:$TAG_APP"
|
||||
docker build -f ./Dockerfile -t qlikgear/qmi-cloud-app:$TAG_APP ./
|
||||
echo "--- Pushing image: qlikgear/qmi-cloud-app:$TAG_APP"
|
||||
docker push qlikgear/qmi-cloud-app:$TAG_APP
|
||||
docker build -f ./Dockerfile -t qlikgear/qmi-cloud-app:$STABLE_TAG ./
|
||||
docker push qlikgear/qmi-cloud-app:$STABLE_TAG
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
branch=master
|
||||
rm -fr ./az-tf-templates
|
||||
git clone -b $branch git@gitlab.com:qmi/qmi-cloud-scenarios.git ./az-tf-templates
|
||||
14876
package-lock.json
generated
14876
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
22
package.json
22
package.json
@@ -1,11 +1,9 @@
|
||||
{
|
||||
"name": "qmi-cloud",
|
||||
"version": "1.0.7",
|
||||
"name": "qmi-cloud-app",
|
||||
"version": "1.1.5",
|
||||
"scripts": {
|
||||
"start": "node -r esm server/server.js",
|
||||
"dev": "nodemon -r esm server/server.js",
|
||||
"worker": "node -r esm server/workers/worker.js",
|
||||
"worker:dev": "nodemon -r esm server/workers/worker.js",
|
||||
"start:dev": "nodemon -r esm server/server.js",
|
||||
"test": "echo \"No test specified\" && exit 0"
|
||||
},
|
||||
"private": true,
|
||||
@@ -17,25 +15,24 @@
|
||||
"@angular/core": "~9.0.7",
|
||||
"@angular/forms": "~9.0.7",
|
||||
"@angular/http": "~7.0.0",
|
||||
"@angular/localize": "~9.0.7",
|
||||
"@angular/platform-browser": "~9.0.7",
|
||||
"@angular/platform-browser-dynamic": "~9.0.7",
|
||||
"@angular/router": "~9.0.7",
|
||||
"@fortawesome/fontawesome-free": "^5.12.1",
|
||||
"@hapi/boom": "^9.1.0",
|
||||
"@ng-bootstrap/ng-bootstrap": "6.2.0",
|
||||
"@types/chart.js": "^2.9.16",
|
||||
"adal-angular4": "^4.0.12",
|
||||
"angular-bootstrap-md": "^9.0.0",
|
||||
"animate.css": "^3.7.2",
|
||||
"azure-arm-compute": "^10.0.0",
|
||||
"body-parser": "^1.19.0",
|
||||
"boom": "^7.3.0",
|
||||
"bootstrap": "^4.3.1",
|
||||
"bull": "^3.11.0",
|
||||
"bull-arena": "^2.6.4",
|
||||
"chart.js": "^2.9.3",
|
||||
"connect-mongo": "^3.0.0",
|
||||
"cookie-parser": "^1.4.4",
|
||||
"core-js": "^2.5.4",
|
||||
"dockerode": "^3.0.2",
|
||||
"esm": "^3.2.25",
|
||||
"express": "^4.17.1",
|
||||
"express-session": "^1.17.0",
|
||||
@@ -44,12 +41,13 @@
|
||||
"hammerjs": "^2.0.8",
|
||||
"jsonwebtoken": "^8.5.1",
|
||||
"leonardo-ui": "^1.7.1",
|
||||
"moment": "^2.24.0",
|
||||
"mongoose": "^5.7.4",
|
||||
"ms-rest-azure": "^3.0.0",
|
||||
"nodemailer": "^6.4.2",
|
||||
"ngx-markdown": "^9.0.0",
|
||||
"nodemon": "^1.19.1",
|
||||
"passport": "^0.4.0",
|
||||
"passport-azure-ad": "^4.1.0",
|
||||
"qmi-cloud-common": "./qmi-cloud-common",
|
||||
"rxjs": "~6.5.4",
|
||||
"swagger-jsdoc": "3.5.0",
|
||||
"swagger-ui-express": "4.1.3",
|
||||
@@ -75,4 +73,4 @@
|
||||
"tslint": "~5.11.0",
|
||||
"typescript": "~3.7.5"
|
||||
}
|
||||
}
|
||||
}
|
||||
21
qmi-cloud-cli/Dockerfile
Normal file
21
qmi-cloud-cli/Dockerfile
Normal file
@@ -0,0 +1,21 @@
|
||||
# Stage 1: NOTE: context is actually ../
|
||||
FROM node:13.8-alpine AS sources
|
||||
|
||||
RUN apk --no-cache add yarn
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
ADD ./qmi-cloud-cli ./
|
||||
ADD ./qmi-cloud-common ../qmi-cloud-common
|
||||
|
||||
RUN yarn install --production
|
||||
|
||||
# Stage 2:
|
||||
FROM node:13.8-alpine AS production
|
||||
WORKDIR /app
|
||||
COPY --from=sources /app ./
|
||||
|
||||
RUN chmod a+x ./shell-utils/*.sh
|
||||
|
||||
ENTRYPOINT ["sh", "/app/shell-utils/check.sh"]
|
||||
|
||||
22
qmi-cloud-cli/README.md
Normal file
22
qmi-cloud-cli/README.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# Examples
|
||||
|
||||
```
|
||||
docker run --net=host \
|
||||
-e MONGO_URI="mongodb://root:example@localhost:27017/qmicloud?authSource=admin" \
|
||||
-e API_KEY="c229219ccdd72d11e8ea253fd3876d247e5f489c9c84922cabdfb0cc194d8ff398a8d8d6528d8241efc99add2207e0ec75122a1b2c5598cc340cbe6b7c3c0dbf" \
|
||||
qlikgear/qmi-cloud-cli:latest -s checkdestroy -t warning -p 4 -r test
|
||||
```
|
||||
|
||||
```
|
||||
docker run --net=host \
|
||||
-e MONGO_URI="mongodb://root:example@localhost:27017/qmicloud?authSource=admin" \
|
||||
qlikgear/qmi-cloud-cli:latest -s initdb
|
||||
```
|
||||
|
||||
```
|
||||
docker run --net=host -e MONGO_URI=$MONGO_URI -e API_KEY=$API_KEY qlikgear/qmi-cloud-cli:latest -s checkdestroy -t warning -p 20 -r test
|
||||
```
|
||||
|
||||
```
|
||||
docker run --net=host -e MONGO_URI=$MONGO_URI -e API_KEY=$API_KEY qlikgear/qmi-cloud-cli:latest -s checkstop -t warning -p 4 -r test
|
||||
```
|
||||
425
qmi-cloud-cli/initdata/scenariosQMI-Automation.json
Normal file
425
qmi-cloud-cli/initdata/scenariosQMI-Automation.json
Normal file
@@ -0,0 +1,425 @@
|
||||
[
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": true,
|
||||
"isExternal": true,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Qlik Sense",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"index": "vm1",
|
||||
"versions": [
|
||||
{
|
||||
"name": "Qlik Sense February 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qliksense-base-feb20-2"
|
||||
},
|
||||
{
|
||||
"name": "Qlik Sense April 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qliksense-base-april20-1587800741770"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"name": "azqmi-qs-sn",
|
||||
"title": "Qlik Sense Enterprise on Windows",
|
||||
"description": "Qlik Sense Enterprise on Windows (single node). Dashboard and visualization bundle installed.<br><br>WebConnectors installed but not licensed.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T09:27:15.596Z",
|
||||
"updated": "2020-05-10T15:27:26.466Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": true,
|
||||
"isExternal": true,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Qlik Sense",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"index": "vm1",
|
||||
"versions": [
|
||||
{
|
||||
"name": "Qlik Sense February 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qliksense-base-feb20-2"
|
||||
},
|
||||
{
|
||||
"name": "Qlik Sense April 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qliksense-base-april20-1587800741770"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"product": "QDC",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"index": "vm2",
|
||||
"versions": [
|
||||
{
|
||||
"name": "QDC Single Server December 2019",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qdc-base-4.4-2"
|
||||
},
|
||||
{
|
||||
"name": "QDC Single Server April 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qdc-base-april20-1588850882491"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"name": "azqmi-qdc-qs",
|
||||
"title": "Qlik Data Catalyst and Qlik Sense",
|
||||
"description": "Creates a <b>QDC single server</b> and a <b>Qlik Sense Enterprise</b>.<br><br>Configuration is all set to load QVDs located in C:/QVDs and \"Publish to Qlik\". Setup QDC Catalog in QS Data Manager <a target=\"blank\" href=\"https://confluence.qliktech.com/display/~AOR/QMI+Cloud+-+QDC+Catalogue+setup+in+Qlik+Sense\">here</a>. More appealing QVD demo configuration by <a target=\"blank\" href=\"https://confluence.qliktech.com/display/~kaa/Getting+Qlik+Catalog+for+QVD+ready+for+Demo+on+QMI+Cloud\">Kevin Alty</a>. Troubleshoot 'Publish To Qlik\" <a target=\"blank\" href=\"https://confluence.qliktech.com/display/~AOR/Troubleshooting+Publish+To+Qlik+in+QMI+Cloud+QS-QDC+scenario\">here</a>.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T09:27:15.596Z",
|
||||
"updated": "2020-05-12T08:39:13.216Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": true,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Oracle",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"name": "azqmi-database-lkn",
|
||||
"title": "Oracle & Other databases",
|
||||
"description": "Oracle Database <b class=\"lui-text-danger\">DO NOT USE, DEV IN PROGRESS</b>",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T09:27:15.596Z",
|
||||
"updated": "2020-05-14T03:58:03.413Z"
|
||||
|
||||
},
|
||||
{
|
||||
"isAdminOnly": true,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "packer",
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"name": "azqmi-box-builder",
|
||||
"title": "Builds qmi desktop base box with packer",
|
||||
"description": "packer builder <b class=\"lui-text-danger\">DO NOT USE, GEAR INTERNAL ONLY</b>",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T09:27:15.596Z",
|
||||
"updated": "2020-05-20T02:59:57.772Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": true,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "QDC",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"index": "vm1",
|
||||
"versions": [
|
||||
{
|
||||
"name": "QDC Single Server December 2019",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qdc-base-4.4-2"
|
||||
},
|
||||
{
|
||||
"name": "QDC Single Server April 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qdc-base-april20-1588850882491"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"name": "azqmi-qdc-ss",
|
||||
"title": "Qlik Data Catalyst",
|
||||
"description": "Qlik Data Catalyst single server. Set appropriate license (after provision) if QDC4QVDs only version is needed.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T09:26:39.532Z",
|
||||
"updated": "2020-05-10T15:22:34.537Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Windows",
|
||||
"vmTypeDefault": "Standard_D2s_v3",
|
||||
"diskSizeGbDefault": 128,
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D2s_v3",
|
||||
"name": "azqmi-wn-bl",
|
||||
"title": "Windows Server 2016",
|
||||
"description": "Just a blank Windows Server 2016",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T09:26:11.396Z",
|
||||
"updated": "2020-05-10T12:39:09.646Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Windows",
|
||||
"vmTypeDefault": "Standard_D2s_v3",
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D2s_v3",
|
||||
"name": "azqmi-wn-dbs",
|
||||
"title": "MySQL and MSSQL server databases",
|
||||
"description": "Windows Server 2016 running MySQL and MSSQL server databases.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-16T12:57:06.937Z"
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Ubuntu 18.04",
|
||||
"vmTypeDefault": "Standard_B2s",
|
||||
"diskSizeGbDefault": 128,
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_B2s",
|
||||
"name": "azqmi-ubuntu",
|
||||
"title": "Ubuntu 18.04",
|
||||
"description": "Just a blank Ubuntu 18.04 instance",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T12:39:12.884Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Centos 7.5",
|
||||
"vmTypeDefault": "Standard_B2s",
|
||||
"diskSizeGbDefault": 128,
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_B2s",
|
||||
"name": "azqmi-centos",
|
||||
"title": "Centos 7.5",
|
||||
"description": "Just a blank Centos 7.5 instance",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T12:39:15.087Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": true,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Centos 7.5",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"diskSizeGbDefault": 128,
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"name": "gen-qdc",
|
||||
"title": "Image generator - QDC",
|
||||
"description": "This scenario creates a VM and runs QDC install scripts. Then it will generalize the VM for it to become an Azure image.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T12:39:17.323Z",
|
||||
"__v": 0,
|
||||
"newImageName": "qdc-base-april20"
|
||||
},
|
||||
{
|
||||
"isAdminOnly": true,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Windows",
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"diskSizeGbDefault": 128,
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"name": "gen-qs",
|
||||
"title": "Image generator - QSEoW",
|
||||
"description": "This scenario creates a VM and will run Qlik Sense install scripts. Then it will generalize the VM for it to become an Azure image.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T12:39:21.035Z",
|
||||
"newImageName": "qliksense-base-april20",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "QlikView",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"name": "azqmi-qv",
|
||||
"title": "QlikView Server and Publisher",
|
||||
"description": "This scenario creates a VM running <b>QlikView Server and Publisher April 2019 SR1</b> (access from VPN only).",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T12:39:23.148Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "each node",
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"diskSizeGbDefault": 250,
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"name": "azqmi-qseok-microk8s",
|
||||
"title": "Qlik Sense Enterprise on Kubernetes (microk8s)",
|
||||
"description": "Ubuntu 18.04 running <a target=\"blank\" href=\"https://microk8s.io/\">MicroK8s</a> cluster and QSEoK deployed in it. <br><br><b>Just for Demos, not for PoCs</b>",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T15:29:19.944Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": true,
|
||||
"isExternal": true,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "QIB",
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"index": "vm1",
|
||||
"versions": [
|
||||
{
|
||||
"name": "Qlik Sense Feb 2020 and QIB Feb 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/images/qliksense-qib-base-feb20-1"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"name": "azqmi-qs-qib",
|
||||
"title": "Qlik Insight Bot",
|
||||
"description": "Qlik Sense Enterprise on Windows with Qlik Insight Bot.<br><br>WebConnectors installed but not licensed.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T09:27:15.596Z",
|
||||
"updated": "2020-05-10T15:23:45.891Z"
|
||||
},
|
||||
{
|
||||
"isAdminOnly": true,
|
||||
"isWafPolicyAppGw": true,
|
||||
"isExternal": true,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Windows VM",
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"name": "azqmi-qs-np",
|
||||
"title": "Qlik Sense Enterprise and NPrinting",
|
||||
"description": "<b class=\"lui-text-danger\">DO NOT USE, DEV IN PROGRESS</b> One VM running <b>Qlik Sense Feb 2020</b> and <b>NPrinting Feb 2020 SR1</b>. Extenal access through AppGw.<br><br>WebConnectors installed but not licensed.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T15:23:56.237Z"
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Ubuntu 18.04",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"diskSizeGbDefault": 128,
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"name": "azqmi-ubuntu-docker",
|
||||
"title": "Ubuntu with Docker and Docker-Compose",
|
||||
"description": "This is Ubuntu 18.04 with Docker Engine and Docker-Compose installed.",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T15:24:19.588Z"
|
||||
},
|
||||
{
|
||||
"isAdminOnly": false,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Attunity Replicate/Compose DW",
|
||||
"vmTypeDefault": "Standard_D2s_v3",
|
||||
"index": "vm1",
|
||||
"versions": []
|
||||
}
|
||||
],
|
||||
"vmTypeDefault": "Standard_D2s_v3",
|
||||
"name": "azqmi-di",
|
||||
"title": "Attunity Replicate/Compose DW",
|
||||
"description": "Windows Server 2016 with installed Attunity Replicate and Compose DW (v6.6.0).",
|
||||
"version": "1.0",
|
||||
"created": "2019-12-04T08:55:31.948Z",
|
||||
"updated": "2020-05-10T15:24:29.303Z"
|
||||
}
|
||||
]
|
||||
96
qmi-cloud-cli/initdata/scenariosQlik-Secure.json
Normal file
96
qmi-cloud-cli/initdata/scenariosQlik-Secure.json
Normal file
@@ -0,0 +1,96 @@
|
||||
[
|
||||
{
|
||||
"isAdminOnly": true,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Qlik Sense",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"diskSizeGbDefault": "500",
|
||||
"index": "vm1",
|
||||
"versions": [
|
||||
{
|
||||
"name": "Qlik Sense April 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/galleries/QMICloud/images/QlikSenseEnterprise/versions/13.72.3"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"product": "QDC",
|
||||
"vmTypeDefault": "Standard_D4s_v3",
|
||||
"diskSizeGbDefault": "500",
|
||||
"index": "vm2",
|
||||
"versions": [
|
||||
{
|
||||
"name": "QDC Single Server April 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/galleries/QMICloud/images/QDC/versions/4.5.0"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"name": "azqmi-qdc-qs-secure",
|
||||
"title": "Qlik Data Catalyst and Qlik Sense (secure)",
|
||||
"description": "Creates a <b>QDC single server</b> and a <b>Qlik Sense Enterprise</b> in isolation and secure for Customer Data PoC's.<br><br>Configuration is all set to load QVDs located in C:/QVDs and \"Publish to Qlik\". Setup QDC Catalog in QS Data Manager <a target=\"blank\" href=\"https://confluence.qliktech.com/display/~AOR/QMI+Cloud+-+QDC+Catalogue+setup+in+Qlik+Sense\">here</a>. Troubleshoot 'Publish To Qlik\" <a target=\"blank\" href=\"https://confluence.qliktech.com/display/~AOR/Troubleshooting+Publish+To+Qlik+in+QMI+Cloud+QS-QDC+scenario\">here</a>.",
|
||||
"created": "2020-05-18T09:10:35.728Z",
|
||||
"updated": "2020-05-18T15:25:27.282Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": true,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "QDC",
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"diskSizeGbDefault": 500,
|
||||
"index": "vm1",
|
||||
"versions": [
|
||||
{
|
||||
"name": "QDC Single Server April 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/galleries/QMICloud/images/QDC/versions/4.5.0"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"name": "azqmi-qdc-secure",
|
||||
"title": "Qlik Data Catalyst (secure)",
|
||||
"description": "Qlik Data Catalyst deployment in isolation and secure for Customer Data PoC's",
|
||||
"created": "2020-05-18T07:58:28.741Z",
|
||||
"updated": "2020-05-18T15:25:32.828Z",
|
||||
"__v": 0
|
||||
},
|
||||
{
|
||||
"isAdminOnly": true,
|
||||
"isWafPolicyAppGw": false,
|
||||
"isExternal": false,
|
||||
"isDisabled": false,
|
||||
"availableProductVersions": [
|
||||
{
|
||||
"product": "Qlik Sense",
|
||||
"vmTypeDefault": "Standard_D8s_v3",
|
||||
"diskSizeGbDefault": 250,
|
||||
"index": "vm1",
|
||||
"versions": [
|
||||
{
|
||||
"name": "Qlik Sense February 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/galleries/QMICloud/images/QlikSenseEnterprise/versions/13.62.0"
|
||||
},
|
||||
{
|
||||
"name": "Qlik Sense April 2020",
|
||||
"image": "/subscriptions/62ebff8f-c40b-41be-9239-252d6c0c8ad9/resourceGroups/QMI-Machines/providers/Microsoft.Compute/galleries/QMICloud/images/QlikSenseEnterprise/versions/13.72.3"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"name": "azqmi-qs-secure",
|
||||
"title": "Qlik Sense Enterprise on Windows (secure)",
|
||||
"description": "Qlik Sense Enterprise deployment in isolation and secure for Customer Data PoC's",
|
||||
"created": "2020-05-13T11:55:55.785Z",
|
||||
"updated": "2020-05-18T15:25:38.158Z",
|
||||
"__v": 0
|
||||
}
|
||||
]
|
||||
10
qmi-cloud-cli/initdata/subscriptions.json
Normal file
10
qmi-cloud-cli/initdata/subscriptions.json
Normal file
@@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"subsId": "62ebff8f-c40b-41be-9239-252d6c0c8ad9",
|
||||
"description": "QMI Automation"
|
||||
},
|
||||
{
|
||||
"subsId": "73c75d40-8c7d-45cf-b4f9-afdb210da92d",
|
||||
"description": "Qlik-Secure"
|
||||
}
|
||||
]
|
||||
62
qmi-cloud-cli/initdata/vmtypes.json
Normal file
62
qmi-cloud-cli/initdata/vmtypes.json
Normal file
@@ -0,0 +1,62 @@
|
||||
[
|
||||
{
|
||||
"_id": "5e73a211710f74000640cbf2",
|
||||
"type": "Standard_B1ms",
|
||||
"desc": "1 CPUs - 2GiB RAM",
|
||||
"costHour": 0.0207
|
||||
},
|
||||
{
|
||||
"_id": "5e73a220710f74000640cbf4",
|
||||
"type": "Standard_B2s",
|
||||
"desc": "2 CPUs - 4GiB RAM",
|
||||
"costHour": 0.0416
|
||||
},
|
||||
{
|
||||
"_id": "5e73a22b710f74000640cbf6",
|
||||
"type": "Standard_D2s_v3",
|
||||
"desc": "2 CPUs - 8GiB RAM",
|
||||
"costHour": 0.096
|
||||
},
|
||||
{
|
||||
"_id": "5e73a240710f74000640cbfa",
|
||||
"type": "Standard_D4s_v3",
|
||||
"desc": "4 CPUs - 16GiB RAM",
|
||||
"costHour": 0.192
|
||||
},
|
||||
{
|
||||
"_id": "5e73a251710f74000640cbfe",
|
||||
"type": "Standard_D8s_v3",
|
||||
"desc": "8 CPUs - 32GiB RAM",
|
||||
"costHour": 0.384
|
||||
},
|
||||
{
|
||||
"_id": "5e73a262710f74000640cc02",
|
||||
"type": "Standard_D16s_v3",
|
||||
"desc": "16 CPUs - 64GiB RAM",
|
||||
"costHour": 0.768
|
||||
},
|
||||
{
|
||||
"_id": "5e92c98ce7b19100066153ab",
|
||||
"type": "Standard_D32s_v3",
|
||||
"desc": "32 CPUs - 128GiB RAM",
|
||||
"costHour": 1.536
|
||||
},
|
||||
{
|
||||
"_id": "5ea9016970653300063fbd17",
|
||||
"type": "Standard_E16s_v3",
|
||||
"desc": "16 CPUs - 128 GiB RAM - Mem. optimized",
|
||||
"costHour": 1.008
|
||||
},
|
||||
{
|
||||
"_id": "5ea901bd70653300063fbd19",
|
||||
"type": "Standard_E20s_v3",
|
||||
"desc": "20 CPUs - 160 GiB RAM - Mem. optimized",
|
||||
"costHour": 1.26
|
||||
},
|
||||
{
|
||||
"_id": "5ea901d670653300063fbd1b",
|
||||
"type": "Standard_E32s_v3",
|
||||
"desc": "32 CPUs - 256GiB RAM - Mem. optimized",
|
||||
"costHour": 2.016
|
||||
}
|
||||
]
|
||||
50
qmi-cloud-cli/jobs/db-init.js
Normal file
50
qmi-cloud-cli/jobs/db-init.js
Normal file
@@ -0,0 +1,50 @@
|
||||
const db = require('qmi-cloud-common/mongo');
|
||||
var initDataSubscriptions = require("../initdata/subscriptions.json");
|
||||
var scenarios1 = require("../initdata/scenariosQMI-Automation.json");
|
||||
var scenarios2 = require("../initdata/scenariosQlik-Secure.json");
|
||||
var vmTypes = require("../initdata/vmtypes.json");
|
||||
|
||||
|
||||
async function asyncForEach(array, callback) {
|
||||
for (let index = 0; index < array.length; index++) {
|
||||
await callback(array[index], index, array);
|
||||
}
|
||||
}
|
||||
|
||||
async function init() {
|
||||
// Adding VmTypes
|
||||
await asyncForEach(vmTypes, async function(v){
|
||||
await db.vmtype.add(v);
|
||||
});
|
||||
|
||||
// Adding Subscriptions
|
||||
await asyncForEach(initDataSubscriptions, async function(s){
|
||||
await db.subscription.add(s);
|
||||
});
|
||||
|
||||
var subscription;
|
||||
//QMI Automation
|
||||
subscription = await db.subscription.getOne({"description": "QMI Automation"});
|
||||
await asyncForEach(scenarios1, async function(s){
|
||||
s.subscription = subscription._id;
|
||||
await db.scenario.add(s);
|
||||
});
|
||||
|
||||
//Qlik-Secure
|
||||
subscription = await db.subscription.getOne({"description": "Qlik-Secure"});
|
||||
await asyncForEach(scenarios2, async function(s){
|
||||
s.subscription = subscription._id;
|
||||
await db.scenario.add(s);
|
||||
});
|
||||
|
||||
console.log("Done!");
|
||||
process.exit(0);
|
||||
|
||||
}
|
||||
|
||||
init().catch(function(err){
|
||||
console.log(err);
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
module.exports.init = init;
|
||||
152
qmi-cloud-cli/jobs/destroy5.js
Normal file
152
qmi-cloud-cli/jobs/destroy5.js
Normal file
@@ -0,0 +1,152 @@
|
||||
|
||||
var myArgs = process.argv.slice(2);
|
||||
|
||||
if ( myArgs.length < 3 ) {
|
||||
console.log("Missing args", myArgs);
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
const db = require('qmi-cloud-common/mongo');
|
||||
const sendEmail = require("qmi-cloud-common/send-email");
|
||||
const moment = require('moment');
|
||||
const fetch = require('node-fetch');
|
||||
|
||||
|
||||
const IS_REAL = myArgs[2] !== 'test';
|
||||
const STOPPED_PERIOD = myArgs[1]; //Days
|
||||
const STOPPED_LIMIT_HOURS_WARNING = 24*(STOPPED_PERIOD-2); //Hours
|
||||
const STOPPED_LIMIT_HOURS_STOP = 24*STOPPED_PERIOD; //Hours
|
||||
const API_KEY = process.env.API_KEY;
|
||||
const SERVER_URL = "http://localhost:3000";
|
||||
|
||||
if ( !API_KEY ) {
|
||||
console.log("Missing env API_KEY");
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
async function postDestroy(provision) {
|
||||
|
||||
const userId = provision.user._id.toString();
|
||||
const provId = provision._id.toString();
|
||||
|
||||
return fetch(`${SERVER_URL}/api/v1/users/${userId}/provisions/${provId}/destroy?apiKey=${API_KEY}`, {
|
||||
method: 'POST',
|
||||
headers:{
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
})
|
||||
.then(res => res.json())
|
||||
.then(json => console.log(json));
|
||||
}
|
||||
|
||||
|
||||
function timeRunning(p) {
|
||||
let totalStopTime = Math.abs(new Date().getTime() - new Date(p.stoppedFrom).getTime());
|
||||
let duration = moment.duration(totalStopTime);
|
||||
p.duration = {
|
||||
hours: Math.floor(duration.asHours()),
|
||||
complete: Math.floor(duration.asDays()) +"d "+duration.hours()+"h "+duration.minutes()
|
||||
};
|
||||
}
|
||||
|
||||
async function asyncForEach(array, callback) {
|
||||
for (let index = 0; index < array.length; index++) {
|
||||
await callback(array[index], index, array);
|
||||
}
|
||||
}
|
||||
|
||||
async function init(type) {
|
||||
var limit, cb;
|
||||
var filter = {
|
||||
"isDestroyed":false,
|
||||
"isDeleted": false,
|
||||
"statusVms": "Stopped"
|
||||
};
|
||||
if ( type === "warning" ) {
|
||||
limit = STOPPED_LIMIT_HOURS_WARNING;
|
||||
filter.pendingNextAction = {$ne: "destroy"};
|
||||
cb = doSendEmailDestroyWarning;
|
||||
} else if ( type === "exec" ) {
|
||||
limit = STOPPED_LIMIT_HOURS_STOP;
|
||||
filter.pendingNextAction = "destroy";
|
||||
cb = doDestroy;
|
||||
} else {
|
||||
console.log("Invalid 'type'. Do nothing.");
|
||||
return;
|
||||
}
|
||||
|
||||
let provisions = await db.provision.get(filter);
|
||||
let scenarios = await db.scenario.get();
|
||||
|
||||
await asyncForEach(provisions.results, async function(p) {
|
||||
var _scenario = scenarios.results.filter(s=>{
|
||||
return s.name === p.scenario
|
||||
});
|
||||
if ( _scenario.length ){
|
||||
p._scenario = _scenario[0];
|
||||
}
|
||||
timeRunning(p);
|
||||
if (!IS_REAL) {
|
||||
console.log(`${p._id} - limit: ${limit} hs - actual duration: ${p.duration.hours} hs`);
|
||||
}
|
||||
if ( p.duration && p.duration.hours >= limit) {
|
||||
await cb(p);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
const doSendEmailDestroyWarning = async function(p) {
|
||||
if ( p.pendingNextAction === 'destroy') {
|
||||
console.log(`Warning email Destroy already sent. Wait for pending action to complete.`);
|
||||
} else {
|
||||
let msg = `Send warning DESTROY email - ${p.user.displayName} (${p.user.upn}) about provision '${p._scenario.title}' (${p._id}) being 'Inactive' more than ${STOPPED_LIMIT_HOURS_WARNING} hours (exactly ${p.duration.complete})`;
|
||||
console.log(msg);
|
||||
if ( IS_REAL ) {
|
||||
await db.provision.update(p._id, {"pendingNextAction": "destroy"});
|
||||
await sendEmail.sendWillDestroyIn24(p, p._scenario);
|
||||
await db.notification.add({ provision: p._id.toString(), type: 'warningDestroy', message: msg });
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const doDestroy = async function(p) {
|
||||
try {
|
||||
let msg = `Provision destroyed - ${p.user.displayName} (${p.user.upn}) about provision '${p._scenario.title}' (${p._id}) being 'Inactive' more than ${STOPPED_LIMIT_HOURS_STOP} hours (exactly ${p.duration.complete})`
|
||||
console.log(msg);
|
||||
if ( IS_REAL ) {
|
||||
await postDestroy(p);
|
||||
await db.notification.add({ provision: p._id.toString(), type: 'destroy', message: msg });
|
||||
}
|
||||
} catch (error) {
|
||||
console.log("doDestroy Error", error);
|
||||
}
|
||||
};
|
||||
|
||||
function check(type) {
|
||||
init(type).then(function(){
|
||||
db.mongoose.connection.close()
|
||||
process.exit(0);
|
||||
|
||||
}).catch(function(e){
|
||||
db.mongoose.connection.close()
|
||||
console.log("Error", e);
|
||||
process.exit(0);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
// --------------------------------
|
||||
switch (myArgs[0]) {
|
||||
case 'warning':
|
||||
check("warning");
|
||||
break;
|
||||
case 'exec':
|
||||
check("exec");
|
||||
break;
|
||||
default:
|
||||
console.log('Sorry, that is not something I know how to do.');
|
||||
process.exit(0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user