Skip to content

Latest commit

 

History

History
1177 lines (692 loc) · 73.5 KB

CHANGELOG.md

File metadata and controls

1177 lines (692 loc) · 73.5 KB

3.19.7 (2024-03-13)

Bug Fixes

  • restoring value of typeUserAttr select with attributeName className (d9d59af)
  • take a copy of typeUserAttr when processing (7366ddc)

3.19.6 (2024-03-13)

Bug Fixes

  • loading of userData into tinymce control after initialisation (842d322)

3.19.5 (2024-03-06)

Bug Fixes

  • regression in bfa92e8 caused typeUserAttrs of type string to not load formData (3f899c8)

3.19.4 (2024-03-01)

Bug Fixes

  • allow browser to break words in labels, headers, and paragraphs instead over overflowing (e8bc802)
  • clicking field controls while using trackpad may trigger drag instead of click (6c7e3a6)
  • use flexbox instead of floats for stage and control layout (d25693a)

3.19.3 (2024-03-01)

Bug Fixes

  • ensure that config is per instance of formBuilder (c44dbc4)
  • selecting last field id when running in advanced bootstrap mode (8153745)

3.19.2 (2024-03-01)

Bug Fixes

  • provide the value for a number attribute in the tUA array (76db433)

3.19.1 (2024-02-09)

Bug Fixes

  • do not remove valid empty userData from field data struct (1e64c69)
  • store result of trimmed values config to the sanitizedField (1504849)

3.19.0 (2024-02-09)

Features

  • allow hierarchically defined controlConfig for type and subtype (5d7ff8f)

3.18.0 (2024-01-19)

Features

  • Allow control plugins to disable default attributes via the disableAttr key in the plugin definition (54bc369)

3.17.3 (2023-12-08)

Bug Fixes

  • Only setup sortable row wrapper and invisible row placeholders when adding a row to the stage (25a27e6)
  • Use last-of-type instead of last-child due to drag/drop placeholder occupying last-child position (dc4f312)
  • Use the pointer to for sortable intersect detection when dragging controls from the control panel onto a bootstrap row. jQuery.ui sortable used tolerance: intersect which caused the placeholder in a row to jump around when near the edges and the new control is less than 50% contained. (995fc2e)
  • When adding rows, reset the hidden flag for all placeholders (939341c)

3.17.2 (2023-12-08)

Bug Fixes

  • For TextArea control have made the value input a textarea and not a single input[type=text] value. Formatting of TextAreas is now preserved. (0b64d37)
  • For TextArea control have made the value input a textarea and not a single input[type=text] value. Formatting of TextAreas is now preserved. (8da4cb5)

3.17.1 (2023-12-08)

Bug Fixes

  • Ensure subtype attribute is hidden when disabled via disableAttr (4572fe6)

3.17.0 (2023-11-07)

Bug Fixes

  • add additional row cleanup check to ensure no artifacts are left in the DOM (612d009)
  • If label is intentionally blank or label is not enabled we fallback to 'type: name' for the control label to ensure a value is visible on the stage (fcff9e9)
  • remove bootstrap initialisation of blank row on empty form. It is not required. (b8fd49a)
  • remove redundant checkRowCleanup() (9b27a6e)
  • remove redundant droppingToPlaceholderRow which uses the same check as droppingToNewRow, and simplify the logic. (62c0562)

Features

  • store the bootstrap row's id to the rowWapper via data-row-id (dd68b52)

3.16.13 (2023-11-07)

Bug Fixes

  • ensure that controlConfig is loaded per formBuilder instance. We delay setting the static property controlConfig on class control until we construct the control class in layout. (5f8de00)

3.16.12 (2023-11-01)

Bug Fixes

  • ensure a default value is set for when rows exists but none have numerical indices (e963748)

3.16.11 (2023-11-01)

Bug Fixes

  • For input[type=checkbox], no selection should result in an empty userData otherwise there is no ability to save state when default selected checkboxes are all unchecked (2744a68)

3.16.10 (2023-10-31)

Bug Fixes

  • set the preview property for custom controls (de67461)

3.16.9 (2023-10-31)

Bug Fixes

  • Add test cases for checkbox group (36c7d0e)
  • Don't pull grid classes from SVG elements, The SVG className property is a SVGAnimatedString not a string. Controls like textarea.quill have SVG graphics in their element list. (db27e06)
  • prevent togging the edit field if double-clicking within a textarea. Additionally, use the property isContentEditable to check if the element double-clicked is a descendant of a contenteditable field (eg a paragraph withing a div[contenteditable]) (a44ef6e)
  • strip form-control from the quill container div if it is set, this class is incompatible with the quill control (533ae80)
  • use the correct selector for the checkbox-group other value input, control may not have been added to the document dom at the time of onRender. (0768868)

3.16.8 (2023-10-31)

Bug Fixes

  • When setting a placeholder option a select field set the value to an empty string '' to allow for required validation to occur (924ca5c)

