Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

formio

formio8.4kOSL-3.04.4.1

The formio server application.

Form.io, nodejs

readme

Join the chat at https://gitter.im/formio/formio

Form.io Community Edition

Form.io is a revolutionary combined Form and API platform for progressive applications. This repository serves as the core Form and API engine for https://form.io. This system allows you to build data-driven, form-based applications using a simple drag-and-drop form builder interface. These forms can then easily be embedded within your Angular.js and React applications using the <formio> HTML element.

Form Building & Rendering Demo

Here is a link to a demo of the Form Building and Form Rendering capability that can be hooked into this API platform.

https://formio.github.io/formio.js/app/builder.html

Run with Docker Compose

The fastest way to run this library locally is to use Docker.

  • Install Docker
  • Download and unzip this package to a local directory on your machine.
  • Open up your terminal and navigate to the unzipped folder of this library.
  • Type the following in your terminal
     docker compose up -d
  • Go to the following URL in your browser.
     http://localhost:3001
  • Use the following credentials to login.
  • To change the admin password.

    • Once you login, click on the Admin resource
    • Click View Data
    • Click on the **admin@example.com** row
    • Click Edit Submission
    • Set the password field
    • Click Save Submission
    • Logout
  • Have fun!

Manual Installation (Node + MongoDB)

To get started you will first need the following installed on your machine.

Running with Node.js

You can then download this repository, navigate to the folder in your Terminal, and then type the following.

# install dependencies
yarn
# build the client application
yarn build:portal
# start the server
yarn start

This will walk you through the installation process. When it is done, you will have a running Form.io management application running at the following address in your browser.

http://localhost:3001

Development

To start server with auto restart capability for development simply run this command:

npm run start:dev

Deploy to Hosted Form.io

If you wish to deploy all of your forms and resources into the Form.io Hosted platform @ https://portal.form.io or Form.io Self-Hosted platform, you can do this by using the Form.io CLI command line tool.

npm install -g formio-cli

Once you have this tool installed, you will need to follow these steps.

  • Create a new project within Form.io
  • Create an API Key within this project by going to the Project Settings | Stage Settings | API Keys
  • Next, you can execute the following command to deploy your local project into Hosted Form.io.
formio deploy http://localhost:3001 https://{PROJECTNAME}.form.io --src-key {srcAPIKEY} --dst-key {dstAPIKEY}

You will need to make sure you replace {PROJECTNAME} and {APIKEY} with your new Hosted Form.io project name (found in the API url), as well as the API key that was created in the second step above.

Adding API Keys to your server

API Keys are used for server to server communication. To add API Key(s) to your server you will need to put the property API_KEYS in your environment variables when running the server with node. You can do this by running your server using the following command
API_KEYS=<yourapikey(s)> node --no-node-snapshot main.js

License Change (March 8th, 2020)

This library is now licensed under the OSL-v3 license, which is a copy-left OSI approved license. Please read the license @ https://opensource.org/licenses/OSL-3.0 for more information. Our goal for the change to OSLv3 from BSD is to ensure that appropriate Attribution is provided when creating proprietary products that leverage or extend this library.

Help

We will be updating the help guides found @ https://help.form.io as questions arise and also to help you get started with Form.io.

Thanks for using Form.io!

The Form.io Team.

Security

If you find and/or think you have found a Security issue, please quietly disclose it to security@form.io, and give us sufficient time to patch the issue before disclosing it publicly.

test change 5

changelog

Change Log

All notable changes to this project will be documented in this file

The format is based on Keep a Changelog and this project adheres to Semantic Versioning//

4.4.1

Changed

4.4.1-rc.2

Changed

4.4.0

Changed

4.4.0-rc.38

Changed

4.4.0-rc.37

Changed

4.4.0-rc.36

Changed

4.4.0-rc.35

Changed

4.4.0-rc.34

Changed

4.4.0-rc.33

Changed

4.4.0-rc.31

Changed

4.4.0-rc.30

Changed

4.4.0-rc.29

Changed

4.4.0-rc.28

Changed

4.4.0-rc.27

Changed

4.4.0-rc.26

Changed

4.4.0-rc.25

Changed

4.4.0-rc.24

Changed

4.4.0-rc.23

Changed

4.4.0-rc.22

Changed

4.4.0-rc.21

Changed

4.4.0-rc.20

Changed

4.4.0-rc.19

Changed

4.4.0-rc.18

Changed

4.4.0-rc.17

  • Update ssl to TLS in mongo config

4.4.0-rc.16

  • FIO-9483: fixed email action
  • FIO-8428: Fixes save submission action data transformation
  • FIO-8644 fixed hidden calculated fields on update submission
  • FIO-9499: Update to vm version including mocked NodeList obj
  • FIO-9690: upgrade mongoose to 8.9.5
  • Upgrade mongoose and mongodb to 8.x/6.x

4.4.0-rc.15

Changed

4.4.0-rc.14

  • FIO-8428: Fixes save submission action data transformation

4.4.0-rc.13

  • FIO-9503: fixed nested form data not appearing in emails

4.4.0-rc.12

Changed

4.4.0-rc.9

Changed

4.4.0-rc.8

Changed

  • Updated @formio/vm@1.0.0-rc.9
  • Updated @formio/js@5.1.0-rc.7
  • FIO-9528: Fixes an issue where nested forms submissions are not preloaded and do not appear in the PDF downloads
  • FIO-9472: fixed nested component form values in CSV

4.4.0-rc.7

Changed

Changed

  • FIO-9471 fixed CSVExport for wizard forms

4.4.0-rc.6

Changed

4.4.0-rc.5

Changed

4.4.0-rc.4

Changed

4.4.0-rc.3

Changed

  • Upgrade 5.x renderer
  • FIO-7964: Add resource-based select component validation
  • FIO-8343: Fixed the issue with dereferencing data table components

4.4.0-rc.2

Changed

4.4.0-rc.1

Changed

  • Updated formiojs@4.21.6-rc.2
  • Updated @formio/core@2.4.0-rc.1
  • Updated @formio/vm@0.4.0-rc.1
  • FIO-7080 Handled access for token
  • FIO-7835: eSignature
  • FIO-9308: Fixed an issue where nested forms that start with the same keys submit the wrong data.
  • Increment minor version
  • FIO-8450: Add test for custom error message for unique validation

4.3.0

Changed

4.3.0-rc.38

Changed

4.3.0-rc.37

Changed

4.3.0-rc.36

Changed

  • 4.2.x-4.3.x - FIO-9306: fixed an issue where nested forms do not show data in PDF
  • FIO-9308: Fixed an issue where nested form data was not getting properly submitted because the data was getting reset before it submitted

4.3.0-rc.35

Changed

4.3.0-rc.34

Changed

4.3.0-rc.33

Changed

  • Updated @formio/core@2.3.0-rc.17
  • Updated @formio/vm@0.3.0-rc.24
  • FIO-9006: Added Last-Modified response header on form index request
  • FIO-9006: Added Last-Modified response header on form index request
  • FIO-8866: fixed an issue where action conditions UI shows incorrect operators for premium components

4.3.0-rc.32

Changed

4.3.0-rc.31

Changed

4.3.0-rc.30

Changed

4.3.0-rc.29

Changed

4.3.0-rc.28

Changed

4.3.0-rc.27

Changed

  • Updated @formio/core@2.3.0-rc.8
  • Updated @formio/vm@0.3.0-rc.18
  • FIO-9145: fixed DateFormat setting for created and modified submission parameters
  • FIO-9121: added check for select boxes components IsNotEqualTo condition

4.3.0-rc.26

Changed

4.3.0-rc.25

4.3.0-rc.24

4.3.0-rc.23

Changed

4.3.0-rc.22

Changed

4.3.0-rc.21

Changed

4.3.0-rc.20

Changed

4.3.0-rc.19

Changed

4.3.0-rc.18

Changed

4.3.0-rc.17

Changed

4.3.0-rc.16

Changed

4.3.0-rc.15

Changed

  • Updated @formio/core@2.2.2
  • Updated @formio/vm@0.3.0-rc.9
  • FIO-8235: add timeout to email rendering
  • FIO-8235: add timeout to email rendering
  • FIO-8900-8899: fixed address component in condtions UI and fixed an issue where isEmpty operator always return false for address

