Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 1 addition & 18 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,18 +1 @@
*.js
*.js.map
*.log
!scripts/*.js
demo/app/*.js
!demo/karma.conf.js
!demo/app/tests/*.js
demo/*.d.ts
!demo/references.d.ts
demo/lib
demo/platforms
demo/node_modules
demo-angular/app/*.js
demo-angular/*.d.ts
demo-angular/platforms
demo-angular/node_modules
src/node_modules
/.vscode/
/.vscode/
11 changes: 5 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ NativeScript : Facebook SDK ![apple](https://cdn3.iconfinder.com/data/icons/pico
- [Login](#login)
- [Facebook Login Button](#facebook-login-button)
- [Custom Login Button](#custom-login-button)
- [NativeScript + Angular](#nativescript--angular)
- [NativeScript Angular](#nativescript--angular)
- [Initialization](#initialization-1)
- [Login](#login-1)
- [Facebook Login Button](#facebook-login-button-1)
Expand Down Expand Up @@ -144,13 +144,13 @@ export class HelloWorldModel extends Observable {
}
```

## NativeScript + Angular
## NativeScript Angular
### Initialization
Call init of nativescript-facebook module on application launch.

main.ts
app.module.ts
```TypeScript
import { platformNativeScriptDynamic } from "nativescript-angular/platform";
...
import * as application from 'application';
var nsFacebook = require('nativescript-facebook');

Expand All @@ -159,8 +159,7 @@ import { AppModule } from "./app.module";
application.on(application.launchEvent, function (args) {
nsFacebook.init("{facebook_app_id}");
});

platformNativeScriptDynamic().bootstrapModule(AppModule);
...
```

### Login
Expand Down
4 changes: 4 additions & 0 deletions demo-angular/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
platforms
node_modules
hooks
app/**/*.js
4 changes: 2 additions & 2 deletions demo-angular/app/app.component.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<StackLayout>
<FacebookLoginButton [onLogin]="onLogin"></FacebookLoginButton>
<FacebookLoginButton [login]="onLogin"></FacebookLoginButton>
<Button text="Custom Login Button" (tap)="testAction()"></Button>
</StackLayout>
</StackLayout>
23 changes: 12 additions & 11 deletions demo-angular/app/app.module.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,22 @@ import { NgModule, NO_ERRORS_SCHEMA } from "@angular/core";
import { NativeScriptModule } from "nativescript-angular/nativescript.module";
import { AppComponent } from "./app.component";

import { NativescriptFacebookModule } from "nativescript-facebook/angular";
import { NativeScriptFacebookModule } from "nativescript-facebook/angular";

import * as application from 'application';
var nsFacebook = require('nativescript-facebook');

application.on(application.launchEvent, function (args) {
nsFacebook.init("1771472059772879");
});

@NgModule({
bootstrap: [
AppComponent
],
bootstrap: [ AppComponent ],
imports: [
NativeScriptModule,
NativescriptFacebookModule
],
declarations: [
AppComponent
NativeScriptFacebookModule
],
schemas: [
NO_ERRORS_SCHEMA
]
declarations: [ AppComponent ],
schemas: [ NO_ERRORS_SCHEMA ]
})
export class AppModule { }
2 changes: 0 additions & 2 deletions demo-angular/app/main.aot.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
// this import should be first in order to load some required settings (like globals and reflect-metadata)
import { platformNativeScript } from "nativescript-angular/platform-static";

import { AppModuleNgFactory } from "./app.module.ngfactory";

platformNativeScript().bootstrapModuleFactory(AppModuleNgFactory);
8 changes: 0 additions & 8 deletions demo-angular/app/main.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,4 @@
// this import should be first in order to load some required settings (like globals and reflect-metadata)
import { platformNativeScriptDynamic } from "nativescript-angular/platform";
import * as application from 'application';
var nsFacebook = require('nativescript-facebook');

import { AppModule } from "./app.module";

application.on(application.launchEvent, function (args) {
nsFacebook.init("1771472059772879");
});

platformNativeScriptDynamic().bootstrapModule(AppModule);
25 changes: 25 additions & 0 deletions demo-angular/app/vendor-platform.android.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// Resolve JavaScript classes that extend a Java class, and need to resolve
// their JavaScript module from a bundled script. For example:
// NativeScriptApplication, NativeScriptActivity, etc.
//
// This module gets bundled together with the rest of the app code and the
// `require` calls get resolved to the correct bundling import call.
//
// At runtime the module gets loaded *before* the rest of the app code, so code
// placed here needs to be careful about its dependencies.

require("application");
require("ui/frame");
require("ui/frame/activity");

if (global.TNS_WEBPACK) {
global.__requireOverride = function (name, dir) {
if (name === "./tns_modules/application/application.js") {
return require("application");
} else if (name === "./tns_modules/ui/frame/frame.js") {
return require("ui/frame");
} else if (name === "./tns_modules/ui/frame/activity.js") {
return require("ui/frame/activity");
}
};
}
Empty file.
13 changes: 13 additions & 0 deletions demo-angular/app/vendor.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
require("./vendor-platform");

require("reflect-metadata");
require("@angular/platform-browser");
require("@angular/core");
require("@angular/common");
require("@angular/forms");
require("@angular/http");
require("@angular/router");

