Skip to content

Commit f594d2c

Browse files
committed
this is a simple ionic video call with peerJs
1 parent a8e3815 commit f594d2c

40 files changed

+1308
-0
lines changed

.gitignore

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Specifies intentionally untracked files to ignore when using Git
2+
# http://git-scm.com/docs/gitignore
3+
4+
*~
5+
*.sw[mnpcod]
6+
.tmp
7+
*.tmp
8+
*.tmp.*
9+
*.sublime-project
10+
*.sublime-workspace
11+
.DS_Store
12+
Thumbs.db
13+
UserInterfaceState.xcuserstate
14+
$RECYCLE.BIN/
15+
16+
*.log
17+
log.txt
18+
npm-debug.log*
19+
20+
/.idea
21+
/.ionic
22+
/.sass-cache
23+
/.sourcemaps
24+
/.versions
25+
/.vscode
26+
/coverage
27+
/dist
28+
/node_modules
29+
/platforms
30+
/plugins
31+
/www

angular.json

Lines changed: 187 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,187 @@
1+
{
2+
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
3+
"version": 1,
4+
"defaultProject": "app",
5+
"newProjectRoot": "projects",
6+
"projects": {
7+
"app": {
8+
"root": "",
9+
"sourceRoot": "src",
10+
"projectType": "application",
11+
"prefix": "app",
12+
"schematics": {},
13+
"architect": {
14+
"build": {
15+
"builder": "@angular-devkit/build-angular:browser",
16+
"options": {
17+
"outputPath": "www",
18+
"index": "src/index.html",
19+
"main": "src/main.ts",
20+
"polyfills": "src/polyfills.ts",
21+
"tsConfig": "tsconfig.app.json",
22+
"assets": [
23+
{
24+
"glob": "**/*",
25+
"input": "src/assets",
26+
"output": "assets"
27+
},
28+
{
29+
"glob": "**/*.svg",
30+
"input": "node_modules/ionicons/dist/ionicons/svg",
31+
"output": "./svg"
32+
}
33+
],
34+
"styles": [
35+
{
36+
"input": "src/theme/variables.scss"
37+
},
38+
{
39+
"input": "src/global.scss"
40+
}
41+
],
42+
"scripts": []
43+
},
44+
"configurations": {
45+
"production": {
46+
"fileReplacements": [
47+
{
48+
"replace": "src/environments/environment.ts",
49+
"with": "src/environments/environment.prod.ts"
50+
}
51+
],
52+
"optimization": true,
53+
"outputHashing": "all",
54+
"sourceMap": false,
55+
"extractCss": true,
56+
"namedChunks": false,
57+
"aot": true,
58+
"extractLicenses": true,
59+
"vendorChunk": false,
60+
"buildOptimizer": true,
61+
"budgets": [
62+
{
63+
"type": "initial",
64+
"maximumWarning": "2mb",
65+
"maximumError": "5mb"
66+
}
67+
]
68+
},
69+
"ci": {
70+
"progress": false
71+
}
72+
}
73+
},
74+
"serve": {
75+
"builder": "@angular-devkit/build-angular:dev-server",
76+
"options": {
77+
"browserTarget": "app:build"
78+
},
79+
"configurations": {
80+
"production": {
81+
"browserTarget": "app:build:production"
82+
},
83+
"ci": {
84+
"progress": false
85+
}
86+
}
87+
},
88+
"extract-i18n": {
89+
"builder": "@angular-devkit/build-angular:extract-i18n",
90+
"options": {
91+
"browserTarget": "app:build"
92+
}
93+
},
94+
"test": {
95+
"builder": "@angular-devkit/build-angular:karma",
96+
"options": {
97+
"main": "src/test.ts",
98+
"polyfills": "src/polyfills.ts",
99+
"tsConfig": "tsconfig.spec.json",
100+
"karmaConfig": "karma.conf.js",
101+
"styles": [],
102+
"scripts": [],
103+
"assets": [
104+
{
105+
"glob": "favicon.ico",
106+
"input": "src/",
107+
"output": "/"
108+
},
109+
{
110+
"glob": "**/*",
111+
"input": "src/assets",
112+
"output": "/assets"
113+
}
114+
]
115+
},
116+
"configurations": {
117+
"ci": {
118+
"progress": false,
119+
"watch": false
120+
}
121+
}
122+
},
123+
"lint": {
124+
"builder": "@angular-devkit/build-angular:tslint",
125+
"options": {
126+
"tsConfig": [
127+
"tsconfig.app.json",
128+
"tsconfig.spec.json",
129+
"e2e/tsconfig.json"
130+
],
131+
"exclude": ["**/node_modules/**"]
132+
}
133+
},
134+
"e2e": {
135+
"builder": "@angular-devkit/build-angular:protractor",
136+
"options": {
137+
"protractorConfig": "e2e/protractor.conf.js",
138+
"devServerTarget": "app:serve"
139+
},
140+
"configurations": {
141+
"production": {
142+
"devServerTarget": "app:serve:production"
143+
},
144+
"ci": {
145+
"devServerTarget": "app:serve:ci"
146+
}
147+
}
148+
},
149+
"ionic-cordova-build": {
150+
"builder": "@ionic/angular-toolkit:cordova-build",
151+
"options": {
152+
"browserTarget": "app:build"
153+
},
154+
"configurations": {
155+
"production": {
156+
"browserTarget": "app:build:production"
157+
}
158+
}
159+
},
160+
"ionic-cordova-serve": {
161+
"builder": "@ionic/angular-toolkit:cordova-serve",
162+
"options": {
163+
"cordovaBuildTarget": "app:ionic-cordova-build",
164+
"devServerTarget": "app:serve"
165+
},
166+
"configurations": {
167+
"production": {
168+
"cordovaBuildTarget": "app:ionic-cordova-build:production",
169+
"devServerTarget": "app:serve:production"
170+
}
171+
}
172+
}
173+
}
174+
}
175+
},
176+
"cli": {
177+
"defaultCollection": "@ionic/angular-toolkit"
178+
},
179+
"schematics": {
180+
"@ionic/angular-toolkit:component": {
181+
"styleext": "scss"
182+
},
183+
"@ionic/angular-toolkit:page": {
184+
"styleext": "scss"
185+
}
186+
}
187+
}