4.3.0-rc.14

Changed

  • Updated @formio/core@2.2.2-rc.5
  • Updated @formio/vm@0.3.0-rc.8
  • FIO-8860-8861-8874: fixed an issue where it is impossible to add value for condition operators for time and phone number
  • FIO-8849: fixed an issue where isEqual operator doenot work for condition based on selectboxes
  • FIO-8798: added validation of not full dates

4.3.0-rc.13

Changed

4.3.0-rc.12

Changed

4.3.0-rc.11

Changed

4.3.0-rc.10

Changed

4.3.0-rc.9

Changed

4.3.0-rc.8

Changed

4.3.0-rc.7

Changed

  • Updated @formio/vm@0.3.0-rc.1

  • Fixing the actions logic to call currentForm.components instead of currentFormComponents

4.3.0-rc.6

Changed

4.3.0-rc.5

Changed

4.3.0-rc.4

Changed

4.3.0-rc.3

Changed

  • remove "test" from .npmignore

4.3.0-rc.2

Changed

  • Updated @formio/vm@0.2.1-rc.4
  • Re-implement - FIO-6630: Expanded Actions Logic UI
  • FIO-7330: fix bug of displaying settings for restricted fields
  • FIO-6630: Adds root level properties to action conditions
  • FIO-8150: pin subform submission object
  • FIO-7330: Fixes action settings endpoint crushing
  • FIO-7146: Migrate Formio CI/CD from CircleCI to Github Actions

4.2.1-rc.5

Changed

4.2.1-rc.4

Changed

4.2.1-rc.3

Changed

  • We need to skip rc.2 because the @formio/vm@1.0.x was accidentally brought in.

4.2.1-rc.1

Changed

4.2.0

Changed

4.2.0-rc.6

Changed

4.2.0-rc.5

Changed

4.2.0-rc.4

Changed

  • Updated formiojs@4.21.0-rc.2
  • Updated @formio/core@2.1.0-rc.2
  • Updated @formio/vm@0.2.0-rc.2
  • FIO-8152 & FIO-8137: Check if Import Resource Exists in New Project for Select Component with Resource & De-ref default values on select with resource
  • FIO-8152: Check if Import Resource Exists in New Project for Select Component with Resource

4.2.0-rc.3

Changed

  • Revert " FIO-8152 & FIO-8137: Check if Import Resource Exists in New Project for Select Component with Resource & De-ref default values on select with resource"

4.2.0-rc.2

  • fix validation error on title length

4.2.0-rc.1

Changed

  • Updated formiojs@4.21.0-rc.1
  • Updated @formio/core@2.1.0-rc.1
  • Updated @formio/vm@0.2.0-rc.1
  • FIO-7292: Added own check to delete file from storage
  • FIO-7829: Removed the flattened components which is not necessary wit…
  • FIO 7522 Encrypted Fields Not Re-Encrypted to New DB Secret
  • FIO-7933 Added pdfComponents to Form schema
  • FIO-7933 fixed tests
  • FIO-8152 & FIO-8137: Check if Import Resource Exists in New Project for Select Component with Resource & De-ref default values on select with resource
  • FIO-8251 added inputmask library
  • FIO 7488: add timeout to evaluations

4.1.0-rc.4

Changed

  • FIO 8282: add ObjectID transform
  • FIO 8282: add ObjectID transform
  • FIO 8282: add ObjectID transform
  • FIO 8282: add ObjectID transform

4.1.0-rc.3

Changed

4.1.0-rc.2

Changed

4.1.0-rc.1

Changed

  • Updated formiojs@4.20.0-rc.2
  • Updated @formio/vm@0.0.8-rc.1
  • FIO-7623: Fixes an issue where Email action with Logs turned on will fail for the nested form with Attach Submission PDF
  • FIO 7671: nested paths cosmosdb feature test
  • FIO 7671: nested paths cosmosdb feature test
  • FIO-8087: Fixes an issue where Email Action with logs enabled don't render nested form value and shows ID instead
  • FIO-5471: Remove mongoose.save from codebase
  • FIO-7932: Modernize the Dockerfile to decouple from host machine

4.0.0

Changed

4.0.0-rc.33

Changed

4.0.0-rc.32

Changed

4.0.0-rc.31

Changed

4.0.0-rc.30

Changed

4.0.0-rc.29

Changed

4.0.0-rc.26

Changed

4.0.0-rc.25

Changed

Changed

  • add additionalDeps hook to validation process

4.0.0-rc.24

Changed

4.0.0-rc.23

Changed

4.0.0-rc.22

Changed

4.0.0-rc.21

Changed

4.0.0-rc.20

Changed

4.0.0-rc.19

Changed

4.0.0-rc.18

Changed

4.0.0-rc.17

Changed

4.0.0-rc.16

Changed

4.0.0-rc.15

Changed

4.0.0-rc.14

Changed

4.0.0-rc.13

Changed

4.0.0-rc.12

Changed

4.0.0-rc.11

Changed

4.0.0-rc.10

Changed

4.0.0-rc.9

Changed

4.0.0-rc.8

4.0.0-rc.7

  • Revert node update for later inclusion

4.0.0-rc.6

Changed

  • Update node engine to >=20.0.0

4.0.0-rc.5

Changed

4.0.0-rc.4

Changed

4.0.0-rc.3

Changed

  • FIO-7938: Fix server fetch process

4.0.0-rc.2

Changed

4.0.0-rc.1

Changed

  • Major Version update

3.5.0-rc.6

Changed

3.5.0-rc.5

Changed

3.5.0-rc.4

Changed

3.5.0-rc.3

Changed

3.5.0-rc.2

Changed

3.5.0-rc.1

Changed

3.4.1-rc.4

Changed

3.4.1-rc.3

Changed

3.4.1-rc.2

Changed

3.4.1-rc.1

Changed

  • Updated formiojs@4.18.1-rc.1
  • Updated formio-workers@1.20.1-rc.1
  • FIO-7514: fixed an issue where submission reference object is not attached to the value of select component with reference enabled
  • FIO-7549: evaluate axios upgrades and CVE resolution

3.4.0

Changed

3.4.0-rc.19

Changed

  • revert changes related to FIO-7125 feature - missed commits

3.4.0-rc.18

Changed

  • revert changes related to FIO-7125 feature

3.4.0-rc.17

Changed

3.4.0-rc.16

Changed

3.4.0-rc.15

Changed

3.4.0-rc.14

Changed

3.4.0-rc.13

Changed

  • Pinned axios (from mailgun.js) to v1.5.1

3.4.0-rc.12

Changed

3.4.0-rc.11

Changed

  • Fix tests

3.4.0-rc.10

Changed

  • Updated formio-workers@1.20.0-rc.8
  • FIO-7491: fixed an issue where dataTable component with resource data type does not work after exporting/importing
  • FIO-7510: Revert isolated vm changes

3.4.0-rc.9

Changed

3.4.0-rc.8

Changed

3.4.0-rc.7

Changed

  • FIO-7125: Adds password protected update feature to the SaveSubmission action and async variations of cache methods

3.4.0-rc.6

Changed

3.4.0-rc.5

Changed

  • bugfix: add catch block to nunjucks injection

3.4.0-rc.4

Changed

3.4.0-rc.3

Changed

Changed

  • Revert - FIO-6630: Expanded Actions Logic UI

3.4.0-rc.2

Changed

3.4.0-rc.1

Changed

Changed

3.3.0-rc.2

Changed

3.3.0-rc.1

Changed

  • Updated formiojs@4.17.0-rc.2
  • Updated formio-workers@1.19.0-rc.1
  • FIO-6919: fixed value for Signature submission in Data Tab
  • FIO-5731: fixed validation error for wizard forms with advanced conditions
  • FIO-6966: Fixes empty address component data in CSV

3.2.0

Changed

3.2.0-rc.9

Changed

3.2.0-rc.8

Changed

3.2.0-rc.7

Changed

3.2.0-rc.6

Changed

  • FIO-4216 | FIO-6601 - Fixes no custom submission collection lookup when getting submissions
  • FIO-7166: Adding a mongodb feature check to core