3.16.7 (2023-10-30)

Bug Fixes

  • convert raw HTML strings received from control.build() into HTMLElement(s) to ensure processClassName() can strip bootstrap classes (03e657f)

3.16.6 (2023-10-30)

Bug Fixes

  • allow Bootstrap row identifiers to be any string value after row- (eg row-myrow). This allows default fields or inputSets to be pre-configured with named rows which can then be targeted with CSS rules. (e06f85d)

3.16.5 (2023-10-23)

Bug Fixes

  • define icon() on templateControl (9364525)

3.16.4 (2023-10-19)

Bug Fixes

  • Refactor initialisation of the formBuilder plugin to ensure that two or more concurrent initialisations cannot interfere with each other (199c1cd)
  • subtype is critical to defining the control, add subtype to the list of attributes that are hidden rather than removed when disabled via disabledAttrs (28208fa)

3.16.3 (2023-10-19)

Bug Fixes

  • Configure JSDOM to load script tags injected into the dom by getScripts (41c0b20)
  • Ensure we load these files via https otherwise these controls cannot be loaded when running from file:// (56602ff)
  • formBuilder.actions.setLang now returns a promise (58ec7e5)
  • load css files that exist when testing (ad8147a)

3.16.2 (2023-10-19)

Bug Fixes

  • don't bother lifting col/row classes if we don't have any to lift (e012b8b)
  • fix lifting bootstrap col/row fields for autocomplete (62b8e3b)
  • initialise formRender with an empty formData in cases when no formData is provided, otherwise we are unable to perform setData/render functions on the container (48700de)

3.16.1 (2023-10-19)

Bug Fixes

  • move custom control registration into its own class and initialise it per formBuilder instance. This ensures definitions set in one formBuilder do not interact with definitions in other formBuilder instances (203cac7)

3.16.0 (2023-10-19)

Features

  • Remove unmaintained Find Uploader (3243ce3)

3.15.1 (2023-10-17)

Bug Fixes

  • add missing call to getBootstrapColumnClass otherwise check will always fail. Ensure we retain additional styles set on colWrappers by only removing and adding the requested col-* classes (10067e6)
  • add test cases for Bootstrap helper methods and align functions with sane return values (2fa6c0b)
  • emit an event when clearing the stage, use this to reset formRow counter and stage setup for enhancedBootstrap function (edd5500)
  • revert change that incorrectly grabbed the description of the fields (7d61aaf)
  • stopIndex is incorrectly calculated when in enhancedBootstrap mode. Fix this by always referring to children of the stage rather than LIs (052a761)
  • Unify the regular and enhancedBootstrap UX (c0e6d71)
  • use non-deprecated keyboardEvent.code instead of keyboardEvent.keycode. (0881cff)
  • when sorting stage items don't allow the placeholder to go before a prepended and after an appended item (6da23a2)

3.15.0 (2023-10-14)

Features

  • Support typeUserAttrs and typeUserEvents for all types with a wildcard '*' key (ac0dcf3)

3.14.0 (2023-10-14)

Bug Fixes

  • starControl did not save nor load userData (a12603d)
  • update tests for starRating (f34a259)

Features

  • Add in additional HTML5 inputs time, datetime-local and range [supported by all major browsers]. For BC reasons time and datetime-local implemented as a subtype of date. (0a1c141)

3.13.2 (2023-10-09)

Bug Fixes

  • Bumps postcss to 8.4.31 and updates ancestor dependencies postcss, autoprefixer, css-loader and postcss-loader. Update to postcss is a breaking update due to configuration changes preventing dependabot PR from being merged (9d974b1)

3.13.1 (2023-10-09)

Bug Fixes

  • Add dompurify to dev requirements so that we can test the Sanitizer using the domPurify backend (c342558)
  • Control may not be instered into the DOM at the time of onRender, keep a reference to the element in build() and use in onRender() (33ea8c4)
  • Fix JSDoc (d2b8629)
  • Mark XML helper functions as private and don't export them from utils module (74d19a2)
  • Remove unused local variable (53649ae)
  • Replace non-standard and deprecated call to String.substr() with String.slice() (813cecf)
  • Return true from SanatizerAPI backend when successfully setting HTML (c5d24c8)

3.13.0 (2023-10-06)

Bug Fixes

  • Fix GH-594 and GH-727 Bring non-namespaced css selectors under .form-wrap.form-builder. Consolidate two definitions for .toggle-form. (da89a92), closes #594 #727
  • Fix GH-594 and GH-727 Bring non-namespaced css selectors under .rendered-form (0caf26e), closes #594 #727

Features

  • Extend disableInjectedStyle option to excluded only the embedded Bootstrap 3 classes while allow the formBuilder styles to be included. (60524bc)

3.12.4 (2023-10-05)

Bug Fixes

  • Setup of fallBack Sanitizer and processing of content when sanitizer is not enabled (69c4a10)

3.12.3 (2023-10-05)

