diff --git a/ios/App/App.xcodeproj/project.pbxproj b/ios/App/App.xcodeproj/project.pbxproj
index 7893113..246dee4 100644
--- a/ios/App/App.xcodeproj/project.pbxproj
+++ b/ios/App/App.xcodeproj/project.pbxproj
@@ -353,6 +353,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
+ DEVELOPMENT_TEAM = 4RW9XSSSMV;
INFOPLIST_FILE = App/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
@@ -373,6 +374,7 @@
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
+ DEVELOPMENT_TEAM = 4RW9XSSSMV;
INFOPLIST_FILE = App/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
diff --git a/ios/App/App/Info.plist b/ios/App/App/Info.plist
index e993906..0b50182 100644
--- a/ios/App/App/Info.plist
+++ b/ios/App/App/Info.plist
@@ -29,6 +29,26 @@
+ NSExtensionAttributes
+
+ NSExtensionActivationRule
+ SUBQUERY (
+ extensionItems,
+ $extensionItem,
+ SUBQUERY (
+ $extensionItem.attachments,
+ $attachment,
+ ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.image" ||
+ ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.spreadsheet" ||
+ ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.presentation" ||
+ ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "org.openxmlformats.wordprocessingml.document" ||
+ ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "com.adobe.pdf" ||
+ ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "public.png" ||
+ ANY $attachment.registeredTypeIdentifiers UTI-CONFORMS-TO "com.compuserve.gif"
+ ).@count == $extensionItem.attachments.@count
+ ).@count == 1
+
+
CFBundleVersion
$(CURRENT_PROJECT_VERSION)
LSRequiresIPhoneOS
diff --git a/package-lock.json b/package-lock.json
index 24649d5..f994520 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -17,6 +17,7 @@
"@angular/platform-browser-dynamic": "^15.0.0",
"@angular/router": "^15.0.0",
"@awesome-cordova-plugins/file-opener": "^6.3.0",
+ "@awesome-cordova-plugins/social-sharing": "^6.3.0",
"@capacitor/android": "4.6.3",
"@capacitor/app": "^4.1.1",
"@capacitor/core": "4.6.3",
@@ -31,8 +32,10 @@
"@fortawesome/free-solid-svg-icons": "^6.3.0",
"@ionic/angular": "^6.5.4",
"angular-oauth2-oidc": "^15.0.1",
+ "capacitor-share-extension": "^2.0.0",
"cordova-plugin-file-opener2": "^4.0.0",
"cordova-plugin-inappbrowser": "^5.0.0",
+ "cordova-plugin-x-socialsharing": "^6.0.4",
"ionicons": "^6.1.3",
"keycloak-angular": "^13.0.0",
"keycloak-js": "^20.0.5",
@@ -838,6 +841,18 @@
"rxjs": "^5.5.0 || ^6.5.0 || ^7.3.0"
}
},
+ "node_modules/@awesome-cordova-plugins/social-sharing": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/@awesome-cordova-plugins/social-sharing/-/social-sharing-6.3.0.tgz",
+ "integrity": "sha512-gvj8gAU3tIwQnMHiZfnwfQ27MZRAlspT3x1eTI4y6id5AAq2UMnWAxoFAPZvyCHOhKYDNckbu9Axh5ile6Jy7g==",
+ "dependencies": {
+ "@types/cordova": "latest"
+ },
+ "peerDependencies": {
+ "@awesome-cordova-plugins/core": "^6.0.1",
+ "rxjs": "^5.5.0 || ^6.5.0 || ^7.3.0"
+ }
+ },
"node_modules/@babel/code-frame": {
"version": "7.18.6",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
@@ -6141,6 +6156,11 @@
}
]
},
+ "node_modules/capacitor-share-extension": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/capacitor-share-extension/-/capacitor-share-extension-2.0.0.tgz",
+ "integrity": "sha512-sOxfRKe9Gu7hq1zqRa8F6tmaSUnG5Efi7XG0MshbZ4Y6zCy9coiOd4LQObwHa0ym1ASZ21quUTOEylxnzueTiA=="
+ },
"node_modules/chalk": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
@@ -6636,6 +6656,17 @@
}
}
},
+ "node_modules/cordova-plugin-x-socialsharing": {
+ "version": "6.0.4",
+ "resolved": "https://registry.npmjs.org/cordova-plugin-x-socialsharing/-/cordova-plugin-x-socialsharing-6.0.4.tgz",
+ "integrity": "sha512-+ak6rN9i2xf/PARA/T3Hss09s0QhpFrOWvrYowy+PkCjGWx/ZVt9RkW+7yKemfyTXSgTp0YkyAAR4r6hPAfBGQ==",
+ "engines": [
+ {
+ "name": "cordova",
+ "version": ">=3.0.0"
+ }
+ ]
+ },
"node_modules/core-js-compat": {
"version": "3.28.0",
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.28.0.tgz",
diff --git a/package.json b/package.json
index e60beb4..ae20cd0 100644
--- a/package.json
+++ b/package.json
@@ -22,6 +22,7 @@
"@angular/platform-browser-dynamic": "^15.0.0",
"@angular/router": "^15.0.0",
"@awesome-cordova-plugins/file-opener": "^6.3.0",
+ "@awesome-cordova-plugins/social-sharing": "^6.3.0",
"@capacitor/android": "4.6.3",
"@capacitor/app": "^4.1.1",
"@capacitor/core": "4.6.3",
@@ -36,8 +37,10 @@
"@fortawesome/free-solid-svg-icons": "^6.3.0",
"@ionic/angular": "^6.5.4",
"angular-oauth2-oidc": "^15.0.1",
+ "capacitor-share-extension": "^2.0.0",
"cordova-plugin-file-opener2": "^4.0.0",
"cordova-plugin-inappbrowser": "^5.0.0",
+ "cordova-plugin-x-socialsharing": "^6.0.4",
"ionicons": "^6.1.3",
"keycloak-angular": "^13.0.0",
"keycloak-js": "^20.0.5",
diff --git a/src/app/d4sauth.service.ts b/src/app/d4sauth.service.ts
index 64501f4..fb1709a 100644
--- a/src/app/d4sauth.service.ts
+++ b/src/app/d4sauth.service.ts
@@ -9,7 +9,7 @@ import { KeycloakEventType, KeycloakService } from 'keycloak-angular';
})
export class D4sAuthService {
- redirectUrl: string = 'http://localhost:8100/'; //'d4sworkspace://org.gcube.workspace/'; //
+ redirectUrl: string = 'd4sworkspace://org.gcube.workspace/'; //'http://localhost:8100/'; //
umaUrl: string = " https://accounts.dev.d4science.org/auth/realms/d4science/protocol/openid-connect/token";
@@ -25,7 +25,12 @@ export class D4sAuthService {
async login() {
if (!this.isAuthorized()) {
await this.keycloak.login({
- redirectUri: this.redirectUrl
+ redirectUri: this.redirectUrl,
+ cordovaOptions: {
+ hidenavigationbuttons: "yes",
+ toolbar:"no",
+ footer: "no"
+ }
});
}
diff --git a/src/app/login/login.page.ts b/src/app/login/login.page.ts
index 20d6452..d247288 100644
--- a/src/app/login/login.page.ts
+++ b/src/app/login/login.page.ts
@@ -2,6 +2,9 @@ import { AfterViewInit, Component, } from '@angular/core';
import { Router } from '@angular/router';
import { D4sAuthService } from '../d4sauth.service';
+
+declare var cordova:any;
+
@Component({
selector: 'app-login',
templateUrl: './login.page.html',
@@ -11,7 +14,6 @@ export class LoginPage implements AfterViewInit {
constructor(private auth: D4sAuthService, private router : Router) { }
-
ngAfterViewInit(): void{
this.auth.login().then(ret => {
console.log("logged in - trying to navigates to tabs "+ret);