@ofidj/generator-fidj 1.0.0 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +136 -57
- package/bin/create-fidj.cjs +62 -0
- package/generators/app/index.js +100 -189
- package/generators/app/templates/typescript/README.md +82 -0
- package/generators/app/templates/typescript/app.config.json +14 -0
- package/generators/app/templates/typescript/gitignore +5 -0
- package/generators/app/templates/typescript/package.json +25 -0
- package/generators/app/templates/typescript/public/fidj-logo.png +0 -0
- package/generators/app/templates/typescript/public/fonts/IBMPlexMono-400-latin-ext.woff2 +0 -0
- package/generators/app/templates/typescript/public/fonts/IBMPlexMono-400-latin.woff2 +0 -0
- package/generators/app/templates/typescript/public/fonts/IBMPlexMono-500-latin-ext.woff2 +0 -0
- package/generators/app/templates/typescript/public/fonts/IBMPlexMono-500-latin.woff2 +0 -0
- package/generators/app/templates/typescript/public/fonts/IBMPlexSans-400_600-latin-ext.woff2 +0 -0
- package/generators/app/templates/typescript/public/fonts/IBMPlexSans-400_600-latin.woff2 +0 -0
- package/generators/app/templates/typescript/public/fonts/InstrumentSerif-400-latin-ext.woff2 +0 -0
- package/generators/app/templates/typescript/public/fonts/InstrumentSerif-400-latin.woff2 +0 -0
- package/generators/app/templates/typescript/public/index.html +16 -0
- package/generators/app/templates/typescript/scripts/build.mjs +49 -0
- package/generators/app/templates/typescript/scripts/privacy-check.mjs +21 -0
- package/generators/app/templates/typescript/scripts/render-content.mjs +14 -0
- package/generators/app/templates/typescript/server/data-store.ts +123 -0
- package/generators/app/templates/typescript/server/index.ts +338 -0
- package/generators/app/templates/typescript/server/privacy-adapter.ts +21 -0
- package/generators/app/templates/typescript/src/content.ts +491 -0
- package/generators/app/templates/typescript/src/fonts.css +92 -0
- package/generators/app/templates/typescript/src/main.ts +251 -0
- package/generators/app/templates/typescript/src/service-agreement.ts +40 -0
- package/generators/app/templates/typescript/src/style.css +916 -0
- package/generators/app/templates/typescript/src/tokens.css +56 -0
- package/generators/app/templates/typescript/test/server.test.mjs +287 -0
- package/generators/app/templates/typescript/tsconfig.json +15 -0
- package/lib/app-module.cjs +64 -0
- package/lib/scaffold.cjs +214 -0
- package/package.json +15 -13
- package/generators/app/templates/app2018/.travis.yml +0 -35
- package/generators/app/templates/app2018/LICENSE +0 -21
- package/generators/app/templates/app2018/Procfile +0 -1
- package/generators/app/templates/app2018/README.md +0 -49
- package/generators/app/templates/app2018/config.xml +0 -91
- package/generators/app/templates/app2018/gulpfile.js +0 -63
- package/generators/app/templates/app2018/ionic.config.json +0 -9
- package/generators/app/templates/app2018/package.json +0 -90
- package/generators/app/templates/app2018/platforms/README.md +0 -1
- package/generators/app/templates/app2018/resources/README.md +0 -6
- package/generators/app/templates/app2018/resources/icon.png +0 -0
- package/generators/app/templates/app2018/resources/marketing-01-ipad.png +0 -0
- package/generators/app/templates/app2018/resources/marketing-01-iphone.png +0 -0
- package/generators/app/templates/app2018/resources/marketing-02-ipad.png +0 -0
- package/generators/app/templates/app2018/resources/marketing-02-iphone.png +0 -0
- package/generators/app/templates/app2018/resources/marketing-03-ipad.png +0 -0
- package/generators/app/templates/app2018/resources/marketing-03-iphone.png +0 -0
- package/generators/app/templates/app2018/resources/marketing.json +0 -19
- package/generators/app/templates/app2018/resources/splash.png +0 -0
- package/generators/app/templates/app2018/src/app/app.component.ts +0 -88
- package/generators/app/templates/app2018/src/app/app.html +0 -19
- package/generators/app/templates/app2018/src/app/app.module.ts +0 -40
- package/generators/app/templates/app2018/src/app/app.scss +0 -16
- package/generators/app/templates/app2018/src/app/main.ts +0 -5
- package/generators/app/templates/app2018/src/app/shared/card.model.ts +0 -10
- package/generators/app/templates/app2018/src/app/shared/profile.service.ts +0 -46
- package/generators/app/templates/app2018/src/app/shared/shared.module.ts +0 -35
- package/generators/app/templates/app2018/src/app/shared/storage.service.ts +0 -11
- package/generators/app/templates/app2018/src/app/shared/version.const.ts +0 -5
- package/generators/app/templates/app2018/src/assets/icon/favicon.ico +0 -0
- package/generators/app/templates/app2018/src/assets/imgs/gg.png +0 -0
- package/generators/app/templates/app2018/src/assets/imgs/github.png +0 -0
- package/generators/app/templates/app2018/src/assets/imgs/login.svg +0 -5668
- package/generators/app/templates/app2018/src/assets/imgs/logo.png +0 -0
- package/generators/app/templates/app2018/src/index.html +0 -49
- package/generators/app/templates/app2018/src/manifest.json +0 -13
- package/generators/app/templates/app2018/src/pages/home/home.html +0 -56
- package/generators/app/templates/app2018/src/pages/home/home.scss +0 -3
- package/generators/app/templates/app2018/src/pages/home/home.ts +0 -126
- package/generators/app/templates/app2018/src/pages/login/login.html +0 -56
- package/generators/app/templates/app2018/src/pages/login/login.scss +0 -44
- package/generators/app/templates/app2018/src/pages/login/login.ts +0 -59
- package/generators/app/templates/app2018/src/pages/profile/profile.html +0 -33
- package/generators/app/templates/app2018/src/pages/profile/profile.scss +0 -3
- package/generators/app/templates/app2018/src/pages/profile/profile.ts +0 -36
- package/generators/app/templates/app2018/src/service-worker.js +0 -31
- package/generators/app/templates/app2018/src/theme/variables.scss +0 -88
- package/generators/app/templates/app2018/tests/karma.unit-tests.conf.js +0 -84
- package/generators/app/templates/app2018/tests/unit/app.test.js +0 -10
- package/generators/app/templates/app2018/tsconfig.json +0 -28
- package/generators/app/templates/app2018/tslint.json +0 -8
- package/generators/app/templates/app2018/web.js +0 -21
- package/generators/app/templates/app2021/.travis.yml +0 -32
- package/generators/app/templates/app2021/LICENSE +0 -21
- package/generators/app/templates/app2021/Procfile +0 -1
- package/generators/app/templates/app2021/README.md +0 -45
- package/generators/app/templates/app2021/angular.json +0 -188
- package/generators/app/templates/app2021/browserslist +0 -12
- package/generators/app/templates/app2021/ionic.config.json +0 -9
- package/generators/app/templates/app2021/karma.conf.js +0 -31
- package/generators/app/templates/app2021/package-lock.json +0 -5
- package/generators/app/templates/app2021/package.json +0 -77
- package/generators/app/templates/app2021/platforms/README.md +0 -1
- package/generators/app/templates/app2021/resources/README.md +0 -6
- package/generators/app/templates/app2021/resources/icon.png +0 -0
- package/generators/app/templates/app2021/resources/marketing-01-ipad.png +0 -0
- package/generators/app/templates/app2021/resources/marketing-01-iphone.png +0 -0
- package/generators/app/templates/app2021/resources/marketing-02-ipad.png +0 -0
- package/generators/app/templates/app2021/resources/marketing-02-iphone.png +0 -0
- package/generators/app/templates/app2021/resources/marketing-03-ipad.png +0 -0
- package/generators/app/templates/app2021/resources/marketing-03-iphone.png +0 -0
- package/generators/app/templates/app2021/resources/marketing.json +0 -19
- package/generators/app/templates/app2021/resources/splash.png +0 -0
- package/generators/app/templates/app2021/src/app/app-routing.module.ts +0 -25
- package/generators/app/templates/app2021/src/app/app.component.html +0 -3
- package/generators/app/templates/app2021/src/app/app.component.scss +0 -0
- package/generators/app/templates/app2021/src/app/app.component.spec.ts +0 -50
- package/generators/app/templates/app2021/src/app/app.component.ts +0 -28
- package/generators/app/templates/app2021/src/app/app.module.ts +0 -24
- package/generators/app/templates/app2021/src/app/content/content-routing.module.ts +0 -16
- package/generators/app/templates/app2021/src/app/content/content.module.ts +0 -20
- package/generators/app/templates/app2021/src/app/content/content.page.html +0 -31
- package/generators/app/templates/app2021/src/app/content/content.page.scss +0 -0
- package/generators/app/templates/app2021/src/app/content/content.page.ts +0 -26
- package/generators/app/templates/app2021/src/app/explore-container/explore-container.component.html +0 -4
- package/generators/app/templates/app2021/src/app/explore-container/explore-container.component.scss +0 -4
- package/generators/app/templates/app2021/src/app/explore-container/explore-container.component.spec.ts +0 -24
- package/generators/app/templates/app2021/src/app/explore-container/explore-container.component.ts +0 -16
- package/generators/app/templates/app2021/src/app/explore-container/explore-container.module.ts +0 -14
- package/generators/app/templates/app2021/src/app/my/my-routing.module.ts +0 -36
- package/generators/app/templates/app2021/src/app/my/my.module.ts +0 -19
- package/generators/app/templates/app2021/src/app/my/my.page.html +0 -15
- package/generators/app/templates/app2021/src/app/my/my.page.scss +0 -1
- package/generators/app/templates/app2021/src/app/my/my.page.spec.ts +0 -26
- package/generators/app/templates/app2021/src/app/my/my.page.ts +0 -25
- package/generators/app/templates/app2021/src/app/profile/profile-routing.module.ts +0 -16
- package/generators/app/templates/app2021/src/app/profile/profile.module.ts +0 -20
- package/generators/app/templates/app2021/src/app/profile/profile.page.html +0 -49
- package/generators/app/templates/app2021/src/app/profile/profile.page.scss +0 -0
- package/generators/app/templates/app2021/src/app/profile/profile.page.spec.ts +0 -25
- package/generators/app/templates/app2021/src/app/profile/profile.page.ts +0 -44
- package/generators/app/templates/app2021/src/app/shared/const.ts +0 -3
- package/generators/app/templates/app2021/src/app/signin/signin-routing.module.ts +0 -16
- package/generators/app/templates/app2021/src/app/signin/signin.module.ts +0 -18
- package/generators/app/templates/app2021/src/app/signin/signin.page.html +0 -53
- package/generators/app/templates/app2021/src/app/signin/signin.page.scss +0 -36
- package/generators/app/templates/app2021/src/app/signin/signin.page.ts +0 -69
- package/generators/app/templates/app2021/src/assets/icon/favicon.png +0 -0
- package/generators/app/templates/app2021/src/assets/shapes.svg +0 -1
- package/generators/app/templates/app2021/src/environments/environment.prod.ts +0 -3
- package/generators/app/templates/app2021/src/environments/environment.ts +0 -16
- package/generators/app/templates/app2021/src/global.scss +0 -26
- package/generators/app/templates/app2021/src/index.html +0 -26
- package/generators/app/templates/app2021/src/main.ts +0 -12
- package/generators/app/templates/app2021/src/polyfills.ts +0 -67
- package/generators/app/templates/app2021/src/test.ts +0 -20
- package/generators/app/templates/app2021/src/theme/variables.scss +0 -232
- package/generators/app/templates/app2021/src/zone-flags.ts +0 -5
- package/generators/app/templates/app2021/tests/protractor.conf.js +0 -36
- package/generators/app/templates/app2021/tests/src/app.e2e-spec.ts +0 -14
- package/generators/app/templates/app2021/tests/src/app.po.ts +0 -11
- package/generators/app/templates/app2021/tests/tsconfig.json +0 -13
- package/generators/app/templates/app2021/tsconfig.app.json +0 -18
- package/generators/app/templates/app2021/tsconfig.json +0 -23
- package/generators/app/templates/app2021/tsconfig.spec.json +0 -18
- package/generators/app/templates/app2021/tslint.json +0 -149
- package/generators/app/templates/app2021/web.js +0 -21
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ofidj/generator-fidj",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "1.0.3",
|
|
4
|
+
"description": "Generate a TypeScript app with Fidj sign-in, live server-side roles and per-app privacy.",
|
|
5
5
|
"homepage": "https://fidj.ovh",
|
|
6
6
|
"bugs": {
|
|
7
7
|
"url": "https://github.com/ofidj/generator-fidj/issues"
|
|
@@ -10,23 +10,19 @@
|
|
|
10
10
|
"access": "public"
|
|
11
11
|
},
|
|
12
12
|
"files": [
|
|
13
|
+
"bin",
|
|
14
|
+
"lib",
|
|
13
15
|
"generators"
|
|
14
16
|
],
|
|
15
|
-
"main": "
|
|
17
|
+
"main": "./lib/scaffold.cjs",
|
|
16
18
|
"keywords": [
|
|
17
19
|
"fidj",
|
|
18
|
-
"angular",
|
|
19
|
-
"ionic",
|
|
20
20
|
"yeoman-generator"
|
|
21
21
|
],
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"
|
|
24
|
-
"yeoman-generator": "^4.12.0",
|
|
25
|
-
"yosay": "^2.0.2"
|
|
26
|
-
},
|
|
27
|
-
"devDependencies": {
|
|
28
|
-
"tslint": "^6.1.3"
|
|
23
|
+
"yeoman-generator": "^4.12.0"
|
|
29
24
|
},
|
|
25
|
+
"devDependencies": {},
|
|
30
26
|
"eslintConfig": {
|
|
31
27
|
"extends": "xo-space",
|
|
32
28
|
"env": {
|
|
@@ -35,7 +31,13 @@
|
|
|
35
31
|
},
|
|
36
32
|
"repository": "https://github.com/ofidj/generator-fidj.git",
|
|
37
33
|
"scripts": {
|
|
38
|
-
"test": "
|
|
34
|
+
"test": "node --test test/*.test.cjs"
|
|
35
|
+
},
|
|
36
|
+
"license": "MIT",
|
|
37
|
+
"bin": {
|
|
38
|
+
"create-fidj": "bin/create-fidj.cjs"
|
|
39
39
|
},
|
|
40
|
-
"
|
|
40
|
+
"engines": {
|
|
41
|
+
"node": ">=22"
|
|
42
|
+
}
|
|
41
43
|
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
language:
|
|
2
|
-
- node_js
|
|
3
|
-
node_js:
|
|
4
|
-
- 6.11.5
|
|
5
|
-
branches:
|
|
6
|
-
only:
|
|
7
|
-
- master
|
|
8
|
-
install:
|
|
9
|
-
- git config remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
10
|
-
- git fetch --tags --depth=10000
|
|
11
|
-
- npm install
|
|
12
|
-
- npm version patch -m "[ci skip] version bumped %s"
|
|
13
|
-
script:
|
|
14
|
-
- npm test
|
|
15
|
-
- npm run build
|
|
16
|
-
after_success:
|
|
17
|
-
- git remote add upstream "https://${GH_TOKEN}@github.com/${GH_REPO}.git"
|
|
18
|
-
- git add .
|
|
19
|
-
- git commit -m "[ci skip] version ok"
|
|
20
|
-
- git push upstream HEAD:master
|
|
21
|
-
- rm -r src
|
|
22
|
-
- rm -r tests
|
|
23
|
-
- rm -r coverage
|
|
24
|
-
- rm -r node_modules
|
|
25
|
-
- rm www/.gitignore
|
|
26
|
-
deploy:
|
|
27
|
-
provider: pages
|
|
28
|
-
skip-cleanup: true
|
|
29
|
-
github-token: $GH_TOKEN
|
|
30
|
-
keep-history: true
|
|
31
|
-
on:
|
|
32
|
-
branch: master
|
|
33
|
-
env:
|
|
34
|
-
global:
|
|
35
|
-
- GH_REPO: "<%= appUserName %>/<%= appName %>"
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2018 fidj.ovh team
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
web: node web.js
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
# <%= appName %>
|
|
2
|
-
|
|
3
|
-
> <%= appDescription %>
|
|
4
|
-
|
|
5
|
-
## Prerequisite
|
|
6
|
-
|
|
7
|
-
Look at [mat's gist](https://gist.github.com/mlefree/2156f66dfb441f107bef157dde56a836),
|
|
8
|
-
in order to check your node, cordova, ionic and yeoman installation.
|
|
9
|
-
|
|
10
|
-
[![Fidj.ovh Status][fidj-image]][fidj-url]
|
|
11
|
-
[![Build Status][travis-image]][travis-url]
|
|
12
|
-
|
|
13
|
-
[![video][youtube-img]][youtube-video]
|
|
14
|
-
|
|
15
|
-
## Build it
|
|
16
|
-
|
|
17
|
-
Clone and install the project
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
npm install
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
and then launch on your device
|
|
24
|
-
|
|
25
|
-
```bash
|
|
26
|
-
npm run ios
|
|
27
|
-
# then ready to launch your app (./platforms/ios/*.xcodeproj) in XCode
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
## Deploy
|
|
31
|
-
|
|
32
|
-
Follow this https://ionicframework.com/docs/intro/deploying.
|
|
33
|
-
|
|
34
|
-
### For test on Github or Heroku
|
|
35
|
-
|
|
36
|
-
It's up to you if you want to use your www generated folder as static page.You can also use the [fidj-sandbox](https://sss) before any production; 2 variables are available for that :
|
|
37
|
-
|
|
38
|
-
```bash
|
|
39
|
-
FIDJ_APP_ID # force your fidj app Id with your sandbox's one
|
|
40
|
-
FIDJ_APP_PROD # 'true' by default, 'false' to test it on sandbox
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
[fidj-image]: https://fidj.ovh/_/<%= appName %>/badges/github.svg
|
|
44
|
-
[fidj-url]: https://fidj.ovh/_/<%= appName %>
|
|
45
|
-
[youtube-img]: http://img.youtube.com/vi/0FbnCWWg_NY/0.jpg
|
|
46
|
-
[youtube-video]: https://www.youtube.com/embed/0FbnCWWg_NY?autoplay=true
|
|
47
|
-
[travis-image]: https://travis-ci.org/<%=appUserName %>/<%= appName %>.svg?branch=master
|
|
48
|
-
[travis-url]: https://travis-ci.org/<%=appUserName %>/<%= appName %>
|
|
49
|
-
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
<?xml version='1.0' encoding='utf-8'?>
|
|
2
|
-
<widget id="<%= appPackage %>" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
|
|
3
|
-
<name><%= appName %></name>
|
|
4
|
-
<description><%= appDescription %></description>
|
|
5
|
-
<author email="fidj.ovh team" href="https://fidj.ovh/_/<%= appName %>">fidj.ovh 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="16" />
|
|
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
|
-
<preference name="android-minSdkVersion" value="16" />
|
|
24
|
-
<preference name="android-targetSdkVersion" value="26" />
|
|
25
|
-
|
|
26
|
-
<allow-intent href="market:*" />
|
|
27
|
-
<icon density="ldpi" src="resources/android/icon/drawable-ldpi-icon.png" />
|
|
28
|
-
<icon density="mdpi" src="resources/android/icon/drawable-mdpi-icon.png" />
|
|
29
|
-
<icon density="hdpi" src="resources/android/icon/drawable-hdpi-icon.png" />
|
|
30
|
-
<icon density="xhdpi" src="resources/android/icon/drawable-xhdpi-icon.png" />
|
|
31
|
-
<icon density="xxhdpi" src="resources/android/icon/drawable-xxhdpi-icon.png" />
|
|
32
|
-
<icon density="xxxhdpi" src="resources/android/icon/drawable-xxxhdpi-icon.png" />
|
|
33
|
-
<splash density="land-ldpi" src="resources/android/splash/drawable-land-ldpi-screen.png" />
|
|
34
|
-
<splash density="land-mdpi" src="resources/android/splash/drawable-land-mdpi-screen.png" />
|
|
35
|
-
<splash density="land-hdpi" src="resources/android/splash/drawable-land-hdpi-screen.png" />
|
|
36
|
-
<splash density="land-xhdpi" src="resources/android/splash/drawable-land-xhdpi-screen.png" />
|
|
37
|
-
<splash density="land-xxhdpi" src="resources/android/splash/drawable-land-xxhdpi-screen.png" />
|
|
38
|
-
<splash density="land-xxxhdpi" src="resources/android/splash/drawable-land-xxxhdpi-screen.png" />
|
|
39
|
-
<splash density="port-ldpi" src="resources/android/splash/drawable-port-ldpi-screen.png" />
|
|
40
|
-
<splash density="port-mdpi" src="resources/android/splash/drawable-port-mdpi-screen.png" />
|
|
41
|
-
<splash density="port-hdpi" src="resources/android/splash/drawable-port-hdpi-screen.png" />
|
|
42
|
-
<splash density="port-xhdpi" src="resources/android/splash/drawable-port-xhdpi-screen.png" />
|
|
43
|
-
<splash density="port-xxhdpi" src="resources/android/splash/drawable-port-xxhdpi-screen.png" />
|
|
44
|
-
<splash density="port-xxxhdpi" src="resources/android/splash/drawable-port-xxxhdpi-screen.png" />
|
|
45
|
-
</platform>
|
|
46
|
-
<platform name="ios">
|
|
47
|
-
<allow-intent href="itms:*" />
|
|
48
|
-
<allow-intent href="itms-apps:*" />
|
|
49
|
-
<icon height="57" src="resources/ios/icon/icon.png" width="57" />
|
|
50
|
-
<icon height="114" src="resources/ios/icon/icon@2x.png" width="114" />
|
|
51
|
-
<icon height="40" src="resources/ios/icon/icon-40.png" width="40" />
|
|
52
|
-
<icon height="80" src="resources/ios/icon/icon-40@2x.png" width="80" />
|
|
53
|
-
<icon height="120" src="resources/ios/icon/icon-40@3x.png" width="120" />
|
|
54
|
-
<icon height="50" src="resources/ios/icon/icon-50.png" width="50" />
|
|
55
|
-
<icon height="100" src="resources/ios/icon/icon-50@2x.png" width="100" />
|
|
56
|
-
<icon height="60" src="resources/ios/icon/icon-60.png" width="60" />
|
|
57
|
-
<icon height="120" src="resources/ios/icon/icon-60@2x.png" width="120" />
|
|
58
|
-
<icon height="180" src="resources/ios/icon/icon-60@3x.png" width="180" />
|
|
59
|
-
<icon height="72" src="resources/ios/icon/icon-72.png" width="72" />
|
|
60
|
-
<icon height="144" src="resources/ios/icon/icon-72@2x.png" width="144" />
|
|
61
|
-
<icon height="76" src="resources/ios/icon/icon-76.png" width="76" />
|
|
62
|
-
<icon height="152" src="resources/ios/icon/icon-76@2x.png" width="152" />
|
|
63
|
-
<icon height="167" src="resources/ios/icon/icon-83.5@2x.png" width="167" />
|
|
64
|
-
<icon height="29" src="resources/ios/icon/icon-small.png" width="29" />
|
|
65
|
-
<icon height="58" src="resources/ios/icon/icon-small@2x.png" width="58" />
|
|
66
|
-
<icon height="87" src="resources/ios/icon/icon-small@3x.png" width="87" />
|
|
67
|
-
<icon height="1024" src="resources/ios/icon/icon-1024.png" width="1024" />
|
|
68
|
-
<splash height="1136" src="resources/ios/splash/Default-568h@2x~iphone.png" width="640" />
|
|
69
|
-
<splash height="1334" src="resources/ios/splash/Default-667h.png" width="750" />
|
|
70
|
-
<splash height="2208" src="resources/ios/splash/Default-736h.png" width="1242" />
|
|
71
|
-
<splash height="1242" src="resources/ios/splash/Default-Landscape-736h.png" width="2208" />
|
|
72
|
-
<splash height="1536" src="resources/ios/splash/Default-Landscape@2x~ipad.png" width="2048" />
|
|
73
|
-
<splash height="2048" src="resources/ios/splash/Default-Landscape@~ipadpro.png" width="2732" />
|
|
74
|
-
<splash height="768" src="resources/ios/splash/Default-Landscape~ipad.png" width="1024" />
|
|
75
|
-
<splash height="2048" src="resources/ios/splash/Default-Portrait@2x~ipad.png" width="1536" />
|
|
76
|
-
<splash height="2732" src="resources/ios/splash/Default-Portrait@~ipadpro.png" width="2048" />
|
|
77
|
-
<splash height="1024" src="resources/ios/splash/Default-Portrait~ipad.png" width="768" />
|
|
78
|
-
<splash height="960" src="resources/ios/splash/Default@2x~iphone.png" width="640" />
|
|
79
|
-
<splash height="480" src="resources/ios/splash/Default~iphone.png" width="320" />
|
|
80
|
-
<splash height="2732" src="resources/ios/splash/Default@2x~universal~anyany.png" width="2732" />
|
|
81
|
-
</platform>
|
|
82
|
-
<plugin name="ionic-plugin-keyboard" spec="~2.2.1" />
|
|
83
|
-
<plugin name="cordova-plugin-whitelist" spec="1.3.3" />
|
|
84
|
-
<plugin name="cordova-plugin-statusbar" spec="2.4.2" />
|
|
85
|
-
<plugin name="cordova-plugin-device" spec="2.0.2" />
|
|
86
|
-
<plugin name="cordova-plugin-splashscreen" spec="5.0.2" />
|
|
87
|
-
<plugin name="cordova-plugin-ionic-webview" spec="^2.0.0" />
|
|
88
|
-
<plugin name="cordova-plugin-ionic-keyboard" spec="^2.0.5" />
|
|
89
|
-
<engine name="android" spec="7.1.0" />
|
|
90
|
-
<engine name="ios" spec="4.5.4" />
|
|
91
|
-
</widget>
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
const gulp = require('gulp');
|
|
2
|
-
const replace = require('gulp-replace');
|
|
3
|
-
const cheerio = require('gulp-cheerio');
|
|
4
|
-
|
|
5
|
-
const paths = {
|
|
6
|
-
config: ['./package.json']
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
function configTask() {
|
|
10
|
-
return gulp.src(['config.xml'])
|
|
11
|
-
.pipe(cheerio({
|
|
12
|
-
run: function ($) {
|
|
13
|
-
// get the version number from package.json
|
|
14
|
-
$('widget').attr('version', require('./package').version);
|
|
15
|
-
$('widget').attr('id', require('./package').id);
|
|
16
|
-
$('name').text(require('./package').name);
|
|
17
|
-
$('description').text(require('./package').description);
|
|
18
|
-
$('author').text(require('./package').author);
|
|
19
|
-
$('author').attr('email', require('./package').author);
|
|
20
|
-
$('author').attr('href', require('./package').homepage);
|
|
21
|
-
|
|
22
|
-
// in development launch the app with a different html file
|
|
23
|
-
//$('content').attr('src', process.env.NODE_ENV == 'development' ? 'debug.html' : 'index.html');
|
|
24
|
-
|
|
25
|
-
},
|
|
26
|
-
parserOptions: {
|
|
27
|
-
xmlMode: true
|
|
28
|
-
}
|
|
29
|
-
}))
|
|
30
|
-
.pipe(gulp.dest('.'));
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
function configSrcTask() {
|
|
34
|
-
const version = "const version = '" + require('./package').version + "';";
|
|
35
|
-
return gulp.src(['src/app/shared/version.const.ts'])
|
|
36
|
-
// See http://mdn.io/string.replace#Specifying_a_string_as_a_parameter
|
|
37
|
-
.pipe(replace(/const version = '(.*)';/g, version))
|
|
38
|
-
.pipe(gulp.dest('src/app/shared/'));
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
const fidjId = process.env.FIDJ_ID;
|
|
42
|
-
const fidjProd = process.env.FIDJ_PROD || 'true';
|
|
43
|
-
gulp.task('config:www', function () {
|
|
44
|
-
|
|
45
|
-
if (fidjId && fidjProd) {
|
|
46
|
-
return gulp.src(['www/build/main.js'])
|
|
47
|
-
.pipe(replace(/fidjService.init.*/g, "fidjService.init('" + fidjId + "', { prod: " + fidjProd + " })"))
|
|
48
|
-
.pipe(gulp.dest('www/build/'));
|
|
49
|
-
} else {
|
|
50
|
-
return Promise.resolve();
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
gulp.task('config', configTask);
|
|
56
|
-
|
|
57
|
-
gulp.task('config-src', configSrcTask);
|
|
58
|
-
|
|
59
|
-
gulp.task('default', gulp.series(configTask, configSrcTask));
|
|
60
|
-
|
|
61
|
-
gulp.task('watch', function () {
|
|
62
|
-
gulp.watch(paths.config, ['config', 'config-src']);
|
|
63
|
-
});
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "<%= appName %>",
|
|
3
|
-
"version": "<%= appVersion %>",
|
|
4
|
-
"id": "<%= appPackage %>",
|
|
5
|
-
"description": "<%= appDescription %>",
|
|
6
|
-
"author": "<%= appUserName %>",
|
|
7
|
-
"homepage": "https://fidj.ovh/_/<%= appName %>",
|
|
8
|
-
"main": "www/index.html",
|
|
9
|
-
"scripts": {
|
|
10
|
-
"test": "./node_modules/.bin/karma start tests/karma.unit-tests.conf.js",
|
|
11
|
-
"clean": "ionic-app-scripts clean",
|
|
12
|
-
"build:app": "ionic-app-scripts build",
|
|
13
|
-
"build:config": "./node_modules/.bin/gulp",
|
|
14
|
-
"build:ids": "./node_modules/.bin/gulp config:www",
|
|
15
|
-
"build": "npm run build:config && npm run build:app && npm run build:ids",
|
|
16
|
-
"lint": "ionic-app-scripts lint",
|
|
17
|
-
"serve": "ionic-app-scripts serve",
|
|
18
|
-
"resources": "fidj-resources --ios --android --marketing && cp resources/ios/icon/icon-60.png src/assets/icon/favicon.ico",
|
|
19
|
-
"ios": "npm run build && npm run resources && ionic cordova platform add ios && ionic cordova build ios"
|
|
20
|
-
},
|
|
21
|
-
"devDependencies": {
|
|
22
|
-
"@ionic/app-scripts": "3.1.6",
|
|
23
|
-
"gulp": "^4.0.0",
|
|
24
|
-
"gulp-cheerio": "^0.6.3",
|
|
25
|
-
"gulp-replace": "^0.6.1",
|
|
26
|
-
"gulp-util": "^3.0.8",
|
|
27
|
-
"jasmine-ajax": "^3.3.1",
|
|
28
|
-
"jasmine-core": "^2.99.1",
|
|
29
|
-
"karma": "^3.0.0",
|
|
30
|
-
"karma-chrome-launcher": "^2.2.0",
|
|
31
|
-
"karma-coverage": "^1.1.0",
|
|
32
|
-
"karma-html-reporter": "*",
|
|
33
|
-
"karma-jasmine": "^1.1.1",
|
|
34
|
-
"karma-jasmine-ajax": "^0.1.13",
|
|
35
|
-
"karma-jasmine-html-reporter-livereload": "*",
|
|
36
|
-
"shelljs": "^0.8.1",
|
|
37
|
-
"typescript": "2.4.2"
|
|
38
|
-
},
|
|
39
|
-
"dependencies": {
|
|
40
|
-
"@angular/animations": "5.0.3",
|
|
41
|
-
"@angular/common": "5.0.3",
|
|
42
|
-
"@angular/compiler": "5.0.3",
|
|
43
|
-
"@angular/compiler-cli": "5.0.3",
|
|
44
|
-
"@angular/core": "5.0.3",
|
|
45
|
-
"@angular/forms": "5.0.3",
|
|
46
|
-
"@angular/http": "5.0.3",
|
|
47
|
-
"@angular/platform-browser": "5.0.3",
|
|
48
|
-
"@angular/platform-browser-dynamic": "5.0.3",
|
|
49
|
-
"@ionic-native/core": "4.4.0",
|
|
50
|
-
"@ionic-native/network": "^4.7.0",
|
|
51
|
-
"@ionic-native/splash-screen": "4.4.0",
|
|
52
|
-
"@ionic-native/status-bar": "4.4.0",
|
|
53
|
-
"@ionic/storage": "2.1.3",
|
|
54
|
-
"cordova-android": "^7.0.0",
|
|
55
|
-
"cordova-ios": "4.5.5",
|
|
56
|
-
"cordova-plugin-device": "^1.1.7",
|
|
57
|
-
"cordova-plugin-ionic-keyboard": "^2.1.2",
|
|
58
|
-
"cordova-plugin-ionic-webview": "^1.2.1",
|
|
59
|
-
"cordova-plugin-network-information": "^2.0.1",
|
|
60
|
-
"cordova-plugin-splashscreen": "^4.1.0",
|
|
61
|
-
"cordova-plugin-sqlite-2": "^1.0.5",
|
|
62
|
-
"cordova-plugin-statusbar": "^2.4.2",
|
|
63
|
-
"cordova-plugin-whitelist": "^1.3.3",
|
|
64
|
-
"fidj": "^2.1.7",
|
|
65
|
-
"ionic-angular": "3.9.2",
|
|
66
|
-
"ionic-plugin-keyboard": "^2.2.1",
|
|
67
|
-
"ionicons": "3.0.0",
|
|
68
|
-
"rxjs": "5.5.2",
|
|
69
|
-
"save-dev": "^2.0.0",
|
|
70
|
-
"sw-toolbox": "3.6.0",
|
|
71
|
-
"zone.js": "0.8.18"
|
|
72
|
-
},
|
|
73
|
-
"cordova": {
|
|
74
|
-
"platforms": [
|
|
75
|
-
"android",
|
|
76
|
-
"ios"
|
|
77
|
-
],
|
|
78
|
-
"plugins": {
|
|
79
|
-
"ionic-plugin-keyboard": {},
|
|
80
|
-
"cordova-plugin-whitelist": {},
|
|
81
|
-
"cordova-plugin-device": {},
|
|
82
|
-
"cordova-plugin-splashscreen": {},
|
|
83
|
-
"cordova-plugin-ionic-webview": {},
|
|
84
|
-
"cordova-plugin-sqlite-2": {},
|
|
85
|
-
"cordova-plugin-statusbar": {},
|
|
86
|
-
"cordova-plugin-network-information": {},
|
|
87
|
-
"cordova-plugin-ionic-keyboard": {}
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
devices projects
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"marketing": [
|
|
3
|
-
{
|
|
4
|
-
"text": "Your stories everywhere",
|
|
5
|
-
"landscape": "resources/marketing-01-ipad.png",
|
|
6
|
-
"portrait": "resources/marketing-01-iphone.png"
|
|
7
|
-
},
|
|
8
|
-
{
|
|
9
|
-
"text": "Manage your Poker Planning",
|
|
10
|
-
"landscape": "resources/marketing-02-ipad.png",
|
|
11
|
-
"portrait": "resources/marketing-02-iphone.png"
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"text": "A free account",
|
|
15
|
-
"landscape": "resources/marketing-03-ipad.png",
|
|
16
|
-
"portrait": "resources/marketing-03-iphone.png"
|
|
17
|
-
}
|
|
18
|
-
]
|
|
19
|
-
}
|
|
Binary file
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import {Component, OnDestroy, ViewChild} from '@angular/core';
|
|
2
|
-
import {Nav, Platform} from 'ionic-angular';
|
|
3
|
-
import {StatusBar} from '@ionic-native/status-bar';
|
|
4
|
-
import {SplashScreen} from '@ionic-native/splash-screen';
|
|
5
|
-
import {Network} from '@ionic-native/network';
|
|
6
|
-
import {Subscription} from "rxjs/Subscription";
|
|
7
|
-
|
|
8
|
-
import {HomePage} from '../pages/home/home';
|
|
9
|
-
import {ProfilePage} from "../pages/profile/profile";
|
|
10
|
-
import {FidjService} from "fidj";
|
|
11
|
-
import {LoginPage} from "../pages/login/login";
|
|
12
|
-
import {Profile} from "./shared/profile.service";
|
|
13
|
-
|
|
14
|
-
@Component({
|
|
15
|
-
templateUrl: 'app.html'
|
|
16
|
-
})
|
|
17
|
-
export class MyApp implements OnDestroy {
|
|
18
|
-
@ViewChild(Nav) nav: Nav;
|
|
19
|
-
|
|
20
|
-
rootPage: any = null;
|
|
21
|
-
connected: Subscription;
|
|
22
|
-
pages: Array<{ title: string, component: any }>;
|
|
23
|
-
|
|
24
|
-
constructor(public platform: Platform,
|
|
25
|
-
public statusBar: StatusBar,
|
|
26
|
-
public splashScreen: SplashScreen,
|
|
27
|
-
private network: Network,
|
|
28
|
-
public profile: Profile,
|
|
29
|
-
private fidjService: FidjService) {
|
|
30
|
-
|
|
31
|
-
// used for an example of ngFor and navigation
|
|
32
|
-
this.pages = [
|
|
33
|
-
{title: 'Poker', component: HomePage},
|
|
34
|
-
{title: 'Player', component: ProfilePage},
|
|
35
|
-
];
|
|
36
|
-
|
|
37
|
-
this.initializeApp();
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
initializeApp() {
|
|
41
|
-
this.platform.ready().then(() => {
|
|
42
|
-
// Okay, so the platform is ready and our plugins are available.
|
|
43
|
-
// Here you can do any higher level native things you might need.
|
|
44
|
-
this.statusBar.styleDefault();
|
|
45
|
-
this.initFidj();
|
|
46
|
-
// this.nav.setRoot(LoginPage);
|
|
47
|
-
this.splashScreen.hide();
|
|
48
|
-
|
|
49
|
-
this.connected = this.network.onConnect().subscribe(data => {
|
|
50
|
-
this.initFidj();
|
|
51
|
-
}, error => console.error(error));
|
|
52
|
-
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
ngOnDestroy() {
|
|
57
|
-
this.connected.unsubscribe();
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
initFidj() {
|
|
61
|
-
|
|
62
|
-
this.fidjService.init('getYourFidjId')
|
|
63
|
-
.then(() => {
|
|
64
|
-
this.connected.unsubscribe();
|
|
65
|
-
this.profile.readyForSync.next(true);
|
|
66
|
-
if (this.fidjService.isLoggedIn()) {
|
|
67
|
-
this.nav.setRoot(HomePage);
|
|
68
|
-
} else {
|
|
69
|
-
this.nav.setRoot(LoginPage);
|
|
70
|
-
}
|
|
71
|
-
})
|
|
72
|
-
.catch((err) => {
|
|
73
|
-
alert(JSON.stringify(err));
|
|
74
|
-
this.profile.readyForSync.next(false);
|
|
75
|
-
if (this.fidjService.isLoggedIn()) {
|
|
76
|
-
this.nav.setRoot(HomePage);
|
|
77
|
-
} else {
|
|
78
|
-
this.nav.setRoot(LoginPage);
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
openPage(page) {
|
|
84
|
-
// Reset the content nav to have just this page
|
|
85
|
-
// we wouldn't want the back button to show in this scenario
|
|
86
|
-
this.nav.setRoot(page.component);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
<ion-menu [content]="content" *ngIf="profile.readyForSync | async">
|
|
2
|
-
<ion-header>
|
|
3
|
-
<ion-toolbar>
|
|
4
|
-
<ion-title>Menu</ion-title>
|
|
5
|
-
</ion-toolbar>
|
|
6
|
-
</ion-header>
|
|
7
|
-
|
|
8
|
-
<ion-content>
|
|
9
|
-
<ion-list>
|
|
10
|
-
<button menuClose ion-item *ngFor="let p of pages" (click)="openPage(p)">
|
|
11
|
-
{{p.title}}
|
|
12
|
-
</button>
|
|
13
|
-
</ion-list>
|
|
14
|
-
</ion-content>
|
|
15
|
-
|
|
16
|
-
</ion-menu>
|
|
17
|
-
|
|
18
|
-
<!-- Disable swipe-to-go-back because it's poor UX to combine STGB with side menus -->
|
|
19
|
-
<ion-nav [root]="rootPage" #content swipeBackEnabled="false"></ion-nav>
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import {ErrorHandler, NgModule} from '@angular/core';
|
|
2
|
-
import {IonicApp, IonicErrorHandler, IonicModule, Refresher} from 'ionic-angular';
|
|
3
|
-
import {StatusBar} from '@ionic-native/status-bar';
|
|
4
|
-
import {Network} from "@ionic-native/network";
|
|
5
|
-
import {SplashScreen} from '@ionic-native/splash-screen';
|
|
6
|
-
|
|
7
|
-
import {MyApp} from './app.component';
|
|
8
|
-
import {HomePage} from '../pages/home/home';
|
|
9
|
-
import {SharedModule} from "./shared/shared.module";
|
|
10
|
-
import {ProfilePage} from "../pages/profile/profile";
|
|
11
|
-
import {LoginPage} from "../pages/login/login";
|
|
12
|
-
|
|
13
|
-
@NgModule({
|
|
14
|
-
declarations: [
|
|
15
|
-
MyApp,
|
|
16
|
-
HomePage,
|
|
17
|
-
ProfilePage,
|
|
18
|
-
LoginPage
|
|
19
|
-
],
|
|
20
|
-
imports: [
|
|
21
|
-
SharedModule,
|
|
22
|
-
IonicModule.forRoot(MyApp)
|
|
23
|
-
],
|
|
24
|
-
bootstrap: [IonicApp],
|
|
25
|
-
entryComponents: [
|
|
26
|
-
MyApp,
|
|
27
|
-
HomePage,
|
|
28
|
-
ProfilePage,
|
|
29
|
-
LoginPage
|
|
30
|
-
],
|
|
31
|
-
providers: [
|
|
32
|
-
StatusBar,
|
|
33
|
-
SplashScreen,
|
|
34
|
-
Network,
|
|
35
|
-
Refresher,
|
|
36
|
-
{provide: ErrorHandler, useClass: IonicErrorHandler}
|
|
37
|
-
]
|
|
38
|
-
})
|
|
39
|
-
export class AppModule {
|
|
40
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
// <%= appHomepage %>docs/theming/
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
// App Global Sass
|
|
5
|
-
// --------------------------------------------------
|
|
6
|
-
// Put style rules here that you want to apply globally. These
|
|
7
|
-
// styles are for the entire app and not just one component.
|
|
8
|
-
// Additionally, this file can be also used as an entry point
|
|
9
|
-
// to import other Sass files to be included in the output CSS.
|
|
10
|
-
//
|
|
11
|
-
// Shared Sass variables, which can be used to adjust Ionic's
|
|
12
|
-
// default Sass variables, belong in "theme/variables.scss".
|
|
13
|
-
//
|
|
14
|
-
// To declare rules for a specific mode, create a child rule
|
|
15
|
-
// for the .md, .ios, or .wp mode classes. The mode class is
|
|
16
|
-
// automatically applied to the <body> element in the app.
|