Bug Fixes

  • fallbackSantizer used before defined (4fe4937)

3.12.2 (2023-10-05)

Bug Fixes

  • formData may contain HTML (eg Labels), need to escape for all dataTypes before adding into the code element. JSON is invalid if copy-paste from showData dialog (c6f89d1)

3.12.1 (2023-10-05)

Bug Fixes

  • Calculation of next control insertion point took into account any divs created by enableEnhancedBootstrapGrid, appendNewField expects only LIs in the calculation and therefore inserts in the wrong position if the EnhancedBootstrap feature is enabled (fd83248)
  • changing column width in enhancedBootstrap feature did not work will with a touchpad. Mousemove event will fire multiple times (especially on MacOS with accelerated/decelerated scrolling) cauing the columns to erratically increase/decrease in size. (eb4fd68)
  • correctly show sort buttons in non-bootstrap mode. Use helpers.toggleHighlight when sorting elements rather than a custom animation (a1f6638)
  • Don't allow rows moved via the keyboard in the enhancedBootstrap feature to swap with prepended or appended fields (5af6feb)
  • enableEnhancedBootstrapGrid inserts the rowWrapperNode at the end of the stage instead of using the last position causing controls to always be inserted at the end even if prepend option is set. Use the location of the added Field's LI to append the rowWrapper before moving the LI within the row (5990b67)
  • helpers.getBootstrapColumnValue return value is an int, no need to parseInt on int (8caa6a2)
  • Only enable mobile sorting action buttons when enhancedBootstrap feature is not enabled. Bootstrap feature has functionality to move rows up and down and the two are incompatible (f7fa676)
  • Reset the height of the InvisibleRowPlaceholders in enhancedBootstrap feature when hiding them (40bf3fe)
  • When cloning a field in enhancedBootstrap mode invisible row placeholders need to be setup for the new fields (49b3363)
  • When drag and dropping a Header field (and other types) in enhancedBootstrap mode the preview needs to be cleaned of row- and col- classes otherwise and invalid field element is placed on the stage. (35d8ea5)
  • When drag and dropping elements in enhancedBootstrap mode the colWrapper mouseenter could fire after dragging a field onto another field, this would cause the rowPlaceholders to be hidden and then shown with 1px height (ea91499)

3.12.0 (2023-10-05)

Bug Fixes

  • correct the documentation for formRender action clear() (21c206a)
  • Improve browserslist target from '> 1%' which has less than 80% global coverage, to 'defaults' which improves coverage to 85.4% global and is equivalent to '> 0.5%, last 2 versions, Firefox ESR, not dead' (01ca0fa)

Features

  • Remove Internet Explorer from the supported browser list. It is no longer part of Browserslist >1% (6c2e23f)

3.11.1 (2023-10-05)

Bug Fixes

  • helpers.clearFields no longer supports an animate flag, update calls to this function (ec9aa51)
  • helpers.save() is called with and without minify being set, make false by default. Fix call to xmlSave which does not accept a minify parameter. Fix return type of helpers.save() (41b10f0)

3.11.0 (2023-10-05)

Bug Fixes

  • Add missing options to documentation config (b903345)
  • doc link (d5648d1)
  • fix broken documentation links (fa6b69f)
  • fix link to translation demo page from i18n option page in docs (a4de783)
  • Improve the definition of utils.trimObj() to not modify the source object (b807646)
  • isPotentiallyDangerousAttribute returns false if the Sanitizer backends have been disabled via config (c75ccdb)
  • make dompurify the primary sanitizer backend if it is available. Sanitizer API is still experimental and not support by all browsers therefore it should only be used if DomPurify isn't included (d0043d0)

Features

  • Implement XSS and DOM Clobbering protection (a268a0a)

3.10.6 (2023-09-21)

Bug Fixes

  • Due to recursion protection GitHub actions does not trigger the publish event when the release is created via another action. Instead use the workflow_run event to chain Publish with Deploy Website (a702686)

3.10.5 (2023-09-21)

Bug Fixes

3.10.4 (2023-09-21)

Bug Fixes

  • Handle the case of Autocomplete providing field as an array of HTMLElements (d1b9b51)

3.10.3 (2023-09-21)

Bug Fixes

  • Cancel stage sort if it would place the field before an appended field or after a prepended field (82242e5)
  • Controls added by clicking need to be added as the second last item if opts.append is set (478dbc5)
  • invalid selector (a153525)
  • Remove unreachable branch in condition. $().closest can be used for both cases as closest() starts traversal from the current element (619005a)
  • When dragging a new control onto the stage, ensure the placeholder is placed after any prepended field and before any appended field (d9cf010)

3.10.2 (2023-09-21)

Bug Fixes

  • typeof will always return a string therefore fallback is never called (4ca0dc9)
  • warn when the typeUserAttr is unable to be processed instead of silently ignoring (b54ff0d)

3.10.1 (2023-09-21)

