Releases: jhipster/generator-jhipster-ionic
v8.1.0
What’s Changed
- Add support for Angular 14 and Capacitor 4 by @mraible in #712
- Migrate StatusBar and SplashScreen to Capacitor by @mshima in #723
- Migrate camera to Capacitor by @mshima in #721
- Rename Cypress files to follow standards by @mraible in #798
- Fix issue when an entity has two image fields by @amanganiello90 in #799
- Upgrade to Ionic AppAuth 2.0.0 by @mraible in #822
- Lots of dependency updates
Get Started with Ionic for JHipster
- Tutorial: Build Secure Ionic Apps with Angular and JHipster
- See this project's documentation for usage information
- See your project's generated README for iOS, Android, OpenID Connect, and testing instructions
New Contributors
- @DanielFran made their first contribution in #767
- @github-actions made their first contribution in #769
Full Changelog: v8.0.0...v8.1.0
v8.0.0
What’s Changed
- ✨ Now available as a blueprint! (#612) @mshima
- Migrate from Protractor to Cypress (#653 and #644) @mshima and @zhyd1997
- Configure
ng test
to use Jest (#668) @mshima - Add customized code to handle Auth0 logout (#680) @mraible
- Replace Cordova plugins with Capacitor equivalents (#681) @mraible
- Upgrade to Angular 13 and Ionic 6
- Update dependencies and drop unused dependencies
- Cleanup unused karma config (#666) @mraible
- Requires Node 16 LTS
Get Started with Ionic for JHipster
- Tutorial: Build Secure Ionic Apps with Angular and JHipster
- See this project's documentation for usage information
- See your project's generated README for iOS, Android, OpenID Connect, and testing instructions
New Contributors
Full Changelog: v7.1.0...v8.0.0
v7.1.0
What’s Changed
- Upgrade to OktaDev Schematics 5.0.1 and Ionic AppAuth 0.8.4
- Upgrade to Angular 12.1
- Update dependencies to their latest versions
See this project's documentation for installation and usage instructions.
v7.0.0
What’s Changed
- Add support for Capacitor 3.0! 🎊
- 🔥 Upgrade to JHipster 7 (#482) Thanks @mshima!
- Add support for npm 7 (more awesomeness from @mshima)
- Migrated from TSLint to ESLint (ionic-team/starters@fbf471a) Thanks @mhartington!
- Refactored README to have a better table of contents
Get Started with Ionic for JHipster
Install Ionic for JHipster:
npm i -g generator-jhipster-ionic yo
In a directory alongside your JHipster app, create your Ionic app with yo jhipster-ionic
.
- jhipster-app
- <run it here>
To add PWA support to your Ionic app, run:
ng add @angular/pwa
To import your JHipster app's JDL, run yo jhipster-ionic:import-jdl <path-to-jhipster-app>/entities.jdl
.
iOS
Generate a native iOS project with the following commands:
ionic build
ionic capacitor add ios
Add your custom scheme to ios/App/App/Info.plist
:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>com.getcapacitor.capacitor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>capacitor</string>
<string>dev.localhost.ionic</string>
<string>com.okta.dev-737523</string>
</array>
</dict>
</array>
Then, run your project using the Capacitor CLI:
npx cap run ios
Modify CORS Settings in JHipster
In order to communicate with your JHipster app, you'll need to modify its CORS settings (in src/main/resources/config/application-dev.yml
) to allow capacitor://localhost
as an origin.
Android
Generate a native project with the following commands:
ionic build
ionic capacitor add android
Change the custom scheme in android/app/src/main/res/values/strings.xml
to use dev.localhost.ionic
or your reverse domain name:
<string name="custom_url_scheme">com.okta.dev-737523</string>
The SafariViewController Cordova Plugin is installed as part of this project. Capacitor uses AndroidX dependencies, but the SafariViewController plugin uses an older non-AndroidX dependency. Use jetifier to patch usages of old support libraries with the following commands:
npm install jetifier
npx jetify
npx cap sync android
Then, run your project using the Capacitor CLI:
npx cap run android
Modify CORS Settings in JHipster
In order to communicate with your JHipster app, you'll need to modify its CORS settings (in src/main/resources/config/application-dev.yml
) to allow http://localhost
as an origin.
Learn More
See this project's documentation for more information.
v6.1.1
What’s Changed
- Fix e2e tests so everything works with JHipster 6. See this commit for more information.
v6.1.0
What’s Changed
- Add support for JHipster 7 beta (#421)
- Upgrade to Angular 11.2.0 and Ionic CLI 6.13.1
- Upgrade @oktadev/schematics to v3.0.4
- Change gateway integration test to be reactive (#448)
- Update all dependencies to use their latest versions
Get Started
To get started with Ionic for JHipster, create a backend with JHipster, and install the following libraries:
npm install -g @ionic/cli generator-jhipster-ionic yo
Then, run this module to create your Ionic app:
yo jhipster-ionic
This module expects you to already have a JHipster app created. For example:
mkdir -p apps/backend
cd apps/backend
jhipster jdl blog-oauth2
cd ..
yo jhipster-ionic default
cd ionic4j
yo jhipster-ionic:import-jdl ../backend/blog-oauth2.jdl
Then, run your app with ionic serve
. Make sure everything works with npm run e2e
.
See the iOS and Android docs to see how to test your app on a device.
v6.0.0
- Upgrades @oktadev/schematics to v3.0.0. Capacitor is now the default!
- Upgrades to JHipster 6.10.3.
To get started with Ionic4J, create a backend with JHipster, and install the following libraries:
npm install -g @ionic/cli generator-jhipster-ionic yo
Then, run this module to create your Ionic app:
yo jhipster-ionic
This module expects you to already have a JHipster app created. For example:
mkdir -p apps/backend
cd apps/backend
jhipster jdl blog-oauth2
cd ..
yo jhipster-ionic
cd ionic4j
yo jhipster-ionic:import-jdl ../backend/blog-oauth2.jdl
Then, run your app with ionic serve
.
See the iOS and Android docs to see how to test your app on a device.
v5.2.2
- Upgrades @oktadev/schematics to v2.2.0 for Angular 10 + OIDC apps
- Upgrades to JHipster 6.10.1
To get started with Ionic4J, create a backend with JHipster, and install the following libraries:
npm install -g @ionic/cli generator-jhipster-ionic yo
Then, run this module to create your Ionic app:
yo jhipster-ionic
This module expects you to already have a JHipster app created. For example, let's say you have backend/app.jdl
for creating JHipster.
mkdir -p apps/backend
cd apps/backend
jhipster import-jdl app.jdl
cd ..
yo jhipster-ionic
cd ionic4j
yo jhipster-ionic:import-jdl ../backend/app.jdl
v5.2.1
- Removes
/implicit
from redirect URIs because authorization code flow + PKCE is used - Upgrades to JHipster 6.9.0
To get started with Ionic4J, create a backend with JHipster and install the following libraries:
npm install -g @ionic/cli generator-jhipster-ionic yo
Then, run this module to create your Ionic app:
yo jhipster-ionic
v5.2.0
- Migrate from Travis to GitHub Actions for CI (thanks to @Hawkurane and @Shaolans)
- Adds unit and e2e tests for generated entities (thanks @amanganiello90)
- Renames templates to end in
.ejs
- Fixes code coverage reporting
- Fixes date handling in generated entities
To get started with Ionic4J, create a backend with JHipster first. Then install the necessary libraries:
npm install -g @ionic/cli generator-jhipster-ionic yo
Then, run the following to create your Ionic app:
yo jhipster-ionic
NOTE: By default, JHipster's Keycloak is configured to have a 5-minute access token lifetime. I've noticed that this makes it so you have to re-authenticate when you refresh the page (if you're using OAuth 2.0). To make it longer, log in to http://localhost:9080/auth
, then go to Realm Settings > Tokens and change the Access Token Lifespan. This could also be caused by dynamic configuration. I'm not sure. 🙂