3.2.0-rc.5

Changed

  • FIO-7161: fixed issue with possible undefined value for radio component in csv …
  • FIO-7067: fixed issue with empty value for patch request

3.2.0-rc.4

Changed

3.2.0-rc.3

Changed

3.2.0-rc.2

Changed

3.2.0-rc.1

Fixed

  • FIO-5731: fixed validation error for wizard forms with advanced conditions
  • FIO-6966: Fixes empty address component data in CSV
  • FIO-6601: Fix getting submissions by reference from custom submissions collection
  • FIO-4500: Fixes an issue where specified in the component settings delimiter is not used for CSVExport of Tags component data
  • FIO-6414: fixed filtering issues inside DT
  • FIO-4216: Fixes 'Resource not found' issue when using submission collection and trying to retrieve submission using x-token
  • FIO-6840: Refactor authentication to use case-insensitive query and fallback to $regex
  • FIO-6729: changed the output of data in the logs
  • FIO-3840: fixed swagger spec definition for components with obj type
  • FIO-4809: Added tests for Wizard suffix/prefix
  • Bump json5 from 2.2.1 to 2.2.3
  • Bump @xmldom/xmldom from 0.7.5 to 0.7.11
  • Bump nunjucks from 3.2.3 to 3.2.4
  • Bump vm2 from 3.9.11 to 3.9.18
  • Bump semver from 7.3.8 to 7.5.2
  • Bump cookiejar from 2.1.3 to 2.1.4
  • FIO-6919: fixed value for Signature submission in Data Tab

3.1.0-rc.5

Fixed

  • FIO 6579: another potential problem with legacy templates
  • FIO-6424: fixed displaying of Select component with Save as reference property when download PDF

3.1.0-rc.4

Changed

  • TO-DO: ADD INFO HERE.

3.1.0-rc.3

Changed

Fixed

  • FIO-5688: Allow for a DEFAULT_TRANSPORT to enable the default sending…

3.1.0-rc.2

Changed

  • Revert "FIO-5497: fixed DeprecationWarning for crypto.createDecipher"
  • FIO-5709: fix the response radio value in the CSV shows as blank

3.1.0-rc.1

Changed

Changed

  • Increment minor version.
  • Remove submission collection tests in open source core
  • upgrade jsonwebtoken dependency
  • Allow the display of all images and signatures in index when ?full=true is provided in the url
  • Revert "FIO-5497: fixed DeprecationWarning for crypto.createDecipher"

Fixed

  • FIO-4189: fixed advanced logic not working inside Nested Form
  • FIO-5497: fixed DeprecationWarning for crypto.createDecipher
  • FIO-5471: Removed mongoose.save from codebase
  • FIO-5860: export error caused by old temp
  • FIO-5860: fixed tests
  • Revert "FIO-5233: fixed an issue with incorrect values in different timezones…"
  • FIO-5911: update email action steps
  • FIO-5785 Fixed Select component submission showing id instead of template for URL data source
  • FIO-5904: fixed saving data for Components outside of Wizards
  • FIO-6069: document db restrictions handling
  • FIO-5904: Fixed a bug where data for form components wouldn't save if outside of a wizard
  • FIO-5688: Allow for a DEFAULT_TRANSPORT to enable the default sending method for emails.
  • FIO-6579: Fix project template exports crashing the server

3.0.0-rc.11

Fixed

  • FIO-5494: removed erroneous empty addresses
  • FIO-5774: added revisions of submissions collections
  • FIO-5756: PDF | Regression | FFT 502 Bad gateway error after Click on submit
  • FIO-5495: added submission data for delete req

3.0.0-rc.10

Fixed

  • FIO-5435: fixed exists endpoint with submission collections
  • FIO-5090: vid numbering fix

Changed

3.0.0-rc.9

Fixed

  • FIO-5433: fixed (snyk) Prototype Pollution in mongoose
  • Upgrade dependencies.

3.0.0-rc.8

Fixed

  • FIO-4433: fixed recalculation on server for draft submission

3.0.0-rc.7

Fixed

  • FIO-5155: Fixes submissions not loaded for sub forms with array data structure
  • FIO-5363: deleted default value of transport select for email action settings

3.0.0-rc.6

Fixed

  • FIO-5334: fixed typo in the email action settings bcc placeholder

3.0.0-rc.5

Fixed

  • FIO-5199: Provided user information for external users
  • FIO-5233: fixed an issue with incorrect values in different timezones

3.0.0-rc.4

Fixed

  • Fixes Group Permissions issue

3.0.0-rc.3

Fixed

  • Issue with the noValidate to allow the request object to set it before.

3.0.0-rc.2

Fixed

  • fixed processing of loadRevision execution results
  • FIO-4974: allowed to process all types of requests without a body for the webhook action
  • FIO-5076: fixed subId parameter
  • FIO-5076: synchronized form id and submission id
  • FIO-5090: form revisions transfer for stage deployment
  • FIO-5000: Change to use accept list for accepted headers.
  • FIO-4860: Added new index to action items
  • FIO-4859: Field based access for patch request fix
  • FIO-4448: Adds route for deleting all form submissions with x-delete-confirm header check
  • Allow all submission data setting with form setting changes.

3.0.0-rc.1

Breaking Change

  • Removed the SQL Action

Fixed

  • Fixed issues where form revisions with original configured would not
  • FIO-4741: Added max password length for password reset

Added

  • Add noValidate property to req object on submission validation
  • Added public config support for OSS

Changed

2.5.0-rc.8

Changed

2.5.0-rc.7

Fixed

  • FIO-4781: Fixing email pdf attachments.

2.5.0-rc.6

Changed

2.5.0-rc.5

Changed

2.5.0-rc.4

Changed

2.5.0-rc.3

Changed

Fixed

  • Revert "FIO-4216: 'Resource not found' when get submission form submission collection"

2.5.0-rc.2

Changed

Fixed

  • Fixed a crash in resource field removal.
  • FIO-4359: submission revision issue fix

2.5.0-rc.1

Fixed

  • FIO-4359: submission revisions

2.4.0-rc.2

Changed

2.4.0-rc.1

Changed

Changed

Fixed

  • FIO-3853: fixed export json function freeze

2.3.3

Changed

  • Official Release

2.3.3-rc.3

Changed

2.3.3-rc.2

Fixed

  • FIO-4455: Fixes value calculation on conditionally shown field

2.3.3-rc.1

Changed

2.3.2

Changed

  • Official Release

2.3.2-rc.3

Fixed

  • FIO-3042: Return current endpoint to whitelist
  • FIO-4216: 'Resource not found' when get submission form submission collection
  • FIO-3737: fixed reCAPTCHA submission protection issue
  • FIO-1453: formio.template.import expanded

2.3.2-rc.2

Changed

Changed

  • FIO-4088: added tests for patch submission
  • FIO-4228: removed parsing of MONGO_HIGH_AVAILABILITY

2.3.2-rc.1

Changed

2.3.1

Changed

2.3.1-rc.1

Changed

2.3.0

Changed

2.3.0-rc.17

Changed

2.3.0-rc.16

Fixed

  • Adding /current back to permission whitelist.

2.3.0-rc.15

Fixed

  • Issue where Reset Password was not calling next method.

2.3.0-rc.14

Changed

Fixed

  • FIO-805: empty stage creating issue fix

2.3.0-rc.13

Fixed

  • FIO-3783: Build fix
  • FIO-3780: direct the sending of emails without user parameter to non-priority tasks queue

Changed

2.3.0-rc.12

  • Revert "FIO-3763 Close ability to hit a form with get request as an anonymous…"

2.3.0-rc.11

Changed

2.3.0-rc.10

Changed

2.3.0-rc.9

Fixed

  • FIO-3436: Refactored so that any email address can be set as Reply-To
  • FIO-3783: Added renderingMethod option to Email action.
  • FIO-3950: Export JSON/CSV doesn't work
  • FIO-3763 Close ability to hit a form with get request as an anonymous user while form access turned off
  • FIO-3561: Required field is showing as invalid and form can't be submitted

2.3.0-rc.8

Changed

2.3.0-rc.7