Bug Fixes

  • Ensure boolean false values are kept as boolean false when getting the original value (317d778)

3.10.0 (2023-09-15)

Features

  • Add disableHTMLLabels option to formRender (0fc2a91)

3.9.18 (2023-09-13)

Bug Fixes

  • Apply the removal of row- and col- to child elements if field is more than just and input element (e.g. checkbox-group) (323ac64)
  • tmpCleanColumnInfo may be called multiple times, remove previous work to ensure we don't keep appending tmp- to class names. Adjust class to include a __fb- prefix. (6fd7018)

3.9.17 (2023-09-13)

Bug Fixes

  • --display-entrypoints doesn't exist in webpack v5 (d7de595)
  • Bump semantic-release to latest (b3ca67b)
  • remove deprecated package "request" and replace with build-in Node fetch API. Add "colors" dependency as it is no longer implicityly required by semantic-release (a07ec5a)

3.9.16 (2023-09-12)

Bug Fixes

  • cleanup duplicate and invalid declarations (d1f07e9)
  • ensure that input[type=number] cannot overflow the stage on narrow window (38684f3)
  • Remove unused CSS (c8da5e6)

3.9.15 (2023-09-12)

Bug Fixes

  • Ensure generation of CSS rules for .formbuilder-mobile place the selector at the .form-wrap.form-builder level (a364136)
  • Show icon for custom controls on mobile phone screen sizes (0f7a786)
  • Wrap the inputSet control in a span in the same way as custom controls to ensure CSS selectors are applied correctly (2c42831)

3.9.14 (2023-09-12)

Bug Fixes

  • Implement field action buttons to sort form elements from touch screen devices not supported by jQuery sortable (54fa332)

3.9.13 (2023-09-12)

