A bundle of R&D Platform supported widgets & nanoflow actions for building native mobile apps.
Please visit the Mendix Docs for more information on list of available native widgets on Native Mobile Resources module.
- Install yarn via
npm i -g yarn
or using your favorite package manager likehomebrew
- Execute
yarn set version berry
to define the latest version of yarn - Add workspaces plugin running
yarn plugin import workspace-tools
Category | Action |
---|---|
Authentication | Biometric authentication |
Is biometric authentication supported | |
Camera | Save to picture library |
Take picture | |
Take picture advanced | |
Clipboard | Get clipboard content |
Set clipboard content | |
Network | Is cellular connection |
Is connected | |
Is wifi connection | |
Notifications | Cancel all scheduled notifications |
Cancel schedule notification | |
Display notification | |
Get push notification token | |
Has notification permission | |
Request notification permission | |
Schedule notification | |
Set badge number | |
Platform | Change status bar |
Get device info | |
Hide keyboard | |
Open in app browser | |
Play sound | |
Vibrate |
Please visit the Mendix Docs for more information on building native mobile apps.
See CONTRIBUTING.md.
In order to use our mono repo, please make sure you are using the LTS version of Node.js.
As we are using node-gyp
in our dependencies, please make sure to install the required dependencies for this library according to your OS.
Execute yarn
on the root folder of this repo.
Note: for an automated approach (preferred), see scripts/release/README.md
.
Note: this applies to NMR for latest Studio Pro (currently 9.X)
- With correct node version (see
.nvmrc
) in repo root, runyarn reinstall
. - Ensure your current git branch includes all changes intended to be released.
- Including updates to widgets' changelogs and semver version in
package.json
andpackage.xml
.
- Including updates to widgets' changelogs and semver version in
- Build all widgets in release mode; in root of repo run
yarn release:native
. - Copy each widgets'
.mpk
to the NMR project's/widgets
directory, overriding any existing.mpk
s. - (conditional) If the widget is new, it needs to be listed on the NMR project page
NativeModileResources._WidgetExport
.- Configure the widget with basic minimum requirements (e.g. datasource), enough to avoid any project errors.
- Ensure monorepo's
mobile-resources-native
package has correct changelog andpackage.json
version. - cd to
packages/jsActions/mobile-resources-native
and runyarn release
. - Delete contents of NMR project's
javascriptsource/nativemobileresources/actions
. - Copy-and-paste files and folders inside monorepo
packages/jsActions/mobile-resources-native/dist/
to NMR project'sjavascriptsource/nativemobileresources/actions/
. - Update the version in NMR project's
themesource/nativemobileresources/.version
. - Commit any changes to NMR project and push using git.
- Export the NMR project's module called "NativeMobileResources"; right-click the module then "export module package".
- Exclude everything inside
userlib/
andresources/
.
- Exclude everything inside
- Create a GitHub release (see previous releases for example release notes and title, etc.) and add the exported
.mpk
.- By aggregating the widgets' changelogs and the
mobile-resources-native
package's changelog, you can create detailed release notes.
- By aggregating the widgets' changelogs and the
- Create a Mendix Marketplace release and add the exported
.mpk
; follow the release-wizard, ensuring each field is correct.- Make sure the target Mendix version is correct.
- Most of the time you just need to update the module's version, attach a
.mpk
and add release notes.
To release NMR for Studio Pro 8.X, most of the steps are the same, except take note of: https://paper.dropbox.com/doc/Native-Content-Wiki--Bbd0Jfqo9nAEbmkpowVg5n3bAg-3h3CBZeVHXw8dJ1IY9xhJ#:uid=742445305119695634661853&h2=Update-NativeComponentsTestPro
.
- We encourage everyone to open a Support ticket on Mendix Support in case of problems with widgets or scaffolding tools (Pluggable Widgets Generator or Pluggable Widgets Tools)
- If you are having problems with the GIT hooks, where it says that the command
npm
can not be found, try adding this file to the root of your user folder.
# ~/.huskyrc
# This loads nvm.sh and sets the correct PATH before running hook
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"