Changed

Fixed

  • Bootup race conditions.
  • FIO-3403: feat(import): search for existing roles in DB when importing an incomplete template
  • FIO-1453: fixed search for missing resources

2.3.0-rc.6

Fixed

  • Problem where the MongoDB sslCA was reading it as a string and messing up the mongo driver.

2.3.0-rc.5

Changed

  • Fixed the field based access.

2.3.0-rc.4

Changed

Fixed

  • Fixing issue with mailgun not working with latest version.
  • Fixed an SSL Cert issue related to mongoose.

2.3.0-rc.3

Changed

  • Upgrade dependencies and fixed tests.

2.3.0-rc.2

Fixed

  • Issue with loading SSL CA file with latest mongodb driver.

Changed

2.3.0-rc.1

Fixed

  • FIO-790: checkbox set as radio showing blank on CSV downloads issue
  • FIO-1442: Adds an ability to set transformers for the specific fields in the csv exporter.
  • FIO-3555, FIO-1538: Implements 2FA
  • FIO-1038: limiting default email usage provider
  • FIO-899: removing roles issue fix
  • FIO-885: Import/Export database error handling
  • FIO-2764: Fixes an issue when the signature component was set a default value with noDefaults option
  • FIO-3624: fixed problem on sending get request to /token endpoint using x-token header
  • FIO-3583: Fixed issue with recursion in the form load routines.
  • Issues related to the MongoDB 4.1.0 upgrade.

Added

  • FIO-3435: form definition downloading according query parameter
  • FIO-3436: ability to set reply to header

Changed

2.2.4-rc.1

Changed

2.2.3

Changed

  • No changes. Official release.

2.2.3-rc.11

Fixed

2.2.3-rc.10

Changed

2.2.3-rc.9

Fixed

  • FIO-3441: resolve vulnerabilities
  • FIO-898: Implements keeping POST request headers in submission.metadata.headers.

2.2.3-rc.8

Fixed

  • Fixed issues with action conditions not working when "submission" or "previous" were used in the conditional.

Changed

2.2.3-rc.7

Fixed

  • Tests to make them more robust.

2.2.3-rc.6

Fixed

  • Resolved broken test.

2.2.3-rc.5

Changed

Fixed

  • Improve validation performance by moving VM instance outside Evaluator
  • FIO-1453: Add import fallbacks
  • FIO-3441: resolve vulnerabilities
  • Ensure we truncate the jwtIssuedAfter.
  • FIO-3471: Ensure that the queries include all indexes to speed up performance.

2.2.3-rc.4

Fixed

  • FIO-2834: Fixes an issue where File's values are shown in CSV as empty
  • Unhid block component label in webhook action settings form
  • FIO-3099: Implements the oAuthM2M Token hook to the Login Action
  • FIO-3116: Fixes an issue files inside containers and editgrids weren't attaching to an email. Added tests
  • FIO-3251 fix: values which should be cleared on hide are used in calculations before it happened

Changed

2.2.3-rc.2

Fixed

  • FIO-3369: Removed the submissionCollection hook which was messing up submission collection.

2.2.3-rc.1

Changed

  • FIO-3099: Adds a hook for the Access-Control-Expose-Headers

    2.2.2

    Changed

  • No changes. Released 2.2.2-rc.8 as official release.

2.2.2-rc.8

Fixed

  • Issue where upgrading mailgun-transport causes server to crash.

2.2.2-rc.7

Fixed

  • Fixing tests further.

2.2.2-rc.6

Fixed

  • Custom submission collection tests.

2.2.2-rc.5

Fixed

  • Custom submission collection tests.

2.2.2-rc.4

Fixed

  • FIO-3369: Removed the submissionCollection hook which was messing up the submission collection.

2.2.2-rc.3

Changed

2.2.2-rc.2

Fixed

  • FIO-3223: Fixes an error with out of memory
  • Fixing potential references to null variables.

Changed

2.2.2-rc.1

Fixed

  • FIO-3091: added automatic useUnifiedTopology parameter setting
  • FIO-3095: Allow for checking email accounts before sending emails.
  • FIO-3040: Adds tests for FIO-3040 when wasn't handle the Webhook error and respond instead of spinning forever.

2.2.1

Changed

  • No changes. Released 2.2.1-rc.2 as official release.

2.2.1-rc.2

Changed

2.2.1-rc.1

Fixed

  • FIO-2823: Fixes an issue when custom mongodb collection on a resource breaks the resource and the submission data cannot be accessed
  • Changed action items "require" to "required"
  • Added extra check to prevent server crashes

Changed

2.2.0

Changed

  • Official release of 2.2.0-rc.2

2.2.0-rc.2

Fixed

  • FIO-2766: preventing unathorized users from viewing form definition

2.2.0-rc.1

Changed

Fixed

  • FIO-2484: Implements Split Roles PR with Group permission

2.1.1

Changed

  • No changes. Official Release.

2.1.1-rc.2

Fixed

  • Modified the expiring indexes to have try/caches around all instances.

2.1.1-rc.1

Changed

  • Adding try/catch around expiring indexes for DB's that don't support it.

2.1.0

Changed

2.1.0-rc.18

Changed

2.1.0-rc.17

Changed

2.1.0-rc.16

2.1.0-rc.15

Fixed

  • FIO-2634: Fixes an issue where Signatures/Files values are excluded from the response when load subForms submissions by a reference

Changed

2.1.0-rc.14

Fixed

2.1.0-rc.13

Fixed

2.1.0-rc.12

Fixed

  • FIO-1555: fixed an issue where server validation errors do not come from the server if component with error is not on the first wizard page

Changed

2.1.0-rc.10

Changed

  • Using cloneDeep on vm sandboxes.
  • Updated dependencies.

2.1.0-rc.7

Changed

  • Using @formio/node-fetch-http-proxy instead of local file.
  • FIO-1528: FIO-1528: change default 'from' email address domain to use example in the deployment environment variable
  • Ensure we cloneDeep vm context for added protection.

2.1.0-rc.6

Fixed

  • Automated tests.

2.1.0-rc.5

Changed

  • Fixed serer to work with latest formio-workers.

2.1.0-rc.4

Changed

Fixed

  • FIO-476: Fixes an issue when Sketch Pad didn't show data on CSV export - showed a list of empty strings.
  • fix: allow Docker to load git npm paths

2.1.0-rc.3

Added

  • Added action logs to form context only.

Fixed

  • FIO-1309: Fixed recalculation of field if calculateServer is disabled.
  • FIO-888: Adds CSV Formula Injection Protection
  • FIO-1140: Fixes an issue where deprecated formRevision property is added when deploying a version to a stage

2.1.0-rc.2

Fixed

  • FIO-832: fixed error code returned when trying to delete the Everyone role

2.1.0-rc.1

Changed

Fixed

  • FIO-838: Fixes an issue when a "Save Submission to resource" action had an incorrect priority.
  • FIO-854: Amazon DocumentDB to update default engine version to 4.0.0
  • FIO-1163: fixed an issue where submission data is deleted for components with the same key as parent layout component
  • FIO-911: Entire project JSON is dumped into the server logs
  • FIO-128: Added markModifiedParameters method to utils.

2.0.1-rc.2

Fixed

  • FIO-832: fixed error code returned when trying to delete the Everyone role

Changed

2.0.1-rc.1

Changed

2.0.0

Changed

  • No changes. Released 2.0.0-rc.42 as official release.

2.0.0-rc.42

Fixed

  • FIO-1175: User is being automatically logged out on remote server
  • Fix: add a token for resources select components

Changed

2.0.0-rc.41

Changed

  • Temporarily reverted the expiring action logs. Will wait for 2.1.0 to release this feature.
  • Changed field match access schema to have splitted permissions instead

2.0.0-rc.40

Fixed

  • FIO-1125: Unable to download a CSV report with Select component

Changed

2.0.0-rc.39

Changed

2.0.0-rc.38

Breaking Change

  • FIO-1027: Adds an ability to switch on/off permissions to access the EXISTS endpoint. Makes access with permissions by default.

