Ionic 3 в комплекте JS для TS и HTML - PullRequest
0 голосов
/ 13 сентября 2018

Зная, что у меня есть конфигурация webpack и файлы * .js.map. Можно ли перейти от связанного JS-кода Ionic 3 (полученного в результате декомпиляции APK), который выглядит следующим образом:

// FILE : 6.js

webpackJsonp([6],{

/***/ 287:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "LoginPageModule", function() { return LoginPageModule; });
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_ionic_angular__ = __webpack_require__(100);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__login__ = __webpack_require__(307);
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 LoginPageModule = /** @class */ (function () {
    function LoginPageModule() {
    }
    LoginPageModule = __decorate([
        Object(__WEBPACK_IMPORTED_MODULE_0__angular_core__["NgModule"])({
            declarations: [
                __WEBPACK_IMPORTED_MODULE_2__login__["a" /* LoginPage */],
            ],
            imports: [
                __WEBPACK_IMPORTED_MODULE_1_ionic_angular__["g" /* IonicPageModule */].forChild(__WEBPACK_IMPORTED_MODULE_2__login__["a" /* LoginPage */]),
            ],
        })
    ], LoginPageModule);
    return LoginPageModule;
}());

//# sourceMappingURL=login.module.js.map

/***/ }),

/***/ 307:
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return LoginPage; });
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__angular_core__ = __webpack_require__(0);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_ionic_angular__ = __webpack_require__(100);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__providers_api_api__ = __webpack_require__(102);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__providers_session_session__ = __webpack_require__(101);
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__providers_data_data__ = __webpack_require__(200);
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);
};





/**
 * Generated class for the LoginPage page.
 *
 * See https://ionicframework.com/docs/components/#navigation for more info on
 * Ionic pages and navigation.
 */
var LoginPage = /** @class */ (function () {
    function LoginPage(navCtrl, api, session, data) {
        this.navCtrl = navCtrl;
        this.api = api;
        this.session = session;
        this.data = data;
        this.loading = false;
        this.errorMessage = "";
    }
    LoginPage.prototype.ionViewDidLoad = function () {
        var _this = this;
        this.loading = true;
        this.api.update().then(function () {
            return _this.session.getToken();
        }).then(function (token) {
            if (token !== null)
                _this.autoLogin();
            else
                _this.loading = false;
        });
    };
    LoginPage.prototype.autoLogin = function () {
        var _this = this;
        this.loading = true;
        return this.api.me()
            .then(function (me) {
            _this.email = me.email;
            _this.initData();
        }).catch(function (err) {
            console.dir({
                error: err
            });
            switch (err.name) {
                case "HttpErrorResponse":
                    _this.errorMessage = "Can't connect to the server...";
                default:
                    _this.errorMessage = "Encountered an unknown error";
            }
            _this.loading = false;
        });
    };
    LoginPage.prototype.login = function () {
        var _this = this;
        this.loading = true;
        this.api.login({
            email: this.email,
            password: this.password
        }).then(function (response) {
            console.log(response);
            return _this.session.set(response);
        }).then(function () {
            _this.initData();
        }).catch(function (error) {
            _this.errorMessage = error;
            _this.loading = false;
        });
    };
    LoginPage.prototype.initData = function () {
        var _this = this;
        this.data.getMyEvents().then(function (events) {
            return _this.data.getEventsAttendance();
        }).then(function () {
            return _this.data.getEventsTickets();
        }).then(function () {
            setTimeout(function () {
                _this.goToMyEvents();
            }, 1500);
        }).catch(function (error) {
            _this.errorMessage = error;
            _this.loading = false;
        });
    };
    LoginPage.prototype.goToMyEvents = function () {
        this.navCtrl.setRoot("MyPage");
    };
    LoginPage = __decorate([
        Object(__WEBPACK_IMPORTED_MODULE_0__angular_core__["Component"])({
            selector: 'page-login',template:/*ion-inline-start:"/some/folder/app/src/pages/login/login.html"*/'<ion-content>\n  <ion-grid padding-small style="padding-top: 45px">\n    <ion-row align-items-center>\n      <ion-col text-center>\n        <div id="access-control">MY APP</div>\n      <img id="logo" src="assets/imgs/logo.png" />\n      </ion-col>\n    </ion-row>\n    <ion-row class="fill-row" align-items-center style="display: none">\n      <ion-col text-center style="padding:10px 32px">\n        <button margin-bottom-small ion-button full class="fcbk-button socialBtn">\n          <ion-row align-items-center>\n            <ion-col no-margin margin-right no-padding col-auto><i class="fa fa-facebook-f"></i></ion-col>\n            <ion-col no-margin no-paddingtext-center>Login with Facebook</ion-col>\n          </ion-row>\n        </button>\n        <button ion-button full class="gmail-button socialBtn">\n          <ion-row>\n            <ion-col no-margin margin-right no-padding col-auto><i class="fa fa-google-plus"></i></ion-col>\n            <ion-col no-margin no-paddingtext-center>Login with Google</ion-col>\n          </ion-row>\n        </button>\n      </ion-col>\n    </ion-row>\n    <ion-row>\n      <ion-col padding>\n        <p text-center>{{ errorMessage }}</p>\n      </ion-col>\n    </ion-row>\n    <ion-row class="fill-row" align-items-center>\n      <ion-col padding>\n        <div padding text-center>\n          <ion-item>\n            <ion-label fixed>E-Mail</ion-label>\n            <ion-input [(ngModel)]="email" [disabled]="loading" type="email"></ion-input>\n          </ion-item>\n          <ion-item>\n            <ion-label fixed>Password</ion-label>\n            <ion-input [(ngModel)]="password" [disabled]="loading" type="password"></ion-input>\n          </ion-item>\n          <div style="padding:10px 32px 0px">\n            <ion-spinner *ngIf="loading"></ion-spinner>\n            <button *ngIf="!loading" ion-button full color="orange-color" class="submit-btn" (click)="login()">LOGIN</button>\n          </div>\n          <a style="display: none">Forgot Password</a>\n        </div>\n      </ion-col>\n    </ion-row>\n  </ion-grid>\n</ion-content>\n'/*ion-inline-end:"/some/folder/app/src/pages/login/login.html"*/,
        }),
        __metadata("design:paramtypes", [__WEBPACK_IMPORTED_MODULE_1_ionic_angular__["j" /* NavController */], __WEBPACK_IMPORTED_MODULE_2__providers_api_api__["a" /* ApiProvider */], __WEBPACK_IMPORTED_MODULE_3__providers_session_session__["a" /* SessionProvider */], __WEBPACK_IMPORTED_MODULE_4__providers_data_data__["a" /* DataProvider */]])
    ], LoginPage);
    return LoginPage;
}());

//# sourceMappingURL=login.js.map

/***/ })

});
//# sourceMappingURL=6.js.map

К оригинальному Typescript и HTML или чему-то близкому?

...