browserslist

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
2+
# For additional information regarding the format and rule options, please see:
3+
# https://github.com/browserslist/browserslist#queries
4+
5+
# You can see what browsers were selected by your queries by running:
6+
# npx browserslist
7+
8+
> 0.5%
9+
last 2 versions
10+
Firefox ESR
11+
not dead
12+
not IE 9-11 # For IE 9-11 support, remove 'not'.

config.xml

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
<?xml version='1.0' encoding='utf-8'?>
2+
<widget id="io.ionic.starter" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
3+
<name>MyApp</name>
4+
<description>An awesome Ionic/Cordova app.</description>
5+
<author email="hi@ionicframework.com" href="http://ionicframework.com/">Ionic Framework Team</author>
6+
<content src="index.html" />
7+
<access origin="*" />
8+
<allow-intent href="http://*/*" />
9+
<allow-intent href="https://*/*" />
10+
<allow-intent href="tel:*" />
11+
<allow-intent href="sms:*" />
12+
<allow-intent href="mailto:*" />
13+
<allow-intent href="geo:*" />
14+
<preference name="ScrollEnabled" value="false" />
15+
<preference name="android-minSdkVersion" value="19" />
16+
<preference name="BackupWebStorage" value="none" />
17+
<preference name="SplashMaintainAspectRatio" value="true" />
18+
<preference name="FadeSplashScreenDuration" value="300" />
19+
<preference name="SplashShowOnlyFirstTime" value="false" />
20+
<preference name="SplashScreen" value="screen" />
21+
<preference name="SplashScreenDelay" value="3000" />
22+
<platform name="android">
23+
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application" xmlns:android="http://schemas.android.com/apk/res/android">
24+
<application android:networkSecurityConfig="@xml/network_security_config" />
25+
</edit-config>
26+
<resource-file src="resources/android/xml/network_security_config.xml" target="app/src/main/res/xml/network_security_config.xml" />
27+
<allow-intent href="market:*" />
28+
<icon density="ldpi" src="resources/android/icon/drawable-ldpi-icon.png" />
29+
<icon density="mdpi" src="resources/android/icon/drawable-mdpi-icon.png" />
30+
<icon density="hdpi" src="resources/android/icon/drawable-hdpi-icon.png" />
31+
<icon density="xhdpi" src="resources/android/icon/drawable-xhdpi-icon.png" />
32+
<icon density="xxhdpi" src="resources/android/icon/drawable-xxhdpi-icon.png" />
33+
<icon density="xxxhdpi" src="resources/android/icon/drawable-xxxhdpi-icon.png" />
34+
<splash density="land-ldpi" src="resources/android/splash/drawable-land-ldpi-screen.png" />
35+
<splash density="land-mdpi" src="resources/android/splash/drawable-land-mdpi-screen.png" />
36+
<splash density="land-hdpi" src="resources/android/splash/drawable-land-hdpi-screen.png" />
37+
<splash density="land-xhdpi" src="resources/android/splash/drawable-land-xhdpi-screen.png" />
38+
<splash density="land-xxhdpi" src="resources/android/splash/drawable-land-xxhdpi-screen.png" />
39+
<splash density="land-xxxhdpi" src="resources/android/splash/drawable-land-xxxhdpi-screen.png" />
40+
<splash density="port-ldpi" src="resources/android/splash/drawable-port-ldpi-screen.png" />
41+
<splash density="port-mdpi" src="resources/android/splash/drawable-port-mdpi-screen.png" />
42+
<splash density="port-hdpi" src="resources/android/splash/drawable-port-hdpi-screen.png" />
43+
<splash density="port-xhdpi" src="resources/android/splash/drawable-port-xhdpi-screen.png" />
44+
<splash density="port-xxhdpi" src="resources/android/splash/drawable-port-xxhdpi-screen.png" />
45+
<splash density="port-xxxhdpi" src="resources/android/splash/drawable-port-xxxhdpi-screen.png" />
46+
</platform>
47+
<platform name="ios">
48+
<allow-intent href="itms:*" />
49+
<allow-intent href="itms-apps:*" />
50+
<icon height="57" src="resources/ios/icon/icon.png" width="57" />
51+
<icon height="114" src="resources/ios/icon/icon@2x.png" width="114" />
52+
<icon height="29" src="resources/ios/icon/icon-small.png" width="29" />
53+
<icon height="58" src="resources/ios/icon/icon-small@2x.png" width="58" />
54+
<icon height="87" src="resources/ios/icon/icon-small@3x.png" width="87" />
55+
<icon height="20" src="resources/ios/icon/icon-20.png" width="20" />
56+
<icon height="40" src="resources/ios/icon/icon-20@2x.png" width="40" />
57+
<icon height="60" src="resources/ios/icon/icon-20@3x.png" width="60" />
58+
<icon height="48" src="resources/ios/icon/icon-24@2x.png" width="48" />
59+
<icon height="55" src="resources/ios/icon/icon-27.5@2x.png" width="55" />
60+
<icon height="29" src="resources/ios/icon/icon-29.png" width="29" />
61+
<icon height="58" src="resources/ios/icon/icon-29@2x.png" width="58" />
62+
<icon height="87" src="resources/ios/icon/icon-29@3x.png" width="87" />
63+
<icon height="40" src="resources/ios/icon/icon-40.png" width="40" />
64+
<icon height="80" src="resources/ios/icon/icon-40@2x.png" width="80" />
65+
<icon height="120" src="resources/ios/icon/icon-40@3x.png" width="120" />
66+
<icon height="88" src="resources/ios/icon/icon-44@2x.png" width="88" />
67+
<icon height="50" src="resources/ios/icon/icon-50.png" width="50" />
68+
<icon height="100" src="resources/ios/icon/icon-50@2x.png" width="100" />
69+
<icon height="60" src="resources/ios/icon/icon-60.png" width="60" />
70+
<icon height="120" src="resources/ios/icon/icon-60@2x.png" width="120" />
71+
<icon height="180" src="resources/ios/icon/icon-60@3x.png" width="180" />
72+
<icon height="72" src="resources/ios/icon/icon-72.png" width="72" />
73+
<icon height="144" src="resources/ios/icon/icon-72@2x.png" width="144" />
74+
<icon height="76" src="resources/ios/icon/icon-76.png" width="76" />
75+
<icon height="152" src="resources/ios/icon/icon-76@2x.png" width="152" />
76+
<icon height="167" src="resources/ios/icon/icon-83.5@2x.png" width="167" />
77+
<icon height="172" src="resources/ios/icon/icon-86@2x.png" width="172" />
78+
<icon height="196" src="resources/ios/icon/icon-98@2x.png" width="196" />
79+
<icon height="1024" src="resources/ios/icon/icon-1024.png" width="1024" />
80+
<splash height="480" src="resources/ios/splash/Default~iphone.png" width="320" />
81+
<splash height="960" src="resources/ios/splash/Default@2x~iphone.png" width="640" />
82+
<splash height="1024" src="resources/ios/splash/Default-Portrait~ipad.png" width="768" />
83+
<splash height="768" src="resources/ios/splash/Default-Landscape~ipad.png" width="1024" />
84+
<splash height="1125" src="resources/ios/splash/Default-Landscape-2436h.png" width="2436" />
85+
<splash height="1242" src="resources/ios/splash/Default-Landscape-736h.png" width="2208" />
86+
<splash height="2048" src="resources/ios/splash/Default-Portrait@2x~ipad.png" width="1536" />
87+
<splash height="1536" src="resources/ios/splash/Default-Landscape@2x~ipad.png" width="2048" />
88+
<splash height="2732" src="resources/ios/splash/Default-Portrait@~ipadpro.png" width="2048" />
89+
<splash height="2048" src="resources/ios/splash/Default-Landscape@~ipadpro.png" width="2732" />
90+
<splash height="1136" src="resources/ios/splash/Default-568h@2x~iphone.png" width="640" />
91+
<splash height="1334" src="resources/ios/splash/Default-667h.png" width="750" />
92+
<splash height="2208" src="resources/ios/splash/Default-736h.png" width="1242" />
93+
<splash height="2436" src="resources/ios/splash/Default-2436h.png" width="1125" />
94+
<splash height="2732" src="resources/ios/splash/Default@2x~universal~anyany.png" width="2732" />
95+
</platform>
96+
<plugin name="cordova-plugin-whitelist" spec="1.3.3" />
97+
<plugin name="cordova-plugin-statusbar" spec="2.4.2" />
98+
<plugin name="cordova-plugin-device" spec="2.0.2" />
99+
<plugin name="cordova-plugin-splashscreen" spec="5.0.2" />
100+
<plugin name="cordova-plugin-ionic-webview" spec="^4.0.0" />
101+
<plugin name="cordova-plugin-ionic-keyboard" spec="^2.0.5" />
102+
</widget>