Fixed

  • FIO-847: Fixes an issue when in post submission data where any datagrid or editgrid are some not empty string, the server was crashing.
  • FIO-761: Fixes an issue when the server throws 'Error: cyclic dependency detected' when calling Webhook action

Changed

2.0.0-rc.37

Changed

  • Removed the LegacyValidator.
  • Decreased limit for resource select to avoid error
  • Fixed typo in fieldMatchAccess
  • FIO-853: Added check if fieldMatchAccess object is not empty
  • FIO-1035: Fixes an issue when a nested form inside the nested Form was receiving "Too many recursive requests." on submit.

2.0.0-rc.36

Fixed

  • FOR-2868: Adds an ability to pass the rejectUnauthorized flag to the fetch method.
  • FIO-994: Makes onlyAvailableItems validation optional

Changed

2.0.0-rc.35

Fixed

  • FOR-2874: Added server side validation of recaptcha token.
  • Adding expiring action items.

Changed

2.0.0-rc.34

Fixed

  • Issues with ResetPassword action not setting form object correctly within email parameters.

2.0.0-rc.33

Fixed

  • Tests regarding new validations.

2.0.0-rc.32

Added

  • FJS-1380: Adds field actions for Select and Radio which allow onlyAvailableItems validation

Fixed

  • FJS-1297: fix submission of nested wizards

Changed

2.0.0-rc.31

Fixed

  • FJS-1443: add exceptions for the DynamicWizard component
  • Fixes an issue where for validating a submission with a form revision always was getting the latest version of the form.

Changed

2.0.0-rc.30

Fixed

  • Fix references updating

Changed

2.0.0-rc.29

Fixed

  • FJS-1336, FJS-1337, FJS-1422: Adds configFormio hook call to the index.js

Upgrade

2.0.0-rc.28

Fixed

  • 112 split roles bug that fixes server tests

Changed

2.0.0-rc.27

Changed

2.0.0-rc.26

Fixed

  • Failing tests for enterprise.

2.0.0-rc.25

Fixed

  • FOR-2805: Wizard Conditional pages not saving data
  • 112 split permissions for field based resource access

Changed

2.0.0-rc.24

Fixed

    • Errors being thrown about calling save() in parallel

2.0.0-rc.23

Fixed

  • FOR-2741: Fixes memory leaks that come from Validator.
  • Fixes an issue when we get a server error while submitting a form with conditional page with subform inside.

Changed

2.0.0-rc.22

Fixed

  • Problem where btoa not being defined would cause validator to crash.

2.0.0-rc.21

Fixed

  • Issue where server calculations were not getting performed correctly."

2.0.0-rc.20

Fixed

  • FOR-2771: Fixed issue where calculated values get overridden on the server.

2.0.0-rc.19

Changed

2.0.0-rc.18

Fixed

  • FJS-1240: fixed an issue where address data (if address is inside dataGrid) is missed when loading as CSV.

2.0.0-rc.17

Fixed

  • Fixed issues where data would be ignored due to bug with renderer validation.

Changed

2.0.0-rc.16

Fixed

  • Revert "Fixed an issue where submission of reference Nested Form is not updated when was modified through the parent…"

2.0.0-rc.15

Changed

Fixed

  • Fix some updates resetting password due to isomorphic validator adding back a default value.
  • Fix queries so indexes exist for cosmos.

2.0.0-rc.14

Fixed

  • Adding ability to execute field actions on dryrun. Fixes validate endpoint for DataSource component.

2.0.0-rc.13

Fixed

  • FOR-2719: Fixes an issue where new actions and removed actions weren't deployed on a stage.
  • Ensure we also check hostname when checking the NO_PROXY environment variable.

Changed

  • FOR-2722: Updated a test for Webhook actions.
  • Upgrade mongodb@3.6.1

2.0.0-rc.12

Fixed

  • Ensure the mongoSA variables are always set correctly.
  • Fixing an issue with the form revisions not getting set correctly when loading with full=true.

Changed

2.0.0-rc.11

Removed

  • Method override for security reasons.

2.0.0-rc.10

Fixed

  • FJS-1129: fixes an issue where the Custom Error Message is not used for the Unique validation error
  • FOR-2728: modified CSVExporter preprocessor to convert roadio component data to string

Added

  • A way to include the mongoCA certificate as a file path.

Changed

  • Changing configuration (with reverse compatibility) of the mongoSA variable to the more correct mongoCA name.

2.0.0-rc.8

Changed

  • Merged changes from 1.x

2.0.0-rc.8

Changed

2.0.0-rc.7

Fixed

  • FOR-2708: Remove resource from action if it was not found on import.
  • FJS-1049: Fixed CSV export of components with minimized schema.
  • Fixed setting of formRevision property on import when revisions are enabled.

2.0.0-rc.5-6

Changed

  • Updated logging functionality.

2.0.0-rc.1-4

Changed

  • Merge changes from 1.x

2.0.0-beta.10

Changed

  • Update formio.js to 4.1.0-rc.13

2.0.0-beta.9

Changed

  • retagging

2.0.0-beta.8

Added

  • Additional options to fetch wrapper.

2.0.0-beta.7

Added

  • New hooks to extend the authentication system.

Changed

  • Update formio.js to 4.1.0-rc.6

2.0.0-beta.6

Added

  • Add tree validation to server.
  • Mongo SSL Certificate options.

Changed

  • Replace request library with node-fetch.
  • Updated formio.js to 4.10.0-rc.4 to fix isomorphic validation.

2.0.0-beta.5

Changed

  • Upgrade dependencies.
  • FJS 864: Fixed login action resources limitation
  • Set email for User and Admin ressource required & unique
  • Fixed server crash on invalid x-query

2.0.0-beta.4

Added

  • Hooks for the alias.
  • Hooks for the formResponse.

Changed

2.0.0-beta.3

Changed

2.0.0-beta.2

Changed

  • Upgrading dependencies.

2.0.0-beta.1

Breaking Changes

  • Isomorphic validations. May cause error interface and codes to change slightly.

Changed

1.90.7

Fixed

  • Problem where the req.params would get removed before sending off emails.

1.90.6

Fixed

1.90.5

Added

  • Add TLS connection for mongoose connection as well.

1.90.4

Changed

  • Upgrade dependencies.

Fixed

  • FOR-2708: Remove resource from action if it was not found on import.
  • FJS-1049: Fixed CSV export of components with minimized schema.

1.90.3

Changed

  • Fixed setting of formRevision property on import when revisions are enabled.

1.90.2

Changed

  • Cherry pick email fix for large emails.

1.90.1

Changed

  • Resource.js library to 2.3.1 to revert change in aggregation.

1.90.0

Fixed

  • A bad revert.

1.89.0

Changed

  • Revert "Added a middleware for loading a full form schema for use component settings.

1.88.0

Fixed

  • FOR-2707: Fixes an issue where the PATCH request was being failed if a form has a nested form as reference.
  • Server crashes when a bad query is passed to ResourceJS
  • Added a middleware for loading a full form schema for use component settings.

1.87.0

Fixed

  • Export of form controllers.

1.86.0

Fixed

  • FJS-704: Address Refactor Issues
  • Refactored for the verbose health endpoint
  • Fixed Form Controller export.

Added

  • Support Extra form fields exporting

Changed

1.85.0

Changed

  • FJS-953: Fixed getting error when exporting scv with time inside dataGrid
  • PDF 14 - Allow PDF Submission endpoint to be retrieved by 'Form Alias'

1.84.0

Fixed

  • Fixed callback invocation after alterFormSave series.

1.83.0

Changed

Fixed

  • FOR-2665: Ensure calculate value eval context

1.82.0

Added

  • Template import/export improvements.

1.81.0

Added

  • Fix (Tree): added validation schema.

1.80.0

Changed

  • FJS-917: Add options to use SSL Certs with Mongo connection.

1.79.0

Added

  • More options for mapping Save Submission action to a Resource.

1.78.0

Changed

  • Reverted action logs to save correctly.

Fixed

  • Problem where malformed data could throw errors.

1.77.0

Fixed

  • Issue with email renderings not working with workers upgrade.
  • EditGrid issues when exported in CSV format.

1.76.0

Fixed

  • FJS 864: Fixed login action resources limitation
  • Fixed server crash on invalid x-query