require("nativescript-angular/platform-static");
require("nativescript-angular/forms");
require("nativescript-angular/router");
46 changes: 33 additions & 13 deletions demo-angular/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,34 +9,54 @@
"version": "3.0.0-rc.1"
},
"tns-ios": {
"version": "3.0.0-rc.1-2017-3-28-2"
"version": "3.0.0-rc.1"
}
},
"dependencies": {
"@angular/common": "4.0.0",
"@angular/compiler": "4.0.0",
"@angular/core": "4.0.0",
"@angular/forms": "4.0.0",
"@angular/http": "4.0.0",
"@angular/platform-browser": "4.0.0",
"@angular/platform-browser-dynamic": "4.0.0",
"@angular/router": "4.0.0",
"nativescript-facebook": "file:///../src",
"@angular/common": "~4.0.0",
"@angular/compiler": "~4.0.0",
"@angular/core": "~4.0.0",
"@angular/forms": "~4.0.0",
"@angular/http": "~4.0.0",
"@angular/platform-browser": "~4.0.0",
"@angular/platform-browser-dynamic": "~4.0.0",
"@angular/router": "~4.0.0",
"nativescript-angular": "^3.0.0 || ^2.0.0-rc.1",
"nativescript-facebook": "../src",
"nativescript-theme-core": "^1.0.2",
"nativescript-unit-test-runner": "^0.3.4",
"tns-core-modules": "rc"
"rxjs": "~5.3.0",
"tns-core-modules": "^3.0.0 || ^3.0.0-rc.1",
"zone.js": "^0.8.4"
},
"devDependencies": {
"@angular/compiler-cli": "~4.0.0",
"@ngtools/webpack": "1.3.0",
"babel-traverse": "6.12.0",
"babel-types": "6.11.1",
"babylon": "6.8.4",
"copy-webpack-plugin": "~4.0.1",
"extract-text-webpack-plugin": "~2.1.0",
"filewalker": "0.1.2",
"jasmine-core": "^2.5.2",
"karma": "^1.3.0",
"karma-jasmine": "^1.0.2",
"karma-nativescript-launcher": "^0.4.0",
"lazy": "1.0.11",
"nativescript-dev-typescript": "0.4",
"typescript": "2.2.2"
"nativescript-css-loader": "~0.26.0",
"nativescript-dev-typescript": "^0.4.0",
"nativescript-dev-webpack": "^0.4.0",
"raw-loader": "~0.5.1",
"resolve-url-loader": "~2.0.2",
"typescript": "~2.2.2",
"webpack": "~2.3.3",
"webpack-sources": "~0.2.3"
},
"scripts": {
"ns-bundle": "ns-bundle",
"start-android-bundle": "npm run ns-bundle --android --start-app",
"start-ios-bundle": "npm run ns-bundle --ios --start-app",
"build-android-bundle": "npm run ns-bundle --android --build-app",
"build-ios-bundle": "npm run ns-bundle --ios --build-app"
}
}
39 changes: 39 additions & 0 deletions demo-angular/tsconfig.aot.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"extends": "./tsconfig",
"compilerOptions": {
"baseUrl": ".",
"paths": {
"ui/*": ["node_modules/tns-core-modules/ui/*"],
"platform": ["node_modules/tns-core-modules/platform"],
"image-source": ["node_modules/tns-core-modules/image-source"],
"xml": ["node_modules/tns-core-modules/xml"],
"xhr": ["node_modules/tns-core-modules/xhr"],
"text": ["node_modules/tns-core-modules/text"],
"data": ["node_modules/tns-core-modules/data"],
"fetch": ["node_modules/tns-core-modules/fetch"],
"trace": ["node_modules/tns-core-modules/trace"],
"fps-meter": ["node_modules/tns-core-modules/fps-meter"],
"color": ["node_modules/tns-core-modules/color"],
"application-settings": ["node_modules/tns-core-modules/application-settings"],
"http": ["node_modules/tns-core-modules/http"],
"camera": ["node_modules/tns-core-modules/camera"],
"console": ["node_modules/tns-core-modules/console"],
"timer": ["node_modules/tns-core-modules/timer"],
"utils": ["node_modules/tns-core-modules/utils"],
"location": ["node_modules/tns-core-modules/location"],
"file-system": ["node_modules/tns-core-modules/file-system"],
"application": ["node_modules/tns-core-modules/application"],
"image-asset": ["node_modules/tns-core-modules/image-asset"],
"connectivity": ["node_modules/tns-core-modules/connectivity"],
"globals": ["node_modules/tns-core-modules/globals"]
}
},
"exclude": [
"node_modules",
"platforms"
],
"angularCompilerOptions": {
"skipMetadataEmit": true,
"genDir": "./"
}
}
3 changes: 2 additions & 1 deletion demo-angular/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@
"experimentalDecorators": true,
"lib": [
"es6",
"dom"
"dom",
"es2015.iterable"
],
"baseUrl": ".",
"paths": {
Expand Down
2 changes: 2 additions & 0 deletions demo-angular/webpack.android.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
var makeConfig = require("./webpack.common");
module.exports = makeConfig("android");
Loading