Bug Fixes

  • Array of strings was removed from support in TinyMCE6, use a plugin definition format supported my all versions (https://www.tiny.cloud/docs/tinymce/6/migration-from-5x/#plugin-loading-format-change) (92a8a72)
  • Array.concat does not modify the existing arrays, return value was previously discarded (92496e3)
  • helper.js classNames was overzealous in removing classNames starting with btn- when syncing with style field, only remove those that are one of the config.js styles.btn styles (922ca80)
  • Only load TinyMCE if it hasn't already been loaded by the page, this allows specific versions to be loaded outside the hardcoded version in the plugin (241a83a)
  • Remove any plugins we define by default from the options if they have been removed in the loaded version of TinyMCE (de061b2)
  • use the Promise interface for initialising tinymce. tinymce.editors is removed in TinyMCE6 so use the tinymce.get() and tinymce.remove() interfaces which is forwards compatible (4583b88)
  • window.tinymce.editors[] is not forward compatible with later versions of TinyMCE. Use the get() method instead to retrieve the Editor instance (255ed88)

3.9.12 (2023-09-12)

Bug Fixes

3.9.11 (2023-09-12)

Bug Fixes

  • i18n is a straight key/value pair, it does not contain a get() function (ebe59ce)
  • If no value was set for a numberAttribute the value attribute's value was used instead. This causes min/max/step/rows/maxLen number attributes to incorrectly be assigned a value if they are not set in formData but a number exists in the value attribute (28b1a6f)
  • Use the i18n translated label for boolean typeUserAttrs. Fixes #1391 (bc04612)

3.9.10 (2023-08-27)

Bug Fixes

  • Ensure that default selected checkboxes are unselected when loading userData that doesn't contain them. (2d284c9)
  • The major browsers handle new lines in contenteditable blocks by inserting
    tags. This causes invalid HTML when inserting the content into a

    with the paragraph control and when constructing tags. Setting display: inline-block forces the browsers to use a
    tag instead for new lines. (5b700cb)

3.9.9 (2023-08-20)

Bug Fixes

3.9.8 (2023-08-20)

Bug Fixes

3.9.7 (2023-08-20)

Bug Fixes

3.9.6 (2023-08-20)

Bug Fixes

3.9.5 (2023-08-20)

Bug Fixes

3.9.4 (2023-08-20)

Bug Fixes

3.9.3 (2023-08-20)

Bug Fixes

3.9.2 (2023-08-20)

Bug Fixes

3.9.1 (2023-08-20)

Bug Fixes

3.9.0 (2023-08-20)

Features

3.8.3 (2022-03-25)

Bug Fixes

3.8.2 (2022-03-25)

Bug Fixes

3.8.1 (2022-03-18)

Bug Fixes

3.8.0 (2022-03-17)

Features

  • enhanced column features (023f8b7)

3.7.4 (2022-03-11)

Bug Fixes

  • textarea: remove type attribute from textarea (bc68b3f)

3.7.3 (2021-07-13)

Bug Fixes

  • documentation code colors (b2db0d7)

3.7.2 (2021-06-07)

Bug Fixes

  • save not returning js formData (490ad72)

3.7.1 (2021-06-04)

Bug Fixes

3.7.0 (2021-05-28)

Features

3.6.2 (2020-12-07)

Bug Fixes

  • radio group option remove button visible on second option (8a838f7), closes #1143

3.6.1 (2020-08-24)

Bug Fixes

3.6.0 (2020-08-24)

Features

3.5.2 (2020-08-23)

Bug Fixes

3.5.1 (2020-08-23)

Bug Fixes

3.5.0 (2020-08-23)

Features

3.4.5 (2020-08-23)

Bug Fixes

  • onSave not called when save called from the api (d607b02), closes #1058

3.4.4 (2020-08-22)

Bug Fixes

3.4.3 (2020-08-22)

Bug Fixes

3.4.2 (2020-03-04)

Bug Fixes

3.4.1 (2020-03-02)

Bug Fixes

  • multiple attribute added to select (bb04cd4)

3.4.0 (2020-02-02)

Bug Fixes

  • website generation and deployment (6ba8ce0)

Features

  • editor: hidden field labels (f9b648c)

3.3.5 (2020-02-02)

Bug Fixes

  • website generation and deployment (6ba8ce0)

3.3.4 (2020-02-01)

Bug Fixes

3.3.3 (2020-02-01)

Bug Fixes

  • travis deploy (127909d)
  • travis node version, include docs in dist package (78799a5)

3.3.2 (2020-01-31)

Bug Fixes

3.3.1 (2020-01-28)

Bug Fixes

  • field removed from stage but not formData (2c6d824), closes #1028

3.3.0 (2020-01-26)

Bug Fixes

  • demo: clear current id when removed from stage (e0c0f2e)

Features

3.2.6 (2019-12-31)

Bug Fixes

  • adblock because of fb- prefix (e091474)

3.2.5 (2019-06-26)

Bug Fixes

  • browserslist config, build:vendor (32acf6b)

3.2.4 (2019-05-27)

Bug Fixes

3.2.3 (2019-05-02)

Bug Fixes

  • development build, upgrade babel (a3e446c), closes #942
  • use run-script instead of run (e8275e5)

3.2.2 (2019-04-23)

Bug Fixes

  • update jquery dependency (5541494)

3.2.1 (2019-03-30)

Bug Fixes

  • btn: button style classes not correctly applied (3278840)

3.2.0 (2019-03-29)

Features

  • i18n: add support for translatable typeUserAttrs (158b278), closes #919

3.1.3 (2018-12-12)

Bug Fixes

  • dependency: har-validator 5.1.2 was unpublished, causing ci builds to fail. Update dependencies to fix (051c0e0)
  • langs: Update formBuilder-languages dependency (5b39cb1)

3.1.2 (2018-11-20)

Bug Fixes

  • xml: fields are nesting (428ad4f)

3.1.1 (2018-11-19)

Bug Fixes

  • formRender: error when destrtcuring null (0b958af)

3.1.0 (2018-11-15)

Features

  • column: add bootstrap grid/column support (e9cc23a), closes #859

3.0.2 (2018-11-12)

Bug Fixes

3.0.1 (2018-11-08)

Bug Fixes

  • plugins: fix plugins build script (de388bd)

3.0.0 (2018-11-07)

Bug Fixes

  • labels: html in xml labels breaks forms (#858) (ea29e79)

BREAKING CHANGES

  • labels: Existing forms created using xml dataType that have html labels will have their labels converted to text

Note: the next major release will drop xml support completely

2.10.9 (2018-11-06)

Bug Fixes

  • docs: use highlightjs 9.12.0 (2c61944)

2.10.8 (2018-11-06)

Bug Fixes

  • cd: website auto deploy (8235f2b)

2.10.7 (2018-11-06)

Bug Fixes

  • cd: update travis config and deploy script (ac03283)
  • formData: formData getter not working (235b77e)

2.10.6 (2018-11-06)

Bug Fixes

  • cd: update deploy script to not require babel-node (f161be5)
  • cd: update readme, have deploy script return, run deploy script directly (1916870)

2.10.5 (2018-11-06)

Bug Fixes

  • cd: semantic-release plugins, site deploy commands (57325bc)

2.10.4 (2018-11-06)

Bug Fixes

  • v2.10.3 - Bugfix fbControlsLoaded #853

  • v2.10.2 - Bugfix i18n lookups #852

  • v2.10.1 - Bugfix typeUserAttrs #851

  • v2.10.0 - Release 2.10.0 #842

    Fixed:

    • inline checkbox/radio
    • bug with clear() as reported in #750 and #828, control type check to clear() so that method doesn't reset the value for checkboxes and radio buttons, which caused the userData getter to work incorrectly.
    • #530, Modified helpers.js::xmlSave() to serialize field data so any XML in a field's attributes is properly escaped. (#804)
    • doubleclick event handler, resolves #535
    • new option name, resolves #687
    • name attribute for inputs with multiple, resolves #736
    • current formData not carried over to new formBuilder instance on language change, resolves #735
    • attrString util, resolves #739
    • Lock dev dependency versions, prevents breaking changes introduced by node_modules
    • Ensure custom attributes are included in exported data resolves #824 resolves #773
    • Other option should hide input value when deselected, resolves #808
    • do not disable className or name attributes- resolves #819
    • ensure html from label is correctly escaped, resolves #816
    • inputSet bug
    • label saving, add esc to close data modal, resolves #757
    • attribute placeholder typo, fix label added when it should be removed, resolves #763
    • bug where empty className is not applied
    • label overflow problem, resolves #779
    • duplicate custom controls

    Added:

    • Deploy script
    • formbuilder-languages module
    • disableSubtypes option
    • onremove to typeUserEvents
    • disableHTMLLabels option, resolves #747
    • replaceFields option
    • layout and layoutTemplates docs
    • onOpenFieldEdit and scrollToFieldOnAdd options, closeAllFieldEdit action
    • toggleAllFieldEdit action
    • setData and render actions to formRender, resolves #770
    • onFieldAdd option and toggleFieldEdit action, resolves #772
    • Enable multiple select field for typeUserAttrs, resolves #776
    • allowStageSort option, resolves #777

    Removed:

    • remove mi18n network dependency
    • package-lock.json
    • replace comma, resolves #740
    • unused modules
    • gulp

    Improved:

    • Documentation
    • xmlSave performance and code style
    • Demo, moved to src so can transpile, inline style, more api buttons for manual testing
    • Switch to yarn
    • Use existing formBuilder instance instead of creating a new one on setLang, fixes memory leak where reference was maintained to old instance
    • typeUserAttrs docs, resolves #810
    • code style and cleanup
    • use spaces instead of tabs for data formatting
    • use both instance methods and jQuery plugin calls ie. fbInstance.setData(formData) and $('.build-wrap').formBuilder('setData', formData)
    • update mi18n, add support checkbox custom attributes
    • reduce file churn
    • improve stickyControls
    • use onRender instead of setTimeout
  • v2.9.8 - hotfix(inputSets): control icon #634

  • v2.9.7 - Merge branch 'hotfix/2.9.7'

  • v2.9.6 - Removed unused style, add get-data class to data button #605

  • v2.9.5 - Improvements(options) disabledFieldButtons option #604

  • v2.9.4 - Pull primary input outside of label for "other" option #598

  • v2.9.3 - Fix Edge "Help Text" issue #560 #596

  • v2.9.2 - Do not default select radio #603

  • v2.9.1 - Move bootstrap stuff inside .formbuilder selector #602

  • v2.9.0 - feature(option) replaceFields #593

  • v2.8.0 - improvement(checkbox): markup change #585

  • v2.7.0 - v2.6.0

  • v2.6.0 - Add support for disabling form action buttons (copy, edit, remove) #550

  • v2.5.3 - Hotfix: paragraph label overflow resolves #517 #525

  • v2.5.2 - Fineuploader error handling & reporting #516

    • fixed autocomplete control behaviour #521
  • v2.5.1 - copy in control config rather than reference it so any alterations arent global. support fineuploader handler having querystring args. fix bug in applying fineuploader config to defaults. #513

  • v2.5.0 - upgraded fineuploader plugin to use cdnjs by default so it no longer … #509

  • v2.4.1 - Hotfix: disableFields option #508

  • v2.4.0 - New control plugin to replace the default file upload type #506

  • v2.3.5 - Hotfix: Constraint API #505

  • v2.3.4 - Hotfix: preload values to exisitng field types, fix fieldOrder #501

  • v2.3.3 - Hotfix: actionButtons are submitting forms #498

  • v2.3.2 - Hotfix: btn-undefined #496

  • v2.3.1 - Hotfix: opts.messages, sourcemaps #495

  • v2.3.0 - General cleanup, actionButtons option #494

  • v2.2.8 - Bug/extend fields #493

  • v2.2.7 - Make checkbox valid when at least one checkbox is checked #490

  • v2.2.6 - Remove outdated unminified files #488

  • v2.2.5 - Update package manager files to serve correct- updated version #487

  • v2.2.4 - Fix Other input behavior #485

  • v2.2.3 - Return unformatted JSON by default #481

  • v2.2.2 - Hotfix: getData #464

  • v2.2.1 - Hotfix: bootstrap addon style, Update documentation

  • v2.2.0 - Feature: Controls API, see: https://formbuilder.online/docs/formBuilder/overview/ Feature: Injected styles, no longer to need include css file.

  • v2.1.2 - Update npm scripts

  • v2.1.1 - Required checkbox fix, form-horizontal css alignment fix #422

  • v2.1.0 - Update docs & Critical fixes #420

  • v2.0.0 - ✨ Custom Controls, Automatic i18n, WYSIWYG Editor, HTML Labels ✨ #414

  • v1.24.7 - Fix textarea value not saving when preview changed #408

  • v1.24.6 - Bugfix: XMLParser children in ie #369, date form-control class #351 #373

  • v1.24.5 - Code cleanup, alignment issues, check select required fix

  • v1.24.4 - Bug fixes: bower.json, formRender children undefined

  • v1.24.2 - Hotfix: typeUserEvents, attribute array converted to comma separated list #297

  • v1.24.1 - Bugfix: defaultFields names are overwritten #295

  • v1.24.0 - Hotfix and Feature bonanza #293

  • v1.23.1 - Hotfix: deleteId undefined #291

  • v1.23.0 - Feature: inputSets #285

  • v1.22.1 - Bugfix: updateJSON does not set correct version #284

  • v1.22.0 - Feature: Rows Attribute for TextArea #282

  • v1.21.3 - Hotfix: addField index 0 without fields #279

  • v1.21.2 - Add Build and commit to gulp tag task #278

  • v1.21.1 - Chore: Add gulp tag task #277

  • v1.21.0 - Feature: addField and removeField actions #276

  • v1.20.3 - Bugfix: multi option name attribute #274

  • v1.20.2 - Bugfix: gulp font-edit #263

  • v1.20.1 - Bugfix: XML other option #262

  • v1.20.0 - Feature: typeUserEvents #260

  • v1.19.4 - Bugfix: typeUserAttrs repeated value from formData #258

  • v1.19.3 - Feature: tel subtype #256

  • v1.19.2 - Hotfix: Correctly escape attributes #255

  • v1.19.1 - Hotfix: typeUserAttrs duplicate attributes #254

  • v1.19.0 - Feature: Copy button #252

  • v1.18.0 - Feature: typeUserAttrs #247

  • v1.17.2 - Bugfix: Classes not saving in XML mode and option pre-select issues#250

  • v1.17.1 - Bugfix: clearFields action will error if no fields on stage#245

  • v1.17.0 - Feature: showActionButtons option and showData action#244

  • v1.16.0 - Feature: JSON support#237

  • v1.15.6 - Bugfix: Remove fields from disableFields option.#231

  • v1.15.5 - Feature: save action #228

  • v1.15.4 - Bugfix: formRender textarea value undefined #224

  • v1.15.3 - Bugfix: Cannot run formRender on multiple elements #223

  • v1.15.2 - Feature/Bugfix: Actions, formRender textarea value bugfix #219

  • v1.15.0 - Feature/Bugfix: Allow multiple files, bugfixes #211

  • v1.14.6 - Hotfix: set Sortable scroll to false #206

  • v1.14.5 - Chore: Add composer.json #207

  • v1.14.4 - Bugfix: Form not saving when fields added by click #203

  • v1.14.3 - Bugfix/Chore: fix formRender missing bootstrap styling, updated demo #202

  • v1.14.2 - Feature: Value attribute, improved mobile styling #199

  • v1.14.1 - Bugfix: Option defaults not rendering #198

  • v1.14.0 - Feature: Fast edit options. Click to add field, sticky controls, auto edit toggle #190

  • v1.11.0 - Feature: Number input #188

  • v1.10.6 - Bugfix: Limit scope of bootstrap helpers #187

  • v1.10.5 - Bugfix: Other option for radio and checkbox xml attribute #186

  • v1.10.4 - Bugfix: Object.assign #181

  • v1.10.3 - Bugfix: defaultFields multiple select not applied #176

  • v1.10.2 - Bugfix: Remove role limit #175

  • v1.10.1 - Bugfix: Removing an option causes error #169

  • v1.10.0 - Feature: Add "Other" option to checkbox and radio group fields #168

  • v1.9.33 - Bugfix: field close tab callback fired twice on mobile #167

  • v1.9.32 - Bugfix: Change validators to run on blur instead of keyup #164

  • v1.9.31 - Bugfix: Firefox loses reference to textarea #161

  • v1.9.30 - Bugfix: Block elements missing classNames #159

  • v1.9.28 - Bugfix: Remove polyfills causing problems in some apps #151

  • v1.9.27 - Bugfix: Header subtypes #136

  • v1.9.26 - Bugfix: saved subtypes not rendering #134

  • v1.9.25 - Bugfix: Standardizes how field variables are processed from xml, defaultfields and new field sources #129

  • v1.9.24 - Bugfix: Update internal field id to better handle multiple editors #126

  • v1.9.23 - Bugfix: editing class attribute is wonky #122

  • v1.9.22 - Feature: controlOrder option. #118

  • v1.9.21 - Bugfix: Add pull left and right to _bs.scss

  • v1.9.20 - Feature: sortableFields #114

  • v1.9.19

    • Feature: controlPosition option #114
    • Feature: sortableFields option #114
  • v1.9.18 - Bugfix: Button variables not processed from XML #113

  • v1.9.17 - Bugfix: Umlauts break XML #112

  • v1.9.16 - Bugfix: XML parse issue #110

  • v1.9.15 - Bugfix: Option character encoding problem #109

  • v1.9.14 -

    • Feature: Header and Paragraph tags #108
    • Bugfix: button classes, special character encoding, renamed functions for Selenium
    • Chore: added/updated comments #106
  • v1.9.13 - Bugfix: Add defaultFields to formData #103

  • v1.9.12 - Feature: disableFields option, formRender jQuery fallback, formSaved Event #101

  • v1.9.11 - Bugfix: formRender hidden field issue #100

  • v1.9.10 - Bugfix: formRender not rendering with containers #98

  • v1.9.9 - Bugfix: formRender reinit, take regular js object #97

  • v1.9.8 - Bugfix: Enter toggles XML field #95

  • v1.9.7 - Bugfix: Radio group and checkbox group not rendered correctly in IE #93

  • v1.9.6 - Bugfix: Arrows functions don't work with arguments.callee #92

  • v1.9.5 - Bugfix: IE Element.remove() polyfill #91

  • v1.9.4 - Bugfix: IE compatibility issues #90

  • v1.9.3 - Bugfix: Update .jshintrc #89

  • v1.9.2 - Bugfix: remove CustomEvent, no IE support #88

  • v1.9.1 - Bugfix: invalid package.json #86

  • v1.9.0 - Feature: Style and data updates, Class attribute #85

  • v1.8.2 - Bugfix: Radio group preview #82

  • v1.8.1 - Feature: File upload element #80

  • v1.8.0 - Feature: Button element #79

  • v1.7.10 - Bugfix: stringify bug causing null to be 'null'

  • v1.7.9 -

    • Add options to formRender
      • render : defaults to true, will not render the html fields if set false.
      • notify : Allows you to define your own handler for notifications. defaults to console.log, console.warn and console.error.
    • Set form field data to template element to be used by other modules.
  • v1.7.8 - Add fontello fonts with config and Makefile for editing icons.

  • v1.7.7

    • Bugfix: Close button doesn't close #71
    • Bugfix: max-length attribute should be maxlength #70
    • Chore: Add gulp plumber to build process to catch errors instead of fail build.
  • v1.7.6 - Bugfix: radio and checkbox group options without values cause formRender error.

  • v1.7.5

    • Bugfix: Multiple selection bug for checkbox group and radio group fields. #66
    • Chore: Refactor build process, Add linter and code style settings, formRender santized attributes #67
  • v1.7.4 - Feature: Multiple selection. See: #65

  • v1.7.3 - Feature: Mobile support for touch based drag and drop. See: #64

  • v1.7.2 - Bugfix/Feature: Added placeholder attribute for text and textarea fields. See: #63

  • v1.7.1 - Bugfix/Feature: Added reinitialization to formBuilder. See: #62

  • v1.7.0 - Feature: Added sub-types to the text input for password, color, and email html5 inputs.

  • v1.6.8 - Bugfix: Description and required not rendered in formRender

  • v1.6.7 - Bugfix: fields are not sortable

  • v1.6.6 - Bugfix: change should be triggered when hidden textarea updated

  • v1.6.5 - Feature: Make rendered fields targetable

  • v1.6.4 - Bugfix: User options should be deep copied with $.extend

  • v1.6.3 - Bugfix: Remove max-length attribute for hidden fields, Update preview and label for textarea

  • v1.6.2 - Bugfix: Option text not rendered in IE #39

  • v1.6.1 - Bugfix: required attribute should not be rendered when false.

  • v1.6.0 - Feature: Hidden input field type added

  • v1.5.4 - update gulp to autopush tags

  • v1.5.3 - Bugfix: multiple formBuilder on one page.

  • v1.5.2 - Bugfix: formRender radio-group invalid name property

  • v1.5.1 - Bugfix: Add minimal Bootstrap styling for formRender

  • v1.5 - Feature: checkbox inputs can now be made into toggle switch. details here

  • v1.4.0 - Feature: formRender is a companion plugin to render saved formData into a usable form. details here

  • v1.3.5 - Bugfix: XML parse and save

    • This fix brings a slight update in XML markup for multiple value fields, specifically the <option> node. The changes is to move away from the proprietary XML parser formBuilder was made for.

    This:

    <field name="checkbox-group-1" label="Checkbox Group" style="multiple" required="false" type="checkbox-group" >
        <option label="Option 1">option-1</option>
        <option label="Option 2">option-2</option>
      </field>
    

    Becomes:

    <field name="checkbox-group-1" label="Checkbox Group" style="multiple" required="false" type="checkbox-group" >
        <option value="option-1">Option 1</option>
        <option value="option-2">Option 2</option>
      </field>
    
  • v1.3.4 - Bugfix: fix self closing xml for radio-group field

  • v1.3.3 - Bugfix: preview not toggling correctly

  • v1.3.2 - Bugfix: preview for Multiple fields not updating

  • v1.3.1 - Bugfix: multiple value fields not saving XML

  • v1.3.0 - Live previews, icon font

  • v1.2.0 - Add default fields, and call-to-action text