1.75.0

Fixed

  • Issues where loading subforms could lose references.

Changed

1.74.0

Changed

Added

  • Debug messages to the loadSubForms method.
  • Validator for tagpad component.

1.73.0

Fixed

  • Validations for checkboxes configured as radio inputs.

Changed

1.72.0

Changed

Fixed

  • Fixed CSVExporter: Add default format for datetime

1.71.0

Changed

Fixed

  • Fixing dryrun for field actions so they execute, and adding more hooks for formResponse and alias.

1.70.0

Added

  • Tokens to the calculate value evaluate contexts.

1.69.0

Added

  • The decoded JWT Token as "token" to the evaluation context for Calculated Values.

Changed

1.68.0

Changed

1.67.0

Fixed

  • Ensure we call loadForm hook for all types of form loading methods.

Changed

1.66.0

Changed

1.65.0

Changed

Added

  • Added actionsQuery alter hook.

1.64.0

Fixed

  • All deprecations and warnings.

Changed

1.63.11

Fixed

  • Set sort order of exports.

1.63.10

Fixed

  • FOR-2608: Fixed Cc and Bcc for Mailgun.
  • FOR-2603: Fixed issue when server would throw an error if nested submission was not found.

Added

  • Added missing variables to check conditional context.

Changed

1.63.9

Fixed

  • Fixed some more email issues with BCC and CC.

1.63.8

Added

  • Added support for Cc and Bcc for Email action.

Fixed

  • Fixed file component validations.

Changed

1.63.7

Fixed

  • Tests to ignore controller form property.

Changed

1.63.6

Changed

1.63.5

Fixed

  • Issue where the Swagger IO intreface was not working.

1.63.4

Fixed

  • Issue where Swagger could throw an unhandled error.

Changed

1.63.3

Changed

  • Reverted the sort order of CSV exports.

1.63.2

Fixed

  • Other issues with CSV export using wizards.

1.63.1

Fixed

  • Login lockout test wait times to be more forgiving.

1.63.0

Fixed

  • Issue where CSV exports with wizards was throwing errors.

Changed

1.62.0

Added

  • create Group Permissions layer

Changed

  • write and admin Group Permissions layers to have ability to create submissions

Fixed

  • Convert field and property handlers to work with complex data types by managing the path correctly.

1.61.0

Changed

  • Upgraded dependencies

Added

  • Add submission, previous and moment to action should execute context.
  • Added Merge Component Schema action type.
  • Added api token support

Fixed

  • Fixed temp token check generated with admin key
  • Fix URL to download Github archives
  • Fix nested form submissions export

1.60.8

Addded

  • ignoreTLS flag for the nodemailer SMTP configurations.

1.60.7

Fixed

  • Problems where empty datetime components were returning the wrong values.

1.60.6

Fixed

  • Issue with multiple datetime fields erasing the values provided.

1.60.5

Changed

Added

  • Submission filter queries to the export functions.

1.60.4

Fixed

  • Fix Mongoose deprecation warnings

Changed

Added

  • Add the ability to alter actions.

1.60.3

Changed

1.60.2

Added

  • Add minItems and maxItems validation

Changed

1.60.1

Fixed

  • Default name of environment variable to change the email batch size.
  • Not running unique keys validation on components with missing input property

1.60.0

Fixed

  • Crash in the Login Action when no settings were provided.

Added

  • Support for bulk emails by breaking up a large amount into chunks.

1.59.0

Fixed

Changed

1.58.0

Changed

  • FOR-2499: Always treat actionContext alter hook as Promise-returning

1.57.0

Fixed

  • Fix issue where field logic value settings were forced to a string

Changed

  • FOR-2499: Make actionContext hook async

1.56.0

Fixed

  • FOR-2493: Added configurable access endpoints.
  • FOR-2500: Added empty subsubmission data check before updating.
  • FOR-2493: Fix issue with files in submission index endpoint when URL is undefined

Changed

  • Upgraded formio-workers to 1.13.0 to resolve email issue with empty file uploads.
  • Upgrade mongoose to 5.7.0

1.55.0

Added

  • Configurable access endpoint.

1.54.0

Changed

  • Reverted commit that alters access endpoints.

1.53.0

Fixed

  • The filter queries to allow for string 'false', 'true', and 'null' as well as hard values using "eq" and "ne" selectors.

Changed

1.52.0

Added

  • The ability to query deleted submissions by providing the filter parameter "?deleted__ne=null" in the submission index query.

Fixed

  • The access endpoint to work with authentication to ensure that it only provides information that the user has access to.

Changed

1.51.0

Fixed

  • The submission index query to provide more meta-data for file uploads. Just remove any base64 data.

1.50.0

Added

  • Token schema

Fixed

  • Issue with CSV export crashing server when timing is off
  • Add own filter to count query
  • Fix issue where row is not defined on custom conditional

1.49.0

Changed

Fixed

  • Fix tests that fail with new config changes.

Added

  • Added missing variables in custom validation.

1.48.2

Reverted

  • Fix some issues with protecting password fields.

1.48.1

Fixed

  • Wait for saves in setActionItemMessage function.

1.48.0

Added

  • ActionItem resource for logging action information.

Fixed

  • Fix some issues with protecting password fields.
  • On index, only return if a file is uploaded for base64 files.

Changed

  • Update dependencies.

1.46.0

Changed

Fixed

  • Form properties in export.
  • Ensure that the loadSubForms honors the form revision settings within the form components.

1.45.0

Added

  • Added more permissions hooks.

Changes

  • Altered the interface for permissionSchema hook. Now it provides the full permission schema.

1.44.7

Fixed

  • Dockerfile to correctly run.
  • Installation process to be able to run without prompts.
  • Docker-compose file to allow for complete bootup easily.

Changed

1.44.6

Reverted

  • Encrypted values not available in emails. (Caused crashes with implementation)

1.44.5

Fixed

  • Encrypted values not available in emails.

Added

  • Ability to hook into email/webhook params.

1.44.4

Fixed

  • An issue where a debug method was undefined.

Changed

1.44.3

Fixed

  • Problems where sub-forms are submitting when "reference" is disabled on the component.

1.44.2

Fixed

  • FOR-2143: Protected fields being exposed for SAR select resources

Changed

1.44.1

Fixed

  • Submission role tests for the enterprise server.

Changed

1.44.0

Added

  • Adding loading nested forms sub-submissions to cache methods.
  • Allowing the deletion of roles from a submission (but not adding)
  • Adding submissionQuery hooks for all submission queries being made.

Changed

1.43.2

Fixed

  • Fix permissions check on patch submission.
  • Fix issue with deploying projects with forms configured with nested forms attached to specific versions.

Changed

1.43.1

Fixed

  • The token handler to also call the user hooks for other kinds of tokens.

Changed

1.43.0

Fixed

  • Added a more efficient and complete role checking mechanism for permission handling.

Changed

1.42.1

Fixed

  • Patch requests incorrectly patching files with encrypted fields.

1.42.0

Removed

  • Removed the macros from the email action since those are now added to the formio-workers library.

Changed

  • Upgraded dependencies.

1.41.3

Fixed

  • Problem with a subform put request.

1.41.2

Fixed

  • Issues with the nested subform create and update when called from the API.

Changed

1.41.1

Changed

Fixed

  • Issue with subform validation to not include subforms that are conditionally hidden.
  • Issue with subform validation where it will not process the subform requests if the subform is not present within the data.
  • A potential crash within the subform validation where if the subform requests fails, it will cause the post request to not find a submission.
  • The mongoose schema definitions from removing the _id property incorrectly.

1.41.0

Added

  • PATCH method support for submissions.
  • Now allow more than GET requests to be skipped for permissions checks.

Changed

1.40.2

Fixed

  • When resetting passwords, jwtIssuedAfter sometimes got set to wrong timestamp resulting in invalid tokens.

1.40.1

Added

  • Ability to connect to SA enabled mongodb instances.

Changed

1.40.0

Added

  • reCAPTCHA API Endpoint

Changed

1.39.2

Fixed

  • The tests to work with extended systems.

1.39.1

Fixed

  • Issue where read all permissions are ignored when resource submission access is established.

