Updated; Apple sing-in

This commit is contained in:
2023-09-17 12:00:09 +08:00
parent c72679738c
commit 1f4ca7831f
6 changed files with 229 additions and 42 deletions
+1
View File
@@ -12,6 +12,7 @@ def capacitor_pods
pod 'Capacitor', :path => '../../node_modules/@capacitor/ios'
pod 'CapacitorCordova', :path => '../../node_modules/@capacitor/ios'
pod 'CapacitorCommunityAppleSignIn', :path => '../../node_modules/@capacitor-community/apple-sign-in'
pod 'CapacitorCommunityBarcodeScanner', :path => '../../node_modules/@capacitor-community/barcode-scanner'
pod 'CapacitorApp', :path => '../../node_modules/@capacitor/app'
pod 'CapacitorHaptics', :path => '../../node_modules/@capacitor/haptics'
pod 'CapacitorKeyboard', :path => '../../node_modules/@capacitor/keyboard'
+7 -1
View File
@@ -5,6 +5,8 @@ PODS:
- Capacitor
- CapacitorCommunityAppleSignIn (5.0.0):
- Capacitor
- CapacitorCommunityBarcodeScanner (4.0.1):
- Capacitor
- CapacitorCordova (5.0.5)
- CapacitorHaptics (5.0.4):
- Capacitor
@@ -46,6 +48,7 @@ DEPENDENCIES:
- "Capacitor (from `../../node_modules/@capacitor/ios`)"
- "CapacitorApp (from `../../node_modules/@capacitor/app`)"
- "CapacitorCommunityAppleSignIn (from `../../node_modules/@capacitor-community/apple-sign-in`)"
- "CapacitorCommunityBarcodeScanner (from `../../node_modules/@capacitor-community/barcode-scanner`)"
- "CapacitorCordova (from `../../node_modules/@capacitor/ios`)"
- "CapacitorHaptics (from `../../node_modules/@capacitor/haptics`)"
- "CapacitorKeyboard (from `../../node_modules/@capacitor/keyboard`)"
@@ -65,6 +68,8 @@ EXTERNAL SOURCES:
:path: "../../node_modules/@capacitor/app"
CapacitorCommunityAppleSignIn:
:path: "../../node_modules/@capacitor-community/apple-sign-in"
CapacitorCommunityBarcodeScanner:
:path: "../../node_modules/@capacitor-community/barcode-scanner"
CapacitorCordova:
:path: "../../node_modules/@capacitor/ios"
CapacitorHaptics:
@@ -82,6 +87,7 @@ SPEC CHECKSUMS:
Capacitor: b1248915663add1bd6567e2b67c1c1fa3abcf5e8
CapacitorApp: 7a5dec8b33573707164b293475d5c89ba684364a
CapacitorCommunityAppleSignIn: eafdd59b18b38161fa5cceee7b0e31312b122958
CapacitorCommunityBarcodeScanner: 7feb206489c8555a8ca0c74c57ddf49ead774eb8
CapacitorCordova: f8c06b897c74ee8f7701fe10e6443b40822bc83a
CapacitorHaptics: e36653b37326d71bb35ae42b944124037dbc3d97
CapacitorKeyboard: d1b25fde6f19744ad09c890862aefc6e2a7ded3d
@@ -90,6 +96,6 @@ SPEC CHECKSUMS:
CordovaPluginsStatic: c1b87170d7e6c70c473250768081e07414af3879
OneSignalXCFramework: 0225dc78b9c611be84733e5adc9b68638632c1e8
PODFILE CHECKSUM: 859fc2245f7c2c82dfa6964844c8ce805830aae5
PODFILE CHECKSUM: b015864ddbe3c1ce5a660117a38ed722ba66c918
COCOAPODS: 1.12.1
+129 -26
View File
@@ -15,6 +15,7 @@
"@angular/platform-browser-dynamic": "^14.0.0",
"@angular/router": "^14.0.0",
"@capacitor-community/apple-sign-in": "^5.0.0",
"@capacitor-community/barcode-scanner": "^4.0.1",
"@capacitor/android": "5.0.5",
"@capacitor/app": "^5.0.0",
"@capacitor/core": "^5.0.0",
@@ -25,9 +26,10 @@
"@capacitor/status-bar": "^5.0.0",
"@ionic/angular": "^6.1.9",
"angularx-qrcode": "^14.0.0",
"bn-ng-idle": "^2.0.5",
"jwt-decode": "^3.1.2",
"onesignal-cordova-plugin": "^5.0.0-beta-02",
"rxjs": "~6.6.0",
"sha.js": "^2.4.11",
"tslib": "^2.2.0",
"zone.js": "~0.11.4"
},
@@ -2320,6 +2322,18 @@
"@capacitor/core": "^5.0.0"
}
},
"node_modules/@capacitor-community/barcode-scanner": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@capacitor-community/barcode-scanner/-/barcode-scanner-4.0.1.tgz",
"integrity": "sha512-acuhDU2mqskSeCIQMc5TGNnDszXXs4IqEES+3C2JDiq+MkJMTr+B2Dhq4k55hlkRFMOumMhlnbr2R9G6qyFPhw==",
"dependencies": {
"@zxing/browser": "^0.1.3",
"@zxing/library": "^0.20.0"
},
"peerDependencies": {
"@capacitor/core": "^5.0.0"
}
},
"node_modules/@capacitor/android": {
"version": "5.0.5",
"resolved": "https://registry.npmjs.org/@capacitor/android/-/android-5.0.5.tgz",
@@ -4995,6 +5009,37 @@
"integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==",
"dev": true
},
"node_modules/@zxing/browser": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/@zxing/browser/-/browser-0.1.4.tgz",
"integrity": "sha512-WYjaav7St4sj/u/Km2llE4NU2Pq3JFIWnczr0tmyCC1KUlp08rV3qpu7iiEB4kOx/CgcCzrSebNnSmFt5B3IFg==",
"optionalDependencies": {
"@zxing/text-encoding": "^0.9.0"
},
"peerDependencies": {
"@zxing/library": "^0.20.0"
}
},
"node_modules/@zxing/library": {
"version": "0.20.0",
"resolved": "https://registry.npmjs.org/@zxing/library/-/library-0.20.0.tgz",
"integrity": "sha512-6Ev6rcqVjMakZFIDvbUf0dtpPGeZMTfyxYg4HkVWioWeN7cRcnUWT3bU6sdohc82O1nPXcjq6WiGfXX2Pnit6A==",
"dependencies": {
"ts-custom-error": "^3.2.1"
},
"engines": {
"node": ">= 10.4.0"
},
"optionalDependencies": {
"@zxing/text-encoding": "~0.9.0"
}
},
"node_modules/@zxing/text-encoding": {
"version": "0.9.0",
"resolved": "https://registry.npmjs.org/@zxing/text-encoding/-/text-encoding-0.9.0.tgz",
"integrity": "sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==",
"optional": true
},
"node_modules/abab": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
@@ -5700,6 +5745,18 @@
"node": ">=6.9.x"
}
},
"node_modules/bn-ng-idle": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/bn-ng-idle/-/bn-ng-idle-2.0.5.tgz",
"integrity": "sha512-AmnatWSaKlBRWUdJoVrGeplmdtVfVTQfl6aiEc0j9+ng4EUnzIfTUA1AwV3Y17iI/JquZ1QR0vVml6ugv+lo7A==",
"dependencies": {
"tslib": "^2.3.0"
},
"peerDependencies": {
"@angular/common": ">=10.0.0",
"@angular/core": ">=10.0.0"
}
},
"node_modules/body-parser": {
"version": "1.20.0",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz",
@@ -10765,7 +10822,8 @@
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"dev": true
},
"node_modules/ini": {
"version": "3.0.0",
@@ -12053,6 +12111,11 @@
"safe-buffer": "~5.1.0"
}
},
"node_modules/jwt-decode": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-3.1.2.tgz",
"integrity": "sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A=="
},
"node_modules/karma": {
"version": "6.3.20",
"resolved": "https://registry.npmjs.org/karma/-/karma-6.3.20.tgz",
@@ -16775,7 +16838,8 @@
"node_modules/safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true
},
"node_modules/safer-buffer": {
"version": "2.1.2",
@@ -17247,18 +17311,6 @@
"integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
"dev": true
},
"node_modules/sha.js": {
"version": "2.4.11",
"resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
"dependencies": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
},
"bin": {
"sha.js": "bin.js"
}
},
"node_modules/shallow-clone": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
@@ -18571,6 +18623,14 @@
"node": ">=8"
}
},
"node_modules/ts-custom-error": {
"version": "3.3.1",
"resolved": "https://registry.npmjs.org/ts-custom-error/-/ts-custom-error-3.3.1.tgz",
"integrity": "sha512-5OX1tzOjxWEgsr/YEUWSuPrQ00deKLh6D7OTWcvNHm12/7QPyRh8SYpyWvA4IZv8H/+GQWQEh/kwo95Q9OVW1A==",
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/ts-node": {
"version": "8.3.0",
"resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.3.0.tgz",
@@ -21362,6 +21422,15 @@
"scriptjs": "^2.5.9"
}
},
"@capacitor-community/barcode-scanner": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@capacitor-community/barcode-scanner/-/barcode-scanner-4.0.1.tgz",
"integrity": "sha512-acuhDU2mqskSeCIQMc5TGNnDszXXs4IqEES+3C2JDiq+MkJMTr+B2Dhq4k55hlkRFMOumMhlnbr2R9G6qyFPhw==",
"requires": {
"@zxing/browser": "^0.1.3",
"@zxing/library": "^0.20.0"
}
},
"@capacitor/android": {
"version": "5.0.5",
"resolved": "https://registry.npmjs.org/@capacitor/android/-/android-5.0.5.tgz",
@@ -23393,6 +23462,29 @@
"integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==",
"dev": true
},
"@zxing/browser": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/@zxing/browser/-/browser-0.1.4.tgz",
"integrity": "sha512-WYjaav7St4sj/u/Km2llE4NU2Pq3JFIWnczr0tmyCC1KUlp08rV3qpu7iiEB4kOx/CgcCzrSebNnSmFt5B3IFg==",
"requires": {
"@zxing/text-encoding": "^0.9.0"
}
},
"@zxing/library": {
"version": "0.20.0",
"resolved": "https://registry.npmjs.org/@zxing/library/-/library-0.20.0.tgz",
"integrity": "sha512-6Ev6rcqVjMakZFIDvbUf0dtpPGeZMTfyxYg4HkVWioWeN7cRcnUWT3bU6sdohc82O1nPXcjq6WiGfXX2Pnit6A==",
"requires": {
"@zxing/text-encoding": "~0.9.0",
"ts-custom-error": "^3.2.1"
}
},
"@zxing/text-encoding": {
"version": "0.9.0",
"resolved": "https://registry.npmjs.org/@zxing/text-encoding/-/text-encoding-0.9.0.tgz",
"integrity": "sha512-U/4aVJ2mxI0aDNI8Uq0wEhMgY+u4CNtEb0om3+y3+niDAsoTCOB33UF0sxpzqzdqXLqmvc+vZyAt4O8pPdfkwA==",
"optional": true
},
"abab": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
@@ -23914,6 +24006,14 @@
"minimist": "^1.2.0"
}
},
"bn-ng-idle": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/bn-ng-idle/-/bn-ng-idle-2.0.5.tgz",
"integrity": "sha512-AmnatWSaKlBRWUdJoVrGeplmdtVfVTQfl6aiEc0j9+ng4EUnzIfTUA1AwV3Y17iI/JquZ1QR0vVml6ugv+lo7A==",
"requires": {
"tslib": "^2.3.0"
}
},
"body-parser": {
"version": "1.20.0",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz",
@@ -27714,7 +27814,8 @@
"inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"dev": true
},
"ini": {
"version": "3.0.0",
@@ -28679,6 +28780,11 @@
}
}
},
"jwt-decode": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-3.1.2.tgz",
"integrity": "sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A=="
},
"karma": {
"version": "6.3.20",
"resolved": "https://registry.npmjs.org/karma/-/karma-6.3.20.tgz",
@@ -32153,7 +32259,8 @@
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -32529,15 +32636,6 @@
"integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
"dev": true
},
"sha.js": {
"version": "2.4.11",
"resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
"requires": {
"inherits": "^2.0.1",
"safe-buffer": "^5.0.1"
}
},
"shallow-clone": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
@@ -33522,6 +33620,11 @@
"integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==",
"dev": true
},
"ts-custom-error": {
"version": "3.3.1",
"resolved": "https://registry.npmjs.org/ts-custom-error/-/ts-custom-error-3.3.1.tgz",
"integrity": "sha512-5OX1tzOjxWEgsr/YEUWSuPrQ00deKLh6D7OTWcvNHm12/7QPyRh8SYpyWvA4IZv8H/+GQWQEh/kwo95Q9OVW1A=="
},
"ts-node": {
"version": "8.3.0",
"resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.3.0.tgz",
+1 -1
View File
@@ -32,9 +32,9 @@
"@ionic/angular": "^6.1.9",
"angularx-qrcode": "^14.0.0",
"bn-ng-idle": "^2.0.5",
"jwt-decode": "^3.1.2",
"onesignal-cordova-plugin": "^5.0.0-beta-02",
"rxjs": "~6.6.0",
"sha.js": "^2.4.11",
"tslib": "^2.2.0",
"zone.js": "~0.11.4"
},
+83 -10
View File
@@ -7,7 +7,7 @@ import { environment} from "../../../environments/environment";
import { AlertController } from '@ionic/angular';
import { Preferences } from '@capacitor/preferences';
import { Capacitor } from '@capacitor/core';
import { shajs } from 'sha.js';
import jwt_decode from "jwt-decode";
import {
SignInWithApple,
SignInWithAppleResponse,
@@ -108,6 +108,7 @@ getBlogData(){
moveToStartScan(){
this.router.navigate(['startscan']);
}
onLoginApple() {
// -> 'web', 'ios' or 'android'
@@ -143,31 +144,103 @@ getBlogData(){
nonce: nonce,
};
// https://developer.okta.com/blog/2019/06/04/what-the-heck-is-sign-in-with-apple
SignInWithApple.authorize(options)
.then((result: SignInWithAppleResponse) => {
// Handle user information
console.log("response", result.response);
/*
{
"identityToken":"eyJraWQiOiJZdXlYb1kiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJodHRwczovL2FwcGxlaWQuYXBwbGUuY29tIiwiYXVkIjoiY29tLndyZW5jaGJvYXJkLnVzZXJzIiwiZXhwIjoxNjk0MzkzMzE3LCJpYXQiOjE2OTQzMDY5MTcsInN1YiI6IjAwMTgxMC4yMGU3NTAyOGQ0OWM0MmQ4YjQzMGI0MmQxZDc0ODdmMy4xMTU3Iiwibm9uY2UiOiIxLnB1ZmJwZGFhMzYiLCJjX2hhc2giOiJQRE1PNXNGa2pjOEtPclNNZDRjUGZnIiwiZW1haWwiOiJhY2lkdW1pcmFlQGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjoidHJ1ZSIsImF1dGhfdGltZSI6MTY5NDMwNjkxNywibm9uY2Vfc3VwcG9ydGVkIjp0cnVlLCJyZWFsX3VzZXJfc3RhdHVzIjoyfQ.fEnzaVgB2JaOZbQm2fkpC_J8if5tIIfAphQptZ9Bxp2wrjnDsGvN1b0gvB3KBswv7d6n4A1U46GpaGpShJDhN-e2lKw_lzgFJlRi9-1B-Fudp_gzK61r6W8JzzbPiD0GZgfp_ITPDdxdC7hzixVx4TW8djrV4TIXYjus0b5XnzqRVz2t3ed4Et55s_SZ53SVhM9qnDruVB-KgeGrvDVUks71iM1etuP2vO3xsSFoiKfMEcankX3JUJaCNRSdvVVeUBqH9TfhvmHrCopjnlJ8N2B8o8RDhbnt99OAJtE_dw_Qt5YAAg2ITYQVLBb2dniJ5FBsOBBwbiA0-W1hPJ3RpQ","authorizationCode":"ce0061e5858a34e468a373c3ea7344cdb.0.rryrq.rK6JjdqlVVi6S9coEcTgVQ",
"email":null,
"givenName":null,
"familyName":null,
"user":"001810.20e75028d49c42d8b430b42d1d7487f3.1157"
}
*/
// result.response.user
// result.response.identityToken
// result.response.email: null
// result.response.givenName: null
// result.response.familyName: null
// Validate token with server and create new session
this.showAlert("Error", "Token validation handling is not implemented!");
var decoded = jwt_decode(result.response.identityToken);
// this.sendOauthConnectRequest(OauthProvider.apple, result.response.identityToken).subscribe();
// https://developer.apple.com/documentation/sign_in_with_apple/sign_in_with_apple_rest_api/authenticating_users_with_sign_in_with_apple
console.log(decoded);
/*
{
"iss": "https://appleid.apple.com",
"aud": "com.wrenchboard.users",
"exp": 1694393317,
"iat": 1694306917,
"sub": "001810.20e75028d49c42d8b430b42d1d7487f3.1157",
"nonce": "1.pufbpdaa36",
"c_hash": "PDMO5sFkjc8KOrSMd4cPfg",
"email": "acidumirae@gmail.com",
"email_verified": "true",
"auth_time": 1694306917,
"nonce_supported": true,
"real_user_status": 2
}
*/
// real_user_status => The possible values are: 0 (or Unsupported), 1 (or Unknown), 2 (or LikelyReal).
const oauth2Data = {
"auth_type": "APPLE",
"identityToken": result.response.identityToken,
"email":result.response.email,
"givenName":result.response.givenName,
"familyName":result.response.familyName,
"user":result.response.user,
"authorizationCode":result.response.authorizationCode,
"sub": decoded["sub"],
"jwt_email": decoded["email"],
"email_verified": decoded["email_verified"],
"real_user_status": decoded["real_user_status"]
};
//console.log(oauth2Data);
this.username = decoded["email"] ?? result.response.email;
// Validate token with server and create new session
this.wrenchService.authStart(oauth2Data).subscribe(
loginResult => {
console.log(loginResult);
this.loginResult = loginResult;
console.log("INTERNAL RETURN->" + this.loginResult.internal_return);
/*
localStorage.setItem("member_id", `${loginResult.data.member_id}`);
localStorage.setItem("uid", `${loginResult.data.uid}`);
localStorage.setItem("session_token", `${loginResult.data.session}`);
dispatch(updateUserDetails({...loginResult.data}));
*/
if (loginResult != null && loginResult.internal_return == 100 && this.sessionDataProviderService.ConstructGlobalSessionData(this.loginResult) == true) {
const setName = async () => {
await Preferences.set({
key: 'username',
value: this.username,
});
};
this.getBlogData();
this.router.navigate(['tabs/tab1']);
}
else{
this.showAlert("Error","Invalid username/password");
}
}
);
})
.catch(error => {
// Handle error
.catch((error) => {
this.showAlert("Error", error);
console.log(error);
});
console.log("onLoginApple() out");
}
/*
{"identityToken":"eyJraWQiOiJZdXlYb1kiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJodHRwczovL2FwcGxlaWQuYXBwbGUuY29tIiwiYXVkIjoiY29tLndyZW5jaGJvYXJkLnVzZXJzIiwiZXhwIjoxNjk0MzkzMzE3LCJpYXQiOjE2OTQzMDY5MTcsInN1YiI6IjAwMTgxMC4yMGU3NTAyOGQ0OWM0MmQ4YjQzMGI0MmQxZDc0ODdmMy4xMTU3Iiwibm9uY2UiOiIxLnB1ZmJwZGFhMzYiLCJjX2hhc2giOiJQRE1PNXNGa2pjOEtPclNNZDRjUGZnIiwiZW1haWwiOiJhY2lkdW1pcmFlQGdtYWlsLmNvbSIsImVtYWlsX3ZlcmlmaWVkIjoidHJ1ZSIsImF1dGhfdGltZSI6MTY5NDMwNjkxNywibm9uY2Vfc3VwcG9ydGVkIjp0cnVlLCJyZWFsX3VzZXJfc3RhdHVzIjoyfQ.fEnzaVgB2JaOZbQm2fkpC_J8if5tIIfAphQptZ9Bxp2wrjnDsGvN1b0gvB3KBswv7d6n4A1U46GpaGpShJDhN-e2lKw_lzgFJlRi9-1B-Fudp_gzK61r6W8JzzbPiD0GZgfp_ITPDdxdC7hzixVx4TW8djrV4TIXYjus0b5XnzqRVz2t3ed4Et55s_SZ53SVhM9qnDruVB-KgeGrvDVUks71iM1etuP2vO3xsSFoiKfMEcankX3JUJaCNRSdvVVeUBqH9TfhvmHrCopjnlJ8N2B8o8RDhbnt99OAJtE_dw_Qt5YAAg2ITYQVLBb2dniJ5FBsOBBwbiA0-W1hPJ3RpQ","authorizationCode":"ce0061e5858a34e468a373c3ea7344cdb.0.rryrq.rK6JjdqlVVi6S9coEcTgVQ","email":null,"givenName":null,"familyName":null,
"user":"001810.20e75028d49c42d8b430b42d1d7487f3.1157"}
*/
appleTokenReceived(event: any) {
console.log(event);
this.appleSignInAbortController.abort();
+8 -4
View File
@@ -89,11 +89,15 @@ export class WrenchService {
loginUser(loginData) {
return this.getPostData('userlogin',loginData);
}
//
qrLoginUser(loginData) {
return this.getPostData('qrlogin',loginData);
}
authStart(authData) {
return this.getPostData("authstart", authData);
}
qrLoginUser(loginData) {
return this.getPostData('qrlogin',loginData);
}
getBlogData(blogReq){
//const blogReq=[];
return this.getPostData('blogdata',blogReq);