e2e/protractor.conf.js

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// Protractor configuration file, see link for more information
2+
// https://github.com/angular/protractor/blob/master/lib/config.ts
3+
4+
const { SpecReporter } = require('jasmine-spec-reporter');
5+
6+
exports.config = {
7+
allScriptsTimeout: 11000,
8+
specs: [
9+
'./src/**/*.e2e-spec.ts'
10+
],
11+
capabilities: {
12+
'browserName': 'chrome'
13+
},
14+
directConnect: true,
15+
baseUrl: 'http://localhost:4200/',
16+
framework: 'jasmine',
17+
jasmineNodeOpts: {
18+
showColors: true,
19+
defaultTimeoutInterval: 30000,
20+
print: function() {}
21+
},
22+
onPrepare() {
23+
require('ts-node').register({
24+
project: require('path').join(__dirname, './tsconfig.json')
25+
});
26+
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
27+
}
28+
};

e2e/src/app.e2e-spec.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import { AppPage } from './app.po';
2+
3+
describe('new App', () => {
4+
let page: AppPage;
5+
6+
beforeEach(() => {
7+
page = new AppPage();
8+
});
9+
10+
it('should be blank', () => {
11+
page.navigateTo();
12+
expect(page.getParagraphText()).toContain('The world is your oyster.');
13+
});
14+
});

e2e/src/app.po.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import { browser, by, element } from 'protractor';
2+
3+
export class AppPage {
4+
navigateTo() {
5+
return browser.get('/');
6+
}
7+
8+
getParagraphText() {
9+
return element(by.deepCss('app-root ion-content')).getText();
10+
}
11+
}

0 commit comments

Comments
 (0)