Changed

1.39.0

Changed

  • Added more permissions form matching during import process to resolve conflicts.

1.38.0

Added

  • Minimal support for running entire stack in docker-compose
  • FOR-644: Adding logging for form actions to help tracking execution and errors.

Fixed

  • FOR-1908: Fixed problem where ID's could be set when creating records.
  • FOR-1977: Issues with the resource access permissions where indexes were not performant and giving 401 errors.

Changed

1.37.7

Fixed

  • The formio-workers dependency from using dynamic require paths which messes up certain builds.

1.37.6

Fixed

  • Issues with the resource permissions where it would only allow one resource per type.
  • The default.json configuration to point to the correct "databases" config.

Changed

1.37.5

Changed

  • Updated to resourcejs v1.33.0 which changes more 500 errors to 400s.

1.37.4

Fixed

  • Potential issues with the recursive forms not loading correctly.

1.37.3

Fixed

1.37.0

Added

  • Logging for action failures

Changed

  • Respond with 400 errors instead of 500 when an error occurs.

Updated

  • resourcejs 1.30.0

1.36.0

Removed

  • Merge form handler

1.35.2

Changed

1.35.1

Fixed

  • Issue where logging would sometimes crash when tokens do not contain user objects.

Changed

1.35.0

Added

  • basic request logging with DEBUG=formio:log.

Fixed

  • Minor nested form reference issue.

1.34.6

Changed

  • Syntax for including files using __dirname. This is maintenance only.

1.34.5

Fixed

  • FOR-1719 Nested form SAR feature.

Added

  • Schema collection is now a first class model.

1.34.4

Fixed

  • Issues where an admin token generated with no logged in user would fail.
  • Issue with Email configurations overriding other emails with different settings.

1.34.3

Fixed

  • Problem with the "current" user endpoint where it would not work if query parameters are provided.

1.34.1

Changed

  • Upgraded the formio-workers library to v1.18.0
  • Upgraded formiojs library to v3.5.5

1.34.0

Updated

Fixed

  • Fixed the action condition checks to ensure it will not work for any empty conditionals.

Changed

  • FOR-1603,FOR-1639: Improved Google CSV export
  • Add option to mark template imports to create only.
  • Expire all tokens when a password is reset.
  • Apply form update permissions when fetching actions.

1.33.6

Fixed

  • A potential crash within the Validator.

Added

  • Query parameters to the action execution.

Changed

  • Upgrade dependencies.

1.33.5

Changed

1.33.4

Changed

1.33.3

Changed

  • FOR-1533: Improved conditional Actions.

Added

  • FOR-1556: Added timezone support for CSV downloads.

1.33.2

Changed

1.33.0

Added

  • Introduced an "Everyone" permission which applies to Anonymous + all Roles.

Changed

  • Fixed dependency deprecation and vulnerabilities.
  • Fixed the permission handler to work as expected with "owner" permissions.
  • Upgraded dependencies.

1.32.0

Changed

Fixed

  • Issue with SQL Action for update commands.

Added

  • maxWords and minWords validation.

1.31.4

Fixed

  • Fixed the machine names to be performant and without special chars.
  • Allow admins the ability to see all anonymous submissions
  • Issues where the validator would crash for certain JSON form structures.

Changed

Added

  • Date converting for filter.

1.31.2

Added

  • The original message type of an email to the message payload.

1.31.1

Changed

  • Moved all instances of mongoose to use a single entity provided within the formio object.

1.31.0

Fixed

  • Make select query validation use caching to limit requests being made.
  • CSV export of wysiwyg
  • Webhook improvements

Changed

1.30.2

Fixed

  • Problems with the machine name generation where numbers in the project name would mess it up.

1.30.1

Fixed

  • Issues with the machine name generation for names with more than 10 instances.

1.30.0

Added

  • Ability for email templates to execute from workers library.
  • Validation changes for multi-mask fields
  • Ability to configure email transports via hooks.

Changed

1.29.2

Fixed

  • Potential crash when merging forms when one row was empty or missing.

1.29.1

Changed

  • Upgraded resourcejs to v1.23.1 to fix issue with number filtering.

1.29.0

Added

  • Ability to calculate values of fields on server.

1.28.0

Added

  • Unique validation for objects.

Fixed

  • Issues with DataGrid exports.
  • Issues with DateTime filters on index apis.

Changed

  • Upgraded dependencies.

1.27.3

Fixed

  • Save as reference issues with multiple configuration.
  • Problems with using the "exists" endpoint with the new converted ObjectId's
  • Problems with providing an _id filter when using save as reference indexes.

Changed

Added

  • Email view for File component.

1.27.2

Fixed

  • Problem where some values would get converted to ObjectIds and then would not work with indexing.

1.27.1

Changed

1.27.0

Changed

  • Convert all sub-document submissions to use ObjectId's for form, owner, and _id.
  • Added recommended indexes for performance.

1.26.8

Fixed

  • Problem where the references could get in a state where the Id's are not ObjectIds.
  • Running the update hook to fix the references again to ensure they are all ObjectIds.

1.26.7

Fixed

  • Issues with single record save-as-reference where previous submission would mess up queries.
  • Problems with the SMTP settings where username and password could be optional.

1.26.6

Fixed

  • Problems with the save-as-reference not working with empty references.

1.26.5

Fixed

  • Fixed some filtering issues with Save as reference.

1.26.4

Fixed

  • Potential crash within the CSV export functions.

1.26.3

Fixed

  • Refactored the save-as-reference so pagination + sort works as expected.

1.26.2

Fixed

  • Pagination issues with save-as-reference

1.26.1

Fixed

  • Correct sorting for save-as-reference when there are more items than references.
  • Issues with save-as-reference lookup for single references.

1.26.0

Fixed

  • Some more issues with save as reference features.

Changed

  • Resourcejs to allow fix date values.
  • Upgrade dependencies.

1.25.12

Fixed

  • The form component unique validation to only care about input components.

1.25.11

Fixed

  • Issues with the store as reference features.

1.25.10

Fixed

  • The filter and sort index queries for referenced fields.

1.25.9

Fixed

  • CSV exporter that would throw an error for DateTime components.
  • Issue where hidden components that have a value set remove their parent containers or datagrids.
  • Ensure sub-requests get their own cloned request paramters.
  • Issue with the field parameter actions would execute twice unintentionally.
  • Issue where empty list of references would fail the request.

1.25.8

Fixed

  • Some potential undefined references causing crashes.
  • A bunch of small bugs in CSV export.

1.25.7

Fixed

  • Issue with the resource references index query taking too long and taking a lot of memory.
  • Problems with using cloneDeep on sub-requests which would gobble up memory.

1.25.8

Fixed

  • Problems with sub-responses calling methods that do not exist.

Changed

  • Upgraded formiojs (2.29.5), nodemailer (4.5.0), nunjucks (3.1.0)
  • Upgraded mongoose to 5.0.6, formio.js to 2.29.2

1.25.4

Changed

  • Removed all calls to snapshot since it was causing serious performance regressions.

1.25.3

Fixed

  • Problem with the owner property not getting set properly when they are an admin.

1.25.2

Changed

Fixed

  • A potential crash when assigning submission resource access.

1.25.1

Changed

  • Upgraded MongoDB driver to 3.0.2, Mongoose 5.0.3

Added

  • Add list querystring to allow more efficient list returns.
  • Field Logic handling.

