Skip to content

IIsaku/widgets-resources

 
 

Repository files navigation

E2E Status Unit tests Script Tests Atlas build Atlas Release Publisn NPM Mendix 9

Widgets resources

A bundle of R&D Platform supported widgets & nanoflow actions for building native mobile & hybrid apps.

Native widgets

Please visit the Mendix Docs for more information on list of available native widgets on Native Mobile Resources module.

Web & Hybrid widgets

Widget Description
Badge Display text or a value as a badge.
Badge Button Display a button with a badge.
Fieldset Group form widgets.
Range Slider Displays a slider with min and max.
Rich Text Display a full text editor.
Signature Displays a signature pad.
Slider Display a slider.
Switch Displays a switch.
Video player Play a video loaded from a URL.

Included nanoflow actions

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

Documentation

Please visit the Mendix Docs for more information on building native mobile apps.

Contributing

See CONTRIBUTING.md.

Developing

  • npm install on root

For developing native widgets in packages/pluggableWidgets:

  • Create a simple Mendix project in Studio
  • Copy all of it's contents to packages-native/test-project.
  • Run npm run build on a desired widget folder. For ex: packages/pluggableWidgets/badge-native/. This will build and copy the mpk to the test-project's correct widget folder.
  • Open and run the project in packages-native/test-project with Mendix Studio

For developing web widgets in packages/pluggableWidgets:

  • Mendix projects for each widget already comes with repo with folder called packages/pluggableWidgets/<widgetName>/tests/testProject.
  • Run npm run pretest:e2e to initialize Mendix project.
  • Run npm run build on a desired widget folder. For ex: packages/pluggableWidgets/badge-web. This will build and copy the mpk to each Mendix project's correct widget folder.
  • Open and run the project in <widgetName>/tests/testProject with Mendix Studio
  • If you don't want to override your test project use the flag --no-update-testProject in test:e2e npm script

Adding new test project to the repo

  • Go to https://github.com/mendix/testProjects and create an appropriate branch name from master
  • Add your .mpr files, commit and push (remember your branch name)
  • Go to widgets-resources monorepo and in the package.json of the widget insert the branch name in the test project section.

For developing in packages/jsActions:

  • Create a simple Mendix project in Studio.
  • Copy all of it's contents to packages/jsActions/nanoflow-commons/dist/mxproject.
  • Run npm run build on nanoflow-commons. This will build and copy the mpk to dist/mxproject's correct folder.

Please bear in mind that when you develop JSActions, creation process is not automatically picked up by Modeler. Which means:

  • First you have to create the ts file in nanoflow-commons/src/.../ExampleName.ts with desired content. Please take a look at examples in src/client.
  • Second you have to create a JsAction with name ExampleName and parameters in Studio.
  • Then every time npm run build is run, the code piece between // BEGIN USER CODE and // END USER CODE will be changed. After you close and open the JSAction in Studiom changes will be picked up automatically.

Releasing Native Mobile Resources

  • Bump the version of the necessary widget by running npm run version your-widget-name desired-version
  • Create draft tag in github repo which will also create release mpk for the necessary widget npm run publish your-widget-name
  • Add notes to your draft
  • Update the necessary widgets to the Mendix Native Mobile Resources app and push the changes
  • Export the module, include every dependency
  • Create a manual tag for the exported module "Native Mobile Resources - AppStore release vx.x.x" and add the Exported Module as asset

Raising problems/issues

  • 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)

About

Mono repository of Widgets

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 54.5%
  • SCSS 33.8%
  • JavaScript 8.0%
  • EJS 1.7%
  • HTML 1.1%
  • Mustache 0.6%
  • Other 0.3%