1
0
mirror of synced 2024-11-22 21:36:04 +03:00
Commit Graph

138 Commits

Author SHA1 Message Date
Justin Schroeder
adf8299a33
Feature/form errors (#13)
* Adds support form FormulateError form errors

* Adds support for form-errors prop

Also includes tests for both named-form-errors as well, form-errors prop, positioning form errors with the <FormulateErrors /> component, and allowing multiple <FormulateErrors />

* Adds form error support, error handling, and supporting tests

* Remove unused util functions

* fixes bug that resulted in validation failing if run more than once

Credit to @luan-nk-nguyen for discovering the bug

Co-authored-by: Andrew Boyd <andrew@wearebraid.com>
2020-03-06 16:10:25 -05:00
Justin Schroeder
4b36b9c4ba
Adds validation rules endsWith, startsWith and fixes box classification blur handler
* adds language definitions for new rules

* re-order rules file to order rule definitions alphabetically

* adds support for endsWith validation rule and converts snake_case rules to camelCase function calls

* adds support for startsWith field validation

* better en.js definitions for new validations

* adds tests for snakeCaseToCamelCase function

* coerces all validation messages and validation rules to be camelCase under the hood

* ensures that array syntax rules are properly converted internally to camelCase

* adds more robust tests for non-string type data for endsWith and startsWith validation rules

* adds support for words that start with numbers to snakeToCamel method

renames snakeCaseToCamelCase to snakeToCamel to reduce package size

* Reduces some property name lengths for byte savings

* Fixes bug that caused validation rules to not be displayed on blur for the box classification

Co-authored-by: Justin Schroeder <justin@wearebraid.com>
2020-03-04 13:45:37 -05:00
Andrew Boyd
4bfe43719d
Adds startsWith and endsWith validation rules (#9)
* adds language definitions for new rules

* re-order rules file to order rule definitions alphabetically

* adds support for endsWith validation rule and converts snake_case rules to camelCase function calls

* adds support for startsWith field validation

* better en.js definitions for new validations

* adds tests for snakeCaseToCamelCase function
2020-03-03 06:53:04 -05:00
Justin Schroeder
c7f26c0929 v2.1.1 2020-03-02 14:01:38 -05:00
Sasha Milenkovic
bd0af7d6cc fixes classname typos in snow.css, formulatefiles component, and inputs.scss 2020-03-02 13:34:44 -05:00
Justin Schroeder
192a2cd93b Fixes #6 2020-03-02 01:34:18 -05:00
Justin Schroeder
c6eae3493b Fixes issues with upload field re-hydration and requried validation rule for FileUpload fields. 2020-03-02 00:35:56 -05:00
Justin Schroeder
cf9396e0d6 Fixes issue with grouped options hydrating initial values 2020-03-01 22:29:54 -05:00
Justin Schroeder
3fcfa759a9 Patches axios uploader behavior 2020-03-01 13:28:46 -05:00
Justin Schroeder
cea58754a3 Production build for version 2.0.4 2020-02-29 00:59:58 -05:00
Justin Schroeder
12326a91fd Adds a new values prop to FormulateForm 2020-02-29 00:50:31 -05:00
Justin Schroeder
433ac5728e Patches form uploads to proper swap server return back into the form data 2020-02-29 00:18:58 -05:00
Justin Schroeder
08d9cd0ff9 Makes rollup not use named exports 2020-02-28 23:30:43 -05:00
Justin Schroeder
d73b7d0326 Adds 2.0.2 build assets 2020-02-28 16:04:55 -05:00
Justin Schroeder
50ff66f86f Improves minified browser build 2020-02-28 11:19:44 -05:00
Justin Schroeder
8576bd0b71 Makes iife build use VueFormulate keyword 2020-02-28 10:56:46 -05:00
Justin Schroeder
9775e14770 Cleans up dependencies and bundles requirements in browser minified version 2020-02-28 10:46:08 -05:00
Justin Schroeder
c0ffcab79f Adds support for plugin architecture 2020-02-27 14:47:24 -05:00
Justin Schroeder
c31e896b86 Includes support for slider values, custom validation rules and messages 2020-02-27 01:18:51 -05:00
Justin Schroeder
bfa94fc24a Updated build packages for alpha 2 2020-02-26 00:26:22 -05:00
Justin Schroeder
839f0936ed Fixes form submissions, and a bug that prevented value props from populating forms 2020-02-26 00:21:10 -05:00
Justin Schroeder
d7e3859951 Adds support for validation rules that are aware of other form elements 2020-02-25 17:32:40 -05:00
Justin Schroeder
778d6b8731 Makes value set the initial value of inputs 2020-01-31 22:50:18 -05:00
Justin Schroeder
6825d4559b Fixes forms to submit the internalFormModelProxy instead of the defunct formModel 2020-01-28 17:24:28 -05:00
Justin Schroeder
5c00230bc7 Fixes issue related to: https://github.com/vuejs/vue/issues/11058 2020-01-28 16:53:13 -05:00
Justin Schroeder
4a53d17fc7 Adds support for buttons 2020-01-28 12:12:08 -05:00
Justin Schroeder
d868555be8 Adds support for simple image previews on image uploads 2019-11-21 00:29:28 -05:00
Justin Schroeder
1095e33d4d File fields no longer upload unless they pass validation rules 2019-11-20 23:16:31 -05:00
Justin Schroeder
dd74fcb12e Fixes stray drag/drop on missed dropzones, allows removing of non uploaded files 2019-11-19 07:15:13 -05:00
Justin Schroeder
2d1c58f725 Adds faux uploader method and initial upload styling 2019-11-15 14:44:01 -05:00
Justin Schroeder
cb9349a6cf Adds new date format capability and associated tests 2019-11-14 01:00:56 -05:00
Justin Schroeder
ba24fc21e8 Adds default validation messages for all rule types 2019-11-13 16:10:17 -05:00
Justin Schroeder
e952e46aad Adds initial validation rules and support 2019-11-07 17:03:34 -05:00
Justin Schroeder
a53edaa342 Initial tests written for validation parsing and rules 2019-11-06 17:17:19 -05:00
Justin Schroeder
9522459600 Adds a internalFormModelProxy to FormulateForm to allow two way model bindings 2019-11-05 10:52:05 -05:00
Justin Schroeder
dbb41471e5 Updates vue formulate with updated build 2019-11-01 14:03:48 -04:00
Justin Schroeder
58822a86e6 Adds a workaround test for bug vuejs/vue-test-utils#1130 2019-10-31 10:24:18 -04:00
Justin Schroeder
7809cdd2e3 Adds form level data binding 2019-10-29 23:33:31 -04:00
Justin Schroeder
942ff41ad9 Initial reactivity for FormulateForm 2019-10-08 23:54:16 -04:00
Justin Schroeder
3ad166ac90 Adds full multi-option support for checkboxes and radios 2019-10-08 13:50:53 -04:00
Justin Schroeder
27bd2bda26 Initial commit of the version 2 rewrite 2019-10-07 10:24:30 -04:00
Justin Schroeder
d13f306479 Adds support for option groups on select lists 2019-09-24 11:28:15 -04:00
Justin Schroeder
339ff51666 Adds the ability to disable individual input boxes 2019-09-23 16:47:02 -04:00
Justin Schroeder
9e54d53283 Fixes bug that causes textareas to not recieve proper data-classification 2019-09-10 01:08:04 -04:00
Justin Schroeder
aa367c4bd4 Adds support for focus class on formulate wrapper 2019-03-18 13:48:26 -04:00
Chris Ellinger
9785e5fb26 Adds pattern as an attribute and adds number as a rule for validation (#11) 2018-11-20 11:51:32 -05:00
Justin Schroeder
8bc3ff3dae Fixes a race condition that could add validation errors for fields that had been removed 2018-11-01 17:04:05 -04:00
Justin Schroeder
55368defd1 Fixes a race condition that could add validation errors for fields that had been removed 2018-11-01 17:03:05 -04:00
Justin Schroeder
b0de7b5ee7 Field's without initial values commit undefined values, this fixes failing validation 2018-10-30 11:14:07 -04:00
Justin Schroeder
98734e3f74 Adds support for the step attribute 2018-10-15 23:21:31 -04:00
Justin Schroeder
a012b120ba Adds maxlength attribute support 2018-08-08 23:30:16 -04:00
Justin Schroeder
73ae9db111 Adds wrappers around box inputs 2018-05-18 23:47:14 -04:00
Justin Schroeder
c5e90171e6 New Feature: FormulateElement now supports help text via the new GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin17)
These shell commands are defined internally.  Type `help' to see this list.
Type `help name' to find out more about the function `name'.
Use `info bash' to find out more about the shell in general.
Use `man -k' or `info' to find out more about commands not in this list.

A star (*) next to a name means that the command is disabled.

 JOB_SPEC [&]                       (( expression ))
 . filename [arguments]             :
 [ arg... ]                         [[ expression ]]
 alias [-p] [name[=value] ... ]     bg [job_spec ...]
 bind [-lpvsPVS] [-m keymap] [-f fi break [n]
 builtin [shell-builtin [arg ...]]  caller [EXPR]
 case WORD in [PATTERN [| PATTERN]. cd [-L|-P] [dir]
 command [-pVv] command [arg ...]   compgen [-abcdefgjksuv] [-o option
 complete [-abcdefgjksuv] [-pr] [-o continue [n]
 declare [-afFirtx] [-p] [name[=val dirs [-clpv] [+N] [-N]
 disown [-h] [-ar] [jobspec ...]    echo [-neE] [arg ...]
 enable [-pnds] [-a] [-f filename]  eval [arg ...]
 exec [-cl] [-a name] file [redirec exit [n]
 export [-nf] [name[=value] ...] or false
 fc [-e ename] [-nlr] [first] [last fg [job_spec]
 for NAME [in WORDS ... ;] do COMMA for (( exp1; exp2; exp3 )); do COM
 function NAME { COMMANDS ; } or NA getopts optstring name [arg]
 hash [-lr] [-p pathname] [-dt] [na help [-s] [pattern ...]
 history [-c] [-d offset] [n] or hi if COMMANDS; then COMMANDS; [ elif
 jobs [-lnprs] [jobspec ...] or job kill [-s sigspec | -n signum | -si
 let arg [arg ...]                  local name[=value] ...
 logout                             popd [+N | -N] [-n]
 printf [-v var] format [arguments] pushd [dir | +N | -N] [-n]
 pwd [-LP]                          read [-ers] [-u fd] [-t timeout] [
 readonly [-af] [name[=value] ...]  return [n]
 select NAME [in WORDS ... ;] do CO set [--abefhkmnptuvxBCHP] [-o opti
 shift [n]                          shopt [-pqsu] [-o long-option] opt
 source filename [arguments]        suspend [-f]
 test [expr]                        time [-p] PIPELINE
 times                              trap [-lp] [arg signal_spec ...]
 true                               type [-afptP] name [name ...]
 typeset [-afFirtx] [-p] name[=valu ulimit [-SHacdfilmnpqstuvx] [limit
 umask [-p] [-S] [mode]             unalias [-a] name [name ...]
 unset [-f] [-v] [name ...]         until COMMANDS; do COMMANDS; done
 variables - Some variable names an wait [n]
 while COMMANDS; do COMMANDS; done  { COMMANDS ; } prop
2018-05-18 14:46:04 -04:00
Justin Schroeder
25c618a4cf Fixes issue #6. Changes validation to occur via watcher of the vuex store 2018-04-10 10:51:26 -04:00
Justin Schroeder
21a83d0d50 Builds in support for disabled buttons fields and button content slots 2018-04-09 11:51:14 -04:00
Justin Schroeder
c85b35cb03 Adds production build for 0.8.0 2018-03-30 14:56:41 -04:00
Justin Schroeder
dde830dbd0 Adds textarea support 2018-03-30 14:51:47 -04:00
Justin Schroeder
c02528de4a Adds support for element-classes attribute allowing classes to be added to the interior elements. Closes #5 2018-03-19 09:58:45 -04:00
Justin Schroeder
a66e72ac2f Rebuilt distribution files 2018-03-14 14:33:38 -04:00
Justin Schroeder
c219633ebf
Adds an example to the project
Documentation update, and example idea and initial contribution by: Martin Bramwell <mhb.warehouseman@gmail.com>

* Adds an example form and updates documentation to reflect curried function
2018-03-14 09:49:40 -05:00
Justin Schroeder
c1e4b3948c Components now deregister themselves when removed 2018-03-07 15:44:35 -05:00
Justin Schroeder
2ea9ed4134 Adds the ability to reset a form with new resetForm mutation 2018-03-02 15:14:47 -05:00
Justin Schroeder
5b496a56bc Removes console log 2018-02-28 17:24:55 -05:00
Justin Schroeder
d7bc86b077 Fixes bug with v-if formulate-elements that had initial values 2018-02-28 11:47:34 -05:00
Justin Schroeder
abcc8fffa3 Adds transition element around formulate-errors-list 2018-02-27 10:18:31 -05:00
Justin Schroeder
9cc1105a21 formulate-errors now uses a transition-group wrapper to allow for vue transitions 2018-02-27 09:04:07 -05:00
Justin Schroeder
f12774532a Adds support for 'text' classification 2018-02-26 22:31:59 -05:00
Justin Schroeder
d289575a13 Adds build 2018-02-26 22:26:29 -05:00
Justin Schroeder
39b92f70ce Adds build file 2018-02-26 22:24:11 -05:00
Justin Schroeder
03054ebef7 Adds data-type attribute, and formulate-element--type-- to formulate elment wrappers 2018-02-26 22:15:15 -05:00
Justin Schroeder
daef2b8a2b Fixes reactivity issue for mergedInitials 2018-02-16 14:29:41 -05:00
Justin Schroeder
7239e229bd Last patch did not include compiled code 2018-02-16 00:19:11 -05:00
Justin Schroeder
fde067d974 Fixes bug causing FormulateElement's initial prop to occasionally be overwritten by the Formulate initial prop 2018-02-15 23:55:36 -05:00
Justin Schroeder
3a9b1093db Adds support for numbers to initial prop 2018-02-15 23:30:06 -05:00
Justin Schroeder
46ac900f0e Adds support for new errors prop on the Formulate element that passes errors down to child elements. Also forms no longer prevent submission if they only have local errors. This can be changed with a prevent="all" prop on the Formulate element. 2018-02-15 23:21:29 -05:00
Justin Schroeder
de79e33aef Adds support for option list attributes, like disaled 2018-02-07 15:51:47 -05:00
Justin Schroeder
797a52bb5a Fixes a reactivity issue with initial props 2018-02-05 14:17:26 -05:00
Justin Schroeder
a8a2be0820 Fixes bug that prevent validationLabel from being used in error messages 2018-02-02 13:38:05 -05:00
Justin Schroeder
a7211a270a Compiled for distribution 2018-02-02 12:12:45 -05:00
Justin Schroeder
8efe308f98 Fixes an insideous bug that was causing vuex mutations in deeply linked prop data 2018-02-02 12:07:51 -05:00
Justin Schroeder
3b7f03388b Adds a hydrate command on mounted too 2018-02-01 13:15:41 -05:00
Justin Schroeder
1ecf7411f6 Removes submit buttons from values 2018-02-01 12:23:39 -05:00
Justin Schroeder
b33e3692b0 Fixes bug where deeply nestsed formulate-elements would not properly register with parent formulate component 2018-02-01 12:14:19 -05:00
Justin Schroeder
e962aaec62 Fixes blur behavior validation bug that failed to expose all validation errors on submission 2018-02-01 11:02:58 -05:00
Justin Schroeder
ab1330f27f Validation labels are no longer part of the validation rule string, but retrieved from props on formualte-element 2018-02-01 10:47:11 -05:00
Justin Schroeder
4af94f068a Automatically adds namespacing to formulateModule, more documentation added 2018-01-31 21:52:10 -05:00
Justin Schroeder
9011888971 Initial stable build of vue-formulate 2018-01-31 17:20:29 -05:00
Justin Schroeder
a705eced91 Initial stable functionality 2018-01-30 17:21:21 -05:00