Fixed

  • Fix required multi-value fields not returning required.
  • Fix the way rows are found for datagrid checkConditionals.
  • Fix email actions for external authentication (User doesn't exist in form.io)
  • Fixed an issue where the token handler would return 401 when it should try as anonymous.

1.25.0

Changed

  • Upgrade MongoDB (v3) and Mongoose (v5) to latest versions.

1.24.7

Fixed

  • Potential crashes in CSV export and template imports.

1.24.6

Changed

  • Removed a bunch of superfluous debug messages for memory and performance improvements.

1.24.5

Fixed

  • Tests to refer to the correct helper template instead of the global one.

1.24.4

Fixed

  • Submission index queries that filter based on the user owner.

1.24.3

Fixed

  • Problems with the Save as Reference for Select dropdowns and other bugs.
  • Connection issues with SQL Action.

Changed

  • ES6 cleanup items.

1.24.2

Fixed

  • Issue where the metadata property for submissions was getting stripped out.
  • DateTime component export.

1.24.1

Changed

  • Upgraded resourcejs to latest version.

1.24.0

Changed

  • Upgraded all dependencies.

1.23.12

Changed

  • Upgraded resourcejs to fix crash in index queries.

1.23.11

Changed

  • The owner property to be either a MongoID or a string with custom value.
  • Converted some code into ES6 patterns.

Added

  • Hook into the export capabilities.

1.23.10

Fixed

  • CSV export when Select component within DataGrid component.
  • Do not replace the title and name during import if none are provided.

Added

  • Custom Form properties.

1.23.7

Changed

  • Allow people to provide their form access settings on POST.

Fixed

  • Issue with CSV export crashing on fields within a datagrid.

1.23.6

Fixed

  • Threading so that it will not block debugging ports.

1.23.5

Fixed

  • Make async validators work properly and move select to joi validation.
  • Fix issue with importing subforms out of order.
  • Move sub form validation and submission to the appropriate areas so it works in conjunction with other functionality.
  • Hooks for tempTokens.

1.23.3

Fixed

  • Problems with using temp tokens with remote environments.
  • Import order of subforms no longer crashes import.

1.23.2

Fixed

  • Issues with problematic aggresive resource caching.

1.23.1

Changed

  • Upgraded dependencies.

1.23.0

Fixed

  • Datetime fields to be stored as MongoDB Date objects.

Added

  • Ability to alter models dynamically.
  • Partial indexes for non-deleted entities.
  • Ability to provide dynamic sub-forms from parent form submissions.

Changed

  • Upgrade all dependencies.

1.22.19

Changed

  • Made the editgrid validation not dependant on the multiple flag in component settings.

1.22.18

Fixed

  • Bugfix/FOR-809. Fix in CSVExporter for multivalue resource and select fields.
  • EditGrid validation.

1.22.17

1.22.16

1.22.15

Fixed

  • Tests

1.22.14

Fixed

  • A hook within the submission tests to get the right hook.alter.

1.22.13

Added

  • Ability to alter validation form before submission validation occurs.

1.22.12

Added

  • Enhancements to webhook actionz

Fixed

  • Validation for Checkbox component with 'radio' type and 'name' option.

1.22.11

Added

  • Allow altering of resources for forms.
  • Backend validation checks for select dropdown components.
  • Blocking webhook support
  • Possibility to add shortcuts.

1.22.10

Fixed

  • Issue with the validation clearing out values when clearOnHide is set to false.

1.22.9

Fixed

  • Issue where a database update would be able to occur.

1.22.7

Changed

  • Ensure we are on a 3.1.0 db schema.

1.22.6

Changed

  • Allow patch schema updates without stopping server start.

1.22.5

Changed

  • Added update hook to remove previous machineName indexes.

Fixed

  • Stop empty string removal on validation

1.22.4

Fixed

  • More changes to machineName so that it is not enforced unique at mongo level to keep duplicate errors from occuring.

1.22.3

Fixed

  • Machine name collisions on project import when there exists deleted entities.

1.22.2

Fixed

  • The export and import to translate the form property on form components.

1.22.1

Fixed

  • Issues with the machineKey not auto-incrementing and staying unique.

Added

  • Ability to alter submission with a hook.
  • Possibility to use underscore in API key.

1.21.0

Changed

  • Upgraded many dependencies to latest versions.

1.20.0

Added

  • Add json logic validation

Changed

  • Upgrade Joi to 1.11.1
  • Move custom javascript validation to Joi extension
  • Change validator to return all errors instead of only the first encountered
  • Return validation result along with errors
  • Return result on dryrun

1.19.7

Fixed

  • Issue where data grid elements could not share name of parent element.

1.19.6

Changed

  • Include the form settings within the export.

1.19.5

Fixed

  • Added a try/catch around the checkConditionals so that it will not crash when a bad conditional is provided.

1.19.4

Fixed

  • Submission validation with multi-value with empty strings would fail on the second save. Allow nulls.

1.19.3

Added

  • Sub-submissions and validations for form components where the submissions are already not established.

1.19.2

Fixed

  • Mongoose depcrecation warnings.

1.19.1

Fixed

  • Allowed for the temp token hooks to be asynchronous.

Added

  • Return SQL Server query results from get action

1.19.0

Fixed

  • Datagrids with invalid rows will no longer remove those rows.
  • Validation errors on PUT will now return 400 instead of 500.
  • Required fields hidden with JSON logic will no longer throw validation errors.

1.18.14

Fixed

  • Issue with import routine crashing on undefined function router.post.

    Added

  • A way to track the parent submission when viewing submissions submitted from multi-form workflows.

1.18.13

Fixed

  • Merging of columns removes width, offset, push and pull settings.

1.18.12

Fixed

  • The token generation for SSO tokens to not require erroneous parameters.
  • An issue with the Reset password action not working with case insensitive emails.
  • Data in a datagrid showing in email notifications.

1.18.10

Added

  • Ability to modify the current form based on submission data before validation.
  • start:dev script for npm with Nodemon support.

    Fixed

  • An issue with custom validations with components within a datagrid were not working properly.
  • CSV export for Resource component and Select component with data source Resource / URL / JSON.

1.18.9

Fixed

  • An issue where if you have clearOnHide not set, it would still clear out values for hidden fields.

1.18.6, 1.18.7, 1.18.8

Fixed

  • Issue with unit tests from extended libraries that introduce new properties.

1.18.5

Fixed

  • Issue with components still getting cleared even though clearOnHide is false.

1.18.4

Added

  • The ability to import a custom project.json during installation.

Fixed

  • Issue during installation where the paths would get all messed up.

1.18.3

Added

  • The ability to provide "full=true" query parameter to the form load and retrieve the full form, including form components.

1.18.2

Fixed

  • The possibility of the server crashing for reference fields.

1.18.1

Fixed

  • The body limit for form sizes to allow forms up to 16mb in size (JSON format).

1.18.0

Added

  • Method for having reference field types that can dynamically link to sub resources.

Fixed

  • Deprecated validation handler in the Roles model.
  • 'Unknown resource' error on PUT of form which has multiple save actions to other resources

1.17.6

Changed

  • Submission Resource Access are calculated on the server during submission instead of in the browser.

Added

  • Allow roles to have their own permissions apart from default owner permissions.

1.17.5

Fixed

  • Make sure to not run the temp token tests for customer docker deployment test runs.

1.17.4

Added

  • A tempToken hook system to allow external libraries to modify temp token payloads.

1.17.3

Fixed

  • The way that the debug flag was being checked for debugging purposes.

1.17.2

Added

  • Allow exported action machine names to be altered.

Fixed

  • Fixed debugger issues with the email threads, due to an issue with process forking using the parent process.
  • Automatic generation of action machine names to be form:action.
  • Don't attempt to set headers after response has been sent.

1.17.1

Added

  • Allow template export steps to be altered with templateExportSteps
  • Allow default template to be modified.

Changed

  • Change templateSteps to templateImportSteps
  • Updating the default template for new email actions to use the submission macro, rather than email, to change the output of signature components to be Yes/No

Reverted

  • Revert project version back to 2.0.0 and use tag instead.

1.17.0

???

1.16.7

Added

  • Adding entity query hooks to the import entities.

1.16.6

Changed

  • Changed export filename to include version.
  • Changed export version to reference project version not export schema.

Removed

  • Removed plan from export.

1.16.5

Added

  • Template import / export tests
  • git pre commit hooks for linting
  • External token hooks

Fixed

  • Template action imports could fail based on resources not existing at creation time.
  • customPrivate validations now work for components nested inside of layout components.

Removed

  • Removed old template schema translations on import.

1.16.4

Added

  • Added temporary auth token support. You can now generate new tokens using the /token endpoint with the following headers.
    • x-expire = The expiration of the token in seconds.
    • x-allow = The paths to allow for the token in the format: GET:/path/[0-9a-z]+

1.16.3

Added

  • Make action handlers alterable.
  • Add mongo indices to all entities.